My dotfiles. Managed with chezmoi.
I have previously used bare git repo with a work tree and my own bootstrap scripts. See the last commit before the switch: 65f7c44de8b03638395dd65d07c43a533098c76c.
To get a new machine setup, there are a few choices.
Get chezmoi via a package manager and init the repo:
chezmoi init --apply https://code.hosaka.cc/hosaka/.dotfiles.gitUse a remote script from chezmoi:
sh -c "$(curl -fsLS get.chezmoi.io)" -- init --apply https://code.hosaka.cc/hosaka/.dotfiles.gitUse my remote install script:
curl https://hosaka.cc/sh/dotinstall | shPull the latest changes from this repo and apply them:
dot updateUse dot alias to interact with the dotfiles repo, it is a direct alias to chezmoi.
A tool for managing development environments and tooling, see mise.jdx.dev.
Mise will be automatically bootstrapped when running chezmoi apply based on the machine configuration.
To view a list of configured tools and install them use (also see mise/config.toml):
mise list
mise install tool # or tool@versionIt is worth to add a GitHub Personal Access Token to the environment so Mise will not be throttled when installing multiple tools at the same time, this can be done by placing a .mise.toml or .mise.local.toml in $HOME:
[env]
GITHUB_TOKEN = "github_pat_"Some of the tools which can be installed with Mise are described below.
Replaces shell history with a searchable database, see docs.atuin.sh. Install with mise install atuin.
Shell history can be synced between different machines via a self hosted server (see .config/atuin/config.toml).
To setup a new machine (omit the password flag to enter it via a prompt):
atuin login -u <USERNAME> -p <PASSWORD> -k <KEY>The encryption key can be obtained with atuin key on an existing machine.
A version manager for Neovim. Install with mise install bob, To use/install a version:
bob use nightlyTo update an existing version:
bob update nightlyThis repository is hosted on Forgejo which mirrors to the following git forges: