my config files
- Nix 47.4%
- Lua 23.6%
- Nushell 14.4%
- Nu 4%
- Janet 3.3%
- Other 7.3%
| dot_config | update lazyvim | |
| modules | switch jj default command | |
| my_scripts | add small script to check battery status | |
| overlays | move overlays to top-level and add to pippin config | |
| packages | add martel font package | |
| system | enable appimage-run | |
| .chezmoiignore | chezmoi: add more paths to ignore | |
| .gitignore | home-manager: add helix runtime path | |
| flake.lock | update flake | |
| flake.nix | change to home-manager flake-parts module | |
| README.md | initial (very cursed) migration to flake-parts | |
| stylua.toml | change nvim keyconfig, add i3 screenshots | |
| symlinks.py | update symlinks script | |
dotfiles
Some configuration files.
I'm managing most of them with home-manager.
The structure I'm aiming for is the following:
dot_config # symlinked to .config
└── home-manager
├── common # config shared by all hosts (pc, laptop, ...)
│ └── home.nix
├── configs # configurations for programs
├── overlays # patches for various programs
├── bloodsong.nix # config for my pc
├── flake.nix # entry point for the config
└── home.nix # config for my laptop
The flake.nix file manages all nix related files and hosts different homeConfigurations with username@host for each machine that I use.
With home-manager switch --flake path/to/dotfiles you can then apply the configuration to your home directory, given that your username and host match one of those specified in homeConfigurations.
flake-parts modules
Different "feature" modules contribute data to one final function that outputs actual
homeConfigurations, nixosConfigurations inside the flake.nix file.