my dotfiles
Find a file
chayleaf 69ce2ffdbc store secrets separate from this flake
This uses a native plugin (pkgs.nix-plugins) to avoid using --impure,
other options involving secret files are too limited for my use case as
I need eval-time access to secrets. Moving it to a private flake is
another option, but Nix flakes are poorly suited for non-monorepos.
Previously I just renamed .git to .git.bak to make sure Nix pulls the
"private" subdir into store as well, but this new system may be more
robust and can be extended to way be more secure in the future (e.g.
right now I copy the secret .nix files to store, but in general there's
no need to do that).

Of course the main drawback is that now I require a plugin for this
flake to work.
2023-05-26 00:46:38 +07:00
home more polish for hm nixos module integration 2023-05-25 11:34:27 +07:00
pkgs switch to mainline system76-scheduler module (and fix eval) 2023-05-25 06:32:52 +07:00
system more polish for hm nixos module integration 2023-05-25 11:34:27 +07:00
.gitignore add server config 2023-05-11 05:33:08 +07:00
COPYING add system76 scheduler+other system config changes 2023-01-24 15:42:51 +07:00
extra-builtins.nix store secrets separate from this flake 2023-05-26 00:46:38 +07:00
flake.lock refactor pkgs, allow NixOS HM module to be used 2023-05-25 06:26:52 +07:00
flake.nix store secrets separate from this flake 2023-05-26 00:46:38 +07:00
overlays.nix XDG_CONFIG_HOME/nixpkgs->XDG_CONFIG_HOME/home-manager 2023-04-10 19:15:34 +07:00
private.nix.sample update private config sample 2023-05-25 05:09:17 +07:00
push.sh store secrets separate from this flake 2023-05-26 00:46:38 +07:00
README.md store secrets separate from this flake 2023-05-26 00:46:38 +07:00
update.sh store secrets separate from this flake 2023-05-26 00:46:38 +07:00

My Nix config

Home-manager config and modules are in ./home, NixOS config and modules are in ./system.

Secrets are fetched using a nix plugin at evaluation time to avoid using --impure. I plan to implement a more robust secrets system later though.

To install, simply run nixos-rebuild switch --flake . --option extra-builtins-file $(pwd)/extra-builtins.nix and home-manager switch --flake . --option extra-builtins-file $(pwd)/extra-builtins.nix, since this repo relies on build-time decryption of secrets using a Nix plugin (to be fair you won't be able to use it since you don't have the secrets, such as initial root password). If you don't have nix-plugins though, you can put the secrets in plaintext to /etc/nixos/private and add --impure flag to bootstrap the config.