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