mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-01-25 06:13:54 +00:00
571c71e6f7
We are migrating packages that meet below requirements: 1. using `callPackage` 2. called path is a directory 3. overriding set is empty (`{ }`) 4. not containing path expressions other than relative path (to makenixpkgs-vet happy) 5. not referenced by nix files outside of the directory, other than`pkgs/top-level/all-packages.nix` 6. not referencing nix files outside of the directory 7. not referencing `default.nix` (since it's changed to `package.nix`) 8. `outPath` doesn't change after migration The tool is here: https://github.com/Aleksanaa/by-name-migrate.
52 lines
1.5 KiB
Nix
52 lines
1.5 KiB
Nix
{ lib, stdenv, fetchFromGitHub, autoreconfHook, libuuid, libselinux
|
|
, e2fsprogs }:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "nilfs-utils";
|
|
version = "2.2.11";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "nilfs-dev";
|
|
repo = pname;
|
|
rev = "v${version}";
|
|
sha256 = "sha256-qvs0PBkMYzGfIQ/Z2Wz0aHe2Y2Ia6fA4pMSk5Jhejf4=";
|
|
};
|
|
|
|
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";
|
|
};
|
|
}
|