push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
{
lib,
stdenv,
fetchurl,
}:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
stdenv.mkDerivation rec {
pname = "patchelf";
version = "0.15.2";
src = fetchurl {
url = "https://github.com/NixOS/${pname}/releases/download/${version}/${pname}-${version}.tar.bz2";
sha256 = "sha256-F3RfVkFZyOIo/EEtplogSLhGxLa0Igt3y/IkFuAvLXw=";
};
strictDeps = true;
setupHook = [ ./setup-hook.sh ];
enableParallelBuilding = true;
# fails 8 out of 24 tests, problems when loading libc.so.6
doCheck = stdenv.name == "stdenv-linux";
meta = with lib; {
homepage = "https://github.com/NixOS/patchelf";
license = licenses.gpl3Plus;
description = "Small utility to modify the dynamic linker and RPATH of ELF executables";
mainProgram = "patchelf";
maintainers = [ ];
platforms = platforms.all;
};
}

View File

@@ -0,0 +1,20 @@
# This setup hook calls patchelf to automatically remove unneeded
# directories from the RPATH of every library or executable in every
# output.
fixupOutputHooks+=('if [ -z "${dontPatchELF-}" ]; then patchELF "$prefix"; fi')
patchELF() {
local dir="$1"
[ -e "$dir" ] || return 0
echo "shrinking RPATHs of ELF executables and libraries in $dir"
local i
while IFS= read -r -d $'\0' i; do
if [[ "$i" =~ .build-id ]]; then continue; fi
if ! isELF "$i"; then continue; fi
echo "shrinking $i"
patchelf --shrink-rpath "$i" || true
done < <(find "$dir" -type f -print0)
}

View File

@@ -0,0 +1,47 @@
{
lib,
stdenv,
autoreconfHook,
fetchFromGitHub,
unstableGitUpdater,
}:
stdenv.mkDerivation {
pname = "patchelf";
version = "0.18.0-unstable-2025-08-13";
src = fetchFromGitHub {
owner = "NixOS";
repo = "patchelf";
rev = "b49de1b3384e7928bf0df9a889fe5a4e7b3fbddf";
sha256 = "sha256-0AGK+ZPZDc7zTVAmG6jAAynQhh4nP8skVwOEV5hZKh0=";
};
# Drop test that fails on musl (?)
postPatch = lib.optionalString stdenv.hostPlatform.isMusl ''
substituteInPlace tests/Makefile.am \
--replace "set-rpath-library.sh" ""
'';
setupHook = [ ./setup-hook.sh ];
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ ];
doCheck = !stdenv.hostPlatform.isDarwin;
passthru = {
updateScript = unstableGitUpdater {
url = "https://github.com/NixOS/patchelf.git";
};
};
meta = with lib; {
homepage = "https://github.com/NixOS/patchelf";
license = licenses.gpl3;
description = "Small utility to modify the dynamic linker and RPATH of ELF executables";
mainProgram = "patchelf";
maintainers = [ ];
platforms = platforms.all;
};
}