Skip to content

Commit 6b1c5d5

Browse files
authored
Merge branch 'main' into rsang-master
2 parents aa5f194 + 236cd49 commit 6b1c5d5

12 files changed

Lines changed: 345 additions & 112 deletions

File tree

flake.lock

Lines changed: 41 additions & 62 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

flake.nix

Lines changed: 74 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,13 @@
99
ref = "nixos-25.11";
1010
};
1111

12+
nixpkgs-unstable = {
13+
type = "github";
14+
owner = "nixos";
15+
repo = "nixpkgs";
16+
ref = "nixos-unstable";
17+
};
18+
1219
systems = {
1320
type = "github";
1421
owner = "nix-systems";
@@ -120,6 +127,7 @@
120127
{
121128
self,
122129
nixpkgs,
130+
nixpkgs-unstable,
123131
systems,
124132
colmena,
125133
agenix,
@@ -160,6 +168,7 @@
160168
disko.nixosModules.disko
161169
niks3.nixosModules.default
162170
niks3.nixosModules.niks3-auto-upload
171+
wayout.nixosModules.default
163172
];
164173

165174
defaultSystem = "x86_64-linux";
@@ -199,6 +208,12 @@
199208
};
200209
};
201210

211+
pkgsUnstableFor =
212+
system:
213+
import nixpkgs-unstable {
214+
inherit system;
215+
};
216+
202217
forAllSystems = fn: nixpkgs.lib.genAttrs (import systems) (system: fn (pkgsFor system));
203218

204219
readGroup =
@@ -239,7 +254,16 @@
239254
meta = {
240255
nixpkgs = pkgsFor defaultSystem;
241256
nodeNixpkgs = nixpkgs.lib.mapAttrs (name: pkgsFor) overrideSystem;
242-
specialArgs = { inherit self inputs; };
257+
specialArgs = {
258+
inherit self inputs;
259+
# pkgs-unstable exposes the packages from the nixpkgs-unstable input
260+
# this should only be used as a *temporary* measure when the version of
261+
# a package in nixpkgs stable is not sufficiently updated
262+
pkgs-unstable = pkgsUnstableFor defaultSystem;
263+
};
264+
nodeSpecialArgs = nixpkgs.lib.mapAttrs (name: value: {
265+
pkgs-unstable = pkgsUnstableFor value;
266+
}) overrideSystem;
243267
};
244268
}
245269
);
@@ -276,14 +300,54 @@
276300
};
277301

278302
overlays.default = final: prev: {
303+
# Patch nginx for multiple CVEs disclosed 2026-05-13, until nixos-25.11
304+
# channel advances past the fix (nixpkgs#520076).
305+
# Remove this overlay once flake.lock points to a nixpkgs with nginx >= 1.30.1.
306+
nginx = prev.nginx.overrideAttrs (old: {
307+
patches = (old.patches or [ ]) ++ [
308+
(final.fetchpatch {
309+
name = "CVE-2026-40460.patch";
310+
url = "https://github.com/nginx/nginx/commit/f37ec3e5d4f527e52ed5b25951ad8aa7d1ff6266.patch";
311+
hash = "sha256-++hYEzMUkl3mbBMaffR2LQTYMxOR/YziNkYCVyhw2Qg=";
312+
})
313+
(final.fetchpatch {
314+
name = "CVE-2026-40701.patch";
315+
url = "https://github.com/nginx/nginx/commit/71841dcedfdf46048ef5e25413fdf97a66957913.patch";
316+
hash = "sha256-FzNZpEwIj76r5dpqEP6TgpSc1ywcW7ZOEQpFpwI/YZw=";
317+
})
318+
(final.fetchpatch {
319+
name = "CVE-2026-42934.patch";
320+
url = "https://github.com/nginx/nginx/commit/696a7f1b9198d576e6a59c1655b746fbf06561cf.patch";
321+
hash = "sha256-/vjyEGysPv5VK4TZmk/gtIg9Zc5ogUXMwpBfBwe55Bc=";
322+
})
323+
(final.fetchpatch {
324+
name = "CVE-2026-42945.patch";
325+
url = "https://github.com/nginx/nginx/commit/2046b45aa0c6e712c216b9075886f3f26e9b4ca9.patch";
326+
hash = "sha256-VK9CXgrCIqORsaRivTZBmkoLyQhbZ07ss6nAbLNvfJM=";
327+
})
328+
(final.fetchpatch {
329+
name = "CVE-2026-42946.patch";
330+
url = "https://github.com/nginx/nginx/commit/baef7fdac28e4e1fe26509b50b8d15603393e28e.patch";
331+
hash = "sha256-Z1naMxxiVuDbUcvX3PiIK4CMuSSpUyzPqjix9GTwHmk=";
332+
})
333+
(final.fetchpatch {
334+
name = "CVE-2026-42946-part-2.patch";
335+
url = "https://github.com/nginx/nginx/commit/39d7d0ba0799fcff6baee52b6525f45739593cfd.patch";
336+
hash = "sha256-6PwV0iz4kQGGBwVk9129aH+TFzbSx3QSVpp22AoKQY4=";
337+
})
338+
];
339+
});
340+
279341
ocf-utils = ocf-utils.packages.${final.stdenv.hostPlatform.system}.default;
280-
ocf-wayout = wayout.packages.${final.stdenv.hostPlatform.system}.default;
281342
ocf-jukebox = ocf-jukebox.packages.${final.stdenv.hostPlatform.system}.default;
282343
plasma-applet-commandoutput = final.callPackage ./pkgs/plasma-applet-commandoutput.nix { };
283344
catppuccin-sddm = final.qt6Packages.callPackage ./pkgs/catppuccin-sddm.nix { };
284345
ocf-cosmic-applets = ocf-cosmic-applets.packages.${final.stdenv.hostPlatform.system}.default;
285346
ocf-cosmic-greeter = final.callPackage ./pkgs/ocf-cosmic-greeter.nix { };
286347
ocf-hplip = final.callPackage ./pkgs/ocf-hplip.nix { };
348+
ocf-niks3-push = final.callPackage ./pkgs/ocf-niks3-push {
349+
niks3 = niks3.packages.${final.stdenv.hostPlatform.system}.default;
350+
};
287351
};
288352

289353
agenix-rekey = agenix-rekey.configure {
@@ -318,11 +382,17 @@
318382

319383
nixosConfigurations = builtins.mapAttrs (
320384
host: colmenaConfig:
321-
nixpkgs.lib.nixosSystem rec {
385+
let
322386
system = overrideSystem.${host} or defaultSystem;
387+
in
388+
nixpkgs.lib.nixosSystem {
389+
inherit system;
323390
pkgs = pkgsFor system;
324391
modules = colmenaConfig.imports;
325-
specialArgs = { inherit inputs; };
392+
specialArgs = {
393+
inherit inputs;
394+
pkgs-unstable = pkgsUnstableFor system;
395+
};
326396
}
327397
) colmenaHosts;
328398
};

modules/gui/default.nix

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -99,10 +99,17 @@ in
9999
pkgs.cosmic-initial-setup
100100
];
101101

102-
environment.etc = {
103-
skel.source = ./skel;
104-
ocf-assets.source = ./assets;
105-
};
102+
environment.etc =
103+
let
104+
kittyThemes = "${pkgs.kitty-themes}share/kitty-themes/themes";
105+
in
106+
{
107+
skel.source = ./skel;
108+
ocf-assets.source = ./assets;
109+
"xdg/kitty/dark-theme.auto.conf".source = "${kittyThemes}/rose-pine.conf";
110+
"xdg/kitty/light-theme.auto.conf ".source = "${kittyThemes}/rose-pine-dawn.conf";
111+
"xdg/kitty/no-preference-theme.auto.conf".source = "${kittyThemes}/rose-pine.conf";
112+
};
106113

107114
# Conflict override since multiple DEs set this option
108115
programs.ssh.askPassword = pkgs.lib.mkForce (lib.getExe pkgs.ksshaskpass.out);
@@ -191,17 +198,8 @@ in
191198
};
192199
};
193200

194-
systemd.user.services.wayout = {
195-
description = "Automatic idle logout manager";
196-
after = [ "graphical-session.target" ];
197-
partOf = [ "graphical-session.target" ];
198-
wantedBy = [ "graphical-session.target" ];
199-
serviceConfig = {
200-
ExecStart = "${pkgs.ocf-wayout}/bin/wayout";
201-
Type = "simple";
202-
Restart = "on-failure";
203-
};
204-
};
201+
services.wayout.enable = true;
202+
services.wayout.openFirewall = true;
205203

206204
systemd.user.services.desktoprc = {
207205
description = "Source custom rc shared across desktops";

0 commit comments

Comments
 (0)