From a258bc7e3e4952664320c0b0730eea9a988cc20b Mon Sep 17 00:00:00 2001 From: Stefan Frijters Date: Wed, 5 Aug 2026 11:10:00 +0200 Subject: [PATCH 1/3] readline70: enable structuredAttrs --- pkgs/development/libraries/readline/7.0.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/readline/7.0.nix b/pkgs/development/libraries/readline/7.0.nix index 7a04c26ae76e..7c48c00b32ad 100644 --- a/pkgs/development/libraries/readline/7.0.nix +++ b/pkgs/development/libraries/readline/7.0.nix @@ -47,6 +47,8 @@ stdenv.mkDerivation rec { env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isGNU "-std=gnu17"; + __structuredAttrs = true; + meta = { description = "Library for interactive line editing"; From 405be193df186c9779b804daef33a6b36daa0d8d Mon Sep 17 00:00:00 2001 From: Stefan Frijters Date: Wed, 5 Aug 2026 11:10:05 +0200 Subject: [PATCH 2/3] readline: enable structuredAttrs --- pkgs/development/libraries/readline/8.3.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/readline/8.3.nix b/pkgs/development/libraries/readline/8.3.nix index f32bf7c36a59..f9d3789834ca 100644 --- a/pkgs/development/libraries/readline/8.3.nix +++ b/pkgs/development/libraries/readline/8.3.nix @@ -97,6 +97,8 @@ stdenv.mkDerivation (finalAttrs: { ln -s $out/lib/libreadline.so* $out/lib/libreadline.so ''; + __structuredAttrs = true; + meta = { description = "Library for interactive line editing"; From 07dd2ab10d702c348d5425e2366ccb098eccb0c7 Mon Sep 17 00:00:00 2001 From: Stefan Frijters Date: Fri, 21 Aug 2026 01:39:30 +0200 Subject: [PATCH 3/3] readline70: use finalAttrs, optionalAttrs --- pkgs/development/libraries/readline/7.0.nix | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/pkgs/development/libraries/readline/7.0.nix b/pkgs/development/libraries/readline/7.0.nix index 7c48c00b32ad..2ab9ac288d12 100644 --- a/pkgs/development/libraries/readline/7.0.nix +++ b/pkgs/development/libraries/readline/7.0.nix @@ -5,12 +5,12 @@ ncurses, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "readline"; - version = "7.0p${toString (builtins.length upstreamPatches)}"; + version = "7.0p${toString (builtins.length finalAttrs.upstreamPatches)}"; src = fetchurl { - url = "mirror://gnu/readline/readline-${meta.branch}.tar.gz"; + url = "mirror://gnu/readline/readline-${finalAttrs.meta.branch}.tar.gz"; sha256 = "0d13sg9ksf982rrrmv5mb6a2p4ys9rvg9r71d6il0vr8hmql63bm"; }; @@ -32,7 +32,7 @@ stdenv.mkDerivation rec { patch = nr: sha256: fetchurl { - url = "mirror://gnu/readline/readline-${meta.branch}-patches/readline70-${nr}"; + url = "mirror://gnu/readline/readline-${finalAttrs.meta.branch}-patches/readline70-${nr}"; inherit sha256; }; in @@ -43,9 +43,11 @@ stdenv.mkDerivation rec { ./link-against-ncurses.patch ./no-arch_only-6.3.patch ] - ++ upstreamPatches; + ++ finalAttrs.upstreamPatches; - env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isGNU "-std=gnu17"; + env = lib.optionalAttrs stdenv.cc.isGNU { + NIX_CFLAGS_COMPILE = "-std=gnu17"; + }; __structuredAttrs = true; @@ -76,4 +78,4 @@ stdenv.mkDerivation rec { platforms = lib.platforms.unix; branch = "7.0"; }; -} +})