From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:37278) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i76iz-0005Rq-Bb for guix-patches@gnu.org; Sun, 08 Sep 2019 19:36:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1i76iw-0006Km-AY for guix-patches@gnu.org; Sun, 08 Sep 2019 19:36:05 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:58715) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1i76iw-0006KI-5H for guix-patches@gnu.org; Sun, 08 Sep 2019 19:36:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1i76iw-0003HR-1I for guix-patches@gnu.org; Sun, 08 Sep 2019 19:36:02 -0400 Subject: [bug#37346] [PATCH] Move diffoscope from package-management to it's own module. Resent-Message-ID: Received: from eggs.gnu.org ([2001:470:142:3::10]:37205) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i76iR-0005P6-TI for guix-patches@gnu.org; Sun, 08 Sep 2019 19:35:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1i76iN-00057v-Nz for guix-patches@gnu.org; Sun, 08 Sep 2019 19:35:31 -0400 Received: from cascadia.aikidev.net ([2600:3c01:e000:267:0:a171:de7:c]:47546) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1i76iN-00053Z-9Z for guix-patches@gnu.org; Sun, 08 Sep 2019 19:35:27 -0400 Received: from localhost (unknown [IPv6:2600:3c01:e000:21:21:21:0:100b]) (Authenticated sender: vagrant@aikidev.net) by cascadia.aikidev.net (Postfix) with ESMTPSA id 0B4781AA2C for ; Sun, 8 Sep 2019 16:35:24 -0700 (PDT) From: Vagrant Cascadian Date: Sun, 08 Sep 2019 16:35:19 -0700 Message-ID: <87ftl6cqfc.fsf@yucca> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 37346@debbugs.gnu.org --==-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: text/plain I was having infinite recursion issues importing additional modules such as android.scm, bootloaders.scm and statistics.scm into package-management.scm with use-modules calls, along these lines: error: googletest: unbound variable hint: Did you forget a `use-modules' form? ... error: curl: unbound variable hint: Did you forget a `use-modules' form? guix build: error: diffoscope: unknown package Moving diffoscope to it's own package module seemed to at least work around the issue. Diffoscope itself attempts to deal with an arbitrary and growing number of file types, so pulls in quite a few other package modules, so at least splitting it into a separate module might limit the impacts on other modules. Attached are two patches attempting the split; comments welcome! The first patch is the move itself, and also moves trydiffoscope; the second patch adds the package modules that previously would fail to import properly before the move. This allows diffoscope to run a few additional tests, getting the test suite down to only about 68 skipped tests (and falling); it was around 140 skipped tests before I started this mad rush... live well, vagrant --=-=-= Content-Type: text/x-diff; charset=utf-8 Content-Disposition: inline; filename=0001-gnu-Move-diffoscope-and-trydiffoscope-to-new-diffosc.patch Content-Transfer-Encoding: quoted-printable From=20352058f2ef002e77df6633c00ba009088bf5e8bd Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian Date: Sun, 8 Sep 2019 14:36:33 -0700 Subject: [PATCH 1/2] gnu: Move diffoscope and trydiffoscope to new diffoscope.scm. * gnu/packages/package-management (diffoscope): Remove variable. (trydiffoscope): Remove variable. (use-modules): Remove modules only needed by diffoscope. Update copyright information. * gnu/packages/diffoscope.scm: New file. (diffoscope): Add variable. (trydiffoscope): Add variable. * gnu/local.mk [GNU_SYSTEM_MODULES]: Add diffoscope.scm. =2D-- gnu/local.mk | 1 + gnu/packages/diffoscope.scm | 231 ++++++++++++++++++++++++++++ gnu/packages/package-management.scm | 183 ---------------------- 3 files changed, 232 insertions(+), 183 deletions(-) create mode 100644 gnu/packages/diffoscope.scm diff --git a/gnu/local.mk b/gnu/local.mk index b7a5ef825b..e15c50be45 100644 =2D-- a/gnu/local.mk +++ b/gnu/local.mk @@ -143,6 +143,7 @@ GNU_SYSTEM_MODULES =3D \ %D%/packages/dejagnu.scm \ %D%/packages/dico.scm \ %D%/packages/dictionaries.scm \ + %D%/packages/diffoscope.scm \ %D%/packages/digest.scm \ %D%/packages/direct-connect.scm \ %D%/packages/disk.scm \ diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm new file mode 100644 index 0000000000..6eb5c1d9fe =2D-- /dev/null +++ b/gnu/packages/diffoscope.scm @@ -0,0 +1,231 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright =C2=A9 2015, 2016, 2017, 2018, 2019 Ludovic Court=C3=A8s +;;; Copyright =C2=A9 2017 Ricardo Wurmus +;;; Copyright =C2=A9 2017, 2018, 2019 Tobias Geerinckx-Rice +;;; Copyright =C2=A9 2018 Julien Lepiller +;;; Copyright =C2=A9 2018, 2019 Rutger Helling +;;; Copyright =C2=A9 2019 Vagrant Cascadian +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages diffoscope) + #:use-module (gnu packages) + #:use-module (gnu packages acl) + #:use-module (gnu packages admin) + #:use-module (gnu packages backup) + #:use-module (gnu packages base) + #:use-module (gnu packages cdrom) + #:use-module (gnu packages check) + #:use-module (gnu packages compression) + #:use-module (gnu packages cpio) + #:use-module (gnu packages dbm) + #:use-module (gnu packages gettext) + #:use-module (gnu packages ghostscript) + #:use-module (gnu packages gnome) + #:use-module (gnu packages gnupg) + #:use-module (gnu packages haskell) + #:use-module (gnu packages image) + #:use-module (gnu packages imagemagick) + #:use-module (gnu packages java) + #:use-module (gnu packages linux) + #:use-module (gnu packages llvm) + #:use-module (gnu packages mono) + #:use-module (gnu packages package-management) + #:use-module (gnu packages patchutils) + #:use-module (gnu packages pdf) + #:use-module (gnu packages python-web) + #:use-module (gnu packages python-xyz) + #:use-module (gnu packages sqlite) + #:use-module (gnu packages ssh) + #:use-module (gnu packages textutils) + #:use-module (gnu packages video) + #:use-module (gnu packages vim) + #:use-module (guix build-system python) + #:use-module (guix gexp) + #:use-module (guix git-download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix utils)) + +(define-public diffoscope + (let ((version "123")) + (package + (name "diffoscope") + (version version) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://salsa.debian.org/reproducible-builds/d= iffoscope.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "11bxms5rkhi0v4pxx29v4qgvhp3fmf0fkzci6gn5xcv4fl1zy4wj"))= )) + (build-system python-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + ;; setup.py mistakenly requires python-magic from PyPi= , even + ;; though the Python bindings of `file` are sufficient. + ;; https://bugs.debian.org/cgi-bin/bugreport.cgi?bug= =3D815844 + (add-after 'unpack 'dependency-on-python-magic + (lambda _ + (substitute* "setup.py" + (("'python-magic',") "")))) + ;; This test is broken because our `file` package has a + ;; bug in berkeley-db file type detection. + (add-after 'unpack 'remove-berkeley-test + (lambda _ + (delete-file "tests/comparators/test_berkeley_db.p= y") + #t)) + ;; Test is dynamically generated and may have false + ;; negatives with different ocaml versions. Further + ;; background in: https://bugs.debian.org/939386 + (add-after 'unpack 'remove-ocaml-test + (lambda _ + (delete-file "tests/comparators/test_ocaml.py") + #t)) + (add-after 'unpack 'embed-tool-references + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "diffoscope/comparators/utils/compare= .py" + (("\\['xxd',") + (string-append "['" (which "xxd") "',"))) + (substitute* "diffoscope/comparators/elf.py" + (("@tool_required\\('readelf'\\)") "") + (("get_tool_name\\('readelf'\\)") + (string-append "'" (which "readelf") "'"))) + (substitute* "diffoscope/comparators/directory.py" + (("@tool_required\\('stat'\\)") "") + (("@tool_required\\('getfacl'\\)") "") + (("\\['stat',") + (string-append "['" (which "stat") "',")) + (("\\['getfacl',") + (string-append "['" (which "getfacl") "',"))) + #t)) + (add-before 'check 'writable-test-data + (lambda _ + ;; tests may need needs write access to tests + ;; directory + (for-each make-file-writable (find-files "tests")) + #t)) + (add-before 'check 'delete-failing-test + (lambda _ + ;; this requires /sbin to be on the path + (delete-file "tests/test_tools.py") + #t))))) + (inputs `(("rpm" ,rpm) ;for rpm-python + ("python-file" ,python-file) + ("python-debian" ,python-debian) + ("python-libarchive-c" ,python-libarchive-c) + ("python-tlsh" ,python-tlsh) + ("acl" ,acl) ;for getfacl + ("colordiff" ,colordiff) + ("xxd" ,xxd))) + ;; Below are modules used for tests. + (native-inputs `(("python-pytest" ,python-pytest) + ("python-chardet" ,python-chardet) + ;; test suite skips tests when tool is missing + ("bdb" ,bdb) + ("binutils" ,binutils) + ("bzip2" ,bzip2) + ("cdrtools" ,cdrtools) + ("colord" ,colord) + ("cpio" ,cpio) + ("docx2txt" ,docx2txt) + ("e2fsprogs" ,e2fsprogs) + ("ffmpeg" ,ffmpeg) + ("gettext" ,gettext-minimal) + ("ghc" ,ghc) + ("ghostscript" ,ghostscript) + ("giflib:bin" ,giflib "bin") + ("gnumeric" ,gnumeric) + ("gnupg" ,gnupg) + ("imagemagick" ,imagemagick) + ("libarchive" ,libarchive) + ("llvm" ,llvm) + ("lz4" ,lz4) + ("mono" ,mono) + ("odt2txt" ,odt2txt) + ;; no unversioned openjdk available + ("openjdk:jdk" ,openjdk12 "jdk") + ("openssh" ,openssh) + ("pgpdump" ,pgpdump) + ("poppler" ,poppler) + ("rpm" ,rpm) + ("sng" ,sng) + ("sqlite" ,sqlite) + ("squashfs-tools" ,squashfs-tools) + ("tcpdump" ,tcpdump) + ("unzip" ,unzip) + ("xxd" ,xxd) + ("xz" ,xz) + ("zip" ,zip))) + (home-page "https://diffoscope.org/") + (synopsis "Compare files, archives, and directories in depth") + (description + "Diffoscope tries to get to the bottom of what makes files or direc= tories +different. It recursively unpacks archives of many kinds and transforms +various binary formats into more human readable forms to compare them. It= can +compare two tarballs, ISO images, or PDFs just as easily.") + (license license:gpl3+)))) + +(define-public trydiffoscope + (package + (name "trydiffoscope") + (version "67.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://salsa.debian.org/reproducible-builds/trydiffosco= pe.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03b66cjii7l2yiwffj6ym6mycd5drx7prfp4j2550281pias6mjh")))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'install-doc + (lambda* (#:key outputs #:allow-other-keys) + (let* ((share (string-append (assoc-ref outputs "out") "/shar= e/"))) + (mkdir-p (string-append share "/man/man1/" )) + (invoke "rst2man.py" + "trydiffoscope.1.rst" + (string-append share "/man/man1/trydiffoscope.1")) + (mkdir-p (string-append share "/doc/" ,name "-" ,version)) + (install-file "./README.rst" + (string-append share "/doc/" ,name "-" ,version)= )) + #t))))) + (propagated-inputs + `(("python-requests" ,python-requests))) + (native-inputs + `(("gzip" ,gzip) + ("python-docutils" ,python-docutils))) + (build-system python-build-system) + (home-page "https://try.diffoscope.org") + (synopsis "Client for remote diffoscope service") + (description "This is a client for the @url{https://try.diffoscope.org, +remote diffoscope service}. + +Diffoscope tries to get to the bottom of what makes files or directories +different. It recursively unpacks archives of many kinds and transforms +various binary formats into more human readable forms to compare them. It= can +compare two tarballs, ISO images, or PDFs just as easily. + +Results are displayed by default, stored as local text or html files, or m= ade +available via a URL on @url{https://try.diffoscope.org}. Results stored o= n the +server are purged after 30 days.") + (license license:gpl3+))) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-man= agement.scm index 18e8a3853f..965d129937 100644 =2D-- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -10,7 +10,6 @@ ;;; Copyright =C2=A9 2018 Sou Bunnbu ;;; Copyright =C2=A9 2018, 2019 Eric Bavier ;;; Copyright =C2=A9 2019 Efraim Flashner =2D;;; Copyright =C2=A9 2019 Vagrant Cascadian ;;; Copyright =C2=A9 2019 Jonathan Brielmaier ;;; ;;; This file is part of GNU Guix. @@ -31,7 +30,6 @@ (define-module (gnu packages package-management) #:use-module (gnu packages) #:use-module (gnu packages acl) =2D #:use-module (gnu packages admin) #:use-module (gnu packages attr) #:use-module (gnu packages avahi) #:use-module (gnu packages autotools) @@ -40,7 +38,6 @@ #:use-module (gnu packages bdw-gc) #:use-module (gnu packages bison) #:use-module (gnu packages bootstrap) ;for 'bootstrap-guile-ori= gin' =2D #:use-module (gnu packages cdrom) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages cpio) @@ -50,7 +47,6 @@ #:use-module (gnu packages docbook) #:use-module (gnu packages file) #:use-module (gnu packages gettext) =2D #:use-module (gnu packages ghostscript) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) @@ -58,19 +54,12 @@ #:use-module (gnu packages gtk) #:use-module (gnu packages guile) #:use-module (gnu packages guile-xyz) =2D #:use-module (gnu packages haskell) =2D #:use-module (gnu packages image) =2D #:use-module (gnu packages imagemagick) =2D #:use-module (gnu packages java) #:use-module (gnu packages linux) #:use-module (gnu packages lisp) =2D #:use-module (gnu packages llvm) #:use-module (gnu packages man) =2D #:use-module (gnu packages mono) #:use-module (gnu packages nettle) #:use-module (gnu packages nss) #:use-module (gnu packages patchutils) =2D #:use-module (gnu packages pdf) #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) #:use-module (gnu packages pkg-config) @@ -82,10 +71,8 @@ #:use-module (gnu packages sqlite) #:use-module (gnu packages ssh) #:use-module (gnu packages texinfo) =2D #:use-module (gnu packages textutils) #:use-module (gnu packages time) #:use-module (gnu packages tls) =2D #:use-module (gnu packages video) #:use-module (gnu packages vim) #:use-module (gnu packages virtualization) #:use-module (gnu packages web) @@ -558,176 +545,6 @@ transactions from C or Python.") ;; The whole is GPLv2+; librpm itself is dual-licensed LGPLv2+ | GPLv2= +. (license license:gpl2+))) =20 =2D(define-public diffoscope =2D (let ((version "123")) =2D (package =2D (name "diffoscope") =2D (version version) =2D (source (origin =2D (method git-fetch) =2D (uri (git-reference =2D (url "https://salsa.debian.org/reproducible-builds= /diffoscope.git") =2D (commit version))) =2D (file-name (git-file-name name version)) =2D (sha256 =2D (base32 =2D "11bxms5rkhi0v4pxx29v4qgvhp3fmf0fkzci6gn5xcv4fl1zy4wj"= )))) =2D (build-system python-build-system) =2D (arguments =2D `(#:phases (modify-phases %standard-phases =2D ;; setup.py mistakenly requires python-magic from Py= Pi, even =2D ;; though the Python bindings of `file` are sufficie= nt. =2D ;; https://bugs.debian.org/cgi-bin/bugreport.cgi?bug= =3D815844 =2D (add-after 'unpack 'dependency-on-python-magic =2D (lambda _ =2D (substitute* "setup.py" =2D (("'python-magic',") "")))) =2D ;; This test is broken because our `file` package ha= s a =2D ;; bug in berkeley-db file type detection. =2D (add-after 'unpack 'remove-berkeley-test =2D (lambda _ =2D (delete-file "tests/comparators/test_berkeley_db= .py") =2D #t)) =2D ;; Test is dynamically generated and may have false =2D ;; negatives with different ocaml versions. Further =2D ;; background in: https://bugs.debian.org/939386 =2D (add-after 'unpack 'remove-ocaml-test =2D (lambda _ =2D (delete-file "tests/comparators/test_ocaml.py") =2D #t)) =2D (add-after 'unpack 'embed-tool-references =2D (lambda* (#:key inputs #:allow-other-keys) =2D (substitute* "diffoscope/comparators/utils/compa= re.py" =2D (("\\['xxd',") =2D (string-append "['" (which "xxd") "',"))) =2D (substitute* "diffoscope/comparators/elf.py" =2D (("@tool_required\\('readelf'\\)") "") =2D (("get_tool_name\\('readelf'\\)") =2D (string-append "'" (which "readelf") "'"))) =2D (substitute* "diffoscope/comparators/directory.p= y" =2D (("@tool_required\\('stat'\\)") "") =2D (("@tool_required\\('getfacl'\\)") "") =2D (("\\['stat',") =2D (string-append "['" (which "stat") "',")) =2D (("\\['getfacl',") =2D (string-append "['" (which "getfacl") "',"))) =2D #t)) =2D (add-before 'check 'writable-test-data =2D (lambda _ =2D ;; tests may need needs write access to tests =2D ;; directory =2D (for-each make-file-writable (find-files "tests"= )) =2D #t)) =2D (add-before 'check 'delete-failing-test =2D (lambda _ =2D ;; this requires /sbin to be on the path =2D (delete-file "tests/test_tools.py") =2D #t))))) =2D (inputs `(("rpm" ,rpm) ;for rpm-python =2D ("python-file" ,python-file) =2D ("python-debian" ,python-debian) =2D ("python-libarchive-c" ,python-libarchive-c) =2D ("python-tlsh" ,python-tlsh) =2D ("acl" ,acl) ;for getfacl =2D ("colordiff" ,colordiff) =2D ("xxd" ,xxd))) =2D ;; Below are modules used for tests. =2D (native-inputs `(("python-pytest" ,python-pytest) =2D ("python-chardet" ,python-chardet) =2D ;; test suite skips tests when tool is missing =2D ("bdb" ,bdb) =2D ("binutils" ,binutils) =2D ("bzip2" ,bzip2) =2D ("cdrtools" ,cdrtools) =2D ("colord" ,colord) =2D ("cpio" ,cpio) =2D ("docx2txt" ,docx2txt) =2D ("e2fsprogs" ,e2fsprogs) =2D ("ffmpeg" ,ffmpeg) =2D ("gettext" ,gettext-minimal) =2D ("ghc" ,ghc) =2D ("ghostscript" ,ghostscript) =2D ("giflib:bin" ,giflib "bin") =2D ("gnumeric" ,gnumeric) =2D ("gnupg" ,gnupg) =2D ("imagemagick" ,imagemagick) =2D ("libarchive" ,libarchive) =2D ("llvm" ,llvm) =2D ("lz4" ,lz4) =2D ("mono" ,mono) =2D ("odt2txt" ,odt2txt) =2D ;; no unversioned openjdk available =2D ("openjdk:jdk" ,openjdk12 "jdk") =2D ("openssh" ,openssh) =2D ("pgpdump" ,pgpdump) =2D ("poppler" ,poppler) =2D ("rpm" ,rpm) =2D ("sng" ,sng) =2D ("sqlite" ,sqlite) =2D ("squashfs-tools" ,squashfs-tools) =2D ("tcpdump" ,tcpdump) =2D ("unzip" ,unzip) =2D ("xxd" ,xxd) =2D ("xz" ,xz) =2D ("zip" ,(@ (gnu packages compression) zip)))) =2D (home-page "https://diffoscope.org/") =2D (synopsis "Compare files, archives, and directories in depth") =2D (description =2D "Diffoscope tries to get to the bottom of what makes files or dir= ectories =2Ddifferent. It recursively unpacks archives of many kinds and transforms =2Dvarious binary formats into more human readable forms to compare them. = It can =2Dcompare two tarballs, ISO images, or PDFs just as easily.") =2D (license license:gpl3+)))) =2D =2D(define-public trydiffoscope =2D (package =2D (name "trydiffoscope") =2D (version "67.0.1") =2D (source =2D (origin =2D (method git-fetch) =2D (uri (git-reference =2D (url "https://salsa.debian.org/reproducible-builds/trydiffos= cope.git") =2D (commit version))) =2D (file-name (git-file-name name version)) =2D (sha256 =2D (base32 =2D "03b66cjii7l2yiwffj6ym6mycd5drx7prfp4j2550281pias6mjh")))) =2D (arguments =2D `(#:phases =2D (modify-phases %standard-phases =2D (add-after 'install 'install-doc =2D (lambda* (#:key outputs #:allow-other-keys) =2D (let* ((share (string-append (assoc-ref outputs "out") "/sh= are/"))) =2D (mkdir-p (string-append share "/man/man1/" )) =2D (invoke "rst2man.py" =2D "trydiffoscope.1.rst" =2D (string-append share "/man/man1/trydiffoscope.1")) =2D (mkdir-p (string-append share "/doc/" ,name "-" ,version)) =2D (install-file "./README.rst" =2D (string-append share "/doc/" ,name "-" ,versio= n))) =2D #t))))) =2D (propagated-inputs =2D `(("python-requests" ,python-requests))) =2D (native-inputs =2D `(("gzip" ,gzip) =2D ("python-docutils" ,python-docutils))) =2D (build-system python-build-system) =2D (home-page "https://try.diffoscope.org") =2D (synopsis "Client for remote diffoscope service") =2D (description "This is a client for the @url{https://try.diffoscope.o= rg, =2Dremote diffoscope service}. =2D =2DDiffoscope tries to get to the bottom of what makes files or directories =2Ddifferent. It recursively unpacks archives of many kinds and transforms =2Dvarious binary formats into more human readable forms to compare them. = It can =2Dcompare two tarballs, ISO images, or PDFs just as easily. =2D =2DResults are displayed by default, stored as local text or html files, or= made =2Davailable via a URL on @url{https://try.diffoscope.org}. Results stored= on the =2Dserver are purged after 30 days.") =2D (license license:gpl3+))) =2D (define-public python-anaconda-client (package (name "python-anaconda-client") =2D-=20 2.20.1 --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=0002-gnu-diffoscope-Add-additional-test-dependencies.patch Content-Transfer-Encoding: quoted-printable From=20c4ef8545514b4d594ab6fc083c954a22eace3786 Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian Date: Sun, 8 Sep 2019 15:35:33 -0700 Subject: [PATCH 2/2] gnu: diffoscope: Add additional test dependencies. * gnu/packages/diffoscope (diffoscope)[native-inputs]: Add abootimg, dtc, and r-minimal. (use-module): Add android, bootloaders and statistics, respectively. =2D-- gnu/packages/diffoscope.scm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm index 6eb5c1d9fe..828e06a818 100644 =2D-- a/gnu/packages/diffoscope.scm +++ b/gnu/packages/diffoscope.scm @@ -25,8 +25,10 @@ #:use-module (gnu packages) #:use-module (gnu packages acl) #:use-module (gnu packages admin) + #:use-module (gnu packages android) #:use-module (gnu packages backup) #:use-module (gnu packages base) + #:use-module (gnu packages bootloaders) #:use-module (gnu packages cdrom) #:use-module (gnu packages check) #:use-module (gnu packages compression) @@ -50,6 +52,7 @@ #:use-module (gnu packages python-xyz) #:use-module (gnu packages sqlite) #:use-module (gnu packages ssh) + #:use-module (gnu packages statistics) #:use-module (gnu packages textutils) #:use-module (gnu packages video) #:use-module (gnu packages vim) @@ -137,6 +140,7 @@ (native-inputs `(("python-pytest" ,python-pytest) ("python-chardet" ,python-chardet) ;; test suite skips tests when tool is missing + ("abootimg" ,abootimg) ("bdb" ,bdb) ("binutils" ,binutils) ("bzip2" ,bzip2) @@ -144,6 +148,7 @@ ("colord" ,colord) ("cpio" ,cpio) ("docx2txt" ,docx2txt) + ("dtc" ,dtc) ("e2fsprogs" ,e2fsprogs) ("ffmpeg" ,ffmpeg) ("gettext" ,gettext-minimal) @@ -163,6 +168,7 @@ ("openssh" ,openssh) ("pgpdump" ,pgpdump) ("poppler" ,poppler) + ("r-minimal" ,r-minimal) ("rpm" ,rpm) ("sng" ,sng) ("sqlite" ,sqlite) =2D-=20 2.20.1 --=-=-=-- --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCXXWQOAAKCRDcUY/If5cW quCCAQCWSRWA/yRO9MzMkYpl78tzViv9ou9ugb06aSnKD2Ec2AEA3Zfj208QJGcb 0gj/xES0lSZgr31Z1lO1mn88NoeFlAM= =U9Uj -----END PGP SIGNATURE----- --==-=-=--