all repos — char/flake @ 8023ad30b3e71bb3d4dbba4bdaee603d7c1c1992

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 =
 8    {
 9      self,
10      nixpkgs,
11      nixpkgs-unstable,
12      ...
13    }@inputs:
14    {
15      nixosConfigurations = {
16        runestone = nixpkgs.lib.nixosSystem {
17          system = "x86_64-linux";
18
19          specialArgs = {
20            user-pkgs = self.packages;
21            unstable-pkgs = nixpkgs-unstable.legacyPackages."x86_64-linux";
22          };
23
24          modules = [
25            /*
26              ({ config, pkgs, ... }: {
27                nixpkgs.overlays = [
28                  (final: prev: {
29                    xdg-desktop-portal-gnome = prev.xdg-desktop-portal-gnome.overrideAttrs (oldAttrs: {
30                      patches = (oldAttrs.patches or [ ]) ++ [
31                        ./packages/xdg-desktop-portal-gnome/unattended.patch
32                      ];
33                    });
34                  })
35                ];
36              })
37            */
38
39            (
40              { ... }:
41              {
42                system.stateVersion = "24.05";
43              }
44            )
45
46            ./profiles/common/base.nix
47            ./profiles/common/locale.nix
48            ./profiles/common/networking.nix
49            ./profiles/common/desktop.nix
50
51            ./profiles/runestone/hardware-configuration.nix
52            ./profiles/runestone/base.nix
53            ./profiles/runestone/desktop.nix
54            ./profiles/runestone/grafana-prometheus.nix
55          ];
56        };
57
58        opal = nixpkgs.lib.nixosSystem {
59          system = "x86_64-linux";
60
61          specialArgs = {
62            user-pkgs = self.packages;
63            unstable-pkgs = nixpkgs-unstable.legacyPackages."x86_64-linux";
64          };
65
66          modules = [
67            (
68              { ... }:
69              {
70                system.stateVersion = "24.05";
71              }
72            )
73
74            ./profiles/common/base.nix
75            ./profiles/common/locale.nix
76            ./profiles/common/networking.nix
77            ./profiles/common/desktop.nix
78
79            ./profiles/opal/hardware-configuration.nix
80            ./profiles/opal/base.nix
81            ./profiles/runestone/gnome.nix # TODO: replace with a nice wayland twm or something
82          ];
83        };
84      };
85
86      packages = import ./packages/default.nix { pkgs = import nixpkgs { system = "x86_64-linux"; }; };
87    };
88}