nixpkgs/pkgs/tools/filesystems/sasquatch/default.nix
2021-04-04 19:49:52 +02:00

53 lines
1.3 KiB
Nix

{ fetchFromGitHub
, fetchurl
, lz4 ? null
, lz4Support ? false
, lzo
, lib, stdenv
, xz
, zlib
}:
assert lz4Support -> (lz4 != null);
let
patch = fetchFromGitHub {
owner = "devttys0";
repo = "sasquatch";
rev = "3e0cc40fc6dbe32bd3a5e6c553b3320d5d91ceed";
sha256 = "19lhndjv7v9w6nmszry63zh5rqii9v7wvsbpc2n6q606hyz955g2";
} + "/patches/patch0.txt";
in
stdenv.mkDerivation rec {
pname = "sasquatch";
version = "4.3";
src = fetchurl {
url = "mirror://sourceforge/squashfs/squashfs4.3.tar.gz";
sha256 = "1xpklm0y43nd9i6jw43y2xh5zvlmj9ar2rvknh0bh7kv8c95aq0d";
};
buildInputs = [ xz lzo xz zlib ]
++ lib.optional lz4Support lz4;
patches = [ patch ];
patchFlags = [ "-p0" ];
postPatch = ''
cd squashfs-tools
'';
installFlags = [ "INSTALL_DIR=\${out}/bin" ];
makeFlags = [ "XZ_SUPPORT=1" ]
++ lib.optional lz4Support "LZ4_SUPPORT=1";
meta = with lib; {
homepage = "https://github.com/devttys0/sasquatch";
description = "Set of patches to the standard unsquashfs utility (part of squashfs-tools) that attempts to add support for as many hacked-up vendor-specific SquashFS implementations as possible";
license = licenses.gpl2Plus;
maintainers = [ maintainers.pamplemousse ];
platforms = platforms.linux;
};
}