Hi! 👋 Welcome to my repository containing my Nix configurations to manage my machines. A declarative and more reproducible way to set working environments.
[!IMPORTANT] Disclaimer: This is a personal configuration. I am no expert, however I hope that this helps you! For more help on Nix(OS) seek out the NixOS discourse. If you are new to dotfiles in general, use a bare git solution to start with and built it from there. Make the tools work for you rather than the other way around.
Ensure nix
is installed.
Bootstrap:
$ nix-shell --packages git --command "$(curl -fsSL https://raw.githubusercontent.com/bphenriques/dotfiles/master/bin/bootstrap.sh)"
Apply:
$ "$HOME"/.dotfiles/bin/sync.sh
Import the GPG Key using gpg --import
. You may need to restart.
Reboot!
sops-nix for critical secrets and age
+git-filter
(smudge
clean
) for non-critical sensitive information required in Nix evaluation time.
To setup git-filter
:
$ ./bin/git-secret-filter.sh init
As detailed in .gitattributes
, only *.age.nix
are affected. My public keys under .sops.yaml
and the corresponding private keys under "$XDG_CONFIG_HOME/sops/age/keys.txt"
.
Nix can be overwhelming with its steep learning curve. I found it easier reading documentation and ~some~ several dotfiles:
Disclaimer: I do not claim ownership of the wallpapers appearing in this repository. If you find images in this repository owned by you and are of limited use, please let me know and I will remove them.