1{ stdenv
2, lib
3, fetchzip
4, fetchpatch
5, bzip2
6, lzo
7, openssl_1_1
8, opensslSupport ? false
9, zlib
10}:
11
12stdenv.mkDerivation rec {
13 version = "0.11.0";
14 pname = "quickbms";
15
16 src = fetchzip {
17 url = "https://aluigi.altervista.org/papers/quickbms-src-${version}.zip";
18 hash = "sha256-uQKTE36pLO8uhrX794utqaDGUeyqRz6zLCQFA7DYkNc=";
19 };
20
21 patches = [
22 # Fix errors on x86_64 and _rotl definition
23 (fetchpatch {
24 name = "0001-fix-compile.patch";
25 url = "https://aur.archlinux.org/cgit/aur.git/plain/fix-compile.patch?h=quickbms&id=a2e3e4638295d7cfe39513bfef9447fb23154a6b";
26 hash = "sha256-49fT/L4BNzMYnq1SXhFMgSDLybLkz6KSbgKmUpZZu08=";
27 stripLen = 1;
28 })
29 ] ++ lib.optional (!opensslSupport) ./0002-disable-openssl.patch;
30
31 buildInputs = [ bzip2 lzo zlib ]
32 ++ lib.optional (opensslSupport) openssl_1_1;
33
34 makeFlags = [ "PREFIX=$(out)" ];
35
36 meta = with lib; {
37 description = "Universal script based file extractor and reimporter";
38 homepage = "https://aluigi.altervista.org/quickbms.htm";
39 license = licenses.gpl2Plus;
40 maintainers = with maintainers; [ ];
41 platforms = platforms.linux;
42 };
43}