Files
nixpkgs/pkgs/by-name/ni/nilfs-utils/package.nix
Dark Steveneq 646b892680
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
push sheeet
2025-10-09 14:15:47 +02:00

65 lines
1.5 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
autoreconfHook,
libuuid,
libselinux,
e2fsprogs,
}:
stdenv.mkDerivation rec {
pname = "nilfs-utils";
version = "2.2.12";
src = fetchFromGitHub {
owner = "nilfs-dev";
repo = "nilfs-utils";
rev = "v${version}";
sha256 = "sha256-9IUuam5g24+eywEeNZET8TAvKJVevJBwHTHSwN9Tz58=";
};
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [
libuuid
libselinux
];
postPatch = ''
# Fix up hardcoded paths.
substituteInPlace lib/cleaner_exec.c --replace /sbin/ $out/bin/
substituteInPlace sbin/mkfs/mkfs.c --replace /sbin/ ${lib.getBin e2fsprogs}/bin/
'';
# According to upstream, libmount should be detected automatically but the
# build system fails to do this. This is likely a bug with their build system
# hence it is explicitly enabled here.
configureFlags = [ "--with-libmount" ];
installFlags = [
"sysconfdir=${placeholder "out"}/etc"
"root_sbindir=${placeholder "out"}/sbin"
];
# FIXME: https://github.com/NixOS/patchelf/pull/98 is in, but stdenv
# still doesn't use it
#
# To make sure patchelf doesn't mistakenly keep the reference via
# build directory
postInstall = ''
find . -name .libs -exec rm -rf -- {} +
'';
meta = with lib; {
description = "NILFS utilities";
maintainers = [ maintainers.raskin ];
platforms = platforms.linux;
license = with licenses; [
gpl2Plus
lgpl21
];
downloadPage = "http://nilfs.sourceforge.net/en/download.html";
};
}