feat(dotfiles): add session env registry #155

Merged
alexion merged 1 commits from feat/session-env-registry into main 2026-10-11 16:33:14 -04:00
Owner

Summary

  • Add a typed env registry for host-scoped session environment variables.
  • Derive the primary user's Home Manager home.sessionVariables from the host's registry.env entries.
  • Move PYTHON_TOOLCHAIN_ROOT and RUST_TOOLCHAIN_ROOT producers into the registry.

Verification

  • nix eval --json '.#nixosConfigurations' --apply 'configs: builtins.mapAttrs (name: cfg: let user = cfg.config.user.name; in { registry = cfg.config.registry.env.${name} or {}; home = cfg.config.home-manager.users.${user}.home.sessionVariables; }) configs' | jq '{neogaia: .neogaia, zeus: .zeus, pikachu: .pikachu}'
  • nix run .#fix
  • bazel run //src/natu:natu -- configs/nixos/registry/env.nix configs/nixos/modules/host/default.nix configs/nixos/modules/shell/python.nix configs/nixos/modules/shell/rust.nix
## Summary - Add a typed `env` registry for host-scoped session environment variables. - Derive the primary user's Home Manager `home.sessionVariables` from the host's `registry.env` entries. - Move `PYTHON_TOOLCHAIN_ROOT` and `RUST_TOOLCHAIN_ROOT` producers into the registry. ## Verification - `nix eval --json '.#nixosConfigurations' --apply 'configs: builtins.mapAttrs (name: cfg: let user = cfg.config.user.name; in { registry = cfg.config.registry.env.${name} or {}; home = cfg.config.home-manager.users.${user}.home.sessionVariables; }) configs' | jq '{neogaia: .neogaia, zeus: .zeus, pikachu: .pikachu}'` - `nix run .#fix` - `bazel run //src/natu:natu -- configs/nixos/registry/env.nix configs/nixos/modules/host/default.nix configs/nixos/modules/shell/python.nix configs/nixos/modules/shell/rust.nix`
alexion added 1 commit 2026-10-11 16:30:06 -04:00
alexion merged commit e74a08b853 into main 2026-10-11 16:33:14 -04:00
alexion deleted branch feat/session-env-registry 2026-10-11 16:33:14 -04:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: alexion/dev#155