all repos — char/flake @ 5756068a8eec9b8bf2178c876eb1d653dd691257

nixos flake

flake.nix (view raw)

 1{
 2  description = "charlotte's NixOS flake";
 3  inputs = {
 4    nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05";
 5    nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
 6  };
 7  outputs = { self, nixpkgs, nixpkgs-unstable, ... }@inputs: {
 8    nixosConfigurations = {
 9      runestone = nixpkgs.lib.nixosSystem {
10        system = "x86_64-linux";
11
12        specialArgs = {
13          user-pkgs = self.packages;
14          unstable-pkgs = nixpkgs-unstable.legacyPackages."x86_64-linux";
15        };
16
17        modules = [
18          /* ({ config, pkgs, ... }: {
19            nixpkgs.overlays = [
20              (final: prev: {
21                xdg-desktop-portal-gnome = prev.xdg-desktop-portal-gnome.overrideAttrs (oldAttrs: {
22                  patches = (oldAttrs.patches or [ ]) ++ [
23                    ./packages/xdg-desktop-portal-gnome/unattended.patch
24                  ];
25                });
26              })
27            ];
28          }) */
29
30          ({ ... }: {
31            system.stateVersion = "24.05";
32          })
33
34          ./profiles/common/base.nix
35          ./profiles/common/locale.nix
36          ./profiles/common/networking.nix
37          ./profiles/common/desktop.nix
38
39          ./profiles/runestone/hardware-configuration.nix
40          ./profiles/runestone/base.nix
41          ./profiles/runestone/desktop.nix
42          ./profiles/runestone/grafana-prometheus.nix
43        ];
44      };
45
46      opal = nixpkgs.lib.nixosSystem {
47        system = "x86_64-linux";
48
49        specialArgs = {
50          user-pkgs = self.packages;
51          unstable-pkgs = nixpkgs-unstable.legacyPackages."x86_64-linux";
52        };
53
54        modules = [
55          ({ ... }: {
56            system.stateVersion = "24.05";
57          })
58
59          ./profiles/common/base.nix
60          ./profiles/common/locale.nix
61          ./profiles/common/networking.nix
62          ./profiles/common/desktop.nix
63
64          ./profiles/opal/hardware-configuration.nix
65          ./profiles/opal/base.nix
66          ./profiles/runestone/gnome.nix # TODO: replace with a nice wayland twm or something
67        ];
68      };
69    };
70
71    packages =
72      import ./packages/default.nix { pkgs = import nixpkgs { system = "x86_64-linux"; }; };
73  };
74}