From 9fea1b816f5df3113cad44e1160985e76b3a4bab Mon Sep 17 00:00:00 2001 From: Yureka Date: Thu, 9 Apr 2026 17:34:32 +0200 Subject: [PATCH] flake: allow using nixpkgs lowdown 3.0 Admittedly, I do not understand what the comment means: > As soon as Nixpkgs updates to >= 3.0.0, change to lowdown_2_0! But this should work fine for nixpkgs versions providing lowdown 2.x or 3.x, and not cause rebuilds of the nixpkgs Lix/Nix derivations. Change-Id: I6fb9e775335b4dbc23add76b98106970956e19fb --- flake.nix | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/flake.nix b/flake.nix index 1988656de..3d3817e50 100644 --- a/flake.nix +++ b/flake.nix @@ -249,17 +249,19 @@ # We don't change the default version in order to not change the hash # of Nix/Lix from upstream Nixpkgs. lowdown_3_0 = - assert lib.versionOlder prev.lowdown.version "3.0.0"; - prev.lowdown.overrideAttrs ( - finalAttrs: _prevAttrs: { - version = "3.0.0"; + if (lib.versions.major prev.lowdown.version == 3) then + prev.lowdown.version + else + prev.lowdown.overrideAttrs ( + finalAttrs: _prevAttrs: { + version = "3.0.0"; - src = final.fetchurl { - url = "https://kristaps.bsd.lv/lowdown/snapshots/lowdown-${finalAttrs.version}.tar.gz"; - sha512 = "94e97234d598382c3c3dc27f9bfdb3a3a2fcf7dbb6a8df3c85ee09f27f792449034a41d49d9cfd3d8450d2de01b8562c20c3d120e65c81af4d7d6c9454119e93"; - }; - } - ); + src = final.fetchurl { + url = "https://kristaps.bsd.lv/lowdown/snapshots/lowdown-${finalAttrs.version}.tar.gz"; + sha512 = "94e97234d598382c3c3dc27f9bfdb3a3a2fcf7dbb6a8df3c85ee09f27f792449034a41d49d9cfd3d8450d2de01b8562c20c3d120e65c81af4d7d6c9454119e93"; + }; + } + ); capnproto = prev.capnproto.overrideAttrs (old: { patches = @@ -327,6 +329,7 @@ # Ensure support for lowdown < 3.0 doesn't regress for NixOS 25.11 build-lowdown_2_0 = lib.genAttrs [ "aarch64-linux" ] ( system: + assert lib.versionOlder nixpkgsFor.${system}.native.lowdown.version "3.0.0"; self.packages.${system}.nix.override { lowdown = nixpkgsFor.${system}.native.lowdown; lowdown-unsandboxed = nixpkgsFor.${system}.native.lowdown-unsandboxed;