From 4760fc1b53b9733872eea83d3535076da56876f7 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 11 May 2026 08:18:28 +0000 Subject: [PATCH] sys-apps/file: Sync with Gentoo It's from Gentoo commit a0efa04b83fa57a84dcf5cf179f8b8e852a0750c. Signed-off-by: Flatcar Buildbot --- .../sys-apps/file/file-5.47-r1.ebuild | 2 +- .../sys-apps/file/file-5.47-r2.ebuild | 189 +++++++++++++++++ .../sys-apps/file/file-5.47-r3.ebuild | 190 ++++++++++++++++++ .../file/files/file-5.47-softmagic.patch | 20 ++ .../sys-apps/file/files/file-5.47-toml.patch | 27 +++ 5 files changed, 427 insertions(+), 1 deletion(-) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r2.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r3.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.47-softmagic.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.47-toml.patch diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r1.ebuild index 9b1335a913..1c19056f4e 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r1.ebuild @@ -18,7 +18,7 @@ else SRC_URI="https://astron.com/pub/file/${P}.tar.gz" SRC_URI+=" verify-sig? ( https://astron.com/pub/file/${P}.tar.gz.asc )" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )" fi diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r2.ebuild new file mode 100644 index 0000000000..8e35942048 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r2.ebuild @@ -0,0 +1,189 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +DISTUTILS_OPTIONAL=1 +PYTHON_COMPAT=( python3_{11..14} ) + +inherit distutils-r1 toolchain-funcs multilib-minimal + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/file/file" + inherit autotools git-r3 +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/file.asc + inherit libtool verify-sig + SRC_URI="https://astron.com/pub/file/${P}.tar.gz" + SRC_URI+=" verify-sig? ( https://astron.com/pub/file/${P}.tar.gz.asc )" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )" +fi + +DESCRIPTION="Identify a file's format by scanning binary data for patterns" +HOMEPAGE="https://www.darwinsys.com/file/" + +LICENSE="BSD-2" +SLOT="0" +IUSE="bzip2 lzip lzma python seccomp static-libs zlib zstd" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND=" + bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] ) + lzip? ( app-arch/lzlib ) + lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] ) + seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] ) + zlib? ( >=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] ) + zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) +" +RDEPEND=" + ${DEPEND} + python? ( + ${PYTHON_DEPS} + !dev-python/python-magic + ) + seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] ) +" +BDEPEND+=" + python? ( + ${PYTHON_DEPS} + ${DISTUTILS_DEPS} + ) +" + +# https://bugs.gentoo.org/898676 +QA_CONFIG_IMPL_DECL_SKIP=( makedev ) + +PATCHES=( + "${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet + "${FILESDIR}/file-5.45-seccomp-sandbox.patch" + "${FILESDIR}/file-5.47-magic.py.patch" + "${FILESDIR}/${P}-toml.patch" +) + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + else + elibtoolize + fi + + # Don't let python README kill main README, bug #60043 + mv python/README.md python/README.python.md || die + + # bug #662090 + sed -i 's@README.md@README.python.md@' python/setup.py || die +} + +multilib_src_configure() { + local myeconfargs=( + --enable-fsect-man5 + $(use_enable bzip2 bzlib) + $(multilib_native_use_enable lzip lzlib) + $(use_enable lzma xzlib) + $(use_enable seccomp libseccomp) + $(use_enable static-libs static) + $(use_enable zlib) + $(use_enable zstd zstdlib) + ) + + econf "${myeconfargs[@]}" +} + +build_src_configure() { + local myeconfargs=( + --disable-shared + --disable-libseccomp + --disable-bzlib + --disable-xzlib + --disable-zlib + ) + + econf_build "${myeconfargs[@]}" +} + +need_build_file() { + # When cross-compiling, we need to build up our own file + # because people often don't keep matching host/target + # file versions, bug #362941 + tc-is-cross-compiler && ! has_version -b "~${CATEGORY}/${P}" +} + +src_configure() { + local ECONF_SOURCE="${S}" + + if need_build_file ; then + mkdir -p "${WORKDIR}"/build || die + cd "${WORKDIR}"/build || die + build_src_configure + fi + + multilib-minimal_src_configure +} + +multilib_src_compile() { + if multilib_is_native_abi ; then + emake + else + # bug #586444 + emake -C src magic.h + emake -C src libmagic.la + fi +} + +src_compile() { + if need_build_file ; then + # bug #586444 + emake -C "${WORKDIR}"/build/src magic.h + emake -C "${WORKDIR}"/build/src file + local -x PATH="${WORKDIR}/build/src:${PATH}" + fi + + multilib-minimal_src_compile + + if use python ; then + cd python || die + distutils-r1_src_compile + fi +} + +src_test() { + multilib-minimal_src_test + + if use python ; then + cd python || die + distutils-r1_src_test + fi +} + +python_test() { + eunittest +} + +multilib_src_install() { + if multilib_is_native_abi ; then + default + else + emake -C src install-{nodist_includeHEADERS,libLTLIBRARIES} DESTDIR="${D}" + fi +} + +multilib_src_install_all() { + dodoc ChangeLog MAINT # README + + # Required for `file -C` + insinto /usr/share/misc/magic + doins -r magic/Magdir/* + + if use python ; then + cd python || die + distutils-r1_src_install + fi + + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r3.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r3.ebuild new file mode 100644 index 0000000000..6a368c7655 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r3.ebuild @@ -0,0 +1,190 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +DISTUTILS_OPTIONAL=1 +PYTHON_COMPAT=( python3_{11..14} ) + +inherit distutils-r1 toolchain-funcs multilib-minimal + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/file/file" + inherit autotools git-r3 +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/file.asc + inherit libtool verify-sig + SRC_URI="https://astron.com/pub/file/${P}.tar.gz" + SRC_URI+=" verify-sig? ( https://astron.com/pub/file/${P}.tar.gz.asc )" + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" + + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )" +fi + +DESCRIPTION="Identify a file's format by scanning binary data for patterns" +HOMEPAGE="https://www.darwinsys.com/file/" + +LICENSE="BSD-2" +SLOT="0" +IUSE="bzip2 lzip lzma python seccomp static-libs zlib zstd" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND=" + bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] ) + lzip? ( app-arch/lzlib ) + lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] ) + seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] ) + zlib? ( >=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] ) + zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) +" +RDEPEND=" + ${DEPEND} + python? ( + ${PYTHON_DEPS} + !dev-python/python-magic + ) + seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] ) +" +BDEPEND+=" + python? ( + ${PYTHON_DEPS} + ${DISTUTILS_DEPS} + ) +" + +# https://bugs.gentoo.org/898676 +QA_CONFIG_IMPL_DECL_SKIP=( makedev ) + +PATCHES=( + "${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet + "${FILESDIR}/file-5.45-seccomp-sandbox.patch" + "${FILESDIR}/file-5.47-magic.py.patch" + "${FILESDIR}/${P}-toml.patch" + "${FILESDIR}/${P}-softmagic.patch" +) + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + else + elibtoolize + fi + + # Don't let python README kill main README, bug #60043 + mv python/README.md python/README.python.md || die + + # bug #662090 + sed -i 's@README.md@README.python.md@' python/setup.py || die +} + +multilib_src_configure() { + local myeconfargs=( + --enable-fsect-man5 + $(use_enable bzip2 bzlib) + $(multilib_native_use_enable lzip lzlib) + $(use_enable lzma xzlib) + $(use_enable seccomp libseccomp) + $(use_enable static-libs static) + $(use_enable zlib) + $(use_enable zstd zstdlib) + ) + + econf "${myeconfargs[@]}" +} + +build_src_configure() { + local myeconfargs=( + --disable-shared + --disable-libseccomp + --disable-bzlib + --disable-xzlib + --disable-zlib + ) + + econf_build "${myeconfargs[@]}" +} + +need_build_file() { + # When cross-compiling, we need to build up our own file + # because people often don't keep matching host/target + # file versions, bug #362941 + tc-is-cross-compiler && ! has_version -b "~${CATEGORY}/${P}" +} + +src_configure() { + local ECONF_SOURCE="${S}" + + if need_build_file ; then + mkdir -p "${WORKDIR}"/build || die + cd "${WORKDIR}"/build || die + build_src_configure + fi + + multilib-minimal_src_configure +} + +multilib_src_compile() { + if multilib_is_native_abi ; then + emake + else + # bug #586444 + emake -C src magic.h + emake -C src libmagic.la + fi +} + +src_compile() { + if need_build_file ; then + # bug #586444 + emake -C "${WORKDIR}"/build/src magic.h + emake -C "${WORKDIR}"/build/src file + local -x PATH="${WORKDIR}/build/src:${PATH}" + fi + + multilib-minimal_src_compile + + if use python ; then + cd python || die + distutils-r1_src_compile + fi +} + +src_test() { + multilib-minimal_src_test + + if use python ; then + cd python || die + distutils-r1_src_test + fi +} + +python_test() { + eunittest +} + +multilib_src_install() { + if multilib_is_native_abi ; then + default + else + emake -C src install-{nodist_includeHEADERS,libLTLIBRARIES} DESTDIR="${D}" + fi +} + +multilib_src_install_all() { + dodoc ChangeLog MAINT # README + + # Required for `file -C` + insinto /usr/share/misc/magic + doins -r magic/Magdir/* + + if use python ; then + cd python || die + distutils-r1_src_install + fi + + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.47-softmagic.patch b/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.47-softmagic.patch new file mode 100644 index 0000000000..ce066036d4 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.47-softmagic.patch @@ -0,0 +1,20 @@ +https://bugs.gentoo.org/970705 +https://github.com/file/file/commit/c54605718190ad8fe9c25cb475f1f32ca7cd54f7 + +From c54605718190ad8fe9c25cb475f1f32ca7cd54f7 Mon Sep 17 00:00:00 2001 +From: Christos Zoulas +Date: Sun, 12 Apr 2026 22:15:14 +0000 +Subject: [PATCH] PR/725: inliniac: Revert previous and always set offset. + +--- a/src/softmagic.c ++++ b/src/softmagic.c +@@ -1577,8 +1577,7 @@ msetoffset(struct magic_set *ms, struct magic *m, struct buffer *bb, + ms->offset = offset; + ms->eoffset = 0; + } else { +- if (b->fd != -1) +- ms->offset = ms->eoffset + offset; ++ ms->offset = ms->eoffset + offset; + } + } + if ((ms->flags & MAGIC_DEBUG) != 0) { diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.47-toml.patch b/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.47-toml.patch new file mode 100644 index 0000000000..b83560b956 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.47-toml.patch @@ -0,0 +1,27 @@ +https://bugs.gentoo.org/972697 +https://github.com/file/file/commit/f37cc42c535a08598d3ec4b4fa7aa73af7a8e223 + +From f37cc42c535a08598d3ec4b4fa7aa73af7a8e223 Mon Sep 17 00:00:00 2001 +From: Christos Zoulas +Date: Wed, 25 Mar 2026 22:10:22 +0000 +Subject: [PATCH] Revert PR/679: matches too many unix stanza files (like + toml). https://bbs.archlinux.org/viewtopic.php?pid=2292157#p2292157 + +--- + magic/Magdir/windows | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/magic/Magdir/windows b/magic/Magdir/windows +index eb5b8b3db..05eb1d01e 100644 +--- a/magic/Magdir/windows ++++ b/magic/Magdir/windows +@@ -1260,7 +1260,7 @@ + >>>>>&0 ubyte x + # characters, digits, underscore and white space followed by right bracket + # terminated by CR implies section line to skip BOOTLOG.TXT DETLOG.TXT +->>>>>>&-1 regex/T \^([A-Za-z0-9_\(\)\ ]+)\][\r\n] Generic INItialization configuration [%-.40s ++>>>>>>&-1 regex/T \^([A-Za-z0-9_\(\)\ ]+)\]\r Generic INItialization configuration [%-.40s + # NETDEF.INF multiarc.ini + #!:mime application/x-setupscript + !:mime application/x-wine-extension-ini +