top-level configurations for all my NixOS machines
Go to file
2022-10-24 06:56:16 -07:00
machines refactor: helpers/set-hostname.nix becomes machines/instantiate.nix 2022-10-24 06:06:11 -07:00
modules home: migrate Element directory to private storage 2022-10-24 06:42:51 -07:00
nixpatches flake update: nixpkgs 2022-10-19 -> 2022-10-22 & others 2022-10-23 21:47:03 -07:00
pkgs sane-private-unlock: make ~/private if it doesn't exist 2022-10-24 01:53:41 -07:00
scripts commit ensure-perms script for image post-processing 2022-10-21 02:04:30 -07:00
secrets secrets/servo: grant access to lappy 2022-10-24 06:56:16 -07:00
.gitignore move secrets to a subdirectory, for improved overrides 2022-05-26 23:52:08 -07:00
.sops.yaml secrets/servo: grant access to lappy 2022-10-24 06:56:16 -07:00
flake.lock flake update: nixpkgs 2022-10-19 -> 2022-10-22 & others 2022-10-23 21:47:03 -07:00
flake.nix refactor: helpers/set-hostname.nix becomes machines/instantiate.nix 2022-10-24 06:06:11 -07:00
readme.md readme: document how to build nixpkgs and cross packages 2022-10-15 01:28:30 -07:00

to deploy:

nixos-rebuild --flake "./#servo" {build,switch}

more options (like building packages defined in this repo):

nix flake show

secrets

i use sops for secrets. see modules/universal/secrets.nix for some tips.

building images

to build a distributable image (GPT-formatted image with rootfs and /boot partition):

nix build ./#imgs.lappy

this can then be dd'd onto a disk and directly booted from a EFI system. there's some post-processing to do before running a rebuild on the deployed system (deploying ssh keys, optionally changing fs UUIDs, etc). refer to flake.nix for more details.

building packages

to build one of the custom sane packages, just name it:

nix build ./#fluffychat-moby

to build a nixpkg:

nix build ./#nixpkgs.curl

to build a package for another platform:

nix build ./#packages.aarch64-linux.nixpkgs.ubootRaspberryPi4_64bit