me like nix
1{ inputs, config, ... }:
2
3let
4 nm = config.flake.modules.nixos;
5 hm = config.flake.modules.homeManager;
6in
7{
8 flake.nixosConfigurations.mira = inputs.nixpkgs.lib.nixosSystem {
9 system = "x86_64-linux";
10 modules = [
11 # Hardware
12 ../../hosts/mira/hardware-configuration.nix
13
14 # External NixOS modules
15 inputs.agenix.nixosModules.default
16 inputs.nixarr.nixosModules.default
17 inputs.home-manager.nixosModules.home-manager
18 {
19 nixpkgs.overlays = [
20 inputs.niri.overlays.niri
21 inputs.copyparty.overlays.default
22 ];
23 }
24
25 # Common aspects
26 nm.nix-settings
27 nm.base
28 nm.security
29 nm.sean
30 nm.desktop
31 nm.fonts
32
33 # Mira-specific aspects
34 nm.nvidia
35 nm.ollama
36 nm.media-server
37 nm.home-automation
38 nm.gaming
39 nm.mira-extras
40
41 # Home Manager
42 {
43 home-manager.users.sean = {
44 imports = [
45 inputs.niri.homeModules.niri
46 inputs.zen-browser.homeModules.beta
47 inputs.agenix.homeManagerModules.default
48 hm.sean
49 hm.desktop
50 hm.noctalia
51 hm.fonts
52 hm.shell
53 hm.editor
54 hm.apps
55 ];
56 };
57 }
58 ];
59 };
60}