Files
nixpkgs/pkgs/by-name/fu/fuse-7z-ng/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.6 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
fuse,
p7zip,
autoconf,
automake,
pkg-config,
makeWrapper,
}:
stdenv.mkDerivation rec {
pname = "fuse-7z-ng";
version = "0-unstable-2014-06-08";
src = fetchFromGitHub {
owner = "kedazo";
repo = "fuse-7z-ng";
rev = "eb5efb1f304c2b7bc2e0389ba06c9bf2ac4b932c";
sha256 = "17v1gcmg5q661b047zxjar735i4d3508dimw1x3z1pk4d1zjhp3x";
};
patches = [
# Drop unused pthread library. pthread_yield()
# fails the configure.
./no-pthread.patch
# Zero-initialize unset fields of `struct fuse_operations` so that
# garbage values don't cause segfault.
# <https://github.com/kedazo/fuse-7z-ng/pull/8>
./zero-init-fuse-operations.patch
];
nativeBuildInputs = [
pkg-config
makeWrapper
autoconf
automake
];
buildInputs = [ fuse ];
preConfigure = "./autogen.sh";
libs = lib.makeLibraryPath [ p7zip ]; # 'cause 7z.so is loaded manually
postInstall = ''
wrapProgram $out/bin/fuse-7z-ng --suffix LD_LIBRARY_PATH : "${libs}/p7zip"
mkdir -p $out/share/doc/fuse-7z-ng
cp TODO README NEWS COPYING ChangeLog AUTHORS $out/share/doc/fuse-7z-ng/
'';
meta = with lib; {
inherit (src.meta) homepage;
description = "FUSE-based filesystem that uses the p7zip library";
longDescription = ''
fuse-7z-ng is a FUSE file system that uses the p7zip
library to access all archive formats supported by 7-zip.
This project is a fork of fuse-7z ( https://gitorious.org/fuse-7z/fuse-7z ).
'';
platforms = platforms.linux;
license = licenses.gpl3Plus;
mainProgram = "fuse-7z-ng";
};
}