This is my personal .dot-files repository, where all my custom dotfiles and installation scripts go.
To use it, clone the repo directly into the home directory.
# uses current username and hostname by default
home-manager switch --flake .- Download/clone this repository
- Have nix installed and flakes enabled
- Use
nix developto enter a shell with all requirements - Use
dot-*commands to build, apply, or update the contained configurations
To download and build this repository, you need git (because nix flakes depends on it).
However, activating a home-manager configuration including git conflicts with a possible git installed via nix-env -iA nixos.git.
To solve this, you need to split building and activating the home-manager configuration into two steps, uninstalling the nix-env git in-between:
nix-env -iA git # in case you haven't already
git clone ... # clone this repository using git
nix --extra-experimental-features "nix-command flakes" develop # enter a nix shell (enabling required experimental nix features)
dot-build-home # build the home-manager configuration
nix-env -e git-minimal # remove the nix-env git again
./result/activate # activate the home-manager installation that includes gitThe .config and old-nix-structure folders are left-over from the old way I managed my dotfiles, which assumed this directory to be cloned into ~ directly.
I am slowly working through everything, starting by moving everything inside .config into modules/home-manager/. That is the last thing required before ~ does not have to be a home directory anymore.
Afterwards, everything inside old-nix-structure needs to be moved into modules/ and collections/, as well as some other folders, most likely.