glibc: 2.42-84 -> 2.44-25 (#557451)

This commit is contained in:
Vladimír Čunát
2026-09-23 05:31:03 +00:00
committed by GitHub
104 changed files with 4867 additions and 11731 deletions

View File

@@ -66,6 +66,16 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-9KKTr7p1vCgvGr6hFY83K5gbL7Ilm4Uzc86JIxv+ahI=";
revert = true;
})
# Fix gphoto2 backend build with glibc 2.43 C23 const-preserving strchr
(fetchpatch {
url = "https://gitlab.com/sane-project/backends/-/commit/d04d17b456d9847021b6df6eb08a3419a75172cf.patch";
hash = "sha256-4iAzwA+uh8W+xSpUkZgvShQ71kq/OVJ26pKsD1NwiXs=";
})
(fetchpatch {
url = "https://gitlab.com/sane-project/backends/-/commit/ebd4d82bd7a6b8c57870dbfb492e4c186cf584d8.patch";
hash = "sha256-vHtv+OMA0f9JR1ReshTg8IOgcZf7cnV7chitRBBCAg4=";
})
];
postPatch = ''

View File

@@ -37,6 +37,7 @@ buildMozillaMach rec {
spec = "firefox@${lib.removeSuffix "esr" version}";
};
};
broken = true; # doesn't build on glibc 2.44
};
tests = {
inherit (nixosTests) firefox-esr-140;

View File

@@ -15,6 +15,7 @@ let
sha512,
updateScript,
applicationName ? "Thunderbird",
broken ? stdenv.buildPlatform.is32bit,
}:
(buildMozillaMach rec {
pname = "thunderbird";
@@ -49,6 +50,7 @@ let
'';
meta = {
inherit broken;
changelog = "https://www.thunderbird.net/en-US/thunderbird/${version}/releasenotes/";
description = "Full-featured e-mail client";
homepage = "https://www.thunderbird.net/";
@@ -61,7 +63,6 @@ let
vcunat
];
platforms = lib.platforms.unix;
broken = stdenv.buildPlatform.is32bit;
# since Firefox 60, build on 32-bit platforms fails with "out of memory".
# not in `badPlatforms` because cross-compilation on 64-bit machine might work.
license = lib.licenses.mpl20;
@@ -120,6 +121,8 @@ rec {
versionPrefix = "140";
versionSuffix = "esr";
};
broken = true;
};
}
// lib.optionalAttrs config.allowAliases {

View File

@@ -33,6 +33,9 @@ stdenv.mkDerivation (finalAttrs: {
zlib
];
# glibc 2.43 C23 const-preserving strchr/strstr macros
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
dontUseCmakeConfigure = true;
preBuild = ''

View File

@@ -22,7 +22,10 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-DkfpMK0T67B4mnriignf4hx6Ifddls0rN0SxyfEsPZg=";
};
env.NIX_CFLAGS_COMPILE = toString [ "-Wno-error=deprecated-declarations" ];
env.NIX_CFLAGS_COMPILE = toString [
"-Wno-error=deprecated-declarations"
"-Wno-error=discarded-qualifiers"
];
makeFlags = [
"DESTDIR=\${out}"

View File

@@ -0,0 +1,20 @@
diff --git a/prelude/CATS/array.cats b/prelude/CATS/array.cats
index 70c7e3e..cec3b1d 100644
--- a/prelude/CATS/array.cats
+++ b/prelude/CATS/array.cats
@@ -56,6 +56,7 @@ void qsort
void *base, size_t nmemb, size_t size
, int(*compar)(const void *, const void *)
) ; // end of [qsort]
+#ifndef bsearch
extern
void *bsearch
(
@@ -64,6 +65,7 @@ void *bsearch
, size_t nmemb, size_t size
, int (*compar)(const void *, const void *)
) ; // end of [bsearch]
+#endif
//
#define atspre_array_qsort qsort
#define atspre_array_bsearch bsearch

View File

@@ -49,6 +49,10 @@ stdenv.mkDerivation rec {
sed -i 's/gcc/clang/g' utils/*/DATS/atscc_util.dats
'';
patches = [
./fix-build-glibc-2.44.patch
];
buildInputs = [ gmp ];
# Disable parallel build, errors:

View File

@@ -28,6 +28,9 @@ stdenv.mkDerivation (finalAttrs: {
hardeningDisable = [ "fortify" ];
# fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
makeFlags = [ "PREFIX=${placeholder "out"}" ];
nativeBuildInputs = [ installShellFiles ];

View File

@@ -3,6 +3,7 @@
fetchFromGitHub,
makeWrapper,
nixosTests,
fetchpatch,
stdenv,
# Build inputs
@@ -25,6 +26,14 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-qaiRWRd9+ElJ40QGOS3AxT2NvF3phQCyPnVz6RfTt8c=";
};
patches = [
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/Zygo/bees/commit/14c82dce8a7e9714d6f9cd03229e0fb55460aa25.patch";
hash = "sha256-bAYacaS3u01XdlM/8+baD+sMuCOyYDtSis4NvTkx8jk=";
})
];
buildInputs = [
btrfs-progs # for btrfs/ioctl.h
util-linux # for uuid.h

View File

@@ -73,5 +73,6 @@ stdenv.mkDerivation (finalAttrs: {
maintainers = with lib.maintainers; [ sigmanificient ];
platforms = lib.platforms.unix;
mainProgram = "cdecl";
broken = true;
};
})

View File

@@ -130,6 +130,9 @@ llvmStdenv.mkDerivation (finalAttrs: {
postPatch = ''
patchShebangs src/ utils/
substituteInPlace contrib/liburing-cmake/CMakeLists.txt \
--replace-fail "set (LIBURING_CONFIG_HAS_OPEN_HOW FALSE)" "set (LIBURING_CONFIG_HAS_OPEN_HOW TRUE)"
''
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
substituteInPlace cmake/tools.cmake \

View File

@@ -42,5 +42,6 @@ stdenv.mkDerivation (finalAttrs: {
maintainers = [ ];
platforms = lib.platforms.linux;
mainProgram = "convimg";
broken = true;
};
})

View File

@@ -9,6 +9,7 @@
sqlite,
incus,
nix-update-script,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -22,6 +23,14 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-7djVcozWklI/0KhDC20df+H3YQbodUZaXBnQT4Ug8oI=";
};
patches = [
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/cowsql/cowsql/commit/7c4d73151969ead4f81077ae243d81396ce67988.patch";
hash = "sha256-aJkf3egKbF23KNC0feDkxh8gIEupsyDBY3PTKuT6lcQ=";
})
];
nativeBuildInputs = [
autoreconfHook
pkg-config

View File

@@ -45,6 +45,12 @@ stdenv.mkDerivation (finalAttrs: {
url = "https://github.com/checkpoint-restore/criu/commit/3f3acc3200a23140abaa32a2017ae159d3c2d02c.patch?full_index=1";
hash = "sha256-J8n4TjqjzJLLULnpJdR/6YWa/8moFQMn+wNo4a0otgE=";
})
# fix build w/ glibc-2.44
(fetchpatch2 {
url = "https://github.com/checkpoint-restore/criu/commit/a810faba33f43d61372741ed196eafd485546f83.patch?full_index=1";
hash = "sha256-UHSSC3qI6dvtUAiXNnKXTtuXZYGE0SXpUnQ917SXFaU=";
})
];
enableParallelBuilding = true;

View File

@@ -1,67 +0,0 @@
diff -Naur --no-dereference ctx-source-old/configure.sh ctx-source-new/configure.sh
--- ctx-source-old/configure.sh 1969-12-31 21:00:01.000000000 -0300
+++ ctx-source-new/configure.sh 2023-09-27 19:26:05.403569888 -0300
@@ -42,15 +42,18 @@
ENABLE_SWITCH_DISPATCH=1
pkg-config sdl2 && HAVE_SDL=1
-pkg-config babl && HAVE_BABL=1
+
+pkg-config babl-0.1 && { HAVE_BABL=1; BABL_NAME=babl-0.1; }
+if [ $HAVE_BABL != 1 ]; then
+ pkg-config babl && { HAVE_BABL=1; BABL_NAME=babl; }
+fi
+
pkg-config libcurl && HAVE_LIBCURL=1
pkg-config alsa && HAVE_ALSA=1
pkg-config libdrm && HAVE_KMS=1
#pkg-config harfbuzz && HAVE_HARFBUZZ=1
-
-
-ARCH=`uname -m`
+: "${ARCH:="$(uname -m)"}"
case "$ARCH" in
"x86_64") HAVE_SIMD=1 ;;
@@ -224,8 +227,8 @@
if [ $HAVE_BABL = 1 ];then
echo "#define CTX_BABL 1 " >> local.conf
echo "#define CTX_ENABLE_CM 1 " >> local.conf
- echo "CTX_CFLAGS+= `pkg-config babl --cflags`" >> build.conf
- echo "CTX_LIBS+= `pkg-config babl --libs` " >> build.conf
+ echo "CTX_CFLAGS+= `pkg-config "${BABL_NAME}" --cflags`" >> build.conf
+ echo "CTX_LIBS+= `pkg-config "${BABL_NAME}" --libs` " >> build.conf
else
echo "#define CTX_BABL 0 " >> local.conf
echo "#define CTX_ENABLE_CM 0 " >> local.conf
@@ -335,7 +338,7 @@
#echo "Generating build.deps"
#make build.deps 2>/dev/null
-echo -n "configuration summary, architecture $(arch)"
+echo -n "configuration summary, architecture $ARCH"
[ $HAVE_SIMD = 1 ] && echo " SIMD multi-pass"
echo ""
echo "Backends:"
diff -Naur --no-dereference ctx-source-old/Makefile ctx-source-new/Makefile
--- ctx-source-old/Makefile 1969-12-31 21:00:01.000000000 -0300
+++ ctx-source-new/Makefile 2023-09-27 19:37:23.779830320 -0300
@@ -206,8 +206,8 @@
libctx.a: itk.o deps.o $(CTX_OBJS) build.conf Makefile
$(AR) rcs $@ $(CTX_OBJS) deps.o itk.o
libctx.so: $(CTX_OBJS) deps.o itk.o build.conf Makefile
- $(LD) -shared $(LIBS) $(CTX_OBJS) deps.o itk.o $(CTX_LIBS) -o $@
- #$(LD) --retain-symbols-file=symbols -shared $(LIBS) $? $(CTX_LIBS) -o $@
+ $(CCC) -shared $(LIBS) $(CTX_OBJS) deps.o itk.o $(CTX_LIBS) -o $@
+ #$(CCC) --retain-symbols-file=symbols -shared $(LIBS) $? $(CTX_LIBS) -o $@
ctx: main.c ctx.h build.conf Makefile $(TERMINAL_OBJS) $(MEDIA_HANDLERS_OBJS) libctx.a
$(CCC) main.c $(TERMINAL_OBJS) $(MEDIA_HANDLERS_OBJS) -o $@ $(CFLAGS) libctx.a $(LIBS) $(CTX_CFLAGS) $(OFLAGS_LIGHT) -lpthread $(CTX_LIBS)
@@ -277,5 +277,5 @@
for a in `cat itk/css.h | tr ';' ' ' | tr ',' ' ' | tr ')' ' '|tr ':' ' ' | tr '{' ' ' | tr ' ' '\n' | grep 'SQZ_[a-z][0-9a-zA-Z_]*'| sort | uniq`;do b=`echo $$a|tail -c+5|tr '_' '-'`;echo "#define $$a `./squoze/squoze -33 $$b`u // \"$$b\"";done \
>> $@
echo '#endif' >> $@
-static.inc: static/* static/*/* tools/gen_fs.sh
+static.inc: static/* tools/gen_fs.sh
./tools/gen_fs.sh static > $@

View File

@@ -1,83 +0,0 @@
{
lib,
stdenv,
fetchgit,
SDL2,
alsa-lib,
babl,
bash,
curl,
libdrm, # Not documented
pkg-config,
xxd,
enableFb ? false,
nixosTests,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "ctx";
version = "0-unstable-2023-09-03";
src = fetchgit {
name = "ctx-source"; # because of a dash starting the directory
url = "https://ctx.graphics/.git/";
rev = "1bac18c152eace3ca995b3c2b829a452085d46fb";
hash = "sha256-fOcQJ2XCeomdtAUmy0A+vU7Vt325OSwrb1+ccW+gZ38=";
};
patches = [
# Many problematic things fixed - it should be upstreamed somehow:
# - babl changed its name in pkg-config files
# - arch detection made optional
# - LD changed to CCC
# - remove inexistent reference to static/*/*
./0001-fix-detections.diff
];
postPatch = ''
patchShebangs ./tools/gen_fs.sh
'';
nativeBuildInputs = [
pkg-config
xxd
];
buildInputs = [
SDL2
alsa-lib
babl
bash # for ctx-audioplayer
curl
libdrm
];
strictDeps = true;
env.ARCH = stdenv.hostPlatform.parsed.cpu.arch or stdenv.hostPlatform.parsed.cpu.name;
configureScript = "./configure.sh";
configureFlags = lib.optional enableFb "--enable-fb";
configurePlatforms = [ ];
dontAddPrefix = true;
dontDisableStatic = true;
installFlags = [
"PREFIX=${placeholder "out"}"
];
passthru.tests.test = nixosTests.terminal-emulators.ctx;
meta = {
homepage = "https://ctx.graphics/";
description = "Vector graphics terminal";
longDescription = ''
ctx is an interactive 2D vector graphics, audio, text- canvas and
terminal, with escape sequences that enable a 2D vector drawing API using
a vector graphics protocol.
'';
license = lib.licenses.gpl3Plus;
maintainers = [ ];
platforms = lib.platforms.unix;
};
})

View File

@@ -9,6 +9,7 @@
libcap,
perl,
ncurses,
fetchpatch,
}:
let
lua = lua5_1;
@@ -24,6 +25,14 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-Fz+qvgw5ipyAcZlWBGkmSHuGrZ95i5OorLN3dkdsYKU=";
};
patches = [
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/chaos/diod/commit/d56db0c55012c8a9ea2d3c72749022292c0f65b8.patch";
hash = "sha256-wuPok3D3VKiao9NmHYLcccsL+91xVbhUeSDExw17X/E=";
})
];
postPatch = ''
sed -i configure.ac -e '/git describe/c ${finalAttrs.version})'
'';

View File

@@ -1,12 +0,0 @@
diff --git a/src/lib/map/Mapper.cpp b/src/lib/map/Mapper.cpp
index 6eaa2c5..781988c 100644
--- a/src/lib/map/Mapper.cpp
+++ b/src/lib/map/Mapper.cpp
@@ -22,6 +22,7 @@
//#include "common/Crc32Hw.hpp"
#include "common/DragenLogger.hpp"
#include "map/Mapper.hpp"
+#include <boost/range/iterator_range.hpp>
namespace dragenos {
namespace map {

View File

@@ -1,73 +0,0 @@
diff --git a/src/include/map/SeedPosition.hpp b/src/include/map/SeedPosition.hpp
index 30a7d47..c05af16 100644
--- a/src/include/map/SeedPosition.hpp
+++ b/src/include/map/SeedPosition.hpp
@@ -16,6 +16,7 @@
#define MAP_SEED_POSITION_HPP
#include <ostream>
+#include <cstdint>
#include "sequences/Seed.hpp"
diff --git a/src/include/sequences/Read.hpp b/src/include/sequences/Read.hpp
index 460c1cb..c7ff619 100644
--- a/src/include/sequences/Read.hpp
+++ b/src/include/sequences/Read.hpp
@@ -16,6 +16,7 @@
#define SEQUENCES_READ_HPP
#include <iostream>
+#include <cstdint>
#include <string>
#include <vector>
diff --git a/src/include/sequences/Seed.hpp b/src/include/sequences/Seed.hpp
index a242153..dd4d23b 100644
--- a/src/include/sequences/Seed.hpp
+++ b/src/include/sequences/Seed.hpp
@@ -16,6 +16,7 @@
#define SEQUENCES_SEED_HPP
#include <ostream>
+#include <cstdint>
#include <vector>
#include "sequences/Read.hpp"
diff --git a/src/lib/sequences/tests/unit/CrcHasherMocks.hpp b/src/lib/sequences/tests/unit/CrcHasherMocks.hpp
index 1866be7..5d9b7d7 100644
--- a/src/lib/sequences/tests/unit/CrcHasherMocks.hpp
+++ b/src/lib/sequences/tests/unit/CrcHasherMocks.hpp
@@ -2,6 +2,7 @@
#include <array>
#include <cassert>
+#include <cstdint>
#include <cstdlib>
#include <string>
diff --git a/stubs/dragen/src/host/dragen_api/read_group_list.hpp b/stubs/dragen/src/host/dragen_api/read_group_list.hpp
index eefb9ae..623a77f 100644
--- a/stubs/dragen/src/host/dragen_api/read_group_list.hpp
+++ b/stubs/dragen/src/host/dragen_api/read_group_list.hpp
@@ -14,6 +14,7 @@
#define __READ_GROUP_LIST_HPP__
#include "dragen_exception.hpp"
+#include <cstdint>
class ReadGroupList {
public:
const std::string &getReadGroupName(const uint16_t idx) const {
diff --git a/stubs/dragen/src/host/metrics/public/run_stats.hpp b/stubs/dragen/src/host/metrics/public/run_stats.hpp
index 998fe4e..9561b0b 100644
--- a/stubs/dragen/src/host/metrics/public/run_stats.hpp
+++ b/stubs/dragen/src/host/metrics/public/run_stats.hpp
@@ -10,6 +10,7 @@
#include <string>
#include <vector>
#include <memory>
+#include <cstdint>
//
// RP: HA! HA! HA! That's what you get when you write code logging to cout all
// over the place!

View File

@@ -1,11 +0,0 @@
diff --git a/thirdparty/dragen/src/common/hash_generation/gen_hash_table.c b/thirdparty/dragen/src/common/hash_generation/gen_hash_table.c
index cdca3df..5a55699 100644
--- a/thirdparty/dragen/src/common/hash_generation/gen_hash_table.c
+++ b/thirdparty/dragen/src/common/hash_generation/gen_hash_table.c
@@ -249,7 +249,7 @@ void setDefaultHashParams(hashTableConfig_t* defConfig, const char* destDir, Has
free(dir);
}
- defConfig->hostVersion = (char*)getHostVersion(0);
+ defConfig->hostVersion = (char*)getHostVersion();
}

View File

@@ -1,82 +0,0 @@
{
lib,
stdenv,
fetchFromGitHub,
boost,
gtest,
zlib,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "dragmap";
version = "1.3.0";
src = fetchFromGitHub {
owner = "Illumina";
repo = "DRAGMAP";
tag = finalAttrs.version;
fetchSubmodules = true;
hash = "sha256-f1jsOErriS1I/iUS4CzJ3+Dz8SMUve/ccb3KaE+L7U8=";
};
nativeBuildInputs = [ boost ];
buildInputs = [
gtest
zlib
];
# Latest boost do not need system as a linking flag
postPatch = ''
sed -i 's/system filesystem/filesystem/' config.mk
'';
patches = [
# getHostVersion use an empty parameter list. This is now an error for GC
./getHostVersion.patch
# pclose is called on a NULL value. This is no longer allowed since
# https://github.com/bminor/glibc/commit/64b1a44183a3094672ed304532bedb9acc707554
./stdio-pclose.patch
# Add missing include cstdint. Upstream does not accept PR. Issue opened at
# https://github.com/Illumina/DRAGMAP/issues/63
./cstdint.patch
# Missing import in Mapper.cpp
# Issue opened upstream https://github.com/Illumina/DRAGMAP/pull/66
./boost-iterator-range.patch
];
env = {
GTEST_INCLUDEDIR = "${gtest.dev}/include";
CPPFLAGS = "-I ${boost.dev}/include";
LDFLAGS = "-L ${boost.out}/lib";
};
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp build/release/dragen-os $out/bin/
runHook postInstall
'';
# Tests are launched by default from makefile
doCheck = false;
meta = {
description = "Open Source version of Dragen mapper for genomics";
mainProgram = "dragen-os";
longDescription = ''
DRAGMAP is an open-source software implementation of the DRAGEN mapper,
which the Illumina team created to produce the same results as their
proprietary DRAGEN hardware.
'';
homepage = "https://github.com/Illumina/DRAGMAP";
changelog = "https://github.com/Illumina/DRAGMAP/releases/tag/${finalAttrs.version}";
license = lib.licenses.gpl3;
platforms = [ "x86_64-linux" ];
maintainers = with lib.maintainers; [ apraga ];
};
})

View File

@@ -1,12 +0,0 @@
diff --git a/stubs/dragen/src/host/infra/linux/infra_linux_utils.cpp b/stubs/dragen/src/host/infra/linux/infra_linux_utils.cpp
index cd02cd4..c26e9cf 100644
--- a/stubs/dragen/src/host/infra/linux/infra_linux_utils.cpp
+++ b/stubs/dragen/src/host/infra/linux/infra_linux_utils.cpp
@@ -57,7 +57,6 @@ int GetDmiValue(const std::string& label, std::string& value)
FILE* dmiOutput = popen("sudo /usr/sbin/dmidecode -t 2", "r");
if (dmiOutput == NULL) {
perror("dmidecode popen");
- pclose(dmiOutput);
return -1;
}

View File

@@ -73,6 +73,8 @@ stdenv.mkDerivation (finalAttrs: {
# Required for installation of Python library and is innocuous otherwise.
env.DESTDIR = "/";
# glibc 2.43 C23 const-preserving strchr/strstr macros
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
mesonAutoFeatures = "auto";
mesonFlags = [

View File

@@ -6,6 +6,7 @@
pkg-config,
popt,
mandoc,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -33,6 +34,14 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [ popt ];
depsBuildBuild = [ buildPackages.stdenv.cc ];
patches = [
# fix build with glibc-2.44
(fetchpatch {
url = "https://github.com/rhboot/efivar/commit/f521cd7f584c95d8308659ab9d89d750e2bd76da.patch";
hash = "sha256-I19UIS0tNTsEipuoMQPlTEwih1RrYPz9Q4Wy98u1z0Q=";
})
];
makeFlags = [
"prefix=$(out)"
"libdir=$(out)/lib"

View File

@@ -28,6 +28,8 @@ stdenv.mkDerivation (finalAttrs: {
lib.optionals stdenv.cc.isGNU [
# Needed with GCC 12
"-Wno-error=maybe-uninitialized"
# Fix build w/ glibc-2.44
"-Wno-error=discarded-qualifiers"
]
);

View File

@@ -27,6 +27,8 @@ stdenv.mkDerivation {
nss
];
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
postPatch = ''
patchShebangs ./scripts
substituteInPlace ./scripts/getversion.sh \

View File

@@ -7,6 +7,7 @@
ninja,
dbus,
scdoc,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -19,6 +20,15 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-UGkShHziREQTkQUlbFXT1144BiBApFVbCvu5A1DuoMI=";
};
patches = [
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://codeberg.org/dnkl/fyi/commit/0a663c5230f756d1161a11080d1a113664e79c21.patch";
hash = "sha256-B4RkenK4pDAl0jYCgoZH27yUDt3evAHaYnassLaFvB4=";
excludes = [ "CHANGELOG.md" ];
})
];
depsBuildBuild = [ pkg-config ];
nativeBuildInputs = [

View File

@@ -223,6 +223,9 @@ stdenv.mkDerivation rec {
strictDeps = true;
# glibc 2.43 C23 const-preserving strchr/strstr macros
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
hardeningDisable = [ "all" ];
separateDebugInfo = !xenSupport;

View File

@@ -2,7 +2,6 @@
lib,
stdenv,
fetchFromGitHub,
fetchpatch2,
pkg-config,
autoPatchelfHook,
autoreconfHook,
@@ -28,13 +27,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "guacamole-server";
version = "1.6.0-unstable-2025-06-29";
version = "1.6.0-unstable-2026-08-16";
src = fetchFromGitHub {
owner = "apache";
repo = "guacamole-server";
rev = "f3f5b9d76649ccc24f551cb166c81078f4b5e236";
hash = "sha256-OjTwAQzKUuXfwZXLsL9XjrJc/0be38CmAGG+CoCeNwk=";
rev = "d3b7828977c63a5b197158d6cbbdaf1846b579fb";
hash = "sha256-sxZLzF6m35EtfLRHb1+aqR3RF+piOuvPT9w9Hs3cor0=";
};
env.NIX_CFLAGS_COMPILE = toString [

View File

@@ -68,7 +68,23 @@ let
helixTreeSitterGrammars =
lib.filterAttrs (drvName: _: lib.hasAttr (lib.removePrefix "tree-sitter-" drvName) lockedGrammars)
(tree-sitter-grammars.overrideScope (lib.composeExtensions lockedVersionsOverlay grammarsOverlay));
(
tree-sitter-grammars.overrideScope (
lib.composeManyExtensions [
lockedVersionsOverlay
grammarsOverlay
(self: super: {
tree-sitter-perl = super.tree-sitter-perl.overrideAttrs {
postPatch = ''
rm src/bsearch.c
substituteInPlace src/tsp_unicode.h \
--replace-fail '#include "bsearch.c"' ""
'';
};
})
]
)
);
# Dynamic libraries for the grammars always use the `.so` extension, also on Darwin (should use `.dylib`)
# See here: https://github.com/helix-editor/helix/pull/14982

View File

@@ -21,6 +21,7 @@ stdenv.mkDerivation (finalAttrs: {
env.NIX_CFLAGS_COMPILE = toString [
"-Wno-error=stringop-overflow"
"-Wno-error=stringop-truncation"
"-Wno-error=discarded-qualifiers"
];
patches = [
# gcc7 compat

View File

@@ -6,6 +6,7 @@
ip2location-c,
openssl,
perl,
fetchpatch,
libmaxminddb ? null,
geolite-legacy ? null,
}:
@@ -30,6 +31,14 @@ stdenv.mkDerivation (finalAttrs: {
perl
];
patches = [
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/pbiering/ipv6calc/commit/9b6aebd3690d93b6c2f9efa9346ec72540b1a718.patch";
hash = "sha256-Y/XBMWdG2/Pfr/vZ2+RGYGj2JS3mWJwQGkXnKvXHArg=";
})
];
postPatch = ''
patchShebangs *.sh */*.sh
for i in {,databases/}lib/Makefile.in; do

View File

@@ -40,6 +40,9 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-fW6Tc0UEPYFTgEFMUxZaVm2NU5LNFqszifqOqfdFJZY=";
};
# fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
nativeBuildInputs = [ which ];
buildInputs = [ gmp ];

View File

@@ -75,7 +75,9 @@ stdenv.mkDerivation (finalAttrs: {
# void foo();
#
# declaration.
NIX_CFLAGS_COMPILE = "-std=gnu17" + lib.optionalString stdenv.hostPlatform.isStatic " -fcommon";
NIX_CFLAGS_COMPILE =
"-std=gnu17 -Wno-error=discarded-qualifiers"
+ lib.optionalString stdenv.hostPlatform.isStatic " -fcommon";
};
configureFlags = [

View File

@@ -19,6 +19,9 @@ stdenv.mkDerivation {
buildInputs = lib.optionals stdenv.hostPlatform.isAarch64 [ dtc ];
# glibc 2.43 C23 const-preserving strchr/strstr macros
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
enableParallelBuilding = true;
makeFlags = [

View File

@@ -17,6 +17,7 @@
buildPackages,
libxcrypt,
testers,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -33,6 +34,16 @@ stdenv.mkDerivation (finalAttrs: {
"dev"
];
patches = [
# Fix rep_memset_s calling C23 memset_explicit with wrong arg count (4 instead of 3).
# Upstream samba commit 04e0fb9b2d; later reworked more broadly in ef08be24e9 and 3e81b73a05
# which replace memset_s with memset_explicit entirely, but those don't apply to ldb 2.9.2.
(fetchpatch {
url = "https://gitlab.com/samba-team/samba/-/commit/04e0fb9b2d1d87516f1331096c78e8355b4fa9f3.patch";
hash = "sha256-sBqtVwGBXseCAMlv3QaiSYQmOw7H4cAJwc0Ey5yD6Os=";
})
];
nativeBuildInputs = [
pkg-config
python3

View File

@@ -12,6 +12,7 @@
libusb1,
curl,
udev,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -29,6 +30,12 @@ stdenv.mkDerivation (finalAttrs: {
patches = [
# fix clang build: https://github.com/Nuand/bladeRF/pull/1045
./clang-fix.patch
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/Nuand/bladeRF/commit/87bdb1a4bbbc45b749bb90db504fe9cf8fe7a595.patch";
hash = "sha256-/sB18hwBSIqMkjaC7J0rb4STUrq4BWlJKnyy0Szac9c=";
})
];
nativeBuildInputs = [

View File

@@ -34,6 +34,11 @@ stdenv.mkDerivation (finalAttrs: {
patches = [
./nix-store-date.patch
# Fixes build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/wolfcw/libfaketime/commit/dbe865dfdba0145d993d70b7fd4ec88b2f47554b.patch";
hash = "sha256-pn9MInefa4ZKuOorGEpi/sDQOQamCakjdYOkFSNA2VQ=";
})
]
++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
# GCC 16's unused variable analysis is more advanced than previous

View File

@@ -29,6 +29,9 @@ stdenv.mkDerivation (finalAttrs: {
})
];
# fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
nativeBuildInputs = [
cmake
pkg-config

View File

@@ -34,6 +34,9 @@ stdenv.mkDerivation (finalAttrs: {
pkg-config
];
# glibc 2.43 C23 const-preserving strchr/strstr macros
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
buildInputs = [
cjson
cmocka

View File

@@ -76,5 +76,6 @@ stdenv.mkDerivation (finalAttrs: {
mainProgram = "links";
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.unix;
broken = true;
};
})

View File

@@ -96,6 +96,8 @@ stdenv.mkDerivation (finalAttrs: {
"-Wno-error=address"
"-Wno-error=use-after-free"
"-std=gnu17"
# Fix build w/ glibc-2.44
"-Wno-error=discarded-qualifiers"
]
++ [
"-Wno-error=deprecated-declarations"

View File

@@ -94,7 +94,10 @@ buildBazelPackage {
"file://${registry}"
];
env = lib.optionalAttrs stdenv.hostPlatform.isDarwin {
env = {
NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
}
// lib.optionalAttrs stdenv.hostPlatform.isDarwin {
LIBTOOL = "${cctools}/bin/libtool";
};

View File

@@ -20,7 +20,10 @@ stdenv.mkDerivation (finalAttrs: {
configureFlags = [ "--with-ssl=openssl" ];
env.NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
env.NIX_CFLAGS_COMPILE = toString [
"-Wno-error=deprecated-declarations"
"-Wno-error=discarded-qualifiers"
];
propagatedBuildInputs = [
openssl

View File

@@ -55,6 +55,8 @@ stdenv.mkDerivation (finalAttrs: {
env.NIX_CFLAGS_COMPILE = toString [
# Needed with GCC 12
"-Wno-error=free-nonheap-object"
# Fix build w/ glibc-2.44
"-Wno-error=discarded-qualifiers"
];
postInstall = ''

View File

@@ -44,6 +44,11 @@ stdenv.mkDerivation {
sha256 = "035f92vni0vqmgj9hq2i7vwasz7crx52wll4823vhfkm1qdv5ywc";
};
postPatch = ''
substituteInPlace "src/microcode/chacha.i" \
--replace-fail "#define _POSIX_C_SOURCE 200809L" ""
'';
patches = [
(fetchDebianPatch {
pname = "mit-scheme";

View File

@@ -1,64 +0,0 @@
{
lib,
stdenv,
fetchFromCodeberg,
runtimeShell,
}:
stdenv.mkDerivation {
pname = "ngn-k";
version = "0-unstable-2025-11-17";
src = fetchFromCodeberg {
owner = "ngn";
repo = "k";
rev = "717063f24921d5aff405a39cf7643efedb5bb365";
hash = "sha256-rUMi+VetQc139PjbFJXlSkmYEuK5wtM6LpQ/f1tcB1s=";
};
patches = [
./repl-license-path.patch
./repl-argv-1.patch
];
postPatch = ''
# don't use hardcoded /bin/sh
for f in repl.k m.c;do
substituteInPlace "$f" --replace-fail "/bin/sh" "${runtimeShell}"
done
'';
makeFlags = [ "-e" ];
buildFlags = [
"k"
"libk.so"
];
checkTarget = "t";
doCheck = true;
outputs = [
"out"
"dev"
"lib"
];
# TODO(@sternenseemann): package bulgarian translation
installPhase = ''
runHook preInstall
install -Dm755 k "$out/bin/k"
install -Dm755 repl.k "$out/bin/k-repl"
install -Dm755 libk.so "$lib/lib/libk.so"
install -Dm644 k.h "$dev/include/k.h"
install -Dm644 LICENSE -t "$out/share/ngn-k"
substituteInPlace "$out/bin/k-repl" --replace-fail "#!k" "#!$out/bin/k"
runHook postInstall
'';
meta = {
description = "Simple fast vector programming language";
homepage = "https://codeberg.org/ngn/k";
license = lib.licenses.agpl3Only;
maintainers = [ lib.maintainers.sternenseemann ];
platforms = lib.platforms.linux ++ lib.platforms.freebsd;
};
}

View File

@@ -1,13 +0,0 @@
diff --git a/repl.k b/repl.k
index dc89832c..33780850 100755
--- a/repl.k
+++ b/repl.k
@@ -28,7 +28,7 @@ joinpath:{$[x~,".";y;"/"~*|x;x,y;x,"/",y]}
line0:{c:{0x07~*-2#*x}{(l;r):x;(1:1;r,,(-2_l))}/(x;());"\n"/(*|c),,*c}
line1:{$[#x;;:0];x:-1_x;$[(3>#x)&("\\"=*x)&~^(!cmds)?x 1;cmds[x 1]x 1;.[`1:(fmt;fmtx)[" "~*x]@.:;,x;{`0:`err[]}]];`1:prompt;1}
line:line1@line0@
-$["repl.k"~basename`argv 1;{cmds::@[cmds;x[1]1;:;{y;`0:x}2_x]}'{(&x~\:80#"-")_x:(1+*&x~\:,"/")_-1_x}@0:`argv 1;];
+$["k-repl"~basename`argv 1;{cmds::@[cmds;x[1]1;:;{y;`0:x}2_x]}'{(&x~\:80#"-")_x:(1+*&x~\:,"/")_-1_x}@0:`argv 1;];
run:{`1:banner,prompt;{line@1:`}::/`;}
\d .

View File

@@ -1,13 +0,0 @@
diff --git a/repl.k b/repl.k
index dc89832c..7a6e0dcf 100755
--- a/repl.k
+++ b/repl.k
@@ -21,7 +21,7 @@ tbl:{[w;u;x]h:`k'!x;d:`k''.x;W:(#'h)|/'#''d
r,par'dd[w-2]'sem/'+@[W;&~^`i`d?_@'.x;-:]$'d}
cell:{$[|/`i`d=@y;-x;x]$z}
par:{opn,x,cls}
-cmds:(,"a")!{`1:1:joinpath[dirname`argv 0]"LICENSE";}
+cmds:(,"a")!{`1:1:joinpath[dirname`argv 0]"../share/ngn-k/LICENSE";}
basename:{*|"/"\x}
dirname:{$[#x:"/"/-1_"/"\x;x;,"."]}
joinpath:{$[x~,".";y;"/"~*|x;x,y;x,"/",y]}

View File

@@ -7,6 +7,7 @@
perl,
pps-tools,
libcap,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -18,6 +19,14 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-z4TF8/saKVKElCYk2CP/+mNBROCWz8T5lprJjvX0aOU=";
};
patches = [
# Fix build w/ glibc-2.44
(fetchpatch {
url = "https://gitlab.archlinux.org/archlinux/packaging/packages/ntp/-/raw/8513bf75be3c0425318475e30f5725a03d8fb067/ntp-4.2.8.p18-glib-2.43.patch";
hash = "sha256-20ztNAnirijKt8rgaMz6FGoHubBOskNL5ynXte3NTvM=";
})
];
# fix for gcc-14 compile failure
postPatch = ''
substituteInPlace sntp/m4/openldap-thread-check.m4 \

View File

@@ -63,6 +63,9 @@ let
# Needed with GCC 12 but breaks on darwin (with clang) or older gcc
"-Wno-error=maybe-uninitialized"
]
++ [
"-Wno-error=discarded-qualifiers"
]
);
meta = {

View File

@@ -18,6 +18,9 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-IDBbVWs017JcrApJ3s8fjEQghWCwrK1d+E6Wp5eHNX4=";
};
# fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
nativeBuildInputs = [ cmake ];
buildInputs = [ libubox ];

View File

@@ -34,6 +34,9 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-L6lF8VaycAz7PcFArAgLhI8+sc0jnAHY3gum/uDIYz4=";
};
# fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
nativeBuildInputs = [
autoreconfHook
pkg-config

View File

@@ -25,6 +25,12 @@ stdenv.mkDerivation (finalAttrs: {
url = "https://github.com/yandex/odyssey/commit/51c0e777aa45157f4f03fbd036113ce6d11ca41f.patch?full_index=1";
hash = "sha256-yytyA2K62v7XwJQ+WJnBGh87AVyeOv0cuzlQ7oYnhFg=";
})
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/yandex/odyssey/commit/1edf6bfd05dc34324162fda1b4ca4bc38b1b581c.patch";
hash = "sha256-Rd/dqmvpY2gJMqg3hX5rXMu3vRjOG5V3QXV/S1M625Q=";
})
];
nativeBuildInputs = [ cmake ];

View File

@@ -150,6 +150,9 @@ stdenv.mkDerivation (finalAttrs: {
substituteInPlace udev/99-vmware-scsi-udev.rules \
--replace-fail "/bin/sh" "${bash}/bin/sh"
substituteInPlace lib/rpcChannel/glib_stubs.c \
--replace-fail "void g_free(void *p) { free(p); }" ""
'';
configureFlags = [

View File

@@ -40,6 +40,9 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-ggmex/BmAVgdE1JNM3kybEmr/uKqrIl8JdSoBnsg+40=";
};
# fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
nativeBuildInputs = [
cmake
git

View File

@@ -39,6 +39,9 @@ stdenv.mkDerivation (finalAttrs: {
popd
'';
# fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
nativeBuildInputs = [
meson
ninja

View File

@@ -5,6 +5,7 @@
cmake,
check,
subunit,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "orcania";
@@ -17,6 +18,18 @@ stdenv.mkDerivation (finalAttrs: {
sha256 = "sha256-Cz3IE5UrfoWjMxQ/+iR1bLsYxf5DVN+7aJqLBcPjduA=";
};
patches = [
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/babelouest/orcania/commit/ee2f45b5da8b7fb2c747419c17880ccdca14521d.patch";
hash = "sha256-BNGL2Q5STrrAO8/OKMS4S5GqlikGnvg4hgBwKTMulgU=";
})
(fetchpatch {
url = "https://github.com/babelouest/orcania/commit/f261393b4dd1b4f50aca389916407e0dfa5f2e55.patch";
hash = "sha256-KyRedPj5gBFPZmefmjLL49OY8eJNmMyd5jsFsQByTUE=";
})
];
nativeBuildInputs = [ cmake ];
nativeCheckInputs = [

View File

@@ -111,6 +111,9 @@ stdenv.mkDerivation (finalAttrs: {
"-Wno-error=strict-prototypes"
"-Wno-error=deprecated-declarations"
]
++ [
"-Wno-error=discarded-qualifiers"
]
);
enableParallelBuilding = true;

View File

@@ -13,6 +13,9 @@ stdenv.mkDerivation (finalAttrs: {
sha256 = "sha256-qb/4nM85kV1yngiuCgxqcc4Ou+mEEemi6zyDyNsK85w=";
};
# Fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
setSourceRoot = ''
sourceRoot=$(echo */src)
'';

View File

@@ -30,6 +30,12 @@ stdenv.mkDerivation (finalAttrs: {
url = "https://github.com/rhboot/pesign/commit/1f9e2fa0b4d872fdd01ca3ba81b04dfb1211a187.patch?full_index=1";
hash = "sha256-viVM4Z0jAEAWC3EdJVHcWe21aQskH5XE85lOd6Xd/qU=";
})
# fix build w/ glibc-2.44
(fetchpatch2 {
url = "https://github.com/rhboot/pesign/commit/419d63a8b6434f94b57730bb8a58a32a0bb199aa.patch?full_index=1";
hash = "sha256-/o0QknZ1IDFwmsQAt1IENx7tr8WRNJS3wl84cHzprzA=";
})
];
# nss-util is missing because it is already contained in nss

View File

@@ -1,5 +1,6 @@
{
stdenvNoLibc,
fetchpatch,
buildPackages,
fetchFromGitHub,
lib,
@@ -34,6 +35,14 @@ stdenvNoLibc.mkDerivation (finalAttrs: {
hash = "sha256-FhTNgffsnHbzIXOOwCMe6O1FGkEtqWfw+e30RW+Y4K4=";
};
patches = [
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/picolibc/picolibc/commit/11a46b6ed03c4dca64e0534435da9841e837b160.patch";
hash = "sha256-i1dKW1L5si0gf0/Sn4sU/BuIof778tvHgCCCY1TxMME=";
})
];
depsBuildBuild = lib.optionals canExecute [
buildPackages.stdenv.cc
];

View File

@@ -0,0 +1,29 @@
diff --git a/gl/stdlib.in.h b/gl/stdlib.in.h
index bef0aaa..b2e19c3 100644
--- a/gl/stdlib.in.h
+++ b/gl/stdlib.in.h
@@ -223,7 +223,7 @@ _GL_INLINE_HEADER_BEGIN
/* Declarations for ISO C N3322. */
-#if defined __GNUC__ && __GNUC__ >= 15 && !defined __clang__
+#if defined __GNUC__ && __GNUC__ >= 15 && !defined __clang__ && !defined(bsearch)
_GL_EXTERN_C void *bsearch (const void *__key,
const void *__base, size_t __nmemb, size_t __size,
int (*__compare) (const void *, const void *))
diff --git a/gl/wchar.in.h b/gl/wchar.in.h
index ab602a2..a2aa597 100644
--- a/gl/wchar.in.h
+++ b/gl/wchar.in.h
@@ -301,9 +301,11 @@ _GL_EXTERN_C int wcsncmp (const wchar_t *__s1, const wchar_t *__s2, size_t __n)
_GL_ATTRIBUTE_NONNULL_IF_NONZERO (1, 3)
_GL_ATTRIBUTE_NONNULL_IF_NONZERO (2, 3);
# ifndef __cplusplus
+# if !defined(wmemchr)
_GL_EXTERN_C wchar_t *wmemchr (const wchar_t *__s, wchar_t __wc, size_t __n)
_GL_ATTRIBUTE_NONNULL_IF_NONZERO (1, 3);
# endif
+# endif
_GL_EXTERN_C wchar_t *wmemset (wchar_t *__s, wchar_t __wc, size_t __n)
# if __GLIBC__ + (__GLIBC_MINOR__ >= 2) > 2
_GL_ATTRIBUTE_NOTHROW

View File

@@ -55,10 +55,17 @@ stdenv.mkDerivation rec {
iconv
];
patches = [
./fix-glibc-2.42.patch
];
env = {
C_INCLUDE_PATH =
"${libxml2.dev}/include/libxml2/:" + lib.makeSearchPathOutput "dev" "include" buildInputs;
LIBRARY_PATH = lib.makeLibraryPath buildInputs;
# fix build w/ glibc-2.44
NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
};
doCheck = false;

View File

@@ -56,6 +56,9 @@ stdenv.mkDerivation (finalAttrs: {
systemd
];
# fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
meta = {
description = "Enhanced SPICE integration for linux QEMU guest";
longDescription = ''

View File

@@ -39,6 +39,9 @@ stdenv.mkDerivation (finalAttrs: {
./clap-option.diff
];
# fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
postPatch = ''
# see https://github.com/NixOS/nixpkgs/pull/149487#issuecomment-991747333
export XDG_DOCUMENTS_DIR=$(mktemp -d)

View File

@@ -8,7 +8,7 @@
elfutils,
file,
jansson,
libbpf_0,
libbpf,
libcap_ng,
libevent,
libmaxminddb,
@@ -67,7 +67,7 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
elfutils
jansson
libbpf_0
libbpf
libcap_ng
libevent
libmagic

View File

@@ -32,6 +32,12 @@ stdenv.mkDerivation (finalAttrs: {
url = "https://github.com/open-iscsi/target-isns/commit/e209821423f936d1cc9b946fb8f7a8979b8e751b.patch?full_index=1";
hash = "sha256-86nl8wTiI9WSZ+Hhw/a9VtgS8OLqoFwiot5iU5IK0f8=";
})
# Fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/open-iscsi/target-isns/commit/d3645f0c357b2b14fb682fa2cd4ba3621efc4cea.patch";
hash = "sha256-/ew+B4WDF2s5bjfPLZ7glHW+o/pRTI7zPHLTDh+n4lY=";
})
];
cmakeFlags = [ "-DSUPPORT_SYSTEMD=ON" ];

View File

@@ -24,6 +24,12 @@ stdenv.mkDerivation (finalAttrs: {
url = "https://github.com/apalrd/tayga/commit/b41bd030846451d72b277854678b58370b1d5c8f.patch?full_index=1";
hash = "sha256-vFQTlZs9ghxdx4k/iODDOUBAglyll1OxUdTjzDtcwB0=";
})
# Fix build w/ glibc-2.44
(fetchpatch2 {
url = "https://github.com/apalrd/tayga/commit/807fe4e4510e697fef6916cd76d393a8ab8e495e.patch?full_index=1";
hash = "sha256-JqRKv5ZAlypQxYvhctBKPdWgC6Opxo1IV1niS5v2CfY=";
})
];
makeFlags = [

View File

@@ -6,6 +6,7 @@
ninja,
pkg-config,
python3,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "termpaint";
@@ -18,7 +19,15 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-7mfGTC5vJ4806bDbrPMSVthtW05a+M3vgUlHGbtaI4Q=";
};
patches = [ ./0001-meson.build-use-prefix.patch ];
patches = [
./0001-meson.build-use-prefix.patch
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/termpaint/termpaint/commit/6164fb5ff17fd3d05bf44e942539082aa71a2ff3.patch";
hash = "sha256-rTI0ZdJ6Q/a7M73igihd+4EZT9l6l+7oHGUnKmB5n0o=";
})
];
nativeBuildInputs = [
meson

View File

@@ -0,0 +1,146 @@
From f081fc506e0e53f671f02ebac8b324f3fd421ee8 Mon Sep 17 00:00:00 2001
From: Viktor Szakats <commit@vsz.me>
Date: Sun, 1 Mar 2026 11:39:41 +0100
Subject: [PATCH] build: constify `strchr()`/`memchr()` results
To fix building with glibc-2.43.
(also seen with gcc 16 on Fedora rawhide/f44)
Also:
- scope a variable while there.
- fix altering the const format buffer on bad syntax.
Reported-by: Gustavo Costa
Fixes #430
Reported-by: Michael Ablassmeier
Fixes #431
Closes #432
---
trurl.c | 37 +++++++++++++++++++------------------
1 file changed, 19 insertions(+), 18 deletions(-)
diff --git a/trurl.c b/trurl.c
index b5a716c..d150a93 100644
--- a/trurl.c
+++ b/trurl.c
@@ -483,7 +483,7 @@ static void pathadd(struct option *o, const char *path)
static char *encodeassign(const char *query)
{
- char *p = strchr(query, '=');
+ const char *p = strchr(query, '=');
char *urle;
if(p) {
/* URL encode the left and the right side of the '=' separately */
@@ -600,7 +600,7 @@ static int getarg(struct option *o,
gap = false;
}
else if((flag[0] == '-') && (flag[1] == '-')) {
- char *equals = strchr(&flag[2], '=');
+ const char *equals = strchr(&flag[2], '=');
if(equals) {
arg = (char *)&equals[1];
gap = false;
@@ -861,9 +861,10 @@ static void get(struct option *o, CURLU *uh)
else {
/* this is meant as a variable to output */
const char *start = ptr;
- char *end;
- char *cl;
+ const char *end;
+ const char *cl;
size_t vlen;
+ size_t badlen = 0;
bool isquery = false;
bool queryall = false;
bool strict = false; /* strict mode, fail on URL decode problems */
@@ -923,7 +924,7 @@ static void get(struct option *o, CURLU *uh)
else {
/* syntax error */
vlen = 0;
- end[1] = '\0';
+ badlen = end - start + 1;
}
break;
}
@@ -938,7 +939,7 @@ static void get(struct option *o, CURLU *uh)
queryall);
}
else if(!vlen)
- errorf(o, ERROR_GET, "Bad --get syntax: %s", start);
+ errorf(o, ERROR_GET, "Bad --get syntax: %.*s", (int)badlen, start);
else if(!strncmp(ptr, "url", vlen))
showurl(stream, o, mods, uh);
else {
@@ -1022,7 +1023,7 @@ static void get(struct option *o, CURLU *uh)
static const struct var *setone(CURLU *uh, const char *setline,
struct option *o)
{
- char *ptr = strchr(setline, '=');
+ const char *ptr = strchr(setline, '=');
const struct var *v = NULL;
if(ptr && (ptr > setline)) {
size_t vlen = ptr - setline;
@@ -1269,9 +1270,9 @@ static bool trim(struct option *o)
inslen--;
}
- for(i = 0 ; i < nqpairs; i++) {
- char *q = qpairs[i].str;
- char *sep = strchr(q, '=');
+ for(i = 0; i < nqpairs; i++) {
+ const char *q = qpairs[i].str;
+ const char *sep = strchr(q, '=');
size_t qlen;
if(sep)
qlen = sep - q;
@@ -1546,10 +1547,9 @@ static bool extractqpairs(CURLU *uh, struct option *o)
/* extract the query */
if(!curl_url_get(uh, CURLUPART_QUERY, &q, 0)) {
char *p = q;
- char *amp;
while(*p) {
size_t len;
- amp = strchr(p, o->qsep[0]);
+ char *amp = strchr(p, o->qsep[0]);
if(!amp)
len = strlen(p);
else
@@ -1684,7 +1684,7 @@ static char *canonical_path(const char *path)
{
/* split the path per slash, URL decode + encode, then put together again */
size_t len = strlen(path);
- char *sl;
+ const char *sl;
char *dupe = NULL;
do {
@@ -1810,7 +1810,8 @@ static void singleurl(struct option *o,
size_t plen;
const char *w;
size_t wlen;
- char *sep;
+ const char *sep;
+ char *sepw;
bool urlencode = true;
const struct var *v;
@@ -1852,10 +1853,10 @@ static void singleurl(struct option *o,
w = iinfo->ptr;
}
- sep = strchr(w, ' ');
- if(sep) {
- wlen = sep - w;
- iinfo->ptr = sep + 1; /* next word is here */
+ sepw = strchr(w, ' ');
+ if(sepw) {
+ wlen = sepw - w;
+ iinfo->ptr = sepw + 1; /* next word is here */
}
else {
/* last word */
--
2.54.0

View File

@@ -6,7 +6,6 @@
curl,
python3,
perl,
trurl,
versionCheckHook,
}:
@@ -22,6 +21,14 @@ stdenv.mkDerivation rec {
};
patches = [
# fix build w/ glibc-2.44
# https://github.com/curl/trurl/commit/6e1479cc3bdece8d9a7602e6f8f799305d5a5b7d, but rebased
./0001-build-constify-strchr-memchr-results.patch
(fetchpatch {
url = "https://github.com/curl/trurl/commit/b3c2faf7ee519e4686248957ee079a2452741d61.patch";
hash = "sha256-khA77XHPVF+2Vn492UuPrhVAEUijRBA2P8lvPlKYSQM=";
})
(fetchpatch {
url = "https://github.com/curl/trurl/commit/f22a2c45956f35702e437fb83ac05376f1956ec5.patch";
hash = "sha256-7CkUs5tMk77WKc7SlgE2NslHtU5cViKSGhHj3IBlpWo=";

View File

@@ -23,6 +23,7 @@
SDL2_Pango,
SDL2_ttf,
netpbm,
fetchpatch,
}:
let
@@ -50,6 +51,15 @@ stdenv.mkDerivation (finalAttrs: {
strictDeps = true;
patches = [
# Fix build w/ glibc-2.44
# https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=51c28b814990551897631be7a222af2d922030a9
(fetchpatch {
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-gfx/tuxpaint/files/tuxpaint-0.9.35-glibc-2.43.patch?id=51c28b814990551897631be7a222af2d922030a9";
hash = "sha256-xkV73GoCd/epeyWfLHq2MNmRNfKaledoFsukwVKiZSI=";
})
];
nativeBuildInputs = [
gettext
gperf

View File

@@ -5,6 +5,7 @@
cmake,
pkg-config,
json_c,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -18,6 +19,22 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-V8WGd4rSuCtGIA5oTfnagp0Dmh5FNG87/MJSeILtbM4=";
};
patches = [
(fetchpatch {
url = "https://github.com/jow-/ucode/commit/4d81e6c13506599261208786cfe4ee068f346dcd.patch";
hash = "sha256-RZhD422ue00bqam4n7jAynPDJdOzOFJnf34YbT2wH/s=";
})
(fetchpatch {
url = "https://github.com/jow-/ucode/commit/a7ead3169ebf355e66b399aca1dd3a5ce29e1e5b.patch";
hash = "sha256-sc+jSAlix1jE9Cb4MMuqI7VHG6h+zpCL7UZ84awOL6M=";
})
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/jow-/ucode/commit/beafcff845fcdbb46308ee54422661e80300079d.patch";
hash = "sha256-JcBk8kJHDlHLRuVR2fmsSfWqVmbFZMPF16+nPp6QFf4=";
})
];
buildInputs = [
json_c
];

View File

@@ -40,6 +40,9 @@ stdenv.mkDerivation (finalAttrs: {
cmake
];
# Fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
propagatedBuildInputs = [
libmicrohttpd
orcania

View File

@@ -64,6 +64,7 @@ stdenv.mkDerivation rec {
env.NIX_CFLAGS_COMPILE = toString [
# Needed with GCC 12
"-Wno-error=use-after-free"
"-Wno-error=discarded-qualifiers"
];
# Be sure to keep the statically linked libraries

View File

@@ -36,6 +36,9 @@ stdenv.mkDerivation (finalAttrs: {
]
++ lib.optional withFlashrom finalAttrs.passthru.flashromChromeos;
# Fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
enableParallelBuilding = true;
postPatch = ''

View File

@@ -133,6 +133,7 @@ stdenv.mkDerivation (finalAttrs: {
NIX_CFLAGS_COMPILE = toString [
"-Wno-error=stringop-overflow"
"-Wno-error=unterminated-string-initialization"
"-Wno-error=discarded-qualifiers"
];
};

View File

@@ -49,6 +49,12 @@ stdenv.mkDerivation (finalAttrs: {
url = "https://gitlab.com/virt-viewer/virt-viewer/-/commit/98d9f202ef768f22ae21b5c43a080a1aa64a7107.patch";
sha256 = "sha256-3AbnkbhWOh0aNjUkmVoSV/9jFQtvTllOr7plnkntb2o=";
})
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://gitlab.com/virt-viewer/virt-viewer/-/commit/a634fa8d9fbc59b093f2f07110b2c867f622599d.patch";
hash = "sha256-xNwpuVwYajlfQUbT6aDrTBqwa61Je8EhD0C9+PL/qx0=";
})
];
nativeBuildInputs = [

View File

@@ -7,6 +7,7 @@
callPackage,
zlib,
nix-update-script,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -30,6 +31,9 @@ stdenv.mkDerivation (finalAttrs: {
})
];
# fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
postPatch = ''
substituteInPlace Makefile \
--replace-fail '/bin/echo' 'echo'

View File

@@ -7,6 +7,7 @@
zlib,
openssl,
libarchive,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -33,6 +34,23 @@ stdenv.mkDerivation (finalAttrs: {
patches = [
./cert-paths.patch
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/void-linux/xbps/commit/7d02b79d3d7e0bf644adf8b412e76dba1b1fdce1.patch";
hash = "sha256-iUNBmkkfR02/EFDkax/ZpE7oM+5IVDMmD0FYz7p0dQ4=";
})
(fetchpatch {
url = "https://github.com/void-linux/xbps/commit/9a8002c5688c3cdda700b022bf432b4426d64042.patch";
hash = "sha256-/94HKeyv9LaQv6QHE0CqmM1ajBOSNt9Sfh0XKV0RLMQ=";
})
(fetchpatch {
url = "https://github.com/void-linux/xbps/commit/7f2f10300f235639c5880bea1e4b14245fd5fbda.patch";
hash = "sha256-iZXiNYrSFaP55qyzefc3hqJ+SoIOsFILqnra6u5iGpM=";
})
(fetchpatch {
url = "https://github.com/void-linux/xbps/commit/84f6a1be26348c265afedebe9cea958424b0aabf.patch";
hash = "sha256-WDsGkI+3JnJskM+UKjI/UZP6ypMCd5+3rYtlQgQEr40=";
})
];
env.NIX_CFLAGS_COMPILE = "-Wno-error=unused-result -Wno-error=deprecated-declarations";

View File

@@ -10,6 +10,7 @@
coreutils,
e2fsprogs,
fetchzip,
fetchpatch,
fio,
gawk,
keyutils,
@@ -45,6 +46,14 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-jnwEcGUSkKW9afGQTUsWR7CNQECWz/sYdSaDx0hY1Uo=";
};
patches = [
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://lore.kernel.org/fstests/20260813150846.280498-1-zlang@kernel.org/raw";
hash = "sha256-NOPMo0cdKKoPMwG53BdTe+G+vDXb+2ICGYFRs4g+edQ=";
})
];
nativeBuildInputs = [
autoconf
automake
@@ -65,7 +74,7 @@ stdenv.mkDerivation (finalAttrs: {
hardeningDisable = [ "format" ];
enableParallelBuilding = true;
patchPhase = ''
postPatch = ''
substituteInPlace Makefile \
--replace-fail "cp include/install-sh ." "cp -f include/install-sh ."

View File

@@ -21,6 +21,9 @@ stdenv.mkDerivation rec {
sourceRoot = "apache-${zookeeper.pname}-${version}/zookeeper-client/zookeeper-client-c";
# Fix build w/ glibc-2.44
env.NIX_CFLAGS_COMPILE = "-Wno-error=discarded-qualifiers";
nativeBuildInputs = [
autoreconfHook
pkg-config

View File

@@ -57,5 +57,6 @@ stdenv.mkDerivation (finalAttrs: {
license = lib.licenses.gpl3Plus;
maintainers = [ lib.maintainers.rolfschr ];
platforms = lib.platforms.linux;
broken = true; # Added 2026-09-19, fails with latest glibc
};
})

View File

@@ -1,4 +1,4 @@
From c1c36f73aa3085a856c7cf36d69c21d18d3ef5ac Mon Sep 17 00:00:00 2001
From 0ea28d2f38500559734cb0fe99eae40c04783730 Mon Sep 17 00:00:00 2001
From: Bernardo Meurer <bernardo@meurer.org>
Date: Fri, 22 Jul 2022 22:11:07 -0700
Subject: [PATCH] Revert "Remove all usage of @BASH@ or ${BASH} in installed
@@ -22,10 +22,10 @@ Co-authored-by: Maximilian Bosch <maximilian@mbosch.me>
8 files changed, 15 insertions(+), 10 deletions(-)
diff --git a/debug/Makefile b/debug/Makefile
index 6a05205ce6..dd63b16ae8 100644
index c6c1069b40..ccecf6b70b 100644
--- a/debug/Makefile
+++ b/debug/Makefile
@@ -345,8 +345,9 @@ $(objpfx)pcprofiledump: $(objpfx)pcprofiledump.o
@@ -407,8 +407,9 @@ $(objpfx)pcprofiledump: $(objpfx)pcprofiledump.o
$(objpfx)xtrace: xtrace.sh
rm -f $@.new
@@ -38,17 +38,17 @@ index 6a05205ce6..dd63b16ae8 100644
&& rm -f $@ && mv $@.new $@ && chmod +x $@
diff --git a/debug/xtrace.sh b/debug/xtrace.sh
index 00bafd33db..d0f9fca9a9 100755
index a1bb50eeaf..01383c7c79 100755
--- a/debug/xtrace.sh
+++ b/debug/xtrace.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#! @BASH@
# Copyright (C) 1999-2025 Free Software Foundation, Inc.
# Copyright (C) 1999-2026 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
diff --git a/elf/Makefile b/elf/Makefile
index 4b1d0d8741..bbcf688c99 100644
index d279a5135c..dc39ccea60 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -250,7 +250,8 @@ $(objpfx)sotruss-lib.so: $(common-objpfx)libc.so $(objpfx)ld.so \
@@ -61,7 +61,7 @@ index 4b1d0d8741..bbcf688c99 100644
-e 's%@TEXTDOMAINDIR@%$(localedir)%g' \
-e 's%@PREFIX@%$(prefix)%g' \
-e 's|@PKGVERSION@|$(PKGVERSION)|g' \
@@ -1556,6 +1557,7 @@ ldd-rewrite = -e 's%@RTLD@%$(rtlddir)/$(rtld-installed-name)%g' \
@@ -1720,6 +1721,7 @@ ldd-rewrite = -e 's%@RTLD@%$(rtlddir)/$(rtld-installed-name)%g' \
-e 's%@VERSION@%$(version)%g' \
-e 's|@PKGVERSION@|$(PKGVERSION)|g' \
-e 's|@REPORT_BUGS_TO@|$(REPORT_BUGS_TO)|g' \
@@ -70,30 +70,30 @@ index 4b1d0d8741..bbcf688c99 100644
ifeq ($(ldd-rewrite-script),no)
diff --git a/elf/ldd.bash.in b/elf/ldd.bash.in
index 2d3df6e57e..0faf83dc86 100644
index bfc40f6505..59ca54e2d9 100644
--- a/elf/ldd.bash.in
+++ b/elf/ldd.bash.in
@@ -1,4 +1,4 @@
-#!/bin/bash
+#! @BASH@
# Copyright (C) 1996-2025 Free Software Foundation, Inc.
# Copyright (C) 1996-2026 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
diff --git a/elf/sotruss.sh b/elf/sotruss.sh
index 8944645df9..1c36981b22 100755
index c90abaaed9..03cb25bc57 100755
--- a/elf/sotruss.sh
+++ b/elf/sotruss.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#! @BASH@
# Copyright (C) 2011-2025 Free Software Foundation, Inc.
# Copyright (C) 2011-2026 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
diff --git a/malloc/Makefile b/malloc/Makefile
index e2b2c1ae1b..67a399f1dd 100644
index 72aa77af20..e148b6480a 100644
--- a/malloc/Makefile
+++ b/malloc/Makefile
@@ -359,8 +359,9 @@ $(objpfx)mtrace: mtrace.pl
@@ -484,8 +484,9 @@ $(objpfx)mtrace: mtrace.pl
$(objpfx)memusage: memusage.sh
rm -f $@.new
@@ -106,20 +106,20 @@ index e2b2c1ae1b..67a399f1dd 100644
&& rm -f $@ && mv $@.new $@ && chmod +x $@
diff --git a/malloc/memusage.sh b/malloc/memusage.sh
index 8ae435d2f8..c929d16af7 100755
index 309991a7c9..28117c4561 100755
--- a/malloc/memusage.sh
+++ b/malloc/memusage.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#! @BASH@
# Copyright (C) 1999-2025 Free Software Foundation, Inc.
# Copyright (C) 1999-2026 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
diff --git a/timezone/Makefile b/timezone/Makefile
index ebe5cf73a1..e9cf92861c 100644
index ce9abe6cb2..3ee1eed54a 100644
--- a/timezone/Makefile
+++ b/timezone/Makefile
@@ -139,7 +139,8 @@ $(testdata)/XT5: testdata/gen-XT5.sh
@@ -136,7 +136,8 @@ $(testdata)/XT5: testdata/gen-XT5.sh
mv $@.tmp $@
$(objpfx)tzselect: tzselect.ksh $(common-objpfx)config.make
@@ -130,5 +130,5 @@ index ebe5cf73a1..e9cf92861c 100644
-e '/PKGVERSION=/s|=.*|="$(PKGVERSION)"|' \
-e '/REPORT_BUGS_TO=/s|=.*|="$(REPORT_BUGS_TO)"|' \
--
2.47.2
2.54.0

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -50,9 +50,9 @@
}@args:
let
version = "2.42";
patchSuffix = "-84";
sha256 = "sha256-0XdeMuRijmTvkw9DW2e7Y691may2viszW58Z8WUJ8X8=";
version = "2.44";
patchSuffix = "-25";
sha256 = "sha256-N/YA8r7zxegwAUcFlWiyouQKetbMxlzpQlVtSUKcxmc=";
in
assert withLinuxHeaders -> linuxHeaders != null;
@@ -69,17 +69,17 @@ stdenv.mkDerivation (
/*
No tarballs for stable upstream branch, only https://sourceware.org/git/glibc.git and using git would complicate bootstrapping.
$ git fetch --all -p && git checkout origin/release/2.42/master && git describe
glibc-2.42-67-g4ebd33dd77
$ git show --minimal --reverse glibc-2.42.. ':!ADVISORIES' > 2.42-master.patch
glibc-2.44-25-gafd131806b
$ git show --minimal --reverse glibc-2.44.. ':!ADVISORIES' > 2.44-master.patch
To compare the archive contents zdiff can be used.
$ diff -u 2.42-master.patch ../nixpkgs/pkgs/development/libraries/glibc/2.42-master.patch
$ diff -u 2.44-master.patch ../nixpkgs/pkgs/development/libraries/glibc/2.44-master.patch
Please note that each commit has changes to the file ADVISORIES excluded since
that conflicts with the directory advisories/ making cross-builds from
hosts with case-insensitive file-systems impossible.
*/
./2.42-master.patch
./2.44-master.patch
# Allow NixOS and Nix to handle the locale-archive.
./nix-locale-archive.patch

View File

@@ -1,8 +1,8 @@
diff --git a/elf/Makefile b/elf/Makefile
index 5d666b1b..a5017e9c 100644
index dc39ccea60..3230939376 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -669,14 +669,14 @@ $(objpfx)sln: $(sln-modules:%=$(objpfx)%.o)
@@ -1745,14 +1745,14 @@ $(objpfx)sln: $(sln-modules:%=$(objpfx)%.o)
$(objpfx)ldconfig: $(ldconfig-modules:%=$(objpfx)%.o)
@@ -21,36 +21,41 @@ index 5d666b1b..a5017e9c 100644
+CFLAGS-rtld.c += $(PREFIX-FLAGS)
+CFLAGS-dl-usage.c += $(PREFIX-FLAGS) \
-D'RTLD="$(rtlddir)/$(rtld-installed-name)"'
cpp-srcs-left := $(all-rtld-routines:=.os)
CFLAGS-dl-diagnostics.c += $(SYSCONF-FLAGS) \
-D'PREFIX="$(prefix)"' \
diff --git a/elf/dl-diagnostics.c b/elf/dl-diagnostics.c
index bef224b3..8e166b12 100644
index 21311178c7..719e02f8e6 100644
--- a/elf/dl-diagnostics.c
+++ b/elf/dl-diagnostics.c
@@ -205,7 +205,7 @@ print_paths (void)
@@ -204,7 +204,7 @@ print_paths (void)
{
_dl_diagnostics_print_labeled_string ("path.prefix", PREFIX);
_dl_diagnostics_print_labeled_string ("path.rtld", RTLD);
- _dl_diagnostics_print_labeled_string ("path.sysconfdir", SYSCONFDIR);
+ _dl_diagnostics_print_labeled_string ("path.sysconfdir", PREFIX "/etc");
unsigned int index = 0;
static const char *system_dirs = SYSTEM_DIRS "\0";
diff --git a/elf/ldconfig.c b/elf/ldconfig.c
index 28ed637a..6f07b79a 100644
index a39f3ecfcd..b5f12d0760 100644
--- a/elf/ldconfig.c
+++ b/elf/ldconfig.c
@@ -57,7 +57,7 @@
#define TLS_HWCAP_BIT 63
@@ -48,11 +48,11 @@
#ifndef LD_SO_CONF
-# define LD_SO_CONF SYSCONFDIR "/ld.so.conf"
+# define LD_SO_CONF PREFIX "/etc/ld.so.conf"
#endif
#ifndef TUNABLES_CONF
-# define TUNABLES_CONF SYSCONFDIR "/tunables.conf"
+# define TUNABLES_CONF PREFIX "/etc/tunables.conf"
#endif
/* Get libc version number. */
diff --git a/sysdeps/generic/dl-cache.h b/sysdeps/generic/dl-cache.h
index 964d50a4..2224d651 100644
index 972ab32b86..a0e0775506 100644
--- a/sysdeps/generic/dl-cache.h
+++ b/sysdeps/generic/dl-cache.h
@@ -35,7 +35,7 @@

View File

@@ -6,6 +6,7 @@
gitUpdater,
pythonAtLeast,
isPyPy,
fetchpatch,
# build-system
pathspec,
@@ -49,6 +50,15 @@ buildPythonPackage rec {
hash = "sha256-sm/pxQGxH5XuPH7B8i3fpp30KaFU9aSp6BT67UcDPvU=";
};
patches = [
# fix build w/ glibc-2.44
# If Python.h isn't included first, a const redefinition error now occurs otherwise.
(fetchpatch {
url = "https://github.com/python/mypy/commit/46acbe85c0e1703ebf2e6d4c699772edcdcf4652.patch";
hash = "sha256-KslHiKqinvvXZoxvCnZXOhCm7i8577PbSdNGudCsjZE=";
})
];
passthru.updateScript = gitUpdater {
rev-prefix = "v";
};

View File

@@ -119,7 +119,8 @@ in
++
# Restore fake libGLESv2.so which is patchelf'd by the chromium derivation
lib.optional (lib.versionAtLeast info.version "44")
./0001-Revert-build-stop-shipping-dummy-ANGLE-libs-in-Linux.patch;
./0001-Revert-build-stop-shipping-dummy-ANGLE-libs-in-Linux.patch
++ lib.optional (lib.versionOlder info.version "43") ./fix-electron42-glibc-2.43.patch;
postPatch = ''
mkdir -p third_party/jdk/current/bin

View File

@@ -0,0 +1,67 @@
From 83a9ccb1265dcdeeb8bf17205e00b751f86641d3 Mon Sep 17 00:00:00 2001
From: Ho Cheung <hocheung@chromium.org>
Date: Tue, 21 Apr 2026 08:19:53 -0700
Subject: [PATCH] [sandbox] Fix SYS_SECCOMP conflict with newer glibc
glibc now exposes SYS_SECCOMP in signal headers, which conflicts with
Chromium's fallback macro in linux_seccomp.h.
Stop defining SYS_SECCOMP in the public compat header and use a local
fallback in trap.cc instead.
Test: Tested on an Ubuntu 26.04 container using use_sysroot = false.
Bug: 456218403
Change-Id: I73ddfa85453dd9d524b64b4c1bca4f95b82c9f2b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7781604
Reviewed-by: Elly <ellyjones@chromium.org>
Commit-Queue: Aaron Teo <hocheung@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1618207}
---
diff --git a/sandbox/linux/seccomp-bpf/trap.cc b/sandbox/linux/seccomp-bpf/trap.cc
index 1316786d..212e80e 100644
--- a/sandbox/linux/seccomp-bpf/trap.cc
+++ b/sandbox/linux/seccomp-bpf/trap.cc
@@ -29,6 +29,12 @@
namespace {
+#if defined(SYS_SECCOMP)
+constexpr int kSigsysSeccompCode = SYS_SECCOMP;
+#else
+constexpr int kSigsysSeccompCode = 1;
+#endif
+
struct arch_sigsys {
// RAW_PTR_EXCLUSION: Points to a code address given to us by the kernel.
RAW_PTR_EXCLUSION void* ip;
@@ -151,7 +157,7 @@
// Various sanity checks to make sure we actually received a signal
// triggered by a BPF filter. If something else triggered SIGSYS
// (e.g. kill()), there is really nothing we can do with this signal.
- if (nr != LINUX_SIGSYS || info->si_code != SYS_SECCOMP || !ctx ||
+ if (nr != LINUX_SIGSYS || info->si_code != kSigsysSeccompCode || !ctx ||
info->si_errno <= 0 ||
static_cast<size_t>(info->si_errno) > trap_array_size_) {
// ATI drivers seem to send SIGSYS, so this cannot be FATAL.
@@ -162,7 +168,6 @@
return;
}
-
// Obtain the siginfo information that is specific to SIGSYS.
struct arch_sigsys sigsys;
#if defined(si_call_addr)
diff --git a/sandbox/linux/system_headers/linux_seccomp.h b/sandbox/linux/system_headers/linux_seccomp.h
index 8690a96..8ebf4045 100644
--- a/sandbox/linux/system_headers/linux_seccomp.h
+++ b/sandbox/linux/system_headers/linux_seccomp.h
@@ -214,8 +214,4 @@
#define SECCOMP_RET_INVALID 0x00010000U // Illegal return value
#endif
-#ifndef SYS_SECCOMP
-#define SYS_SECCOMP 1
-#endif
-
#endif // SANDBOX_LINUX_SYSTEM_HEADERS_LINUX_SECCOMP_H_

View File

@@ -29,6 +29,7 @@
cyrus_sasl,
openldap,
antlr,
fetchpatch,
}:
let
@@ -66,6 +67,12 @@ stdenv.mkDerivation (finalAttrs: {
# No openssl bundling on macOS. It's not working.
# See https://github.com/mysql/mysql-shell/blob/5b84e0be59fc0e027ef3f4920df15f7be97624c1/cmake/ssl.cmake#L53
./no-openssl-bundling.patch
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/mysql/mysql-shell/commit/4ce8746d8a7eecf9ae66d4d500c84d57cc4fbdbb.patch";
hash = "sha256-LUGC7gnNQ3zhmWUm2xogsOAmx8QSngQBHVJMWHFtWz0=";
})
];
postPatch = ''

View File

@@ -29,6 +29,7 @@
cyrus_sasl,
openldap,
antlr,
fetchpatch,
}:
let
@@ -66,6 +67,12 @@ stdenv.mkDerivation (finalAttrs: {
# No openssl bundling on macOS. It's not working.
# See https://github.com/mysql/mysql-shell/blob/5b84e0be59fc0e027ef3f4920df15f7be97624c1/cmake/ssl.cmake#L53
./no-openssl-bundling.patch
# fix build w/ glibc-2.44
(fetchpatch {
url = "https://github.com/mysql/mysql-shell/commit/4ce8746d8a7eecf9ae66d4d500c84d57cc4fbdbb.patch";
hash = "sha256-LUGC7gnNQ3zhmWUm2xogsOAmx8QSngQBHVJMWHFtWz0=";
})
];
postPatch = ''

View File

@@ -0,0 +1,13 @@
diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c
index 7bd6aff6e260..33b214a91338 100644
--- a/tools/lib/bpf/libbpf.c
+++ b/tools/lib/bpf/libbpf.c
@@ -10748,7 +10748,7 @@ static int resolve_full_path(const char *file, char *result, size_t result_sz)
if (!search_paths[i])
continue;
for (s = search_paths[i]; s != NULL; s = strchr(s, ':')) {
- char *next_path;
+ const char *next_path;
int seg_len;
if (s[0] == ':')

View File

@@ -27,4 +27,9 @@
name = "request-key-helper";
patch = ./request-key-helper.patch;
};
libbpf_C23_compat = {
name = "c23-compat-libbpf";
patch = ./C23-compat-6.1.patch;
};
}

View File

@@ -1,70 +0,0 @@
{
fetchFromGitHub,
elfutils,
pkg-config,
stdenv,
zlib,
lib,
nixosTests,
}:
# update bot does not seem to limit updates here to 0.8.x despite
# the all-packages derivation being libbpf_0 as the libbpf base alias
# is still present: just disable it for 0.x:
# nixpkgs-update: no auto update
stdenv.mkDerivation rec {
pname = "libbpf";
version = "0.8.3";
src = fetchFromGitHub {
owner = "libbpf";
repo = "libbpf";
rev = "v${version}";
sha256 = "sha256-J5cUvfUYc+uLdkFa2jx/2bqBoZg/eSzc6SWlgKqcfIc=";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [
elfutils
zlib
];
enableParallelBuilding = true;
makeFlags = [
"PREFIX=$(out)"
"-C src"
];
passthru.tests = {
bpf = nixosTests.bpf;
};
postInstall = ''
# install linux's libbpf-compatible linux/btf.h
install -Dm444 include/uapi/linux/*.h -t $out/include/linux
'';
# FIXME: Multi-output requires some fixes to the way the pkg-config file is
# constructed (it gets put in $out instead of $dev for some reason, with
# improper paths embedded). Don't enable it for now.
# outputs = [ "out" "dev" ];
meta = {
description = "Upstream mirror of libbpf";
homepage = "https://github.com/libbpf/libbpf";
license = with lib.licenses; [
lgpl21 # or
bsd2
];
maintainers = with lib.maintainers; [
thoughtpolice
vcunat
saschagrunert
martinetd
];
platforms = lib.platforms.linux;
identifiers.cpeParts = lib.meta.cpeFullVersionWithVendor "libbpf_project" version;
};
}

View File

@@ -20,11 +20,11 @@
}:
let
pname = "glibc";
version = "2.42";
version = "2.44";
src = fetchurl {
url = "mirror://gnu/libc/glibc-${version}.tar.xz";
hash = "sha256-0XdeMuRijmTvkw9DW2e7Y691may2viszW58Z8WUJ8X8=";
hash = "sha256-N/YA8r7zxegwAUcFlWiyouQKetbMxlzpQlVtSUKcxmc=";
};
linkerFile =

View File

@@ -21,11 +21,11 @@
}:
let
pname = "glibc-headers";
version = "2.42";
version = "2.44";
src = fetchurl {
url = "mirror://gnu/libc/glibc-${version}.tar.xz";
hash = "sha256-0XdeMuRijmTvkw9DW2e7Y691may2viszW58Z8WUJ8X8=";
hash = "sha256-N/YA8r7zxegwAUcFlWiyouQKetbMxlzpQlVtSUKcxmc=";
};
in
bash.runCommand "${pname}-${version}"

View File

@@ -53,6 +53,7 @@
{
version,
pinned ? false,
broken ? false,
hash,
cargoHash ? null,
patches ? [ ],
@@ -298,6 +299,7 @@ stdenv.mkDerivation (
};
meta = {
inherit broken;
description = "Display server and Wayland compositor developed by Canonical";
homepage = "https://mir-server.io";
changelog = "https://github.com/canonical/mir/releases/tag/v${finalAttrs.version}";

Some files were not shown because too many files have changed in this diff Show More