|
|
|
@@ -3,7 +3,8 @@
|
|
|
|
|
, e2fsprogs, enjarify, file, findutils, fontforge-fonttools, ffmpeg, fpc, gettext, ghc, ghostscriptX, giflib, gnumeric, gnupg, gnutar
|
|
|
|
|
, gzip, html2text, hdf5, imagemagick, jdk, libarchive, libcaca, llvm, lz4, mono, ocaml, oggvideotools, openssh, openssl, pdftk, pgpdump, poppler_utils, procyon, qemu, R
|
|
|
|
|
, radare2, sng, sqlite, squashfsTools, tcpdump, ubootTools, odt2txt, unzip, wabt, xmlbeans, xxd, xz, zip, zstd
|
|
|
|
|
, enableBloat ? false
|
|
|
|
|
, enableBloat ? true
|
|
|
|
|
, enableUnfree ? false
|
|
|
|
|
# updater only
|
|
|
|
|
, writeScript
|
|
|
|
|
}:
|
|
|
|
@@ -43,21 +44,32 @@ python3Packages.buildPythonApplication rec {
|
|
|
|
|
# To help figuring out what's missing from the list, run: ./pkgs/tools/misc/diffoscope/list-missing-tools.sh
|
|
|
|
|
#
|
|
|
|
|
# Still missing these tools: docx2txt lipo otool r2pipe
|
|
|
|
|
pythonPath = [
|
|
|
|
|
# We filter automatically all packages for the host platform (some dependencies are not supported on Darwin, aarch64, etc.).
|
|
|
|
|
pythonPath = lib.filter (lib.meta.availableOn stdenv.hostPlatform) ([
|
|
|
|
|
binutils-unwrapped-all-targets bzip2 colordiff coreutils cpio db diffutils
|
|
|
|
|
e2fsprogs file findutils fontforge-fonttools gettext gnutar gzip
|
|
|
|
|
html2text libarchive lz4 openssl pgpdump sng sqlite squashfsTools unzip xxd
|
|
|
|
|
xz zip zstd
|
|
|
|
|
xz zip zstd cdrkit dtc
|
|
|
|
|
]
|
|
|
|
|
++ (with python3Packages; [
|
|
|
|
|
argcomplete debian defusedxml jsondiff jsbeautifier libarchive-c
|
|
|
|
|
python-magic progressbar33 pypdf2 tlsh
|
|
|
|
|
python-magic progressbar33 pypdf2 tlsh pyxattr rpm
|
|
|
|
|
])
|
|
|
|
|
++ lib.optionals stdenv.isLinux [ python3Packages.pyxattr python3Packages.rpm acl cdrkit dtc ]
|
|
|
|
|
++ lib.optionals enableBloat ([
|
|
|
|
|
abootimg apksigcopier apksigner apktool cbfstool colord enjarify ffmpeg fpc ghc ghostscriptX giflib gnupg gnumeric
|
|
|
|
|
hdf5 imagemagick libcaca llvm jdk mono ocaml odt2txt oggvideotools openssh pdftk poppler_utils procyon qemu R tcpdump ubootTools wabt radare2 xmlbeans
|
|
|
|
|
] ++ (with python3Packages; [ androguard binwalk guestfs h5py pdfminer-six ]));
|
|
|
|
|
++ lib.optionals enableBloat (
|
|
|
|
|
[
|
|
|
|
|
apksigcopier apksigner enjarify ffmpeg fpc ghc ghostscriptX giflib gnupg pdftk
|
|
|
|
|
hdf5 imagemagick libcaca llvm jdk mono ocaml odt2txt openssh
|
|
|
|
|
poppler_utils procyon qemu R tcpdump wabt radare2 xmlbeans
|
|
|
|
|
abootimg cbfstool colord ubootTools
|
|
|
|
|
]
|
|
|
|
|
++ (with python3Packages; [ androguard binwalk h5py pdfminer-six guestfs ])
|
|
|
|
|
# oggvideotools is broken on Darwin, please put it back when it will be fixed?
|
|
|
|
|
++ lib.optionals stdenv.isLinux [ oggvideotools ]
|
|
|
|
|
# This doesn't work on aarch64-darwin
|
|
|
|
|
++ lib.optionals (stdenv.hostPlatform != "aarch64-darwin") [ gnumeric ]
|
|
|
|
|
# `apktool` depend on `build-tools` which requires Android SDK acceptance, therefore, the whole thing is unfree.
|
|
|
|
|
++ lib.optionals enableUnfree [ apktool ]
|
|
|
|
|
));
|
|
|
|
|
|
|
|
|
|
nativeCheckInputs = with python3Packages; [ pytestCheckHook ] ++ pythonPath;
|
|
|
|
|
|
|
|
|
@@ -121,7 +133,7 @@ python3Packages.buildPythonApplication rec {
|
|
|
|
|
'';
|
|
|
|
|
homepage = "https://diffoscope.org/";
|
|
|
|
|
license = licenses.gpl3Plus;
|
|
|
|
|
maintainers = with maintainers; [ dezgeg danielfullmer ];
|
|
|
|
|
maintainers = with maintainers; [ dezgeg danielfullmer raitobezarius ];
|
|
|
|
|
platforms = platforms.unix;
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|