15 Commits

Author SHA1 Message Date
03c397027a
Enhancement: Use smb.secretsFile in smb module to define path for smb credentials file. 2025-02-16 15:21:24 -08:00
1b610bc9eb
Fix (Huge): Re-enable desktop.
- Enable desktop system in flake with all modules imported in flake file, and arguments for those modules passed via specialArgs.
  - Disable fileSystems mounts for iscsi.
  - Refactor smb.nix to define all working shares. (TODO: Figure out how to enable a subset of shares by arguments passed to module).
  - Roll cloudflare_stream.token.
  - Extract all module calls out of configuration.nix for desktop. Remove configuration nodes duplicated in system.nix.
  - Fix dependence on deprecated "sys" subattributes in desktop-environment.nix.
  - Remove iscsi configuration from filesystems.nix. Using iscsi module instead.
  - Update terminal-environment.nix to use git attrset where appropriate.
  - Hardcode wallpaper file in theme.nix.
  -
2025-02-16 15:14:46 -08:00
93e8426a43
Feature: Implement new modules for fighter.
- Fighter uses: system, git, sops, docker, networking, and iscsi modules; plus its own stacks module which we've updated to use the new design concept.
  - I can't figure out how to put all of the module code together (importing and defining the vars), so we're compromising.
2025-02-16 01:26:30 -08:00
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
1dc87e868f
Fix: IDEK 2025-02-06 01:38:06 -08:00
0be514c6e0
Fix: Call sops-nix module... 2025-02-06 01:35:10 -08:00
18ca235bad
Fix: I hope. 2025-02-05 23:32:12 -08:00
4aaf1d33bd
Fix: Stop making fun of me. 2025-02-05 23:25:25 -08:00
46ee5c8b5c
Fix: SSH path was empty. 2025-02-05 23:22:10 -08:00
32ceed3318
Fix: Restore sshKeyPaths to use the user's key instead of root's. 2025-02-05 23:17:50 -08:00
c260fe3904
Enhancement: Correct file path for ssh key to use for decrypting sops-nix secrets. 2025-02-05 23:06:00 -08:00
efa8265c3b
Feature: Implement sops-nix:
- .sops.yaml: Rotate keys, narrow path_regex to secrets.
  - sops.nix: Init module, init `sops-nix` script.
  - configuration.nix: Add sops-nix to desktop configuration.
2025-01-30 14:55:56 -08:00
c30d77304c
Enhancement: consolidate SSH pubkey declarations into flake; pass as sys.authorizedKeys 2025-01-30 14:47:52 -08:00
d2828fa751
Feature: Add spotify module.
- librespot as systemd service for backend.
  - Spotify-qt for qt-based GUI.
  - ncspot for TUI.
2025-01-30 14:45:58 -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