3 Commits

Author SHA1 Message Date
fff1d2c480
Enhancement (WIP): Consolidate system configurations into modules.
- system: Module describes core Linux system configuration parameters, and NixOS system parameters.
  - networking: Basic networking config for metal hosts.
  - sops: Configures sops-nix to decrypt secrets as appropriate, and provides a useful shell helper.
  - smb: Reusable module that returns one smb mount.
  - iscsi: Autoconnect and auto-mount iscsi target.
  - git: Basic Git config.
  - docker: Configure Docker.
  - hardware: Set of modules for physical hardware devices and their related configurations.
2025-02-16 00:13:27 -08:00
c30d77304c
Enhancement: consolidate SSH pubkey declarations into flake; pass as sys.authorizedKeys 2025-01-30 14:47:52 -08:00
4e9d6dec6a
Refactor flake:
- Delete homeManagerConfigurations from flake.
- Delete laptop nixosConfiguration.
- Delete `home-manager/` and `nixos/` directories.
- Switch from one general "vars" attrset for variables to using built-for-purpose attrsets for variables, each declared where it makes most sense (e.g. the "sys" attrset will be used for system-specific attributes).
- Create `systems/` directory for root-level system configurations and `modules/` directory for re-usable config files.
- Consolidate most app and system configuration into the `desktop-environment.nix` and `terminal-environment.nix` files.
- Standardize all `.nix` files to nixos config nodes, as opposed to home-manager. May reverse this decision.
- Use `${sys.username}` for the username of the primary user of the system.
- Use `${usr.${sys.username}}` for attributes related to that user (e.g. realname, email).
2025-01-08 12:04:28 -08:00