commit: 7f0e72c08e6bf674f1c1cd8a31ca17e500bdeb03
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 11 05:07:22 2026 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Feb 11 05:07:45 2026 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7f0e72c0
dev-util/diffoscope: add 312
Signed-off-by: Sam James <sam <AT> gentoo.org>
dev-util/diffoscope/Manifest | 2 +
dev-util/diffoscope/diffoscope-312.ebuild | 146 ++++++++++++++++++++++++++++++
2 files changed, 148 insertions(+)
diff --git a/dev-util/diffoscope/Manifest b/dev-util/diffoscope/Manifest
index 4abb82d3d7af..a75422fee5b9 100644
--- a/dev-util/diffoscope/Manifest
+++ b/dev-util/diffoscope/Manifest
@@ -1 +1,3 @@
DIST diffoscope-309.tar.bz2 3153219 BLAKE2B
fc5089e914d1a1a1eb8507a7b696a0d4331c3c7e11c31e5ad19a3128310d817ae1612670a5b4e6636b65b6e221c4f097d5d4f878941d725dbe33639c1e751eb1
SHA512
ef254966348fb9e78cbb1926160b27bf61e5ddc501a4ac174914b0101b246b0574012b0b23e8ca9ca0a58c2a51eff7bf97a5fa343eae9763bf5b72f6729a8062
+DIST diffoscope-312.tar.bz2 3152749 BLAKE2B
bbf377d0959e895d3f4ef3aaf3b9707b3c6aa2a01a1e102ea7b60fd1220d838fca96814e88517bc70d82f04ce0cc7e308a0f232db570af4f4816b038a0698a9a
SHA512
ecca8ca58f5521a4a4ca56c48b2f0508f69eb900507a704527e64bf613d021317bf32fcd19dea55d0895bb4203b24738564d0f227eaed5ca2d945c42a058d260
+DIST diffoscope-312.tar.bz2.asc 833 BLAKE2B
ddeed6f5da5fea3c939233d8de96a50510a018e839cf06c3f54d9b1816027cf9ae61921345dd19fe8811d21ce0ec038a4a4a16ad3218ea801ae4e02f4350688a
SHA512
ec5bd2c07c8b71988a646b0fa751a56d5543d273ee96f657262b6a82a582a1c83aeee2e979e53109dd5d5b5aa9ecbda675bb3b265c38b63f8213a985b21d4c19
diff --git a/dev-util/diffoscope/diffoscope-312.ebuild
b/dev-util/diffoscope/diffoscope-312.ebuild
new file mode 100644
index 000000000000..660f03a46165
--- /dev/null
+++ b/dev-util/diffoscope/diffoscope-312.ebuild
@@ -0,0 +1,146 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{12..14} )
+PYTHON_REQ_USE="ncurses"
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chrislamb.asc
+inherit distutils-r1 toolchain-funcs verify-sig
+
+DESCRIPTION="Will try to get to the bottom of what makes files or directories
different"
+HOMEPAGE="https://diffoscope.org/ https://pypi.org/project/diffoscope/"
+SRC_URI="
+ https://diffoscope.org/archive/${P}.tar.bz2
+ verify-sig? ( https://diffoscope.org/archive/${P}.tar.bz2.asc )
+"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="acl binutils bzip2 libcaca colord cpio +diff docx dtc e2fsprogs file
+find gettext gif gpg haskell hdf5 hex imagemagick iso java llvm lzma
+mono opendocument pascal pdf postscript R rpm sqlite squashfs
+ssh tar test tcpdump zip zlib zstd"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ || (
+ dev-python/python-magic[${PYTHON_USEDEP}]
+ sys-apps/file[python,${PYTHON_USEDEP}]
+ )
+ dev-python/libarchive-c[${PYTHON_USEDEP}]
+ dev-python/distro[${PYTHON_USEDEP}]
+ dev-python/python-tlsh[${PYTHON_USEDEP}]
+ acl? ( sys-apps/acl )
+ binutils? ( sys-devel/binutils )
+ bzip2? ( app-arch/bzip2 )
+ libcaca? ( media-libs/libcaca )
+ colord? ( x11-misc/colord )
+ cpio? ( app-alternatives/cpio )
+ diff? ( sys-apps/diffutils )
+ docx? ( app-text/docx2txt )
+ dtc? ( sys-apps/dtc )
+ e2fsprogs? ( sys-fs/e2fsprogs )
+ file? ( sys-apps/file )
+ find? ( sys-apps/findutils )
+ gettext? ( sys-devel/gettext )
+ gif? ( media-libs/giflib )
+ gpg? ( app-crypt/gnupg )
+ haskell? ( dev-lang/ghc )
+ hdf5? ( sci-libs/hdf5 )
+ hex? ( app-editors/vim-core )
+ imagemagick? ( media-gfx/imagemagick )
+ iso? ( app-cdr/cdrtools )
+ java? ( virtual/jdk )
+ llvm? ( llvm-core/llvm )
+ lzma? ( app-arch/xz-utils )
+ mono? ( dev-lang/mono )
+ opendocument? ( app-text/odt2txt )
+ pascal? ( dev-lang/fpc )
+ pdf? (
+ app-text/pdftk
+ app-text/poppler
+ dev-python/pypdf[${PYTHON_USEDEP}]
+ )
+ postscript? ( app-text/ghostscript-gpl )
+ R? ( dev-lang/R )
+ rpm? ( app-arch/rpm )
+ sqlite? ( dev-db/sqlite:3 )
+ squashfs? ( sys-fs/squashfs-tools )
+ ssh? ( virtual/openssh )
+ tar? ( app-arch/tar )
+ tcpdump? ( net-analyzer/tcpdump )
+ zip? ( app-arch/unzip )
+ zlib? ( app-arch/gzip )
+ zstd? ( app-arch/zstd )
+"
+
+# pull in optional tools for tests:
+# img2txt: bug #797688
+# docx2txt: bug #797688
+BDEPEND="
+ test? (
+ || (
+ >=app-arch/7zip-24.09[symlink(+)]
+ app-arch/p7zip
+ )
+ app-text/docx2txt
+ app-text/html2text
+ media-libs/libcaca
+ virtual/imagemagick-tools[jpeg]
+ )
+ verify-sig? ( sec-keys/openpgp-keys-chrislamb )
+"
+
+EPYTEST_DESELECT=(
+ # Test seems to use different tarball
+ tests/test_presenters.py::test_text_proper_indentation
+
+ # Needs triage
+
tests/comparators/test_binary.py::test_with_compare_details_and_tool_not_found
+ tests/comparators/test_rlib.py::test_item3_deflate_llvm_bitcode
+ tests/comparators/test_gif.py::test_has_visuals
+
+ # img2txt based failures, bug #797688
+ tests/comparators/test_ico_image.py::test_diff
+ tests/comparators/test_ico_image.py::test_diff_meta
+ tests/comparators/test_ico_image.py::test_diff_meta2
+ tests/comparators/test_ico_image.py::test_has_visuals
+ tests/comparators/test_jpeg_image.py::test_diff
+ tests/comparators/test_jpeg_image.py::test_compare_non_existing
+ tests/comparators/test_jpeg_image.py::test_diff_meta
+ tests/comparators/test_jpeg_image.py::test_has_visuals
+
+ # docx2txt based falures, bug #797688
+ tests/comparators/test_docx.py::test_diff
+
+ # Formatting
+ tests/test_source.py::test_code_is_black_clean
+
+ # Fails on ZFS
+ tests/test_main.py::test_non_unicode_filename
+
+ # Fails on (unreleased) LLVM 16 with minor difference
+ #tests/comparators/test_macho.py::test_llvm_diff
+ #tests/comparators/test_elf.py::test_libmix_differences
+)
+
+distutils_enable_tests pytest
+
+src_test() {
+ case $(tc-get-ptr-size) in
+ 4)
+ EPYTEST_IGNORE+=(
+ # Needs fixing in Perl itself (bug #934443)
+ tests/comparators/test_epub.py
+ tests/comparators/test_zip.py
+ )
+ ;;
+ *)
+ ;;
+ esac
+
+ distutils-r1_src_test
+}