char/flake

nixos flake

git clone https://git.t4t.associates/char/flake

Charlotte Somonyx: switch to systemd-networkd378b456

main
2.7 KiB102 linesraw
1{
2  description = "charlotte's NixOS flake";
3  inputs = {
4    nixpkgs.url = "github:NixOS/nixpkgs/nixos-26.05";
5    nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
6
7    disko.url = "github:nix-community/disko";
8    disko.inputs.nixpkgs.follows = "nixpkgs";
9
10    nixos-hardware.url = "github:NixOS/nixos-hardware/master";
11
12    lanzaboote.url = "github:nix-community/lanzaboote/v1.0.0";
13    lanzaboote.inputs.nixpkgs.follows = "nixpkgs";
14
15    microvm.url = "github:microvm-nix/microvm.nix";
16    microvm.inputs.nixpkgs.follows = "nixpkgs";
17  };
18  outputs =
19    { self
20    , nixpkgs
21    , nixpkgs-unstable
22    , disko
23    , nixos-hardware
24    , lanzaboote
25    , microvm
26    , ...
27    }@inputs:
28    {
29      nixosConfigurations = {
30        runestone = nixpkgs.lib.nixosSystem {
31          system = "x86_64-linux";
32
33          specialArgs = {
34            user-pkgs = self.packages."x86_64-linux";
35            unstable-pkgs = nixpkgs-unstable.legacyPackages."x86_64-linux";
36          };
37
38          modules = [
39            ({ ... }: {
40              system.stateVersion = "24.05";
41            })
42
43            ./profiles/common/base.nix
44            ./profiles/common/dev.nix
45            ./profiles/common/locale.nix
46            ./profiles/common/networking.nix
47
48            ./profiles/runestone/hardware-configuration.nix
49            ./profiles/runestone/base.nix
50            ./profiles/runestone/borg.nix
51
52            microvm.nixosModules.host
53            ./profiles/runestone/microvms.nix
54          ];
55        };
56
57        onyx = nixpkgs.lib.nixosSystem {
58          system = "x86_64-linux";
59
60          specialArgs = {
61            user-pkgs = self.packages."x86_64-linux";
62            unstable-pkgs = import nixpkgs-unstable {
63              system = "x86_64-linux";
64              config.allowUnfree = true;
65            };
66          };
67
68          modules = [
69            ({ ... }: {
70              system.stateVersion = "25.11";
71            })
72
73            nixos-hardware.nixosModules.framework-desktop-amd-ai-max-300-series
74
75            disko.nixosModules.disko
76            ./profiles/onyx/disks.nix
77
78            ./profiles/common/base.nix
79            ./profiles/common/dev.nix
80            ./profiles/common/locale.nix
81            ./profiles/onyx/networking.nix
82
83            lanzaboote.nixosModules.lanzaboote
84
85            ./profiles/onyx/hardware-configuration.nix
86            ./profiles/onyx/base.nix
87            ./profiles/onyx/secure-boot.nix
88            ./profiles/onyx/nvidia.nix
89            ./profiles/onyx/hyper-v.nix
90            ./profiles/onyx/borg.nix
91            ./profiles/onyx/git-server.nix
92          ];
93        };
94      };
95
96      packages = {
97        x86_64-linux = import ./packages/default.nix {
98          pkgs = import nixpkgs { system = "x86_64-linux"; };
99        };
100      };
101    };
102}