my nix configs
- Shell 59.3%
- Nix 36.8%
- JavaScript 3.2%
- Just 0.7%
| cfg | remove this yaml | |
| hosts | shellcheck | |
| scripts | gram settings | |
| secrets | update mumbot | |
| services | update naanban port | |
| flake.lock | add superhtml to t14 | |
| flake.nix | add naanban | |
| Justfile | gc on h updates | |
| LICENSE | remove md ext | |
| README.md | secrets | |
| TODO.md | add todos | |
| vars.nix | linkding cron | |
nix / home
install
# I currently prefer Determinate Nix
curl -fsSL https://install.determinate.systems/nix | sh -s -- install
# clone or download repo
git clone https://codeberg.org/kevinfiol/nix ~/nix
cd ~/nix
updates
NixOS hosts
# (on first time bootstrapping)
nix shell nixpkgs#just
# deploy changes
just switch <hostname>
non-NixOS hosts (home-manager)
# (on first time bootstrapping)
nix shell nixpkgs#home-manager nixpkgs#just
# deploy changes
just home-switch <hostname>
secrets
This repository uses agenix for secrets management. secrets/secrets.nix contains user and host public keys.
cd ~/nix/secrets
# create secret
agenix -e <secret-name>.age
# rekey (if secrets.nix is changed, e.g., new host or new key)
agenix -r -i /etc/ssh/ssh_host_ed25519_key
GPG keys need to be imported manually (unfortunately) after a switch.
gpg --import /run/user/$(id -u)/agenix/gpg-me
gpg --import /run/user/$(id -u)/agenix/gpg-me2