Nix rules everything around me
- nix configuration for my laptop, and old desktop server
- Determinate Nix-powered
- guaranteed to be reproducible
- immutable full system configuration (dotfiles, but on steroids)
home-manager
for user-based app/desktop configurationsops-nix
for secrets (encrypted at rest, per-host encryption)lanzaboote
for bootloader configurationdeterminate
for getting the best version of Nix with robust defaults
ucodenix
to try to upgrade microcodehelix
for latest buids of helix (rust-y modal TUI editor)jj
for latest buids of jj (jujutsu) (git
but actually good)zjstatus
a nice plugin for zellij (rust-y user-friendly, powerfultmux
-replacement)
-
helix
: my go-to editor; TUI, Rust, modal, built-in LSP, etc -
zelij
:tmux
but better, with excellent UX for beginners -
firefox
: because Google should not own the web, and Sideberry is essential for tree-style tabs -
openvscode-server
: VSCodium-based editor; used for work and sometimes personal stuff -
COSMIC
for my desktop environment:
hosts
- toplevel machine definitions:
zeph
- ASUS Zephyrus G14 (2022) - GA402RJ
- current daily-driver
- favorite, all-AMD, laptop ever
- dual-booting NixOS, of course, and Windows 11 for casual 120Hz/1600p gaming
slynux
- (custom, retired gaming PC)
- primary personal Nix CI server
- primary SyncThing target
raisin
- Lenovo "Yoga Slim 7 Pro-14ACH5 Laptop (ideapad) - Type 82MS"
- retired laptop
- now an unused "backup" server
- backup SyncThing target
- occassional Tailscale exit node
images/
installer
(meta, iso)- configuration for a custom
x86_64-linux
installer image - includes my SSH key and
sshd
enabled and most used programs - see:
nix build .#extra.x86_64-linux.installer
- configuration for a custom
misc/
- misc scripts
- buyer beware
mixins/
- individual application configuration (mostly via
home-manager
) - mix of
home-manager
andnixos
configuration - (
libvirt
,prs
/gopass
,git
,gnupg
,spotifyd
,tailscale
,wezterm
, etc)
- individual application configuration (mostly via
profiles/
- bits that compose machine "personas"
core.nix
- core bits, see alsomixins/common.nix
interactive.nix
- headless systemsgui.nix
- baseline for GUI systemsgui-wayland.nix
- common tools for wayland/wlroots compositorsgui-sway.nix
- the start of mysway
GUI configurationaddon-dev.nix
- pull devtool's shell deps into systemaddon-laptop.nix
- common laptop bits, power management, etcaddon-asus.nix
- extras for my ASUS laptopuser-cole.nix
- my basecole
user configuration
secrets/
- scripts to manage
sops
forsops-nix
sops-nix
is great...- but
sops
is questionable-code-quality near-abandonware
- scripts to manage
shells/
- nix shells for various scenarios
_minimal.nix
- minimal shell baseci.nix
- tools needed to drive CI for this repodevenv.nix
- complete set of tools for Go/Rust/Nix developmentuutils.nix
- experimentation with rust-based coreutils
- nix shells for various scenarios
main.nu
- custom script for builds, deploys, etc