nix/readme.md
Daniel Flanagan 7c057bf169
Some checks failed
/ check (push) Has been cancelled
typo
2024-10-25 10:42:32 -05:00

2.2 KiB


Nix

flake check status build status

My grand, declarative, and unified application, service, environment, and machine configuration, secret, and package management in a single flake. ❤️ ❄️

NOTE: Everything in here is highly specific to my personal preference. I can't recommend you actually use this in any way, but hopefully some stuff in here is useful inspiration.

Quick Start

$ nixos-rebuild switch --flake git+https://git.lyte.dev/lytedev/nix#${FLAKE_ATTR}

You don't have even have to clone this crap yourself. How cool is that! But if you do, it looks like this:

$ nixos-rebuild switch --flake ./repo/dir/for/nix#${FLAKE_ATTR}

Secrets

If you're deploying anything secrets-related, you will need the proper keys:

$ mkdir -p ${XDG_CONFIG_HOME:-~/.config}/sops/age
$ pass age-key >> ${XDG_CONFIG_HOME:-~/.config}/sops/age/keys.txt

NixOS

$ nixos-rebuild switch --flake .

Not NixOS

NOTE: I pretty much solely use Home Manager as a NixOS module presently, so this is not fully supported.

$ curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install
$ nix run github:nix-community/home-manager switch --flake git+https://git.lyte.dev/lytedev/nix#${FLAKE_ATTR}

Internal/Advanced Usage

See lib/internal.md.

To Do

Short Term

Long Term