all repos — char/flake @ main

nixos flake

flake.nix (view raw)

 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  outputs =
16    { self
17    , nixpkgs
18    , nixpkgs-unstable
19    , disko
20    , nixos-hardware
21    , lanzaboote
22    , ...
23    }@inputs:
24    {
25      nixosConfigurations = {
26        runestone = nixpkgs.lib.nixosSystem {
27          system = "x86_64-linux";
28
29          specialArgs = {
30            user-pkgs = self.packages."x86_64-linux";
31            unstable-pkgs = nixpkgs-unstable.legacyPackages."x86_64-linux";
32          };
33
34          modules = [
35            ({ ... }: {
36              system.stateVersion = "24.05";
37            })
38
39            ./profiles/common/base.nix
40            ./profiles/common/dev.nix
41            ./profiles/common/locale.nix
42            ./profiles/common/networking.nix
43
44            ./profiles/runestone/hardware-configuration.nix
45            ./profiles/runestone/base.nix
46            ./profiles/runestone/borg.nix
47          ];
48        };
49
50        onyx = nixpkgs.lib.nixosSystem {
51          system = "x86_64-linux";
52
53          specialArgs = {
54            user-pkgs = self.packages."x86_64-linux";
55            unstable-pkgs = import nixpkgs-unstable {
56              system = "x86_64-linux";
57              config.allowUnfree = true;
58            };
59          };
60
61          modules = [
62            ({ ... }: {
63              system.stateVersion = "25.11";
64            })
65
66            nixos-hardware.nixosModules.framework-desktop-amd-ai-max-300-series
67
68            disko.nixosModules.disko
69            ./profiles/onyx/disks.nix
70
71            ./profiles/common/base.nix
72            ./profiles/common/dev.nix
73            ./profiles/common/locale.nix
74            ./profiles/common/networking.nix
75
76            lanzaboote.nixosModules.lanzaboote
77
78            ./profiles/onyx/hardware-configuration.nix
79            ./profiles/onyx/base.nix
80            ./profiles/onyx/secure-boot.nix
81            ./profiles/onyx/nvidia.nix
82            ./profiles/onyx/hyper-v.nix
83            ./profiles/onyx/borg.nix
84            ./profiles/onyx/git-server.nix
85          ];
86        };
87      };
88
89      packages = {
90        x86_64-linux = import ./packages/default.nix {
91          pkgs = import nixpkgs { system = "x86_64-linux"; };
92        };
93      };
94    };
95}