diff --git a/changelog/updates/2026-03-10-weekly-updates.md b/changelog/updates/2026-03-10-weekly-updates.md
new file mode 100644
index 0000000000..3fca9d3b54
--- /dev/null
+++ b/changelog/updates/2026-03-10-weekly-updates.md
@@ -0,0 +1,5 @@
+- base, dev: binutils-libs ([2.46.0](https://sourceware.org/pipermail/binutils/2026-February/148149.html))
+- base, dev: intel-microcode ([20260227_p20260227](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases/tag/microcode-20260227))
+- base, dev: libnl ([3.12.0](https://lists.infradead.org/pipermail/libnl/2025-December/002442.html))
+- base, dev: pam ([1.7.2](https://github.com/linux-pam/linux-pam/releases/tag/v1.7.2))
+- dev: binutils ([2.46.0](https://sourceware.org/pipermail/binutils/2026-February/148149.html))
diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords
index 5ba638fa45..da88226358 100644
--- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords
+++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords
@@ -125,11 +125,15 @@ sys-apps/azure-vm-utils
=sys-cluster/ipvsadm-1.31-r1 ~arm64
# Keep versions on both arches in sync.
+=sys-devel/binutils-2.46.0
=sys-fs/lxcfs-6.0.5 ~arm64
# Bump early for newer features.
=sys-kernel/dracut-109* ~amd64 ~arm64
+# Keep versions on both arches in sync.
+=sys-libs/binutils-libs-2.46.0
+
# Our own ebuild fixing issues in Gentoo, hopefully will be fixed
# there too eventually.
=sys-libs/libselinux-3.8.1-r3 ~amd64 ~arm64
diff --git a/sdk_container/src/third_party/coreos-overlay/sys-boot/shim/files/0002-Fix-build-with-binutils-2-46.patch b/sdk_container/src/third_party/coreos-overlay/sys-boot/shim/files/0002-Fix-build-with-binutils-2-46.patch
new file mode 100644
index 0000000000..e02cf342cd
--- /dev/null
+++ b/sdk_container/src/third_party/coreos-overlay/sys-boot/shim/files/0002-Fix-build-with-binutils-2-46.patch
@@ -0,0 +1,39 @@
+The following entry from binutils 2.46 NEWS file explains the breaking change:
+
+* Internal changes to plugin support, and stricter target checking may result
+ in some errors being exposed in user options passed to the various binutils.
+ For example objcopy --target=TARGET now will only work if the input file is
+ for TARGET whereas prior versions of objcopy accepted other target input
+ files and produced a TARGET output. If you do in fact want the old
+ behaviour the correct usage is objcopy --output-target=TARGET.
+
+Thus update the FORMAT variables to use --output-target instead.
+
+diff '--color=auto' -u -r shim-15.8/Make.defaults shim-15.8-patched/Make.defaults
+--- shim-15.8/Make.defaults 2024-01-22 19:18:05.000000000 -0000
++++ shim-15.8-patched/Make.defaults 2026-03-11 08:58:33.972284263 -0000
+@@ -159,7 +159,7 @@
+
+ LIB_GCC = $(shell $(CC) $(ARCH_CFLAGS) -print-libgcc-file-name)
+ EFI_LIBS = -lefi -lgnuefi --start-group Cryptlib/libcryptlib.a Cryptlib/OpenSSL/libopenssl.a --end-group $(LIB_GCC)
+-FORMAT ?= --target efi-app-$(ARCH)
++FORMAT ?= --output-target efi-app-$(ARCH)
+ LOCAL_EFI_PATH = gnu-efi/$(ARCH_GNUEFI)/gnuefi
+ LIBDIR = gnu-efi/$(ARCH_GNUEFI)/lib
+
+diff '--color=auto' -u -r shim-15.8/gnu-efi/apps/Makefile shim-15.8-patched/gnu-efi/apps/Makefile
+--- shim-15.8/gnu-efi/apps/Makefile 2024-01-22 19:18:05.000000000 -0000
++++ shim-15.8-patched/gnu-efi/apps/Makefile 2026-03-11 08:59:11.613462517 -0000
+@@ -66,9 +66,9 @@
+
+ ifneq ($(HAVE_EFI_OBJCOPY),)
+
+-FORMAT := --target efi-app-$(ARCH)
+-$(TARGET_BSDRIVERS): FORMAT=--target efi-bsdrv-$(ARCH)
+-$(TARGET_RTDRIVERS): FORMAT=--target efi-rtdrv-$(ARCH)
++FORMAT := --output-target efi-app-$(ARCH)
++$(TARGET_BSDRIVERS): FORMAT=--output-target efi-bsdrv-$(ARCH)
++$(TARGET_RTDRIVERS): FORMAT=--output-target efi-rtdrv-$(ARCH)
+
+ else
+
diff --git a/sdk_container/src/third_party/coreos-overlay/sys-boot/shim/shim-15.8-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-boot/shim/shim-15.8-r3.ebuild
similarity index 97%
rename from sdk_container/src/third_party/coreos-overlay/sys-boot/shim/shim-15.8-r2.ebuild
rename to sdk_container/src/third_party/coreos-overlay/sys-boot/shim/shim-15.8-r3.ebuild
index 10defae63c..c2cd0941b4 100644
--- a/sdk_container/src/third_party/coreos-overlay/sys-boot/shim/shim-15.8-r2.ebuild
+++ b/sdk_container/src/third_party/coreos-overlay/sys-boot/shim/shim-15.8-r3.ebuild
@@ -25,6 +25,7 @@ DEPEND="
PATCHES=(
"${FILESDIR}/0001-Fix-parallel-build-of-gnu-efi.patch"
+ "${FILESDIR}/0002-Fix-build-with-binutils-2-46.patch"
)
src_compile() {
diff --git a/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.4.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.4.ebuild
index efb25d05e7..3de4c72ac3 100644
--- a/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.4.ebuild
+++ b/sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.8.4.ebuild
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="BSD BSD-2 BSD-4 public-domain"
SLOT="0/13"
-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"
IUSE="
acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle
static-libs test xattr +zstd
diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/adcli/Manifest b/sdk_container/src/third_party/portage-stable/app-crypt/adcli/Manifest
index 9dc8e534d1..f001fd07d3 100644
--- a/sdk_container/src/third_party/portage-stable/app-crypt/adcli/Manifest
+++ b/sdk_container/src/third_party/portage-stable/app-crypt/adcli/Manifest
@@ -1 +1,2 @@
DIST adcli-0.9.2.tar.bz2 93680 BLAKE2B b5958b276ee43a0ee54aa922f27ed266d4e9fbd1c86e0c007dac9fcf9cc022e1b3ba043b782fceb00066be2577390773dc99fb8d476a6b5e6523d44d008fb667 SHA512 ae8414a0af389b6845dd92d41446a80a9dc1734b874175323c0e491d99944eab442b95ae6d3a29fc69638d2e73bf8d2c369f6fa50e9ed3968527444b78606286
+DIST adcli-0.9.3.1.tar.bz2 105198 BLAKE2B aa2f472601e2c01690ad37186dd90d267949198a34b2b6efad0f9cd1c4734cf4b1f3b27ea6cf34c7b7df7872f0d1cfb70adda99a82adb4fcd6c87f171ddd7d5c SHA512 ef393e09b3396ffb55d2f34feaa23caff249f2f92d5f3f03ea9d140cb2fc2bc45ea36a69760e941a9a053e460ed8d6632d7dc3ab9fc38897f00cea67e30a1b84
diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/adcli/adcli-0.9.3.1.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/adcli/adcli-0.9.3.1.ebuild
new file mode 100644
index 0000000000..a500dd880a
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/app-crypt/adcli/adcli-0.9.3.1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Tool for performing actions on an Active Directory domain"
+HOMEPAGE="https://www.freedesktop.org/software/realmd/adcli/adcli.html"
+SRC_URI="https://gitlab.freedesktop.org/realmd/adcli/-/archive/${PV}/${P}.tar.bz2"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="doc netapi selinux"
+
+DEPEND="
+ app-crypt/mit-krb5
+ net-nds/openldap:=[sasl]
+ netapi? ( net-fs/samba )"
+# still pull in kerberos policies, provides labelling and might some day
+# actually bring policies which are currently still internal (see src_configure)
+RDEPEND="${DEPEND}
+ selinux? ( sec-policy/selinux-kerberos )"
+BDEPEND="
+ doc? (
+ app-text/docbook-xml-dtd:4.3
+ app-text/xmlto
+ dev-libs/libxslt
+ )"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # builds its own policy, no selinux until policies are official
+ local myconf="--disable-selinux-support"
+ econf \
+ ${myconf} \
+ $(use_enable doc) \
+ $(use_enable netapi offline-join-support) \
+ KRB5_CONFIG="${ESYSROOT}"/usr/bin/krb5-config
+}
diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/adcli/metadata.xml b/sdk_container/src/third_party/portage-stable/app-crypt/adcli/metadata.xml
index 99303bacc4..1322e93eaf 100644
--- a/sdk_container/src/third_party/portage-stable/app-crypt/adcli/metadata.xml
+++ b/sdk_container/src/third_party/portage-stable/app-crypt/adcli/metadata.xml
@@ -9,6 +9,9 @@
proxy-maint@gentoo.org
Proxy Maintainers
+
realmd/adcli
diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/Manifest b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/Manifest
index a040e95952..1220267d9a 100644
--- a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/Manifest
+++ b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/Manifest
@@ -1,5 +1,3 @@
-DIST bash-completion-2.14.0.tar.xz 428980 BLAKE2B c28ec0cd348a3954461f7a865823a358e47c4b479c7812baa6d54aef856c958510967806550e62784955f9daf233a0b01edade19884e534df857472a3196e63e SHA512 2e12d2e57c932b931a6cfe59234f9d33d715538d6ea4eb72ed4ed3d8d2cf2cedaf08fcb6abaf3117e06115d892283e38a07b3abe5c91c026d2c06a0f64e347bd
-DIST bash-completion-2.15.0.tar.xz 457836 BLAKE2B d2234cb2baf8494d2159e8abe6780e0879efb6fe9e851c0d51ebf09363c83652ef610658e2beca181adc0d6c844472a68a219be8b3ca51271fdfc53477f174ba SHA512 3b7e98801c3ceab7853c0603bdaa0cd6f0a658e0f7f24b092f341bd1794633b62d33e664035b6ab3c03b5a3dd941b16f87a415aade8a2707578c59cc48b1a9f7
DIST bash-completion-2.16.0.tar.xz 464764 BLAKE2B 389be47536f8f9aa383ff85bf19a00562b30b6d3e3652feaa01284987af13c2dc9850b59341956dd8e94e54251cd36902a60d5e3420ebfa2567216546144f675 SHA512 3711d6cb53cedff94efca0325479ac73f40b536fce250dbcc18ef120a8d0d2248f086ca26e245d163e6058d1b1087d57ced041317163d0e25592d6cb7acbc102
DIST bash-completion-2.17.0.tar.xz 482896 BLAKE2B ee11f2bff82b0852979e4843c7ad5e5b976e4d1e44ab5ed1b96da64fe9b32d91150f12f32bf7c6c0286cd2a0c424d786bbad47066403c71f8d3c8425487427dd SHA512 79f7a22de7df7a6a5cad2e8088ce7e013a3cd5542f3af825c04b2607c824022913dd775202ddab7964dd759e50d5bdf9be6451c70d488efaef10f7cf2f7ac73e
DIST bashcomp-2.0.3.tar.gz 3539 BLAKE2B 75304d144792cc7f6ad5455a05a65c33c646d6f7384d020a06a1fcf012cd51625a3dd0750ad539253453b1eede196c340286a1e81737f0835b5091609ba01295 SHA512 b2bd185ccbd4456939ccc731cc1983fcec2b9564a9920642a753fadd5d897fdb96b925ac1524657629d621d45b37d99076c8ae72511a827e96ff6c388d720008
diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.14.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.14.0-r1.ebuild
deleted file mode 100644
index 843338ef77..0000000000
--- a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.14.0-r1.ebuild
+++ /dev/null
@@ -1,188 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-BASHCOMP_P=bashcomp-2.0.3
-PYTHON_COMPAT=( python3_{10..12} )
-
-inherit python-any-r1
-
-DESCRIPTION="Programmable Completion for bash"
-HOMEPAGE="https://github.com/scop/bash-completion"
-SRC_URI="
- https://github.com/scop/bash-completion/releases/download/${PV}/${P}.tar.xz
- eselect? (
- https://github.com/projg2/bashcomp2/releases/download/v${BASHCOMP_P#*-}/${BASHCOMP_P}.tar.gz
- )
-"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
-IUSE="+eselect test"
-RESTRICT="!test? ( test )"
-
-# completion collision with net-fs/mc
-RDEPEND="
- >=app-shells/bash-4.3_p30-r1:0
- sys-apps/miscfiles
- !=app-shells/gentoo-bashcomp-20140911
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.14.0-optimize-kernel-modules.patch
-)
-
-strip_completions() {
- # Remove unwanted completions.
- local strip_completions=(
- # Slackware package stuff, quite generic names cause collisions
- # (e.g. with sys-apps/pacman)
- explodepkg installpkg makepkg pkgtool removepkg upgradepkg
-
- # Debian/Red Hat network stuff
- ifdown ifup ifquery ifstatus
-
- # Installed in app-editors/vim-core
- xxd
-
- # Now-dead symlinks to deprecated completions
- hd ncal
-
- # FreeBSD
- freebsd-update kldload kldunload portinstall portsnap
- pkg_deinstall pkg_delete pkg_info
-
- # For GNU mailman, which isn't packaged. If mailman isn't installed,
- # it triggers a QA warning.
- arch
- )
-
- if [[ ${CHOST} != *solaris* ]]; then
- # Triggers QA warning since it only defines a completion on Solaris,
- # to avoid defining a bad one on macOS.
- strip_completions+=(pkgutil)
- fi
-
- local file
- for file in "${strip_completions[@]}"; do
- rm "${ED}"/usr/share/bash-completion/completions/${file} ||
- die "stripping ${file} failed"
- done
-
- # remove deprecated completions (moved to other packages)
- rm "${ED}"/usr/share/bash-completion/completions/_* || die
-}
-
-python_check_deps() {
- python_has_version "dev-python/pexpect[${PYTHON_USEDEP}]" &&
- python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" &&
- python_has_version "dev-python/pytest-xdist[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- if use eselect; then
- eapply "${WORKDIR}/${BASHCOMP_P}/bash-completion-blacklist-support.patch"
- fi
-
- default
-}
-
-src_test() {
- local EPYTEST_DESELECT=(
- # redhat-specific, we strip these completions
- test/t/test_if{down,up}.py
- # not available for icedtea
- test/t/test_javaws.py
- # TODO
- test/t/test_vi.py::TestVi::test_2
- test/t/test_xmlwf.py::TestXmlwf::test_2 #bug 886159
- test/t/test_xrandr.py::TestXrandr::test_output_filter
- )
- local EPYTEST_IGNORE=(
- # stupid test that async tests work
- test/fixtures/pytest/test_async.py
- )
- local EPYTEST_XDIST=1
-
- # portage's HOME override breaks tests
- local -x HOME=$(unset HOME; echo ~)
- addpredict "${HOME}"
- # used in pytest tests
- local -x NETWORK=none
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x PYTEST_PLUGINS=xdist.plugin
- emake -C completions check
- epytest
-}
-
-src_install() {
- # work-around race conditions, bug #526996
- mkdir -p "${ED}"/usr/share/bash-completion/{completions,helpers} || die
-
- emake DESTDIR="${D}" profiledir="${EPREFIX}"/etc/bash/bashrc.d install
-
- strip_completions
-
- dodoc AUTHORS CHANGELOG.md CONTRIBUTING.md README.md
-
- # install the python completions for all targets, bug #622892
- local TARGET
- for TARGET in "${PYTHON_COMPAT[@]}"; do
- if [[ ! -e "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.} ]]; then
- dosym python "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.}
- fi
- done
-
- # install the eselect module
- if use eselect; then
- insinto /usr/share/eselect/modules
- doins "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect"
- doman "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect.5"
- fi
-}
-
-pkg_postinst() {
- local v
- for v in ${REPLACING_VERSIONS}; do
- if ver_test "${v}" -lt 2.1-r90; then
- ewarn "For bash-completion autoloader to work, all completions need to"
- ewarn "be installed in /usr/share/bash-completion/completions. You may"
- ewarn "need to rebuild packages that installed completions in the old"
- ewarn "location. You can do this using:"
- ewarn
- ewarn "$ find ${EPREFIX}/usr/share/bash-completion -maxdepth 1 -type f '!' -name 'bash_completion' -exec emerge -1v {} +"
- ewarn
- ewarn "After the rebuild, you should remove the old setup symlinks:"
- ewarn
- ewarn "$ find ${EPREFIX}/etc/bash_completion.d -type l -delete"
- fi
- done
-
- if has_version 'app-shells/zsh'; then
- elog
- elog "If you are interested in using the provided bash completion functions with"
- elog "zsh, valuable tips on the effective use of bashcompinit are available:"
- elog " http://www.zsh.org/mla/workers/2003/msg00046.html"
- elog
- fi
-}
diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.15.0.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.15.0.ebuild
deleted file mode 100644
index 56919cabad..0000000000
--- a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.15.0.ebuild
+++ /dev/null
@@ -1,180 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-BASHCOMP_P=bashcomp-2.0.3
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit eapi9-ver python-any-r1
-
-DESCRIPTION="Programmable Completion for bash"
-HOMEPAGE="https://github.com/scop/bash-completion"
-SRC_URI="
- https://github.com/scop/bash-completion/releases/download/${PV}/${P}.tar.xz
- eselect? (
- https://github.com/projg2/bashcomp2/releases/download/v${BASHCOMP_P#*-}/${BASHCOMP_P}.tar.gz
- )
-"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
-IUSE="+eselect test"
-RESTRICT="!test? ( test )"
-
-# completion collision with net-fs/mc
-RDEPEND="
- >=app-shells/bash-4.3_p30-r1:0
- sys-apps/miscfiles
- !=app-shells/gentoo-bashcomp-20140911
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.14.0-optimize-kernel-modules.patch
-)
-
-strip_completions() {
- # Remove unwanted completions.
- local strip_completions=(
- # Slackware package stuff, quite generic names cause collisions
- # (e.g. with sys-apps/pacman)
- explodepkg installpkg makepkg pkgtool removepkg upgradepkg
-
- # Debian/Red Hat network stuff
- ifdown ifup ifquery ifstatus
-
- # Installed in app-editors/vim-core
- xxd
-
- # Now-dead symlinks to deprecated completions
- hd ncal
-
- # For GNU mailman, which isn't packaged. If mailman isn't installed,
- # it triggers a QA warning.
- arch
- )
-
- local file
- for file in "${strip_completions[@]}"; do
- rm "${ED}"/usr/share/bash-completion/completions/${file} ||
- die "stripping ${file} failed"
- done
-
- # remove deprecated completions (moved to other packages)
- rm "${ED}"/usr/share/bash-completion/completions/_* || die
-}
-
-python_check_deps() {
- python_has_version "dev-python/pexpect[${PYTHON_USEDEP}]" &&
- python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" &&
- python_has_version "dev-python/pytest-xdist[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- if use eselect; then
- eapply "${WORKDIR}/${BASHCOMP_P}/bash-completion-blacklist-support.patch"
- fi
-
- default
-}
-
-src_test() {
- local EPYTEST_DESELECT=(
- # redhat-specific, we strip these completions
- test/t/test_if{down,up}.py
- # not available for icedtea
- test/t/test_javaws.py
- # TODO
- test/t/test_vi.py::TestVi::test_2
- test/t/test_xmlwf.py::TestXmlwf::test_2 #bug 886159
- test/t/test_xrandr.py::TestXrandr::test_output_filter
- test/t/unit/test_unit_dequote.py
- test/t/test_sudo.py::TestSudo::test_1 #bug 935400
- test/t/test_xfreerdp.py::TestXfreerdp::test_6 #bug 935400
- test/t/unit/test_unit_command_offset.py::TestUnitCommandOffset::test_cmd_quoted #bug 931744
- test/t/test_make.py::TestMake::test_6 #bug 931744
- )
- local EPYTEST_IGNORE=(
- # stupid test that async tests work
- test/fixtures/pytest/test_async.py
- )
- local EPYTEST_XDIST=1
-
- # portage's HOME override breaks tests
- local -x HOME=$(unset HOME; echo ~)
- addpredict "${HOME}"
- # used in pytest tests
- local -x NETWORK=none
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x PYTEST_PLUGINS=xdist.plugin
- emake -C completions check
- epytest
-}
-
-src_install() {
- # work-around race conditions, bug #526996
- mkdir -p "${ED}"/usr/share/bash-completion/{completions,helpers} || die
-
- emake DESTDIR="${D}" profiledir="${EPREFIX}"/etc/bash/bashrc.d install
-
- strip_completions
-
- dodoc AUTHORS CHANGELOG.md CONTRIBUTING.md README.md
-
- # install the python completions for all targets, bug #622892
- local TARGET
- for TARGET in "${PYTHON_COMPAT[@]}"; do
- if [[ ! -e "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.} ]]; then
- dosym python "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.}
- fi
- done
-
- # install the eselect module
- if use eselect; then
- insinto /usr/share/eselect/modules
- doins "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect"
- doman "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect.5"
- fi
-}
-
-pkg_postinst() {
- if ver_replacing -lt 2.1-r90; then
- ewarn "For bash-completion autoloader to work, all completions need to"
- ewarn "be installed in /usr/share/bash-completion/completions. You may"
- ewarn "need to rebuild packages that installed completions in the old"
- ewarn "location. You can do this using:"
- ewarn
- ewarn "$ find ${EPREFIX}/usr/share/bash-completion -maxdepth 1 -type f '!' -name 'bash_completion' -exec emerge -1v {} +"
- ewarn
- ewarn "After the rebuild, you should remove the old setup symlinks:"
- ewarn
- ewarn "$ find ${EPREFIX}/etc/bash_completion.d -type l -delete"
- fi
-
- if has_version 'app-shells/zsh'; then
- elog
- elog "If you are interested in using the provided bash completion functions with"
- elog "zsh, valuable tips on the effective use of bashcompinit are available:"
- elog " http://www.zsh.org/mla/workers/2003/msg00046.html"
- elog
- fi
-}
diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0-r1.ebuild
deleted file mode 100644
index 04984d330e..0000000000
--- a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0-r1.ebuild
+++ /dev/null
@@ -1,170 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-BASHCOMP_P=bashcomp-2.0.3
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit autotools python-any-r1
-
-DESCRIPTION="Programmable Completion for bash"
-HOMEPAGE="https://github.com/scop/bash-completion"
-SRC_URI="
- https://github.com/scop/bash-completion/releases/download/${PV}/${P}.tar.xz
- eselect? (
- https://github.com/projg2/bashcomp2/releases/download/v${BASHCOMP_P#*-}/${BASHCOMP_P}.tar.gz
- )
-"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
-IUSE="+eselect test"
-RESTRICT="!test? ( test )"
-
-# completion collision with net-fs/mc
-RDEPEND="
- >=app-shells/bash-4.3_p30-r1:0
- sys-apps/miscfiles
- !=app-shells/gentoo-bashcomp-20140911
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.14.0-optimize-kernel-modules.patch
- "${FILESDIR}"/${PN}-2.16.0-libsecret-completion.patch
-)
-
-strip_completions() {
- # Remove unwanted completions.
- local strip_completions=(
- # Slackware package stuff, quite generic names cause collisions
- # (e.g. with sys-apps/pacman)
- explodepkg installpkg makepkg pkgtool removepkg upgradepkg
-
- # Debian/Red Hat network stuff
- ifdown ifup ifquery ifstatus
-
- # Installed in app-editors/vim-core
- xxd
-
- # Now-dead symlinks to deprecated completions
- hd ncal
-
- # For GNU mailman, which isn't packaged. If mailman isn't installed,
- # it triggers a QA warning.
- arch
- )
-
- local file
- for file in "${strip_completions[@]}"; do
- rm "${ED}"/usr/share/bash-completion/completions/${file} ||
- die "stripping ${file} failed"
- done
-
- # remove deprecated completions (moved to other packages)
- rm "${ED}"/usr/share/bash-completion/completions/_* || die
-}
-
-python_check_deps() {
- python_has_version "dev-python/pexpect[${PYTHON_USEDEP}]" &&
- python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" &&
- python_has_version "dev-python/pytest-xdist[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- if use eselect; then
- eapply "${WORKDIR}/${BASHCOMP_P}/bash-completion-blacklist-support.patch"
- fi
-
- default
- # Only needed for ${PN}-2.16.0-libsecret-completion.patch
- eautoreconf
-}
-
-src_test() {
- local EPYTEST_DESELECT=(
- # redhat-specific, we strip these completions
- test/t/test_if{down,up}.py
- # not available for icedtea
- test/t/test_javaws.py
- # TODO
- test/t/test_vi.py::TestVi::test_2
- test/t/test_xmlwf.py::TestXmlwf::test_2 #bug 886159
- test/t/test_xrandr.py::TestXrandr::test_output_filter
- test/t/unit/test_unit_dequote.py
- test/t/test_sudo.py::TestSudo::test_1 #bug 935400
- test/t/test_xfreerdp.py::TestXfreerdp::test_6 #bug 935400
- test/t/unit/test_unit_command_offset.py::TestUnitCommandOffset::test_cmd_quoted #bug 931744
- test/t/test_make.py::TestMake::test_6 #bug 931744
- )
- local EPYTEST_IGNORE=(
- # stupid test that async tests work
- test/fixtures/pytest/test_async.py
- )
- local EPYTEST_XDIST=1
-
- # portage's HOME override breaks tests
- local -x HOME=$(unset HOME; echo ~)
- addpredict "${HOME}"
- # used in pytest tests
- local -x NETWORK=none
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x PYTEST_PLUGINS=xdist.plugin
- emake -C completions check
- epytest
-}
-
-src_install() {
- # work-around race conditions, bug #526996
- mkdir -p "${ED}"/usr/share/bash-completion/{completions,helpers} || die
-
- emake DESTDIR="${D}" profiledir="${EPREFIX}"/etc/bash/bashrc.d install
-
- strip_completions
-
- dodoc AUTHORS CHANGELOG.md CONTRIBUTING.md README.md
-
- # install the python completions for all targets, bug #622892
- local TARGET
- for TARGET in "${PYTHON_COMPAT[@]}"; do
- if [[ ! -e "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.} ]]; then
- dosym python "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.}
- fi
- done
-
- # install the eselect module
- if use eselect; then
- insinto /usr/share/eselect/modules
- doins "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect"
- doman "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect.5"
- fi
-}
-
-pkg_postinst() {
- if has_version 'app-shells/zsh'; then
- elog
- elog "If you are interested in using the provided bash completion functions with"
- elog "zsh, valuable tips on the effective use of bashcompinit are available:"
- elog " http://www.zsh.org/mla/workers/2003/msg00046.html"
- elog
- fi
-}
diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0-r2.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0-r2.ebuild
deleted file mode 100644
index f8e9799ad8..0000000000
--- a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0-r2.ebuild
+++ /dev/null
@@ -1,169 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-BASHCOMP_P=bashcomp-2.0.3
-PYTHON_COMPAT=( python3_{11..13} )
-
-inherit autotools python-any-r1
-
-DESCRIPTION="Programmable Completion for bash"
-HOMEPAGE="https://github.com/scop/bash-completion"
-SRC_URI="
- https://github.com/scop/bash-completion/releases/download/${PV}/${P}.tar.xz
- eselect? (
- https://github.com/projg2/bashcomp2/releases/download/v${BASHCOMP_P#*-}/${BASHCOMP_P}.tar.gz
- )
-"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
-IUSE="+eselect test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=app-shells/bash-4.3_p30-r1:0
- sys-apps/miscfiles
- !=app-shells/gentoo-bashcomp-20140911
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.14.0-optimize-kernel-modules.patch
- "${FILESDIR}"/${PN}-2.16.0-libsecret-completion.patch
-)
-
-strip_completions() {
- # Remove unwanted completions.
- local strip_completions=(
- # Slackware package stuff, quite generic names cause collisions
- # (e.g. with sys-apps/pacman)
- explodepkg installpkg makepkg pkgtool removepkg upgradepkg
-
- # Debian/Red Hat network stuff
- ifdown ifup ifquery ifstatus
-
- # Installed in app-editors/vim-core
- xxd
-
- # Now-dead symlinks to deprecated completions
- hd ncal
-
- # For GNU mailman, which isn't packaged. If mailman isn't installed,
- # it triggers a QA warning.
- arch
- )
-
- local file
- for file in "${strip_completions[@]}"; do
- rm "${ED}"/usr/share/bash-completion/completions/${file} ||
- die "stripping ${file} failed"
- done
-
- # remove deprecated completions (moved to other packages)
- rm "${ED}"/usr/share/bash-completion/completions/_* || die
-}
-
-python_check_deps() {
- python_has_version "dev-python/pexpect[${PYTHON_USEDEP}]" &&
- python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" &&
- python_has_version "dev-python/pytest-xdist[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- if use eselect; then
- eapply "${WORKDIR}/${BASHCOMP_P}/bash-completion-blacklist-support.patch"
- fi
-
- default
- # Only needed for ${PN}-2.16.0-libsecret-completion.patch
- eautoreconf
-}
-
-src_test() {
- local EPYTEST_DESELECT=(
- # redhat-specific, we strip these completions
- test/t/test_if{down,up}.py
- # not available for icedtea
- test/t/test_javaws.py
- # TODO
- test/t/test_vi.py::TestVi::test_2
- test/t/test_xmlwf.py::TestXmlwf::test_2 #bug 886159
- test/t/test_xrandr.py::TestXrandr::test_output_filter
- test/t/unit/test_unit_dequote.py
- test/t/test_sudo.py::TestSudo::test_1 #bug 935400
- test/t/test_xfreerdp.py::TestXfreerdp::test_6 #bug 935400
- test/t/unit/test_unit_command_offset.py::TestUnitCommandOffset::test_cmd_quoted #bug 931744
- test/t/test_make.py::TestMake::test_6 #bug 931744
- )
- local EPYTEST_IGNORE=(
- # stupid test that async tests work
- test/fixtures/pytest/test_async.py
- )
- local EPYTEST_XDIST=1
-
- # portage's HOME override breaks tests
- local -x HOME=$(unset HOME; echo ~)
- addpredict "${HOME}"
- # used in pytest tests
- local -x NETWORK=none
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x PYTEST_PLUGINS=xdist.plugin
- emake -C completions check
- epytest
-}
-
-src_install() {
- # work-around race conditions, bug #526996
- mkdir -p "${ED}"/usr/share/bash-completion/{completions,helpers} || die
-
- emake DESTDIR="${D}" profiledir="${EPREFIX}"/etc/bash/bashrc.d install
-
- strip_completions
-
- dodoc AUTHORS CHANGELOG.md CONTRIBUTING.md README.md
-
- # install the python completions for all targets, bug #622892
- local TARGET
- for TARGET in "${PYTHON_COMPAT[@]}"; do
- if [[ ! -e "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.} ]]; then
- dosym python "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.}
- fi
- done
-
- # install the eselect module
- if use eselect; then
- insinto /usr/share/eselect/modules
- doins "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect"
- doman "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect.5"
- fi
-}
-
-pkg_postinst() {
- if has_version 'app-shells/zsh'; then
- elog
- elog "If you are interested in using the provided bash completion functions with"
- elog "zsh, valuable tips on the effective use of bashcompinit are available:"
- elog " http://www.zsh.org/mla/workers/2003/msg00046.html"
- elog
- fi
-}
diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0.ebuild
deleted file mode 100644
index eb000a9acc..0000000000
--- a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.16.0.ebuild
+++ /dev/null
@@ -1,167 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-BASHCOMP_P=bashcomp-2.0.3
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit python-any-r1
-
-DESCRIPTION="Programmable Completion for bash"
-HOMEPAGE="https://github.com/scop/bash-completion"
-SRC_URI="
- https://github.com/scop/bash-completion/releases/download/${PV}/${P}.tar.xz
- eselect? (
- https://github.com/projg2/bashcomp2/releases/download/v${BASHCOMP_P#*-}/${BASHCOMP_P}.tar.gz
- )
-"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
-IUSE="+eselect test"
-RESTRICT="!test? ( test )"
-
-# completion collision with net-fs/mc
-RDEPEND="
- >=app-shells/bash-4.3_p30-r1:0
- sys-apps/miscfiles
- !=app-shells/gentoo-bashcomp-20140911
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.14.0-optimize-kernel-modules.patch
-)
-
-strip_completions() {
- # Remove unwanted completions.
- local strip_completions=(
- # Slackware package stuff, quite generic names cause collisions
- # (e.g. with sys-apps/pacman)
- explodepkg installpkg makepkg pkgtool removepkg upgradepkg
-
- # Debian/Red Hat network stuff
- ifdown ifup ifquery ifstatus
-
- # Installed in app-editors/vim-core
- xxd
-
- # Now-dead symlinks to deprecated completions
- hd ncal
-
- # For GNU mailman, which isn't packaged. If mailman isn't installed,
- # it triggers a QA warning.
- arch
- )
-
- local file
- for file in "${strip_completions[@]}"; do
- rm "${ED}"/usr/share/bash-completion/completions/${file} ||
- die "stripping ${file} failed"
- done
-
- # remove deprecated completions (moved to other packages)
- rm "${ED}"/usr/share/bash-completion/completions/_* || die
-}
-
-python_check_deps() {
- python_has_version "dev-python/pexpect[${PYTHON_USEDEP}]" &&
- python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" &&
- python_has_version "dev-python/pytest-xdist[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- if use eselect; then
- eapply "${WORKDIR}/${BASHCOMP_P}/bash-completion-blacklist-support.patch"
- fi
-
- default
-}
-
-src_test() {
- local EPYTEST_DESELECT=(
- # redhat-specific, we strip these completions
- test/t/test_if{down,up}.py
- # not available for icedtea
- test/t/test_javaws.py
- # TODO
- test/t/test_vi.py::TestVi::test_2
- test/t/test_xmlwf.py::TestXmlwf::test_2 #bug 886159
- test/t/test_xrandr.py::TestXrandr::test_output_filter
- test/t/unit/test_unit_dequote.py
- test/t/test_sudo.py::TestSudo::test_1 #bug 935400
- test/t/test_xfreerdp.py::TestXfreerdp::test_6 #bug 935400
- test/t/unit/test_unit_command_offset.py::TestUnitCommandOffset::test_cmd_quoted #bug 931744
- test/t/test_make.py::TestMake::test_6 #bug 931744
- )
- local EPYTEST_IGNORE=(
- # stupid test that async tests work
- test/fixtures/pytest/test_async.py
- )
- local EPYTEST_XDIST=1
-
- # portage's HOME override breaks tests
- local -x HOME=$(unset HOME; echo ~)
- addpredict "${HOME}"
- # used in pytest tests
- local -x NETWORK=none
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x PYTEST_PLUGINS=xdist.plugin
- emake -C completions check
- epytest
-}
-
-src_install() {
- # work-around race conditions, bug #526996
- mkdir -p "${ED}"/usr/share/bash-completion/{completions,helpers} || die
-
- emake DESTDIR="${D}" profiledir="${EPREFIX}"/etc/bash/bashrc.d install
-
- strip_completions
-
- dodoc AUTHORS CHANGELOG.md CONTRIBUTING.md README.md
-
- # install the python completions for all targets, bug #622892
- local TARGET
- for TARGET in "${PYTHON_COMPAT[@]}"; do
- if [[ ! -e "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.} ]]; then
- dosym python "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.}
- fi
- done
-
- # install the eselect module
- if use eselect; then
- insinto /usr/share/eselect/modules
- doins "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect"
- doman "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect.5"
- fi
-}
-
-pkg_postinst() {
- if has_version 'app-shells/zsh'; then
- elog
- elog "If you are interested in using the provided bash completion functions with"
- elog "zsh, valuable tips on the effective use of bashcompinit are available:"
- elog " http://www.zsh.org/mla/workers/2003/msg00046.html"
- elog
- fi
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest
index d183604120..28c75ee9b3 100644
--- a/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest
@@ -2,10 +2,16 @@ DIST Python-2.7.18.tar.xz 12854736 BLAKE2B 060a621c91dd8e3d321aec99d44c17aa67381
DIST Python-2.7.18.tar.xz.asc 833 BLAKE2B 1d98770e46171971fb99994508d238c01d2755281d2f94353314014d9e83e0ec5f0b3e3950ea1fdf5fce9ba6b8f55312355845c2a3fc4291c27ee56fe6215448 SHA512 c2a5f5a52f47dec52460ad3275758d4e5de6e7075c3def4353c988d74d563a39b42cae2d5eb24e2a23a6247cef69100f91620b11a49c2359fbf99b203c9cbda8
DIST Python-3.10.19.tar.xz 19873020 BLAKE2B 194c36643fbdfaa777523ede07cc751c8de7dc549223ba1e48d55796fc8c7b1b6f835d62e8cd1d34e011497a9df971ad073a3949dfdfe88043a65e9cb7bb7f72 SHA512 9ea1e952bb5f7c9cc8d3efd8e7ae0059c129b6e09d12ded7d4e22476fad35f2c8186b1e003ea35a0099ffa5ff0a114985c3e960fba84e7037670b840a3e19c68
DIST Python-3.10.19.tar.xz.asc 833 BLAKE2B 7378ba5751974d758cbedb0b14d239883da8f6e514232909056952be5f66496d5b59d0435f6cc34b9df85fdf3969537c85eea044e6af9faed7041d2a78e77b2a SHA512 64bcee68c2f4e0718daaf19d405f4a5bd0ce3fc3d13bb5cbae8d4a36e419dd104c94323b497f1d06110f6b62a1b3b351279c534145f4e8cea9af0d7bb0a8b5c9
+DIST Python-3.10.20.tar.xz 19868028 BLAKE2B 2c87aba3688454eeba9828689f7d6b4cd31d12b23cff8849f6565ba3731030a726f00285d95c301f4cd6ea4316a0b63b10b2d551e03c7eaf7750f69a422626e1 SHA512 591d3acf7ef47307b8c58fec9516731b374bcdf6eb21883410f67402f823a183f1abffec1116583e394610730f414d5a98b4c3437ea5174a4d2adbb99b8f6e5b
+DIST Python-3.10.20.tar.xz.asc 833 BLAKE2B a0c698708b74cc9510374c07cc65b69fd492aeef1e910e58289f7f197edf5d42b4a14a09971c36fd8e8d01b744197a58ce081a8830610009306136ee3dc279ff SHA512 cb90ce514c63c63adc10cbb3db778eae626b922461715954daf08b3a3a99b8b4c750fded624787b7d28fc10a203b0e0e5494b91e5305ef56a23fda46c023c203
DIST Python-3.11.14.tar.xz 20326860 BLAKE2B d0db72842e46fd2b95d245e8fe4550a52ad2eabcb95900d8beb2f871ed25494dba395bf30e93591ecc42b99cd587c6ecb06578d1232fe51a04e37bf00dec307d SHA512 8b5aa917fe67dbaa3c306239ed56c16cd7a3b4b701fab0b3dc0d342d60176c75440713bcab0c59a3289ac4a0f06103bd31140c492556e1937fcdbd990675f9e5
DIST Python-3.11.14.tar.xz.asc 833 BLAKE2B 5b32ac50e6e725d9949bb6e89179d1c06c4e7d04ea82f6b80b64573c7e05b94da12de5738d0d7a5b73ad8d4cf1a5b35c5738c9e5a4ef93f97bb660f6f8b7cfc7 SHA512 d0049fd6f6d06ae5d86b3587080be060d522dd52e7e56270125541d5617582ea3977b75c7e585da005694665cfc5657e39033a730187c506edc252965f4df769
+DIST Python-3.11.15.tar.xz 20332596 BLAKE2B 8be4dd30aff7a2615fd37754dc6ed1caede1507ef7716e500a2e1d1aa421668e810a2c13dfc743bcd47576a7715588476bd8c3d42275a24215a85109d6da7062 SHA512 1667f4839acfd23d05917a12993983b7dc3ab4438a37c72496fd040ac6981f4dea9dc95461ca701a6862beedb56c423fb83398b8b18e39e1efe12f539fced1c1
+DIST Python-3.11.15.tar.xz.asc 833 BLAKE2B dd4134701ef36d22c7bca8ea16794d3e85dc2a2b6323b2babfdeb2652ade1db8b7d4256cb68a40ee1c1a2b5885666e25791c1e4d6c044cc8d49f68693ec65887 SHA512 673822ca037acb521bf7d3e7433f83cc2d60c8d102cfbf6695234e2a50ce12a7003040ad4017438510ebbb1ff0ba6727253fae250b07bc0e3d24b5578e80be52
DIST Python-3.12.12.tar.xz 20798712 BLAKE2B 3ce140b5b2c5e3b055118c8595385c7d79582c64cd8dfe9dbd062f8e38a7a995bf51f7c61e1faa768bd36c315c3493d27cd81c7425c7416454f41f77431eac0f SHA512 4b99d240dd96a6e154909dcffe87f8bb38193d634cd80a1c3d9e819b7a63af2afa46d5e6423e81f00dd388840dc29a4a71580f6aa1ce9a12e559c1d63f65a205
DIST Python-3.12.12.tar.xz.asc 963 BLAKE2B 243d7e8000768b562ff771ec8dd8fdc6be2bc36174a1f0f8b00038df2264c9d1c8a14913d07df2826fead822a16db18ef08b40d553f6a9bdc0ea39645d6d798a SHA512 32c10fd427c6f9f11595493d1b4d4c3cade85bffd439fe11e8b0b2c619e06734097b6aaedfdb4fe035b7fdd7196714dba77cdc806923e4454d5bcf60056991a0
+DIST Python-3.12.13.tar.xz 20801708 BLAKE2B 94b99c75e3aba1d1a953b5447f8ad6b7ebec921bc8cf32a9dfd449e574e4b7e2a010f0f267c31c859acec0092669203c71c90386c80203968126d9dbfb6ae85d SHA512 e1eb66f0b34581f0155e3ce25ba72cf0b4b1107672ed0ad3e86bcfe616945c9204c41ffc492f32b1066b9154913ff88343038967ad8711dd05e6f2332fdb735b
+DIST Python-3.12.13.tar.xz.asc 963 BLAKE2B e6bc572fd207fe203cf8018bca89777c7033e46d25cc598b5715658f556d26b6f3b1652f13518850ad62a37254ab4ecf5f770197cb847306ffef96b747840e88 SHA512 903fd3baa7e29891bb00fb159ec9c43804a71002c4cd38902d25bf4e5167f856b37d211a5b1098ee60e1ea41f8a10a1596dd2382edc6d7367d55dd4154807fc7
DIST Python-3.13.11.tar.xz 22704352 BLAKE2B 6c9c4dddcda36a0210155b759c01101b0429b17622d76a50881533b454335298e9f71ba300710afea2039425a08e4e1ea7eab27a18dc871950c3a32ad93ce663 SHA512 11a910785bb3edeb3888331f29d2514d539f08b07d3125186364ab0e261dab29c7e7c70fe08d89718c38b6053cbe932ac4a6062ac291871e6f4173d29425264a
DIST Python-3.13.11.tar.xz.asc 963 BLAKE2B a6e21908f8161ed014455a609004b9bce461cae61f1b3b26d56c2582e01134f7adb1634c12dc99a8c3a290564a42e5b1bdbec6cb6faaf3ea41245e8a2e17ed1c SHA512 10beaba6d0e84f0335c0add480114e98a64133ec70d320593349de86091ccbdd69743559297f9c8c5e9926089890fd0e7881388e86084f46a413e9579c59d23c
DIST Python-3.13.12.tar.xz 22926488 BLAKE2B a744a81e39e4897abcaf11d6186c106d703c668ca41beefc8d56003d3b37b84a64284f0e9ca9dcc26a6b7ac6faf495b98e5172159ff91e8c01d52993cdc354b7 SHA512 5edecdf13999d8629f31543dffdcba521dbb5633577e481ee49275e377509a2f6d700624c26f95b57a8ff9501378d10d7c07c1d0e7e19be0d6c88f05b6315a13
@@ -29,10 +35,13 @@ DIST Python-3.9.25.tar.xz.asc 833 BLAKE2B 3ab506f78b53aed0b3ebbeb620e3763857aafc
DIST python-gentoo-patches-2.7.18_p16.tar.xz 35448 BLAKE2B 0139c0944f62f9cdd236f6a8557e0ed19704c7d72869af1cb7d8bd3e646a746cd4a0201e1b44232a5e78ef49f254db20b0d0271bf744fbfd4fe0f1e99b8f3e6c SHA512 810be590d0e06fab4b2165e6852ca49662f09dcd7e20b47a29f613ad7653252c8dfac3f0eb228d77c8a914efa7c08788b2fbd552a4b47504f5fd0ec17450c48f
DIST python-gentoo-patches-3.10.18.tar.xz 29664 BLAKE2B dd69f7866cebad2536b41056571d74cbd90800062b06612b7509c9ce8f258aef66586f3c6e08f52caaceb7b0a01a52502b9c763b6f7d94caac0e929d9d77219b SHA512 b4cf4ff2d7e5b73e1102acc2183c4da3e734bdbec1c284d1fef8aceba0d49246dcdc954d3e4119521fde1e895bab0754b34b346b736b46ce45aff1afc6d38cef
DIST python-gentoo-patches-3.10.19.tar.xz 29136 BLAKE2B 3dc3719a4e36d34529f81107c4b57a905df68c072732999cc701b8c8323361eef554b3b8db45d82eecb2eafff65892355ff85b19a3963c9a04077f660fd242b0 SHA512 3f55917563f3adf62c7e11e7411ddfc28ac1fdca1ba7d567c770897a4ae969a10911344c5808564b99bce1839a87bfc98bf41ce42719ba2885c2d35644cf260b
+DIST python-gentoo-patches-3.10.20.tar.xz 29180 BLAKE2B 3179a983fd4f744a6d29cb345f9e3ee1348c4feeaf2eb67ff2f3069811764129b5fc10f728c2cbc3731c7d3bbe566f08d8d4b564b907d2492ea063c284424c1a SHA512 bd7c8fea81d3e7eada0e01ff60cf37133f66d61fab3d39778ded88f445f7830493c3ef2cfbd136bc1d15526730f4b4455d6b0adbefb6a275e6b8cfe53255eb34
DIST python-gentoo-patches-3.11.13.tar.xz 16492 BLAKE2B 8b188742dd3f25974cead290e5793c31f02741a901dce65137c596045fa2fbd5baaef332204af90f95ddcd864ee542b252c00b190e15c25af60a7bda771b116f SHA512 b5abad341d2eede81df445b56a98720466ec23df40a8a2e99a04dba5a106205655c8e2b64df0ca2630f036c8fe457ba64524280d137bbc99f52e4fd8e6bbd5ae
DIST python-gentoo-patches-3.11.14.tar.xz 15968 BLAKE2B 5bd091046feee03afd59a87b72c44b3a0874b23f89eb98020cc057f5651d31857721eb095bd056dae8bef85220dbe5aff2900cf8411dceb14e8775a4a2f09a93 SHA512 760df16f98c1a91164b43c13eb36073c74169321569791125fdad8682419b818736fe02e40c1aa1232a11081b1007c923a8fd2afd002eb4fdff0800da92d03e2
+DIST python-gentoo-patches-3.11.15.tar.xz 15988 BLAKE2B 16e98450749ebd1c617acbb9aba380fff50a8f7dba19f3f99edd3bd387c1a5d61d78cbf493cf003dfe03d2be59374ad89077b39fe203059bbbb881ae02a72ea5 SHA512 b705c72a585e315eb3ba69ffbf2a80836f0fc894fa8ae2c22768e6aa8ac2a23aada5def3d2635193793f58e3da81f0f10281c47bd8e129e1fd2c9167d292265b
DIST python-gentoo-patches-3.12.11.tar.xz 12020 BLAKE2B b419d32b1d7bef9408027edda7eac9a920a877e1b8f521483df595199bad1bbadd9dd9500079c09beab63286a801bfb25da5f93a5d31462ed3e457a6e40ad6af SHA512 1b0eaff4c0df06554525a50576da7eadb4067c4f2970851e5c9e3e527a9ccc4216cbd65c45fd562af4a1cedc2c66278a74bee5cf5c1a65df8feb22f34f5a19e4
DIST python-gentoo-patches-3.12.12.tar.xz 12012 BLAKE2B 4a030f976e73160f74dd760a8cac55a5889bf821e998b717962aac8b79780c314dfbabf93a6919daa75565c3ef31dcf6af87f3ec6768db0ff02154c4c112ab08 SHA512 d5ee32b93fb4a1910a8e3aa0486ae284885c05bd03ada3540f4990b4f12c837cd154e76511db663542dde74d652c3d1d279098319dcc991e7195e8db5befea12
+DIST python-gentoo-patches-3.12.13_p1.tar.xz 12408 BLAKE2B 2b232c2742eafcb803713c837b4ddaa38f45c88e707ec272571739570f9e2e5c94644681369d887992eadf5f0c1178489f1aa3a7d8163a2aa4ce6a86732e73da SHA512 e06d78ad24c9fbc3fa9c47b25ba722342ddd140aa30f624b41d605dae40d00ab956d879a247db2d7980c063a1472de40587a0d3cd6947e560aa7e8d0e4f89309
DIST python-gentoo-patches-3.13.11.tar.xz 8948 BLAKE2B bb6402400f931fed5d0fa2530f816ba78d7f6aff766e72692884a391929df76cedcc9a9b7a709d8ebffb38fe9256dd78a2b668d49951e07bf61a5388bce49b34 SHA512 f184a682a888a8781aa1a4eb3983d5861d4eec2d0c0729ab95f867aa4a901c65865cc429e9b871c62d5d113509c3f621c7c81d7c7e4600b8a712a8ec256270a9
DIST python-gentoo-patches-3.13.12.tar.xz 8992 BLAKE2B e7a26ddbd76f337a0f3958e55d6f77864308d3db5b5b8bec36aa50c1845d28284c6d0ce4c847eb0ca2a51367baaf454be9c62bc1932ffdff5a4ee06c9701c3b4 SHA512 ef87942f8d1d145112b2275d1fce9f6faea19c37ed3e37fd8762f4470ecaa1d87f5a471f287d3e1bf7507af351894c15872ceea0ea41d4903707c12d4cf0c4d0
DIST python-gentoo-patches-3.13.4.tar.xz 8912 BLAKE2B e3d9f2a12f801dc75e09c5301757f35216d712b5e5394f2ec3ce1d79d0cb57571dbca525e3d5c35b90fa059c2b78ee24341b6a51cbe9691deac84c9ee0578824 SHA512 1a7141accb7aa70c7bd8dd12528f7de031dfeab9ff089f3d044da0b7b52461e2d6d7d1467161e0fe1e259d9fa06d70bcf107d86ad3590e8cf73aa1132ef3aaf9
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.20.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.20.ebuild
new file mode 100644
index 0000000000..841a3e9011
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.20.ebuild
@@ -0,0 +1,572 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+WANT_LIBTOOL="none"
+
+inherit autotools check-reqs flag-o-matic multiprocessing pax-utils
+inherit prefix toolchain-funcs verify-sig
+
+MY_PV=${PV/_rc/rc}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="An interpreted, interactive, object-oriented programming language"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
+ )
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="
+ bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo
+ +readline +sqlite +ssl test tk valgrind
+"
+RESTRICT="!test? ( test )"
+
+# Do not add a dependency on dev-lang/python to this ebuild.
+# If you need to apply a patch which requires python for bootstrapping, please
+# run the bootstrap code on your dev box and include the results in the
+# patchset. See bug 447752.
+
+RDEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-misc/mime-types
+ >=dev-libs/expat-2.1:=
+ dev-libs/libffi:=
+ dev-libs/mpdecimal:=
+ dev-python/gentoo-common
+ >=virtual/zlib-1.1.3:=
+ virtual/libcrypt:=
+ virtual/libintl
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ kernel_linux? ( sys-apps/util-linux:= )
+ ncurses? ( >=sys-libs/ncurses-5.2:= )
+ readline? (
+ !libedit? ( >=sys-libs/readline-4.1:= )
+ libedit? ( dev-libs/libedit:= )
+ )
+ sqlite? ( >=dev-db/sqlite-3.3.8:3= )
+ ssl? ( >=dev-libs/openssl-1.1.1:= )
+ tk? (
+ >=dev-lang/tcl-8.0:=
+ >=dev-lang/tk-8.0:=
+ dev-tcltk/blt:=
+ dev-tcltk/tix
+ )
+"
+# bluetooth requires headers from bluez
+DEPEND="
+ ${RDEPEND}
+ bluetooth? ( net-wireless/bluez )
+ test? (
+ app-arch/xz-utils
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ )
+ valgrind? ( dev-debug/valgrind )
+"
+# autoconf-archive needed to eautoreconf
+BDEPEND="
+ dev-build/autoconf-archive
+ app-alternatives/awk
+ virtual/pkgconfig
+ verify-sig? ( sec-keys/openpgp-keys-python )
+"
+PDEPEND="
+ ensurepip? (
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc
+
+# large file tests involve a 2.5G file being copied (duplicated)
+CHECKREQS_DISK_BUILD=5500M
+
+QA_PKGCONFIG_VERSION=${PYVER}
+# false positives -- functions specific to *BSD
+QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
+
+pkg_pretend() {
+ use test && check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+ use test && check-reqs_pkg_setup
+}
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
+ fi
+ default
+}
+
+src_prepare() {
+ # Ensure that internal copies of expat and libffi are not used.
+ rm -r Modules/expat || die
+ rm -r Modules/_ctypes/libffi* || die
+
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ default
+
+ # https://bugs.gentoo.org/850151
+ sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die
+
+ # force the correct number of jobs
+ # https://bugs.gentoo.org/737660
+ local jobs=$(makeopts_jobs)
+ sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
+ sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
+
+ eautoreconf
+}
+
+build_cbuild_python() {
+ # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
+ local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ #
+ # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
+ local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
+ local -x LDFLAGS_NODIST=${BUILD_LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+ local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
+ local -x BUILD_LDFLAGS=${LDFLAGS_NODIST}
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910 and bug #864911.
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ --prefix="${BROOT}"/usr
+ --libdir="${cbuild_libdir:2}"
+
+ # Avoid needing to load the right libpython.so.
+ --disable-shared
+
+ # As minimal as possible for the mini CBUILD Python
+ # we build just for cross.
+ --without-lto
+ --disable-optimizations
+ )
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+ # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating
+ # libdir correctly for cross.
+ PYTHON_DISABLE_MODULES+=" _ctypes _crypt" \
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Avoid as many dependencies as possible for the cross build.
+ cat >> Makefile <<-EOF || die
+ MODULE_NIS=disabled
+ MODULE__DBM=disabled
+ MODULE__GDBM=disabled
+ MODULE__DBM=disabled
+ MODULE__SQLITE3=disabled
+ MODULE__HASHLIB=disabled
+ MODULE__SSL=disabled
+ MODULE__CURSES=disabled
+ MODULE__CURSES_PANEL=disabled
+ MODULE_READLINE=disabled
+ MODULE__TKINTER=disabled
+ MODULE_PYEXPAT=disabled
+ MODULE_ZLIB=disabled
+ EOF
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the Python it was pointed to
+ # immediately.
+ PYTHON_DISABLE_MODULES+=" _ctypes _crypt" emake
+ popd &> /dev/null || die
+}
+
+src_configure() {
+ # disable automagic bluetooth headers detection
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
+ fi
+ local disable
+ use gdbm || disable+=" gdbm"
+ use ncurses || disable+=" _curses _curses_panel"
+ use readline || disable+=" readline"
+ use sqlite || disable+=" _sqlite3"
+ use ssl || export PYTHON_DISABLE_SSL="1"
+ use tk || disable+=" _tkinter"
+ export PYTHON_DISABLE_MODULES="${disable}"
+
+ if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
+ einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
+ fi
+
+ filter-flags -malign-double
+
+ # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
+
+ local dbmliborder=
+ if use gdbm; then
+ dbmliborder+="${dbmliborder:+:}gdbm"
+ fi
+
+ # Set baseline test skip flags.
+ COMMON_TEST_SKIPS=(
+ # running gdb inside an ebuild as non-root, within sandbox,
+ # and possibly within a container is unreliable
+ -x test_gdb
+ )
+
+ # Arch-specific skips. See #931888 for a collection of these.
+ case ${CHOST} in
+ alpha*)
+ COMMON_TEST_SKIPS+=(
+ -x test_builtin
+ -x test_capi
+ -x test_cmath
+ -x test_float
+ # timeout
+ -x test_free_threading
+ -x test_math
+ -x test_numeric_tower
+ -x test_random
+ -x test_statistics
+ # bug 653850
+ -x test_resource
+ -x test_strtod
+ )
+ ;;
+ mips*)
+ COMMON_TEST_SKIPS+=(
+ -x test_ctypes
+ -x test_external_inspection
+ -x test_statistics
+ )
+ ;;
+ powerpc64-*) # big endian
+ COMMON_TEST_SKIPS+=(
+ -x test_descr
+ )
+ ;;
+ riscv*)
+ COMMON_TEST_SKIPS+=(
+ -x test_urllib2
+ )
+ ;;
+ sparc*)
+ COMMON_TEST_SKIPS+=(
+ # bug 788022
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ -x test_multiprocessing_spawn
+
+ -x test_ctypes
+ -x test_descr
+ # bug 931908
+ -x test_exceptions
+ )
+ ;;
+ esac
+
+ # musl-specific skips
+ use elibc_musl && COMMON_TEST_SKIPS+=(
+ # various musl locale deficiencies
+ -x test__locale
+ -x test_c_locale_coercion
+ -x test_locale
+ -x test_re
+
+ # known issues with find_library on musl
+ # https://bugs.python.org/issue21622
+ -x test_ctypes
+
+ # fpathconf, ttyname errno values
+ -x test_os
+ )
+
+ if use pgo; then
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ -u-network
+
+ # We use a timeout because of how often we've had hang issues
+ # here. It also matches the default upstream PROFILE_TASK.
+ --timeout 1200
+
+ "${COMMON_TEST_SKIPS[@]}"
+
+ -x test_dtrace
+
+ # All of these seem to occasionally hang for PGO inconsistently
+ # They'll even hang here but be fine in src_test sometimes.
+ # bug #828535 (and related: bug #788022)
+ -x test_asyncio
+ -x test_concurrent_futures
+ -x test_httpservers
+ -x test_logging
+ -x test_multiprocessing_fork
+ -x test_socket
+ -x test_xmlrpc
+
+ # Hangs (actually runs indefinitely executing itself w/ many cpython builds)
+ # bug #900429
+ -x test_tools
+ )
+
+ # Arch-specific skips. See #931888 for a collection of these.
+ case ${CHOST} in
+ alpha*)
+ profile_task_flags+=(
+ -x test_os
+ )
+ ;;
+ hppa*)
+ profile_task_flags+=(
+ -x test_descr
+ # bug 931908
+ -x test_exceptions
+ -x test_os
+ )
+ ;;
+ powerpc64-*) # big endian
+ profile_task_flags+=(
+ # bug 931908
+ -x test_exceptions
+ )
+ ;;
+ riscv*)
+ profile_task_flags+=(
+ -x test_statistics
+ )
+ ;;
+ esac
+
+ if has_version "app-arch/rpm" ; then
+ # Avoid sandbox failure (attempts to write to /var/lib/rpm)
+ profile_task_flags+=(
+ -x test_distutils
+ )
+ fi
+ local -x PROFILE_TASK="${profile_task_flags[*]}"
+ fi
+
+ local myeconfargs=(
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
+
+ --enable-shared
+ --without-static-libpython
+ --enable-ipv6
+ --infodir='${prefix}/share/info'
+ --mandir='${prefix}/share/man'
+ --with-dbmliborder="${dbmliborder}"
+ --with-libc=
+ --enable-loadable-sqlite-extensions
+ --without-ensurepip
+ --without-lto
+ --with-system-expat
+ --with-system-ffi
+ --with-system-libmpdec
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
+
+ $(use_with debug assertions)
+ $(use_enable pgo optimizations)
+ $(use_with readline readline "$(usex libedit editline readline)")
+ $(use_with valgrind)
+ )
+
+ # disable implicit optimization/debugging flags
+ local -x OPT=
+
+ # https://bugs.gentoo.org/700012
+ if tc-is-lto; then
+ append-cflags $(test-flags-CC -ffat-lto-objects)
+ myeconfargs+=(
+ --with-lto
+ )
+ fi
+
+ if tc-is-cross-compiler ; then
+ build_cbuild_python
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ export PATH="${WORKDIR}/${P}-${CBUILD}:${PATH}"
+ fi
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS}
+ local -x LDFLAGS_NODIST=${LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
+ hprefixify setup.py
+ econf "${myeconfargs[@]}"
+
+ if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
+ eerror "configure has detected that the sem_open function is broken."
+ eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
+ die "Broken sem_open function (bug 496328)"
+ fi
+
+ # install epython.py as part of stdlib
+ echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+ # Prevent using distutils bundled by setuptools.
+ # https://bugs.gentoo.org/823728
+ export SETUPTOOLS_USE_DISTUTILS=stdlib
+
+ # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
+ # end up writing bytecode & violating sandbox.
+ # bug #831897
+ local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
+
+ # Gentoo hack to disable accessing system site-packages
+ export GENTOO_CPYTHON_BUILD=1
+
+ if use pgo ; then
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+ fi
+
+ # also need to clear the flags explicitly here or they end up
+ # in _sysconfigdata*
+ emake CPPFLAGS= CFLAGS= LDFLAGS=
+
+ # Restore saved value from above.
+ local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
+
+ # Work around bug 329499. See also bug 413751 and 457194.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E python
+ else
+ pax-mark m python
+ fi
+}
+
+src_test() {
+ # Tests will not work when cross compiling.
+ if tc-is-cross-compiler; then
+ elog "Disabling tests due to crosscompiling."
+ return
+ fi
+
+ local test_opts=(
+ --verbose3
+ -u-network
+ -j "$(makeopts_jobs)"
+ "${COMMON_TEST_SKIPS[@]}"
+ )
+
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+
+ nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
+ CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local ret=${?}
+
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
+}
+
+src_install() {
+ local libdir=${ED}/usr/lib/python${PYVER}
+
+ emake DESTDIR="${D}" TEST_MODULES=no altinstall
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use ensurepip; then
+ rm -r "${libdir}"/ensurepip || die
+ fi
+ if ! use sqlite; then
+ rm -r "${libdir}/"sqlite3 || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter} || die
+ fi
+
+ ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
+
+ dodoc Misc/{ACKS,HISTORY,NEWS}
+
+ if use examples; then
+ docinto examples
+ find Tools -name __pycache__ -exec rm -fr {} + || die
+ dodoc -r Tools
+ fi
+ insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
+ local libname=$(
+ printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
+ emake --no-print-directory -s -f - 2>/dev/null
+ )
+ newins Tools/gdb/libpython.py "${libname}"-gdb.py
+
+ newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
+ newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
+ sed \
+ -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
+ -e "s:@PYDOC@:pydoc${PYVER}:" \
+ -i "${ED}/etc/conf.d/pydoc-${PYVER}" \
+ "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
+}
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.15.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.15.ebuild
new file mode 100644
index 0000000000..731a43d98c
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.11.15.ebuild
@@ -0,0 +1,619 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+WANT_LIBTOOL="none"
+
+inherit autotools check-reqs flag-o-matic multiprocessing pax-utils
+inherit prefix python-utils-r1 toolchain-funcs verify-sig
+
+MY_PV=${PV/_rc/rc}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="An interpreted, interactive, object-oriented programming language"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
+ )
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="
+ bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo
+ +readline +sqlite +ssl test tk valgrind
+"
+RESTRICT="!test? ( test )"
+
+# Do not add a dependency on dev-lang/python to this ebuild.
+# If you need to apply a patch which requires python for bootstrapping, please
+# run the bootstrap code on your dev box and include the results in the
+# patchset. See bug 447752.
+
+RDEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-crypt/libb2
+ app-misc/mime-types
+ >=dev-libs/expat-2.1:=
+ dev-libs/libffi:=
+ dev-libs/mpdecimal:=
+ dev-python/gentoo-common
+ >=virtual/zlib-1.1.3:=
+ virtual/libcrypt:=
+ virtual/libintl
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ kernel_linux? ( sys-apps/util-linux:= )
+ ncurses? ( >=sys-libs/ncurses-5.2:= )
+ readline? (
+ !libedit? ( >=sys-libs/readline-4.1:= )
+ libedit? ( dev-libs/libedit:= )
+ )
+ sqlite? ( >=dev-db/sqlite-3.3.8:3= )
+ ssl? ( >=dev-libs/openssl-1.1.1:= )
+ tk? (
+ >=dev-lang/tcl-8.0:=
+ >=dev-lang/tk-8.0:=
+ dev-tcltk/blt:=
+ dev-tcltk/tix
+ )
+"
+# bluetooth requires headers from bluez
+DEPEND="
+ ${RDEPEND}
+ bluetooth? ( net-wireless/bluez )
+ test? (
+ app-arch/xz-utils
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ )
+ valgrind? ( dev-debug/valgrind )
+"
+# autoconf-archive needed to eautoreconf
+BDEPEND="
+ dev-build/autoconf-archive
+ app-alternatives/awk
+ virtual/pkgconfig
+ verify-sig? ( sec-keys/openpgp-keys-python )
+"
+if [[ ${PV} != *_alpha* ]]; then
+ RDEPEND+="
+ dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
+ "
+fi
+PDEPEND="
+ ensurepip? (
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc
+
+# large file tests involve a 2.5G file being copied (duplicated)
+CHECKREQS_DISK_BUILD=5500M
+
+QA_PKGCONFIG_VERSION=${PYVER}
+# false positives -- functions specific to *BSD
+QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
+
+pkg_pretend() {
+ use test && check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+ use test && check-reqs_pkg_setup
+}
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
+ fi
+ default
+}
+
+src_prepare() {
+ # Ensure that internal copies of expat and libffi are not used.
+ rm -r Modules/expat || die
+ rm -r Modules/_ctypes/libffi* || die
+
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ default
+
+ # https://bugs.gentoo.org/850151
+ sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" setup.py || die
+
+ # force the correct number of jobs
+ # https://bugs.gentoo.org/737660
+ local jobs=$(makeopts_jobs)
+ sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
+ sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
+
+ eautoreconf
+}
+
+build_cbuild_python() {
+ # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
+ local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ #
+ # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
+ local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
+ local -x LDFLAGS_NODIST=${BUILD_LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+ local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
+ local -x BUILD_LDFLAGS=${LDFLAGS_NODIST}
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ --prefix="${BROOT}"/usr
+ --libdir="${cbuild_libdir:2}"
+
+ # Avoid needing to load the right libpython.so.
+ --disable-shared
+
+ # As minimal as possible for the mini CBUILD Python
+ # we build just for cross to satisfy --with-build-python.
+ --without-lto
+ --without-readline
+ --disable-optimizations
+ )
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+ # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating
+ # libdir correctly for cross.
+ PYTHON_DISABLE_MODULES+=" _ctypes _crypt" \
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Avoid as many dependencies as possible for the cross build.
+ cat >> Makefile <<-EOF || die
+ MODULE_NIS_STATE=disabled
+ MODULE__DBM_STATE=disabled
+ MODULE__GDBM_STATE=disabled
+ MODULE__DBM_STATE=disabled
+ MODULE__SQLITE3_STATE=disabled
+ MODULE__HASHLIB_STATE=disabled
+ MODULE__SSL_STATE=disabled
+ MODULE__CURSES_STATE=disabled
+ MODULE__CURSES_PANEL_STATE=disabled
+ MODULE_READLINE_STATE=disabled
+ MODULE__TKINTER_STATE=disabled
+ MODULE_PYEXPAT_STATE=disabled
+ MODULE_ZLIB_STATE=disabled
+ EOF
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the --with-build-python value
+ # immediately.
+ PYTHON_DISABLE_MODULES+=" _ctypes _crypt" emake
+ popd &> /dev/null || die
+}
+
+src_configure() {
+ # disable automagic bluetooth headers detection
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
+ fi
+
+ filter-flags -malign-double
+
+ # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
+
+ local dbmliborder=
+ if use gdbm; then
+ dbmliborder+="${dbmliborder:+:}gdbm"
+ fi
+
+ # Set baseline test skip flags.
+ COMMON_TEST_SKIPS=(
+ # running gdb inside an ebuild as non-root, within sandbox,
+ # and possibly within a container is unreliable
+ -x test_gdb
+ # this is actually test_gdb.test_pretty_print
+ -x test_pretty_print
+ )
+
+ # Arch-specific skips. See #931888 for a collection of these.
+ case ${CHOST} in
+ alpha*)
+ COMMON_TEST_SKIPS+=(
+ -x test_builtin
+ -x test_capi
+ -x test_cmath
+ -x test_float
+ # timeout
+ -x test_free_threading
+ -x test_math
+ -x test_numeric_tower
+ -x test_random
+ -x test_statistics
+ # bug 653850
+ -x test_resource
+ -x test_strtod
+ )
+ ;;
+ mips*)
+ COMMON_TEST_SKIPS+=(
+ -x test_ctypes
+ -x test_external_inspection
+ -x test_statistics
+ )
+ ;;
+ powerpc64-*) # big endian
+ COMMON_TEST_SKIPS+=(
+ -x test_descr
+ )
+ ;;
+ riscv*)
+ COMMON_TEST_SKIPS+=(
+ -x test_urllib2
+ )
+ ;;
+ sparc*)
+ COMMON_TEST_SKIPS+=(
+ # bug 788022
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ -x test_multiprocessing_spawn
+
+ -x test_ctypes
+ -x test_descr
+ # bug 931908
+ -x test_exceptions
+ )
+ ;;
+ esac
+
+ # musl-specific skips
+ use elibc_musl && COMMON_TEST_SKIPS+=(
+ # various musl locale deficiencies
+ -x test__locale
+ -x test_c_locale_coercion
+ -x test_locale
+ -x test_re
+
+ # known issues with find_library on musl
+ # https://bugs.python.org/issue21622
+ -x test_ctypes
+
+ # fpathconf, ttyname errno values
+ -x test_os
+ )
+
+ if use pgo; then
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ -u-network
+
+ # We use a timeout because of how often we've had hang issues
+ # here. It also matches the default upstream PROFILE_TASK.
+ --timeout 1200
+
+ "${COMMON_TEST_SKIPS[@]}"
+
+ -x test_dtrace
+
+ # All of these seem to occasionally hang for PGO inconsistently
+ # They'll even hang here but be fine in src_test sometimes.
+ # bug #828535 (and related: bug #788022)
+ -x test_asyncio
+ -x test_concurrent_futures
+ -x test_httpservers
+ -x test_logging
+ -x test_multiprocessing_fork
+ -x test_socket
+ -x test_xmlrpc
+
+ # Hangs (actually runs indefinitely executing itself w/ many cpython builds)
+ # bug #900429
+ -x test_tools
+ )
+
+ # Arch-specific skips. See #931888 for a collection of these.
+ case ${CHOST} in
+ alpha*)
+ profile_task_flags+=(
+ -x test_os
+ )
+ ;;
+ hppa*)
+ profile_task_flags+=(
+ -x test_descr
+ # bug 931908
+ -x test_exceptions
+ -x test_os
+ )
+ ;;
+ powerpc64-*) # big endian
+ profile_task_flags+=(
+ # bug 931908
+ -x test_exceptions
+ )
+ ;;
+ riscv*)
+ profile_task_flags+=(
+ -x test_statistics
+ )
+ ;;
+ esac
+
+ if has_version "app-arch/rpm" ; then
+ # Avoid sandbox failure (attempts to write to /var/lib/rpm)
+ profile_task_flags+=(
+ -x test_distutils
+ )
+ fi
+ local -x PROFILE_TASK="${profile_task_flags[*]}"
+ fi
+
+ local myeconfargs=(
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
+
+ --enable-shared
+ --without-static-libpython
+ --enable-ipv6
+ --infodir='${prefix}/share/info'
+ --mandir='${prefix}/share/man'
+ --with-dbmliborder="${dbmliborder}"
+ --with-libc=
+ --enable-loadable-sqlite-extensions
+ --without-ensurepip
+ --without-lto
+ --with-system-expat
+ --with-system-ffi
+ --with-system-libmpdec
+ --with-platlibdir=lib
+ --with-pkg-config=yes
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
+
+ $(use_with debug assertions)
+ $(use_enable pgo optimizations)
+ $(use_with readline readline "$(usex libedit editline readline)")
+ $(use_with valgrind)
+ )
+
+ # disable implicit optimization/debugging flags
+ local -x OPT=
+
+ # https://bugs.gentoo.org/700012
+ if tc-is-lto; then
+ append-cflags $(test-flags-CC -ffat-lto-objects)
+ myeconfargs+=(
+ --with-lto
+ )
+ fi
+
+ if tc-is-cross-compiler ; then
+ build_cbuild_python
+ myeconfargs+=(
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
+ )
+ fi
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS}
+ local -x LDFLAGS_NODIST=${LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
+ hprefixify setup.py
+ econf "${myeconfargs[@]}"
+
+ if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
+ eerror "configure has detected that the sem_open function is broken."
+ eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
+ die "Broken sem_open function (bug 496328)"
+ fi
+
+ # force-disable modules we don't want built
+ local disable_modules=( NIS )
+ use gdbm || disable_modules+=( _GDBM _DBM )
+ use sqlite || disable_modules+=( _SQLITE3 )
+ use ssl || disable_modules+=( _HASHLIB _SSL )
+ use ncurses || disable_modules+=( _CURSES _CURSES_PANEL )
+ use readline || disable_modules+=( READLINE )
+ use tk || disable_modules+=( _TKINTER )
+
+ local mod
+ for mod in "${disable_modules[@]}"; do
+ echo "MODULE_${mod}_STATE=disabled"
+ done >> Makefile || die
+
+ # install epython.py as part of stdlib
+ echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+ # Prevent using distutils bundled by setuptools.
+ # https://bugs.gentoo.org/823728
+ export SETUPTOOLS_USE_DISTUTILS=stdlib
+ export PYTHONSTRICTEXTENSIONBUILD=1
+
+ # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
+ # end up writing bytecode & violating sandbox.
+ # bug #831897
+ local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
+
+ # Gentoo hack to disable accessing system site-packages
+ export GENTOO_CPYTHON_BUILD=1
+
+ if use pgo ; then
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+ fi
+
+ # also need to clear the flags explicitly here or they end up
+ # in _sysconfigdata*
+ emake CPPFLAGS= CFLAGS= LDFLAGS=
+
+ # Restore saved value from above.
+ local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
+
+ # Work around bug 329499. See also bug 413751 and 457194.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E python
+ else
+ pax-mark m python
+ fi
+}
+
+src_test() {
+ # Tests will not work when cross compiling.
+ if tc-is-cross-compiler; then
+ elog "Disabling tests due to crosscompiling."
+ return
+ fi
+
+ # this just happens to skip test_support.test_freeze that is broken
+ # without bundled expat
+ # TODO: get a proper skip for it upstream
+ local -x LOGNAME=buildbot
+
+ local test_opts=(
+ --verbose3
+ -u-network
+ -j "$(makeopts_jobs)"
+ "${COMMON_TEST_SKIPS[@]}"
+ )
+
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+
+ nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
+ CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local ret=${?}
+
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
+}
+
+src_install() {
+ local libdir=${ED}/usr/lib/python${PYVER}
+
+ # -j1 hack for now for bug #843458
+ emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use ensurepip; then
+ rm -r "${libdir}"/ensurepip || die
+ fi
+ if ! use sqlite; then
+ rm -r "${libdir}/"sqlite3 || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter} || die
+ fi
+
+ ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
+
+ dodoc Misc/{ACKS,HISTORY,NEWS}
+
+ if use examples; then
+ docinto examples
+ find Tools -name __pycache__ -exec rm -fr {} + || die
+ dodoc -r Tools
+ fi
+ insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
+ local libname=$(
+ printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
+ emake --no-print-directory -s -f - 2>/dev/null
+ )
+ newins Tools/gdb/libpython.py "${libname}"-gdb.py
+
+ newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
+ newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
+ sed \
+ -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
+ -e "s:@PYDOC@:pydoc${PYVER}:" \
+ -i "${ED}/etc/conf.d/pydoc-${PYVER}" \
+ "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
+
+ # python-exec wrapping support
+ local pymajor=${PYVER%.*}
+ local EPYTHON=python${PYVER}
+ local scriptdir=${D}$(python_get_scriptdir)
+ mkdir -p "${scriptdir}" || die
+ # python and pythonX
+ ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
+ ln -s "python${pymajor}" "${scriptdir}/python" || die
+ # python-config and pythonX-config
+ # note: we need to create a wrapper rather than symlinking it due
+ # to some random dirname(argv[0]) magic performed by python-config
+ cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
+ #!/bin/sh
+ exec "${abiver}-config" "\${@}"
+ EOF
+ chmod +x "${scriptdir}/python${pymajor}-config" || die
+ ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
+ # 2to3, pydoc
+ ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die
+ ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
+ # idle
+ if use tk; then
+ ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
+ fi
+}
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.13_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.13_p1.ebuild
new file mode 100644
index 0000000000..5a069bb5d6
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.13_p1.ebuild
@@ -0,0 +1,602 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+WANT_LIBTOOL="none"
+
+inherit autotools check-reqs flag-o-matic multiprocessing pax-utils
+inherit python-utils-r1 toolchain-funcs verify-sig
+
+MY_PV=${PV/_rc/rc}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="An interpreted, interactive, object-oriented programming language"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
+ )
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="
+ bluetooth debug +ensurepip examples gdbm libedit +ncurses pgo
+ +readline +sqlite +ssl test tk valgrind
+"
+RESTRICT="!test? ( test )"
+
+# Do not add a dependency on dev-lang/python to this ebuild.
+# If you need to apply a patch which requires python for bootstrapping, please
+# run the bootstrap code on your dev box and include the results in the
+# patchset. See bug 447752.
+
+RDEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-crypt/libb2
+ app-misc/mime-types
+ >=dev-libs/expat-2.1:=
+ dev-libs/libffi:=
+ dev-libs/mpdecimal:=
+ dev-python/gentoo-common
+ >=virtual/zlib-1.1.3:=
+ virtual/libcrypt:=
+ virtual/libintl
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ kernel_linux? ( sys-apps/util-linux:= )
+ ncurses? ( >=sys-libs/ncurses-5.2:= )
+ readline? (
+ !libedit? ( >=sys-libs/readline-4.1:= )
+ libedit? ( dev-libs/libedit:= )
+ )
+ sqlite? ( >=dev-db/sqlite-3.3.8:3= )
+ ssl? ( >=dev-libs/openssl-1.1.1:= )
+ tk? (
+ >=dev-lang/tcl-8.0:=
+ >=dev-lang/tk-8.0:=
+ dev-tcltk/blt:=
+ dev-tcltk/tix
+ )
+"
+# bluetooth requires headers from bluez
+DEPEND="
+ ${RDEPEND}
+ bluetooth? ( net-wireless/bluez )
+ test? (
+ app-arch/xz-utils
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ dev-python/ensurepip-wheel
+ )
+ valgrind? ( dev-debug/valgrind )
+"
+# autoconf-archive needed to eautoreconf
+BDEPEND="
+ dev-build/autoconf-archive
+ app-alternatives/awk
+ virtual/pkgconfig
+ verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 )
+"
+if [[ ${PV} != *_alpha* ]]; then
+ RDEPEND+="
+ dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
+ "
+fi
+PDEPEND="
+ ensurepip? ( dev-python/ensurepip-pip )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc
+
+# large file tests involve a 2.5G file being copied (duplicated)
+CHECKREQS_DISK_BUILD=5500M
+
+QA_PKGCONFIG_VERSION=${PYVER}
+# false positives -- functions specific to *BSD
+QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
+
+pkg_pretend() {
+ use test && check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+ use test && check-reqs_pkg_setup
+}
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
+ fi
+ default
+}
+
+src_prepare() {
+ # Ensure that internal copies of expat and libffi are not used.
+ # TODO: Makefile has annoying deps on expat headers
+ #rm -r Modules/expat || die
+
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ default
+
+ # force the correct number of jobs
+ # https://bugs.gentoo.org/737660
+ sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
+
+ # breaks tests when using --with-wheel-pkg-dir
+ rm -r Lib/test/wheeldata || die
+
+ eautoreconf
+}
+
+build_cbuild_python() {
+ # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
+ local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ #
+ # -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
+ local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
+ local -x LDFLAGS_NODIST=${BUILD_LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+ local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
+ local -x BUILD_LDFLAGS=${LDFLAGS_NODIST}
+
+ # We need to build our own Python on CBUILD first, and feed it in.
+ # bug #847910
+ local myeconfargs_cbuild=(
+ "${myeconfargs[@]}"
+
+ --prefix="${BROOT}"/usr
+ --libdir="${cbuild_libdir:2}"
+
+ # Avoid needing to load the right libpython.so.
+ --disable-shared
+
+ # As minimal as possible for the mini CBUILD Python
+ # we build just for cross to satisfy --with-build-python.
+ --without-lto
+ --without-readline
+ --disable-optimizations
+ )
+
+ mkdir "${WORKDIR}"/${P}-${CBUILD} || die
+ pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
+
+ # Avoid as many dependencies as possible for the cross build.
+ mkdir Modules || die
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ _dbm _gdbm
+ _sqlite3
+ _hashlib _ssl
+ _curses _curses_panel
+ readline
+ _tkinter
+ pyexpat
+ zlib
+ # We disabled these for CBUILD because Python's setup.py can't handle locating
+ # libdir correctly for cross. This should be rechecked for the pure Makefile approach,
+ # and uncommented if needed.
+ #_ctypes _crypt
+ EOF
+
+ ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
+
+ # Unfortunately, we do have to build this immediately, and
+ # not in src_compile, because CHOST configure for Python
+ # will check the existence of the --with-build-python value
+ # immediately.
+ emake
+ popd &> /dev/null || die
+}
+
+src_configure() {
+ # disable automagic bluetooth headers detection
+ if ! use bluetooth; then
+ local -x ac_cv_header_bluetooth_bluetooth_h=no
+ fi
+
+ filter-flags -malign-double
+
+ # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
+ # PKG_CONFIG needed for cross.
+ tc-export CXX PKG_CONFIG
+
+ local dbmliborder=
+ if use gdbm; then
+ dbmliborder+="${dbmliborder:+:}gdbm"
+ fi
+
+ # Set baseline test skip flags.
+ COMMON_TEST_SKIPS=(
+ # running gdb inside an ebuild as non-root, within sandbox,
+ # and possibly within a container is unreliable
+ -x test_gdb
+ # this is actually test_gdb.test_pretty_print
+ -x test_pretty_print
+ )
+
+ # Arch-specific skips. See #931888 for a collection of these.
+ case ${CHOST} in
+ alpha*)
+ COMMON_TEST_SKIPS+=(
+ -x test_builtin
+ -x test_capi
+ -x test_cmath
+ -x test_float
+ # timeout
+ -x test_free_threading
+ -x test_math
+ -x test_numeric_tower
+ -x test_random
+ -x test_statistics
+ # bug 653850
+ -x test_resource
+ -x test_strtod
+ )
+ ;;
+ mips*)
+ COMMON_TEST_SKIPS+=(
+ -x test_ctypes
+ -x test_external_inspection
+ -x test_statistics
+ )
+ ;;
+ riscv*)
+ COMMON_TEST_SKIPS+=(
+ -x test_urllib2
+ )
+ ;;
+ sparc*)
+ COMMON_TEST_SKIPS+=(
+ # bug 788022
+ -x test_multiprocessing_fork
+ -x test_multiprocessing_forkserver
+ -x test_multiprocessing_spawn
+
+ -x test_ctypes
+ # bug 931908
+ -x test_exceptions
+ )
+ ;;
+ esac
+
+ # musl-specific skips
+ use elibc_musl && COMMON_TEST_SKIPS+=(
+ # various musl locale deficiencies
+ -x test__locale
+ -x test_c_locale_coercion
+ -x test_locale
+ -x test_re
+
+ # known issues with find_library on musl
+ # https://bugs.python.org/issue21622
+ -x test_ctypes
+
+ # fpathconf, ttyname errno values
+ -x test_os
+ )
+
+ if use pgo; then
+ local profile_task_flags=(
+ -m test
+ "-j$(makeopts_jobs)"
+ --pgo-extended
+ -u-network
+
+ # We use a timeout because of how often we've had hang issues
+ # here. It also matches the default upstream PROFILE_TASK.
+ --timeout 1200
+
+ "${COMMON_TEST_SKIPS[@]}"
+
+ -x test_dtrace
+
+ # All of these seem to occasionally hang for PGO inconsistently
+ # They'll even hang here but be fine in src_test sometimes.
+ # bug #828535 (and related: bug #788022)
+ -x test_asyncio
+ -x test_concurrent_futures
+ -x test_httpservers
+ -x test_logging
+ -x test_multiprocessing_fork
+ -x test_socket
+ -x test_xmlrpc
+
+ # Hangs (actually runs indefinitely executing itself w/ many cpython builds)
+ # bug #900429
+ -x test_tools
+ )
+
+ # Arch-specific skips. See #931888 for a collection of these.
+ case ${CHOST} in
+ alpha*)
+ profile_task_flags+=(
+ -x test_os
+ )
+ ;;
+ hppa*)
+ profile_task_flags+=(
+ -x test_descr
+ # bug 931908
+ -x test_exceptions
+ -x test_os
+ )
+ ;;
+ powerpc64-*) # big endian
+ profile_task_flags+=(
+ # bug 931908
+ -x test_exceptions
+ )
+ ;;
+ riscv*)
+ profile_task_flags+=(
+ -x test_statistics
+ )
+ ;;
+ esac
+
+ if has_version "app-arch/rpm" ; then
+ # Avoid sandbox failure (attempts to write to /var/lib/rpm)
+ profile_task_flags+=(
+ -x test_distutils
+ )
+ fi
+ local -x PROFILE_TASK="${profile_task_flags[*]}"
+ fi
+
+ local myeconfargs=(
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
+
+ --enable-shared
+ --without-static-libpython
+ --enable-ipv6
+ --infodir='${prefix}/share/info'
+ --mandir='${prefix}/share/man'
+ --with-dbmliborder="${dbmliborder}"
+ --with-libc=
+ --enable-loadable-sqlite-extensions
+ --without-ensurepip
+ --without-lto
+ --with-system-expat
+ --with-system-libmpdec
+ --with-platlibdir=lib
+ --with-pkg-config=yes
+ --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
+
+ $(use_with debug assertions)
+ $(use_enable pgo optimizations)
+ $(use_with readline readline "$(usex libedit editline readline)")
+ $(use_with valgrind)
+ )
+
+ if tc-is-lto; then
+ myeconfargs+=(
+ --with-lto
+ )
+ fi
+
+ # Force-disable modules we don't want built.
+ # See Modules/Setup for docs on how this works. Setup.local contains our local deviations.
+ cat > Modules/Setup.local <<-EOF || die
+ *disabled*
+ nis
+ $(usev !gdbm '_gdbm _dbm')
+ $(usev !sqlite '_sqlite3')
+ $(usev !ssl '_hashlib _ssl')
+ $(usev !ncurses '_curses _curses_panel')
+ $(usev !readline 'readline')
+ $(usev !tk '_tkinter')
+ EOF
+
+ # disable implicit optimization/debugging flags
+ local -x OPT=
+
+ if tc-is-cross-compiler ; then
+ build_cbuild_python
+ myeconfargs+=(
+ # Point the imminent CHOST build to the Python we just
+ # built for CBUILD.
+ --with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
+ )
+ fi
+
+ # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
+ # propagated to sysconfig for built extensions
+ local -x CFLAGS_NODIST=${CFLAGS}
+ local -x LDFLAGS_NODIST=${LDFLAGS}
+ local -x CFLAGS= LDFLAGS=
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ if use ncurses; then
+ append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+ fi
+
+ econf "${myeconfargs[@]}"
+
+ if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
+ eerror "configure has detected that the sem_open function is broken."
+ eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
+ die "Broken sem_open function (bug 496328)"
+ fi
+
+ # install epython.py as part of stdlib
+ echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+ export PYTHONSTRICTEXTENSIONBUILD=1
+
+ # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
+ # end up writing bytecode & violating sandbox.
+ # bug #831897
+ local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
+
+ # Gentoo hack to disable accessing system site-packages
+ export GENTOO_CPYTHON_BUILD=1
+
+ if use pgo ; then
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+ fi
+
+ # also need to clear the flags explicitly here or they end up
+ # in _sysconfigdata*
+ emake CPPFLAGS= CFLAGS= LDFLAGS=
+
+ # Restore saved value from above.
+ local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
+
+ # Work around bug 329499. See also bug 413751 and 457194.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E python
+ else
+ pax-mark m python
+ fi
+}
+
+src_test() {
+ # Tests will not work when cross compiling.
+ if tc-is-cross-compiler; then
+ elog "Disabling tests due to crosscompiling."
+ return
+ fi
+
+ # this just happens to skip test_support.test_freeze that is broken
+ # without bundled expat
+ # TODO: get a proper skip for it upstream
+ local -x LOGNAME=buildbot
+
+ local test_opts=(
+ --verbose3
+ -u-network
+ -j "$(makeopts_jobs)"
+ "${COMMON_TEST_SKIPS[@]}"
+ )
+
+ # bug 660358
+ local -x COLUMNS=80
+ local -x PYTHONDONTWRITEBYTECODE=
+ local -x TMPDIR=/var/tmp
+
+ nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
+ CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local ret=${?}
+
+ [[ ${ret} -eq 0 ]] || die "emake test failed"
+}
+
+src_install() {
+ local libdir=${ED}/usr/lib/python${PYVER}
+
+ # the Makefile rules are broken
+ # https://github.com/python/cpython/issues/100221
+ mkdir -p "${libdir}"/lib-dynload || die
+
+ # -j1 hack for now for bug #843458
+ emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax-kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ rm -r "${libdir}"/ensurepip/_bundled || die
+ if ! use sqlite; then
+ rm -r "${libdir}/"sqlite3 || die
+ fi
+ if ! use tk; then
+ rm -r "${ED}/usr/bin/idle${PYVER}" || die
+ rm -r "${libdir}/"{idlelib,tkinter} || die
+ fi
+
+ ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
+
+ dodoc Misc/{ACKS,HISTORY,NEWS}
+
+ if use examples; then
+ docinto examples
+ find Tools -name __pycache__ -exec rm -fr {} + || die
+ dodoc -r Tools
+ fi
+ insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
+ local libname=$(
+ printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
+ emake --no-print-directory -s -f - 2>/dev/null
+ )
+ newins Tools/gdb/libpython.py "${libname}"-gdb.py
+
+ newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
+ newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
+ sed \
+ -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
+ -e "s:@PYDOC@:pydoc${PYVER}:" \
+ -i "${ED}/etc/conf.d/pydoc-${PYVER}" \
+ "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
+
+ # python-exec wrapping support
+ local pymajor=${PYVER%.*}
+ local EPYTHON=python${PYVER}
+ local scriptdir=${D}$(python_get_scriptdir)
+ mkdir -p "${scriptdir}" || die
+ # python and pythonX
+ ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
+ ln -s "python${pymajor}" "${scriptdir}/python" || die
+ # python-config and pythonX-config
+ # note: we need to create a wrapper rather than symlinking it due
+ # to some random dirname(argv[0]) magic performed by python-config
+ cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
+ #!/bin/sh
+ exec "${abiver}-config" "\${@}"
+ EOF
+ chmod +x "${scriptdir}/python${pymajor}-config" || die
+ ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
+ # 2to3, pydoc
+ ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die
+ ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
+ # idle
+ if use tk; then
+ ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
+ fi
+}
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/Manifest
index 1789820f14..be0c963fcf 100644
--- a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/Manifest
@@ -1,2 +1,3 @@
DIST tcl-core8.6.16-src.tar.gz 7022932 BLAKE2B 9a20cc72a2654c8b4f2c9088fabef13321c414d4cc1125afbb0151ae198c6e665a7f18ffa798fcf2ed0ae1160e586819b834d745c5dfbb2b2ed5dc6d0e022d4d SHA512 b25de457523e1f884326db37acebc329d5f1a8ac2a2e0fbdfcefafc76de202ff8d1efe8ff687afa5da486c0a95ab4bde893aad6f70f0e570fa6911c5cf56d458
DIST tcl-core8.6.17-src.tar.gz 7030881 BLAKE2B 3120f53dfe238a750eface9b6f2c715432e8a640b65748c2ccafcebb0c8f4b9ee49d214fa708ea3cf17a7563e8a993a7b7fc1dbdde70055358e1c0d35a62efb4 SHA512 cc6ef374b4d005365d2453a1d25b22d9961631c8f4081ccdfba43c55901edd9f925d0ef66132b7d9d6c285445738028def243e727ecc5ffad94fb4851e5ae735
+DIST tcl-core9.0.3-src.tar.gz 7164480 BLAKE2B 8aa9a38e9bb6f290dadf6f90a2aeede23ceb6c7df114c974c4d64ca0cfdc6db813d66e8b29df35f9985bafd7ee74ce4beb42fdeb39ba6bc9747395467eb38428 SHA512 9d2b8eee54e27ee9c7a951ac799ba1b08bc3cc11d957d65a1d78c3d42a234304ea09677e84af85e41dd9a32c91a77b82483805bf0a822288af1ab15e18c494d1
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/files/tcl-9.0.3-include-spec.patch b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/files/tcl-9.0.3-include-spec.patch
new file mode 100644
index 0000000000..ab803b9997
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/files/tcl-9.0.3-include-spec.patch
@@ -0,0 +1,12 @@
+This resolves https://bugs.gentoo.org/731120
+--- a/unix/configure.ac
++++ b/unix/configure.ac
+@@ -895,7 +895,7 @@ TCL_BUILD_STUB_LIB_PATH="`pwd`/${TCL_STUB_LIB_FILE}"
+ TCL_STUB_LIB_PATH="${TCL_STUB_LIB_DIR}/${TCL_STUB_LIB_FILE}"
+
+ # Install time header dir can be set via --includedir
+-eval "TCL_INCLUDE_SPEC=\"-I${includedir}\""
++eval "TCL_INCLUDE_SPEC=\"\""
+
+ #------------------------------------------------------------------------
+ # tclConfig.sh refers to this by a different name
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/files/tcl-9.0.3-multilib.patch b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/files/tcl-9.0.3-multilib.patch
new file mode 100644
index 0000000000..8dab3b4834
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/files/tcl-9.0.3-multilib.patch
@@ -0,0 +1,11 @@
+--- a/unix/configure.ac 2020-12-26 10:39:12.107965844 +0100
++++ b/unix/configure.ac 2020-12-26 10:39:44.821378776 +0100
+@@ -773,7 +773,7 @@
+
+ eval "TCL_LIB_FILE=${TCL_LIB_FILE}"
+
+-test -z "$TCL_LIBRARY" && TCL_LIBRARY='$(prefix)/lib/tcl$(VERSION)'
++test -z "$TCL_LIBRARY" && TCL_LIBRARY='$(libdir)/tcl$(VERSION)'
+ PRIVATE_INCLUDE_DIR='$(includedir)'
+ HTML_DIR='$(DISTDIR)/html'
+
diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-9.0.3-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-9.0.3-r2.ebuild
new file mode 100644
index 0000000000..1780856afc
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-lang/tcl/tcl-9.0.3-r2.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Please bump with dev-lang/tk!
+
+inherit autotools flag-o-matic multilib-minimal multilib toolchain-funcs
+
+MY_P="${PN}${PV}"
+
+DESCRIPTION="Tool Command Language"
+HOMEPAGE="http://www.tcl.tk/"
+SRC_URI="https://downloads.sourceforge.net/tcl/${PN}-core${PV}-src.tar.gz"
+
+SPARENT="${WORKDIR}/${MY_P}"
+S="${SPARENT}"/unix
+
+LICENSE="tcltk Spencer-99"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+IUSE="debug"
+
+RDEPEND="virtual/zlib:=[${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-9.0.3-multilib.patch
+ "${FILESDIR}"/${PN}-8.6.8-conf.patch # Bug 125971
+ "${FILESDIR}"/${PN}-9.0.3-include-spec.patch # Bug 731120
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ stat64 opendir64 rewinddir64 closedir64 # used to test for Large File Support
+)
+
+src_prepare() {
+ # Drop -Werror
+ sed -i \
+ -e "s: -Werror::g" \
+ dltest/Makefile.in \
+ || die
+
+ pushd "${SPARENT}" &>/dev/null || die
+
+ # By dropping part of the compat directory a lot of licensing and attribution burden
+ # (BSD-3,...) is lifted from the user
+ rm compat/fake-* || die
+ rm compat/{dlfcn.h,gettod.c,mkstemp.c,strncasecmp.c,waitpid.c} \
+ || die
+ rm doc/try.n || die
+
+ default
+ popd &>/dev/null || die
+
+ # httpold tests require network
+ rm ../tests/env.test \
+ ../tests/http.test \
+ || die
+
+ # workaround stack check issues, bug #280934
+ use hppa && append-cflags "-DTCL_NO_STACK_CHECK=1"
+
+ tc-export CC
+
+ sed \
+ -e '/chmod/s:555:755:g' \
+ -i Makefile.in || die
+
+ sed \
+ -e 's:-O[2s]\?::g' \
+ -i tcl.m4 || die
+
+ eautoconf
+
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ # We went ahead and deleted the whole compat/ subdir which means
+ # the configure tests to detect broken versions need to pass (else
+ # we'll fail to build). This comes up when cross-compiling, but
+ # might as well get a minor configure speed up normally.
+ export ac_cv_func_memcmp_working="yes"
+ export tcl_cv_str{str,toul,tod}_unbroken="ok"
+ export tcl_cv_strtod_buggy="no"
+
+ econf \
+ $(use_enable debug symbols)
+}
+
+multilib_src_install() {
+ #short version number
+ local v1=$(ver_cut 1-2)
+ local mylibdir=$(get_libdir)
+
+ S= default
+ # fix the tclConfig.sh to eliminate refs to the build directory
+ # and drop unnecessary -L inclusion to default system libdir
+
+ sed \
+ -e "/^TCL_BUILD_LIB_SPEC=/s:-L$(pwd) *::g" \
+ -e "/^TCL_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \
+ -e "/^TCL_SRC_DIR=/s:${SPARENT}:${EPREFIX}/usr/${mylibdir}/tcl${v1}/include:g" \
+ -e "/^TCL_BUILD_STUB_LIB_SPEC=/s:-L$(pwd) *::g" \
+ -e "/^TCL_STUB_LIB_SPEC=/s:-L${EPREFIX}/usr/${mylibdir} *::g" \
+ -e "/^TCL_BUILD_STUB_LIB_PATH=/s:$(pwd):${EPREFIX}/usr/${mylibdir}:g" \
+ -e "/^TCL_LIBW_FILE=/s:'libtcl${v1}..TCL_DBGX..so':\"libtcl${v1}\$\{TCL_DBGX\}.so\":g" \
+ -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die
+ if use prefix && [[ ${CHOST} != *-darwin* ]] ; then
+ sed \
+ -e "/^TCL_CC_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|g" \
+ -e "/^TCL_LD_SEARCH_FLAGS=/s|'$|:${EPREFIX}/usr/${mylibdir}'|" \
+ -i "${ED}"/usr/${mylibdir}/tclConfig.sh || die
+ fi
+
+ # install private headers
+ insinto /usr/${mylibdir}/tcl${v1}/include/unix
+ doins *.h
+ insinto /usr/${mylibdir}/tcl${v1}/include/generic
+ doins "${SPARENT}"/generic/*.h
+ rm -f "${ED}"/usr/${mylibdir}/tcl${v1}/include/generic/{tcl,tclDecls,tclPlatDecls}.h || die
+
+ # install symlink for libraries
+ dosym libtcl${v1}$(get_libname) /usr/${mylibdir}/libtcl$(get_libname)
+ mv "${ED}"/usr/${mylibdir}/libtclstub{,${v1}}.a || die
+ dosym libtclstub${v1}.a /usr/${mylibdir}/libtclstub.a
+
+ if multilib_is_native_abi; then
+ dosym tclsh${v1} /usr/bin/tclsh
+ fi
+}
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest
index 74009c630d..8e73665842 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest
@@ -1,4 +1,4 @@
DIST libksba-1.6.7.tar.bz2 706437 BLAKE2B 95f51bc9a0a7ee14b91089aded3a420cf2f986a1599e39e36dc46fd0b71bef465af9c6576c19516d0aadae67399eca69ae0448239216ba486812884ebefa1ae7 SHA512 60cb9df9f502ca479818f45b78c4bc2b78f6f359be2b8da489ea98f8896a43ab2c20cf97526b79a3220fb32f1701e62a6481fe61e91e567186ecf4f33d8e64d3
DIST libksba-1.6.7.tar.bz2.sig 119 BLAKE2B 74b3fd7682ae526c7430fe3792f873838c366ec0de1d80b699370a8cefdfdfc386f883b1d45df8df62e64d9de992f4bbfa7f74cfbb38419694f1a11ff1d3110a SHA512 97df523f0640f8fed0c3c7603218058021475d5b0e47a36610aa88312a6bb5f302e1e2016f5721a9077d0d27b35b28c7c96d9843866c957c965b2c580d3ee60b
DIST libksba-1.6.8.tar.bz2 716917 BLAKE2B 13efba4f1f22de8e149049443ac1b68dea75c7526678f0a462c6922fb2f6de71c8c20d6c41b726e3083076f201576645b2f9181340fa2c49ca4de2ed1f6064fb SHA512 23522376b4ce89c9847d464723ba6052e410d2450dcd10e0da3f07e074c1169585823eea30a70aa572f4e8ec86121844476eeb90c8599dd21f22eab71333d5a8
-DIST libksba-1.6.8.tar.bz2.sig 147 BLAKE2B 354363b66c12e72d1a5dcc888d74a9ce13f0154038f809e459b8d073c67665ac4434ee1198cd5d6a3ff011325802da5b5eace9ca41878db4f333fdeb08a0b9a8 SHA512 ac5fadfc57219aa5b350d9e8572c0389f58e9a9730fc38bc7a967b5345e7b2f7d5575517a1080577046a4a0d8ad9bced37bfb17f267a3b9be9bc03a486819c06
+DIST libksba-1.6.8.tar.bz2.sig 294 BLAKE2B 257739517c1c5c0c6b0121de186ed7dfcc54e470070ce9466408e148fa16efdc8ba7146211a3574ac9a6bae95015be9d5545bc30459ac0f2f38873bac219a879 SHA512 ada3a9f6f26cb89c5c2926e51283bb26db7ec3a95da592b296e4b269889a6607c31ebb8b5b09e92afc987fa146c2f67b2f8a024808264a2c5dd9a8fd0b42c64c
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.12.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.12.0.ebuild
index 5a6c388912..9d427d3199 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.12.0.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.12.0.ebuild
@@ -30,7 +30,7 @@ else
"
S="${WORKDIR}/${LIBNL_P}"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-thomashaller )"
fi
@@ -38,7 +38,7 @@ fi
LICENSE="LGPL-2.1 utils? ( GPL-2 )"
SLOT="3"
IUSE="+debug python test utils"
-# test_kernel_route_roundtrip_* fais in 3.12.0
+# test_kernel_route_roundtrip_* fails in 3.12.0
RESTRICT="!test? ( test ) test"
RDEPEND="python? ( ${PYTHON_DEPS} )"
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild
index b30cfa19eb..0086570d5b 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild
@@ -38,7 +38,7 @@ fi
LICENSE="LGPL-2.1 utils? ( GPL-2 )"
SLOT="3"
IUSE="+debug python test utils"
-# test_kernel_route_roundtrip_* fais in 3.12.0
+# test_kernel_route_roundtrip_* fails in 3.12.0
RESTRICT="!test? ( test ) test"
RDEPEND="python? ( ${PYTHON_DEPS} )"
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/Manifest
index 58463ab200..602c68d99b 100644
--- a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/Manifest
@@ -2,6 +2,7 @@ DIST libxml2-2.13.9.tar.xz 2426164 BLAKE2B b14cb6953983ee83b5de39b8d80f623edae61
DIST libxml2-2.14.6.tar.xz 2327580 BLAKE2B ad5d7cb64f8081559a671e9d79b3ebcd7313dada39d7f0c2854994153a9dff2ef85bc81336437f5881abe637bae51b62e9104b3a099113f4ee2252b604325291 SHA512 9a62230487255af7cdaf135cc8a0978dc82ff2ee8826f6b21cc8b39c8e0a6b9efeea1c12e6cb7ae3f869730fb4ed628158e2848dd512558fc5bf177c56862774
DIST libxml2-2.15.0.tar.xz 2004476 BLAKE2B 07a570cd38528eb253d67f1eb88d375c5b3e32dfb23e97662c6243b8af2c4087f2cc931015cc183ff9bc231be88b6099fda42104d77d6fb0126f7804f277a088 SHA512 26fdf2c4c7bba90f0ad9cb74debc94e2ba7db2d8461d2bb40764d479f1735d78e85e6835f0c7ae292d827d387ac74ba889915456d5f3f646de5e0b96a070fddb
DIST libxml2-2.15.1.tar.xz 2004588 BLAKE2B 73c4d17adacda67d71c5a120c7de2324df1db35963cadbe18166dafe122e1f10dcab9d4fed0e128c077a5ca31432bfaf72f742c42680251660d397ab8bc3538b SHA512 429c7d0dc3cbcb8de1bf6eb588fb8025fee009c9b25e87c96ecc5de57cc12b558b0ab8141f333d73ca687109335f297c9f9776abbb9da9afc9d8e79041c86b7f
+DIST libxml2-2.15.2.tar.xz 3148720 BLAKE2B e8adec751b6c8c8fd8358bee0c33159813601f6306b318314ffbf85324fa3ebeee2e838608a7fe365ffe4b82c4700f328fc27ae9a75cd7ed67cf256067542c2e SHA512 35f18fee772e63e8ea6220e5f5435ef5aabb5692a4519a993ec9640576d08fa45d5097280add5c5ffb5c280359d05eeecab0df24cce0b7ec35eef102d607b0b8
DIST xmlts20130923.tar.gz 641522 BLAKE2B 63a47bc69278ef510cd0b3779aed729e1b309e30efa0015d28ed051cc03f9dfddb447ab57b07b3393e8f47393d15473b0e199c34cb1f5f746b15ddfaa55670be SHA512 d5c4d26b324ed21f4e0641cd7f8b76dbf9de80df8b519982e44d41c960df29fd03618e02e9693b2d11ad06d19c4a965274c95a048ec3b9653eacb919a7f8b733
DIST xsts-2002-01-16.tar.gz 6894439 BLAKE2B 1e9ec63d2c104655e64249e07440a04d862fcbcd4d4e19745d81b34994319b510a531c9d6df1491fae1e90b5d0764f0f1a827251ca8df5d613178b0eab01ef25 SHA512 43300af6d39c1e2221b0ed7318fe14c7464eeb6eb030ed1e22eb29b4ab17f014e2a4c8887c3a46ae5d243e3072da27f00f4e285498ae6f1288177d38d1108288
DIST xsts-2004-01-14.tar.gz 2761085 BLAKE2B 41545995fb3a65d053257c376c07d45ffd1041a433bfbdb46d4dd87a5afb60c18c8629a3d988323f9e7a1d709775b5a7e5930276a7121c0725a22705c0976e36 SHA512 32854388d7e720ad67156baf50bf2bae7bd878ca3e35fd7e44e57cad3f434f69d56bbbedd61509f8a1faf01c9eae74a078df8fe130780b182c05c05cb1c39ebe
diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.15.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.15.2.ebuild
new file mode 100644
index 0000000000..69fa511bf5
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.15.2.ebuild
@@ -0,0 +1,165 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Note: Please bump in sync with dev-libs/libxslt
+
+PYTHON_COMPAT=( python3_{11..14} )
+PYTHON_REQ_USE="xml(+)"
+inherit python-r1 meson-multilib
+
+DESCRIPTION="XML C parser and toolkit"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home"
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2"
+ inherit git-r3
+else
+ inherit gnome.org
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+fi
+
+S="${WORKDIR}/${PN}-${PV%_rc*}"
+
+LICENSE="MIT"
+# see so_version = v_maj + v_min_compat for subslot
+SLOT="2/16"
+IUSE="doc icu python readline static-libs test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ virtual/libiconv
+ >=virtual/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]
+ icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] )
+ python? ( ${PYTHON_DEPS} )
+ readline? ( sys-libs/readline:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ doc? (
+ app-text/docbook-xsl-stylesheets
+ app-text/doxygen
+ dev-libs/libxslt
+ )
+ python? ( app-text/doxygen )
+"
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/xml2-config
+)
+
+PATCHES=(
+ "${FILESDIR}"/libxml2-2.14.2-no-git.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ else
+ default
+ fi
+
+ cd "${S}" || die
+}
+
+src_prepare() {
+ default
+
+ sed -e "/^dir_doc/ s/meson.project_name()$/\'${PF}\'/" -i meson.build || die
+}
+
+python_configure() {
+ local emesonargs=(
+ $(meson_feature icu)
+ $(meson_native_use_feature readline)
+ $(meson_native_use_feature readline history)
+ -Ddocs=disabled
+ -Dpython=enabled
+ -Dschematron=enabled
+ )
+ mkdir "${BUILD_DIR}" || die
+ pushd "${BUILD_DIR}" >/dev/null || die
+ meson_src_configure
+ popd >/dev/null || die
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Ddefault_library=$(multilib_native_usex static-libs both shared)
+ $(meson_feature icu)
+ $(meson_native_use_feature doc docs)
+ $(meson_native_use_feature readline)
+ $(meson_native_use_feature readline history)
+ -Dpython=disabled
+ -Dschematron=enabled
+
+ # There has been a clean break with a soname bump.
+ # It's time to deal with the breakage.
+ # bug #935452
+ -Dlegacy=disabled
+ )
+ meson_src_configure
+
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_configure
+ fi
+}
+
+python_compile() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ meson_src_compile
+ popd >/dev/null || die
+}
+
+multilib_src_compile() {
+ meson_src_compile
+
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_compile
+ fi
+}
+
+multilib_src_test() {
+ meson_src_test
+
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl meson_src_test
+ fi
+}
+
+python_install() {
+ pushd "${BUILD_DIR}" >/dev/null || die
+ meson_src_install
+ python_optimize
+ popd >/dev/null || die
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi && use python ; then
+ python_foreach_impl python_install
+ fi
+
+ meson_src_install
+}
+
+pkg_postinst() {
+ # We don't want to do the xmlcatalog during stage1, as xmlcatalog will not
+ # be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887.
+ if [[ -n "${ROOT}" ]]; then
+ elog "Skipping XML catalog creation for stage building (bug #208887)."
+ else
+ # Need an XML catalog, so no-one writes to a non-existent one
+ CATALOG="${EROOT}/etc/xml/catalog"
+
+ # We don't want to clobber an existing catalog though,
+ # only ensure that one is there
+ #
+ if [[ ! -e "${CATALOG}" ]]; then
+ [[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml"
+ "${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}"
+ einfo "Created XML catalog in ${CATALOG}"
+ fi
+ fi
+}
diff --git a/sdk_container/src/third_party/portage-stable/dev-python/charset-normalizer/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/charset-normalizer/Manifest
index 17fc69ce7c..36a3acb163 100644
--- a/sdk_container/src/third_party/portage-stable/dev-python/charset-normalizer/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-python/charset-normalizer/Manifest
@@ -1,3 +1,4 @@
-DIST charset_normalizer-3.4.3.tar.gz 122371 BLAKE2B 9735b4419aec98a11e3b53fc96e892f63299d89653cda489a5938e90526d24241ee2224f2aed149ae2e4becdf2742335175e8c25a2952b76098cfca61edef72a SHA512 b8ee22e9da98d09a3a36b2cd49e0bb27956a444dd59a1d27f1244040147a4e09fbd67d112ec59ace2133fe92b72a4de3a26f0b678bc2b6455c3ead2c2aaa9cfd
DIST charset_normalizer-3.4.4.tar.gz 129418 BLAKE2B 0f462077fe20ffc9555a5628263b48370d50e43261f30abb7715e3c82ba3c7fcb3bec1c2adea65ad5864e0bd656b79fd5129fbd2791edee66ec2839d210f48d3 SHA512 ea3e15123b6a526ef52abeae2a8a8af0b044380606d4ef4a43ca1feb4c626b5899b511634ee8927b959f5ab1dbbd3c57651d1ac3a91c5ab67cd905034f759c9c
DIST charset_normalizer-3.4.4.tar.gz.provenance 9506 BLAKE2B 890a0a810b142da096c1c0d805d9014bac9d1facfd0d51439c12167b047ade62e0d50fc1e6ffb65f5b019586a0706bb21bd75d485c5b9041cfe693ce38b15207 SHA512 55c4a7299bc0c3b556f5d1d344a77c653f0537719bd68ecf036c6339a8e09c169dee1d4d967f86946074b3da2e09f4a85ad1473fe7500cf427faf3dd8a5f95a8
+DIST charset_normalizer-3.4.5.tar.gz 134804 BLAKE2B 632f80f4afc5ed131ef7154cdfc3d8bb3d74caf96f55309f8dddfd6bd6c32ce56e8e38c657bd20129f44167236e8369b2454f430779cc62ab4d658fffef9e1f8 SHA512 4d58d983a948644d89a25f5563171447c8fadcc252a9a3471d4b5e5ffeff94ddd56bce6a5c3fa84744a15b37b14145f645cef9b1635ef2bfe470abe5e259f55b
+DIST charset_normalizer-3.4.5.tar.gz.provenance 9583 BLAKE2B 8ab9655ddbf42e167d90d327c68826c803fc320cd54c90aba1fe09f2d383b58f58dabd19a7cce1c98a6d95cfdc8323af626aea32636d4f123c798607b729c9ef SHA512 d8aaeef462c2ef47196f69837cefe34d908457c51d0b8f25b4a1b1bbf875f1e3f7b97a175fd19a870c04adb5453fb46719b92518d95f43f3eb8a723cba9bde8a
diff --git a/sdk_container/src/third_party/portage-stable/dev-python/charset-normalizer/charset-normalizer-3.4.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/charset-normalizer/charset-normalizer-3.4.5.ebuild
similarity index 53%
rename from sdk_container/src/third_party/portage-stable/dev-python/charset-normalizer/charset-normalizer-3.4.3.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-python/charset-normalizer/charset-normalizer-3.4.5.ebuild
index bd92fcb81f..901831b8b6 100644
--- a/sdk_container/src/third_party/portage-stable/dev-python/charset-normalizer/charset-normalizer-3.4.3.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-python/charset-normalizer/charset-normalizer-3.4.5.ebuild
@@ -1,10 +1,12 @@
-# Copyright 2022-2025 Gentoo Authors
+# Copyright 2022-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
EAPI=8
DISTUTILS_USE_PEP517=standalone
+DISTUTILS_EXT=1
+PYPI_VERIFY_REPO=https://github.com/jawah/charset_normalizer
PYTHON_COMPAT=( python3_{11..14} pypy3_11 )
inherit distutils-r1 pypi
@@ -17,15 +19,27 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+IUSE="+native-extensions"
BDEPEND="
+ native-extensions? (
+ $(python_gen_cond_dep '
+ dev-python/mypy[${PYTHON_USEDEP}]
+ ' python3.{11..14})
+ )
dev-python/setuptools[${PYTHON_USEDEP}]
"
EPYTEST_PLUGINS=()
distutils_enable_tests pytest
+python_compile() {
+ local -x CHARSET_NORMALIZER_USE_MYPYC=$(usex native-extensions 1 0)
+
+ distutils-r1_python_compile
+}
+
python_test() {
epytest -o addopts=
}
diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest
index 120a86b0de..31f8148fae 100644
--- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest
@@ -1,2 +1,2 @@
-DIST jaraco_context-6.0.2.tar.gz 14994 BLAKE2B e89f31c411ec2a383fe9125b6cc87931c0d223375632d76efe3fb63da6eb0db818862feefb53cc95e2384ff4fe044fe3bf9e495ea75cc6e14ae04a94eea9889c SHA512 18cc7381eeadea82df21219df0886c486f0b2338aea01e53c471c29d5a289e92d92f41a9943535f27a9f113ae889ee03d8f3323d777006b0dd653b422a412a09
DIST jaraco_context-6.1.0.tar.gz 15850 BLAKE2B e7d25d18fa97e77ce152b9152326e4980f305fd9ade71cc890546d8400c4102bb5bcc896b8ae079876f69e7d685d88d3c14bfae7aed46be5e28bad0c89caa77d SHA512 19f9fe4e00cc94f46177604e2a6e44af3c21be22b2059f8f7d0c586a77007196a163df68e545808b5f73d10c4e429903ff33274f110a15601481f4eff8cf9f8f
+DIST jaraco_context-6.1.1.tar.gz 15832 BLAKE2B bf329f1cb601bb793f68caa214cc683d968ac3a08615522868f451df5c4430d131d1a1cb3d8ff8d4d9165c0502432d3f401896911c0c0ea2827af69871dd8f50 SHA512 38ea4be2972ae21f98d3c1d77363db8d82d88ff786757004d7adc576383960c8193cdd89e5662b0772b99072fe4cd7099815f179f8042a6d64f335c0d3dd66ff
diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.0.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.1.1.ebuild
similarity index 91%
rename from sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.0.2.ebuild
rename to sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.1.1.ebuild
index 208f6c5506..2573cade01 100644
--- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.0.2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-6.1.1.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-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"
RDEPEND="
$(python_gen_cond_dep '
diff --git a/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/Manifest
index 8a1de8fd90..2dac7d8e97 100644
--- a/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/Manifest
@@ -9,3 +9,5 @@ DIST platformdirs-4.9.1.tar.gz 28392 BLAKE2B 4f471fee64760430175dbc01eb8d3384146
DIST platformdirs-4.9.1.tar.gz.provenance 9415 BLAKE2B 208160d5268e2f3fa48836def656e9c11936b268b882de278d07bb7ad4039ead7374b9450701439de09e54fb1b402362417b08494e5099ce7e86d3283832483c SHA512 6a5dcc1a186d9d8bc41169a898690d957312974f9754e104a9721da1347ad6a29c7c232c48c1b57a84745da4ddb1c71371eb298ca99ea6fe8de0bde4f42da53b
DIST platformdirs-4.9.2.tar.gz 28394 BLAKE2B 2a44ddd40489767c7961a202d70ebf49ff01b7ea6f098d67e99cc55693c11fb9ca598414f0f9433895295bc1ce43981ff1c942a3aaff6014024c9a77c9e9e8b2 SHA512 3abd4570abae3964c6afd52493b5f99f81c5543833f01ca8f8c59cbd00108b4d8030b0dc8e7991cb807b6817f28552f008e962c88b12db4fc07ce4015f05e8ec
DIST platformdirs-4.9.2.tar.gz.provenance 9509 BLAKE2B d5631eb6e1cd8f2916a6900d085ff03e10a7a31a24a15984715f2b06525fe2b620ffe1676bd62a3a0b730fef1c99245086bc02eb5fd22344c1f338837e4d9f18 SHA512 18bc0ae845dbf90ac50cff9a071a0e6df28c8e13aa5a849590db739137f67edd85230357d1a5337262753f2c5416b5a8f880c8e82e0d85b3800b17a312c8a7fc
+DIST platformdirs-4.9.4.tar.gz 28737 BLAKE2B a71ac9b3b3b2a9a02e3cf8b20cc91740da278f6581753a360600c6c2ee6c887872f08bea324ea4334337d1ccf4bdf83fc7a2b14895dc72d6421598f9234dd17b SHA512 32108f239e76693f63789dd975463a44cbd4cc06f96a86a01d3d7fc675cb953a0d6818fb8fc92daef7f1ceba8bc62f2577d092d0e58c6c616740699a2140a0d7
+DIST platformdirs-4.9.4.tar.gz.provenance 9698 BLAKE2B dc9bcf69c9bd816e61ff77096aa90f1abcabd6abad3d037d1bdf5efc354f02f53cb05b5779d874f4d9b3997172969f21777ac204050cd662dda3d8feb3ea006c SHA512 1321d072852a555f54721a6e3241aa808da665848afb3f91ca3bd47d8231dc21b85b566bd1064c5a92324aecfecc599a035ced9a8cdfff766ba53af44142d2b4
diff --git a/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.9.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.9.4.ebuild
new file mode 100644
index 0000000000..559e2ecad5
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/dev-python/platformdirs/platformdirs-4.9.4.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYPI_VERIFY_REPO=https://github.com/tox-dev/platformdirs
+PYTHON_COMPAT=( python3_{11..14} python3_{13,14}t pypy3_11 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A small Python module for determining appropriate platform-specific dirs"
+HOMEPAGE="
+ https://pypi.org/project/platformdirs/
+ https://github.com/tox-dev/platformdirs/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+
+BDEPEND="
+ test? (
+ dev-python/appdirs[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-mock )
+distutils_enable_tests pytest
+
+src_configure() {
+ grep -q 'build-backend = "hatchling' pyproject.toml ||
+ die "Upstream changed build-backend, recheck"
+ # write a custom pyproject.toml to ease setuptools bootstrap
+ cat > pyproject.toml <<-EOF || die
+ [build-system]
+ requires = ["flit_core >=3.2,<4"]
+ build-backend = "flit_core.buildapi"
+
+ [project]
+ name = "${PN}"
+ version = "${PV}"
+ description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".'
+ EOF
+ # sigh
+ cat > src/platformdirs/version.py <<-EOF || die
+ __version__ = version = '${PV}'
+ __version_tuple__ = version_tuple = (${PV//./, })
+ EOF
+}
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest
index 949619858d..07da249167 100644
--- a/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest
+++ b/sdk_container/src/third_party/portage-stable/dev-util/maturin/Manifest
@@ -1,9 +1,5 @@
DIST maturin-1.11.5-vendor.tar.xz 16507616 BLAKE2B 83b6607c91a0925ad52bbdb888eef01fa871a29129600471269d25c9a2a56206c845a56f1bfd5dbcaaf9b74da88df35e6f3c857d551834fc8564853d6e455b0e SHA512 94a8c8cb296afd33da5175e6ce39ecd8ccb739df30bfac0476551352a002032cefa5de6ea41c81f65cd905225d1cf8a13f473594560a8f2a29df563a4adc9e9a
DIST maturin-1.11.5.gh.tar.gz 596610 BLAKE2B f78673c59d13211771d37b74468041255cb8f7fa2113851e3fda2da8811e34c1a6e5c0eeb5d61430653342b97f899fff24984446e533759d3db06458afab2eda SHA512 49e7976be5790f524d5a423519c4ee73ccb450f0e84fea5ba691421cd8e303cb4166324d42985b1ae321a71c4295f244632da194a5be7cacbe7951cdbc0dbb92
-DIST maturin-1.12.3-vendor.tar.xz 19238920 BLAKE2B a8e1595ee6a8a843f050308e639989544cb1f63e3587da313e4ed3452f2483ecf1302c569b557732eb990050979fe8b8943010316aff30aa837406b6b1d1f3cb SHA512 9035b935c77583053b79a580a66e0a8eaee5ee63d137b4598e911f4d5b5529dc8eefb2a5201715c7db034f9dbaff8b28c39e5c092770bf9c0d083524fd7130f8
-DIST maturin-1.12.3.gh.tar.gz 641410 BLAKE2B 34266c48f8751306b69791739316f7abdebee27a904ab428e14e8739d958f504993b111eff770cd277dd7f63847e0237e524368dcbedec0630e7172104774d0d SHA512 281e42f73e51c7851752ee1c807632fbabf14d794fd867cd38287531bff0ab1f0c5dd167638064aab44fa677c9d4eb4e3b71bd2ee034b7d97ddafa84b79e3dae
-DIST maturin-1.12.4-vendor.tar.xz 19246564 BLAKE2B e641b0d3c1fc4ef84c2f75fed654fb719230c8d9abaac303b0c3b07fdffd3323fe8188d5af5f75f58b17f700a8fcf770975c67e1c65ae727a099911069b50f2c SHA512 5c0131ed31381622a90ae5bf4f6be12a54414ec89fc150affc00a0f9be9900687602c8c70a2c3dddfb2fa9df7135e44ec9bb392883cdb06c715be66e9ac9fe42
-DIST maturin-1.12.4.gh.tar.gz 643715 BLAKE2B 5021b14670738f6e295cc7e5f855488fde0829587aee9809a386ea83bfccf786c7e5c07fa8a3cecda3933c23dc2a18758d695714652345f9436a1d02d761c62a SHA512 bf4b7076f49cf02cd4fc3b463ce88e614c91085c7d02e450a90d3980222148c56afef0ea8c4dcd810075fe2fde4ea25e2cda6dae9d4b886a0c9aa36fe87e07a9
DIST maturin-1.12.5-vendor.tar.xz 19322640 BLAKE2B e8c537c78ed6cf6a590185d3b5b152fa1761098bfd05c0d68c579d2e0ff4dada3b680c564a26750ff7ff0e4d6870d9922828d59a05d61bb933d02077e0acf65a SHA512 5cba7f88f4a8716441c11ae27f59b3f8dc7debffe5c0f8d41b3dea4944f3d293da3361cea037ea762c4f63e933c8afe502d90f2ba1d19ca9006ff3a4d131cd8b
DIST maturin-1.12.5.gh.tar.gz 648930 BLAKE2B 46f32b6dd0bc8af554841aac26800449737fdb7556df6497bfb7694e8444cabd6c43bc0ead9cb9ebec1d365333136c4e79853ee8606fad1556b3ae0fb27e01b5 SHA512 1f0ea04bdf568839cba8aa3f521e3dc3ff6ffc3b0212731ae6ce2b551992dcf1ee798ba2ac2064bc36d9fbcc4b8541b6ccf588a9e8834955a9976e507711dc07
DIST maturin-1.12.6-vendor.tar.xz 19339996 BLAKE2B 5fa56bde7c2445eebd51802e58ae53cc9fa7742d04d0b79043f29bdedee8b3e0871042ca1481b310398c3ffd51b518f97bf74c13999c7bc0b83dd2b9e5e4799d SHA512 c32f476784de0d86e4d3ec47a92f9e7d17f5e257b81b7aef8914e76d03d822f8117bb45ea055cb6e391ca1dfa9b6ae211e1eab117cda9559316eff8a1111d2e3
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.3.ebuild
deleted file mode 100644
index 8641c58221..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.3.ebuild
+++ /dev/null
@@ -1,157 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-DISTUTILS_UPSTREAM_PEP517=standalone
-PYTHON_COMPAT=( pypy3_11 python3_{11..14} )
-RUST_MIN_VER=1.88.0
-inherit cargo distutils-r1 flag-o-matic shell-completion toolchain-funcs
-
-DESCRIPTION="Build and publish crates with pyo3, rust-cpython and cffi bindings"
-HOMEPAGE="https://www.maturin.rs/"
-SRC_URI="
- https://github.com/PyO3/maturin/archive/refs/tags/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
- https://dev.gentoo.org/~ionen/distfiles/${P}-vendor.tar.xz
-"
-# ^ tarball also includes test-crates' Cargo.lock(s) crates for tests
-
-LICENSE="|| ( Apache-2.0 MIT ) doc? ( OFL-1.1 )"
-LICENSE+="
- 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD
- CDLA-Permissive-2.0 MIT MPL-2.0 Unicode-3.0 ZLIB BZIP2
-" # crates
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="doc +ssl test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- app-arch/xz-utils
- app-arch/zstd:=
- ssl? ( dev-libs/openssl:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- virtual/pkgconfig
- doc? ( >=app-text/mdbook-0.5 )
- test? (
- $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*')
- dev-python/boltons[${PYTHON_USEDEP}]
- dev-python/virtualenv[${PYTHON_USEDEP}]
- dev-vcs/git
- elibc_musl? ( dev-util/patchelf )
- )
-"
-
-QA_FLAGS_IGNORED="usr/bin/${PN}"
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # we build the Rust executable (just once) via cargo_src_compile
- sed -i -e '/setuptools_rust/d' -e '/rust_extensions/d' setup.py || die
-
- if use test; then
- # used to prevent use of network during tests, and silence pip
- # if it finds unrelated issues with system packages (bug #913613)
- cat > "${T}"/pip.conf <<-EOF || die
- [global]
- quiet = 2
-
- [install]
- no-index = yes
- no-dependencies = yes
- EOF
-
- # uv does not work easily w/ network-sandbox, force virtualenv
- sed -i 's/"uv"/"uv-not-found"/' tests/common/mod.rs || die
-
- # increase timeouts for tests (bug #950332)
- sed -i '/^#\[timeout/s/secs(60)/secs(300)/' tests/run.rs || die
-
- # used by *git_sdist_generator tests
- git init -q || die
- git config --global user.email "larry@gentoo.org" || die
- git config --global user.name "Larry the Cow" || die
- git add . || die
- git commit -qm init || die
- fi
-}
-
-src_configure() {
- export OPENSSL_NO_VENDOR=1
- export ZSTD_SYS_USE_PKG_CONFIG=1
-
- # https://github.com/rust-lang/stacker/issues/79
- use s390 && ! is-flagq '-march=*' &&
- append-cflags $(test-flags-CC -march=z10)
-
- local myfeatures=(
- # like release.yml + native-tls for better platform support than rustls
- full
- password-storage
- $(usev ssl native-tls)
- )
-
- cargo_src_configure --no-default-features
-}
-
-python_compile_all() {
- cargo_src_compile
-
- use !doc || mdbook build -d "${T}"/html guide || die
-
- if ! tc-is-cross-compiler; then
- local maturin=$(cargo_target_dir)/maturin
- "${maturin}" completions bash > "${T}"/${PN} || die
- "${maturin}" completions fish > "${T}"/${PN}.fish || die
- "${maturin}" completions zsh > "${T}"/_${PN} || die
- else
- ewarn "shell completion files were skipped due to cross-compilation"
- fi
-}
-
-python_test() {
- local -x MATURIN_TEST_PYTHON=${EPYTHON}
- local -x PIP_CONFIG_FILE=${T}/pip.conf
- local -x VIRTUALENV_SYSTEM_SITE_PACKAGES=1
-
- # need this for (new) python versions not yet recognized by pyo3
- local -x PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1
-
- local skip=(
- # picky cli output test that easily benignly fail (bug #937992)
- --skip cli_tests
- # avoid need for wasm over a single hello world test
- --skip integration_wasm_hello_world
- # fragile depending on rust version, also wants libpypy*-c.so for pypy
- --skip pyo3_no_extension_module
- # unimportant tests that require uv, and not obvious to get it
- # to work with network-sandbox (not worth the trouble)
- --skip develop_hello_world::case_2
- --skip develop_pyo3_ffi_pure::case_2
- # compliance test using zig requires an old libc to pass (bug #946967)
- --skip integration_pyo3_mixed_py_subdir
- # these currently attempt to install tomli regardless of python version
- --skip pep517_default_profile
- --skip pep517_editable_profile
- )
-
- cargo_src_test -- "${skip[@]}"
-}
-
-python_install_all() {
- dobin "$(cargo_target_dir)"/maturin
-
- dodoc Changelog.md README.md
- use doc && dodoc -r "${T}"/html
-
- if ! tc-is-cross-compiler; then
- dobashcomp "${T}"/${PN}
- dofishcomp "${T}"/${PN}.fish
- dozshcomp "${T}"/_${PN}
- fi
-}
diff --git a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.4.ebuild
deleted file mode 100644
index 8641c58221..0000000000
--- a/sdk_container/src/third_party/portage-stable/dev-util/maturin/maturin-1.12.4.ebuild
+++ /dev/null
@@ -1,157 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-DISTUTILS_UPSTREAM_PEP517=standalone
-PYTHON_COMPAT=( pypy3_11 python3_{11..14} )
-RUST_MIN_VER=1.88.0
-inherit cargo distutils-r1 flag-o-matic shell-completion toolchain-funcs
-
-DESCRIPTION="Build and publish crates with pyo3, rust-cpython and cffi bindings"
-HOMEPAGE="https://www.maturin.rs/"
-SRC_URI="
- https://github.com/PyO3/maturin/archive/refs/tags/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
- https://dev.gentoo.org/~ionen/distfiles/${P}-vendor.tar.xz
-"
-# ^ tarball also includes test-crates' Cargo.lock(s) crates for tests
-
-LICENSE="|| ( Apache-2.0 MIT ) doc? ( OFL-1.1 )"
-LICENSE+="
- 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD
- CDLA-Permissive-2.0 MIT MPL-2.0 Unicode-3.0 ZLIB BZIP2
-" # crates
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="doc +ssl test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- app-arch/xz-utils
- app-arch/zstd:=
- ssl? ( dev-libs/openssl:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- virtual/pkgconfig
- doc? ( >=app-text/mdbook-0.5 )
- test? (
- $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*')
- dev-python/boltons[${PYTHON_USEDEP}]
- dev-python/virtualenv[${PYTHON_USEDEP}]
- dev-vcs/git
- elibc_musl? ( dev-util/patchelf )
- )
-"
-
-QA_FLAGS_IGNORED="usr/bin/${PN}"
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # we build the Rust executable (just once) via cargo_src_compile
- sed -i -e '/setuptools_rust/d' -e '/rust_extensions/d' setup.py || die
-
- if use test; then
- # used to prevent use of network during tests, and silence pip
- # if it finds unrelated issues with system packages (bug #913613)
- cat > "${T}"/pip.conf <<-EOF || die
- [global]
- quiet = 2
-
- [install]
- no-index = yes
- no-dependencies = yes
- EOF
-
- # uv does not work easily w/ network-sandbox, force virtualenv
- sed -i 's/"uv"/"uv-not-found"/' tests/common/mod.rs || die
-
- # increase timeouts for tests (bug #950332)
- sed -i '/^#\[timeout/s/secs(60)/secs(300)/' tests/run.rs || die
-
- # used by *git_sdist_generator tests
- git init -q || die
- git config --global user.email "larry@gentoo.org" || die
- git config --global user.name "Larry the Cow" || die
- git add . || die
- git commit -qm init || die
- fi
-}
-
-src_configure() {
- export OPENSSL_NO_VENDOR=1
- export ZSTD_SYS_USE_PKG_CONFIG=1
-
- # https://github.com/rust-lang/stacker/issues/79
- use s390 && ! is-flagq '-march=*' &&
- append-cflags $(test-flags-CC -march=z10)
-
- local myfeatures=(
- # like release.yml + native-tls for better platform support than rustls
- full
- password-storage
- $(usev ssl native-tls)
- )
-
- cargo_src_configure --no-default-features
-}
-
-python_compile_all() {
- cargo_src_compile
-
- use !doc || mdbook build -d "${T}"/html guide || die
-
- if ! tc-is-cross-compiler; then
- local maturin=$(cargo_target_dir)/maturin
- "${maturin}" completions bash > "${T}"/${PN} || die
- "${maturin}" completions fish > "${T}"/${PN}.fish || die
- "${maturin}" completions zsh > "${T}"/_${PN} || die
- else
- ewarn "shell completion files were skipped due to cross-compilation"
- fi
-}
-
-python_test() {
- local -x MATURIN_TEST_PYTHON=${EPYTHON}
- local -x PIP_CONFIG_FILE=${T}/pip.conf
- local -x VIRTUALENV_SYSTEM_SITE_PACKAGES=1
-
- # need this for (new) python versions not yet recognized by pyo3
- local -x PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1
-
- local skip=(
- # picky cli output test that easily benignly fail (bug #937992)
- --skip cli_tests
- # avoid need for wasm over a single hello world test
- --skip integration_wasm_hello_world
- # fragile depending on rust version, also wants libpypy*-c.so for pypy
- --skip pyo3_no_extension_module
- # unimportant tests that require uv, and not obvious to get it
- # to work with network-sandbox (not worth the trouble)
- --skip develop_hello_world::case_2
- --skip develop_pyo3_ffi_pure::case_2
- # compliance test using zig requires an old libc to pass (bug #946967)
- --skip integration_pyo3_mixed_py_subdir
- # these currently attempt to install tomli regardless of python version
- --skip pep517_default_profile
- --skip pep517_editable_profile
- )
-
- cargo_src_test -- "${skip[@]}"
-}
-
-python_install_all() {
- dobin "$(cargo_target_dir)"/maturin
-
- dodoc Changelog.md README.md
- use doc && dodoc -r "${T}"/html
-
- if ! tc-is-cross-compiler; then
- dobashcomp "${T}"/${PN}
- dofishcomp "${T}"/${PN}.fish
- dozshcomp "${T}"/_${PN}
- fi
-}
diff --git a/sdk_container/src/third_party/portage-stable/eclass/alternatives.eclass b/sdk_container/src/third_party/portage-stable/eclass/alternatives.eclass
index 7871e7f42b..8002c5cc20 100644
--- a/sdk_container/src/third_party/portage-stable/eclass/alternatives.eclass
+++ b/sdk_container/src/third_party/portage-stable/eclass/alternatives.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: alternatives.eclass
@@ -92,7 +92,7 @@ alternatives_makesym() {
# usage: alternatives_makesym [alternative targets..]
# make sure it is in the prefix, allow it already to be in the prefix
- SYMLINK=${EPREFIX}/${1#${EPREFIX}}
+ SYMLINK=${EPREFIX}/${1#"${EPREFIX}"}
pref=${ROOT}
shift
ALTERNATIVES=$@
@@ -101,7 +101,7 @@ alternatives_makesym() {
# and if one exists, link it and finish.
for alt in ${ALTERNATIVES}; do
- alt=${EPREFIX}/${alt#${EPREFIX}}
+ alt=${EPREFIX}/${alt#"${EPREFIX}"}
if [ -f "${pref}${alt}" ]; then
#are files in same directory?
if [ "${alt%/*}" = "${SYMLINK%/*}" ]
diff --git a/sdk_container/src/third_party/portage-stable/eclass/bash-completion-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/bash-completion-r1.eclass
index 2220cb2be5..9fffbbe4bb 100644
--- a/sdk_container/src/third_party/portage-stable/eclass/bash-completion-r1.eclass
+++ b/sdk_container/src/third_party/portage-stable/eclass/bash-completion-r1.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: bash-completion-r1.eclass
@@ -48,7 +48,7 @@ _bash-completion-r1_get_bashdir() {
path=$($(tc-getPKG_CONFIG) --variable="${1}" bash-completion) || die
# we need to return unprefixed, so strip from what pkg-config returns
# to us, bug #477692
- echo "${path#${EPREFIX}}"
+ echo "${path#"${EPREFIX}"}"
else
echo "${2}"
fi
diff --git a/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass
index 79c91aa235..b9807554c6 100644
--- a/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass
+++ b/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass
@@ -1373,7 +1373,7 @@ _distutils-r1_wrap_scripts() {
debug-print "${FUNCNAME}: installing wrapper at ${bindir}/${basename}"
dosym -r /usr/lib/python-exec/python-exec2 \
- "${bindir#${EPREFIX}}/${basename}"
+ "${bindir#"${EPREFIX}"}/${basename}"
done
for f in "${non_python_files[@]}"; do
diff --git a/sdk_container/src/third_party/portage-stable/eclass/python-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/python-r1.eclass
index 7be8b5ac8d..4b373a1f2e 100644
--- a/sdk_container/src/third_party/portage-stable/eclass/python-r1.eclass
+++ b/sdk_container/src/third_party/portage-stable/eclass/python-r1.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: python-r1.eclass
@@ -780,7 +780,7 @@ python_replicate_script() {
(
exeopts -m 0755
- exeinto "${PYTHON_SCRIPTDIR#${EPREFIX}}"
+ exeinto "${PYTHON_SCRIPTDIR#"${EPREFIX}"}"
doexe "${files[@]}"
)
diff --git a/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass
index b08dbd586b..240365ab73 100644
--- a/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass
+++ b/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: python-utils-r1.eclass
@@ -679,7 +679,7 @@ python_newexe() {
local newfn=${2}
local scriptdir=$(python_get_scriptdir)
- local d=${scriptdir#${EPREFIX}}
+ local d=${scriptdir#"${EPREFIX}"}
(
dodir "${wrapd}"
@@ -817,7 +817,7 @@ python_domodule() {
else
# relative to site-packages
local sitedir=$(python_get_sitedir)
- d=${sitedir#${EPREFIX}}/${_PYTHON_MODULEROOT//.//}
+ d=${sitedir#"${EPREFIX}"}/${_PYTHON_MODULEROOT//.//}
fi
if [[ ${EBUILD_PHASE} == install ]]; then
diff --git a/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass b/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass
index d051ef4dc2..da25e1dfc5 100644
--- a/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass
+++ b/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass
@@ -2791,7 +2791,7 @@ gcc_movelibs() {
# that you want to link against when building tools rather than building
# code to run on the target.
if is_crosscompile ; then
- dodir "${HOSTLIBPATH#${EPREFIX}}"
+ dodir "${HOSTLIBPATH#"${EPREFIX}"}"
# XXX: Ideally, we'd use $(get_libdir) here, but it's
# not right for cross. See bug #942573 and bug #794181.
if [[ ${GCC_BUILD_PLUGINS} == 1 ]] ; then
@@ -2801,7 +2801,7 @@ gcc_movelibs() {
# libgccjit gets installed to /usr/lib, not /usr/$(get_libdir). Probably
# due to a bug in gcc build system.
- dodir "${LIBPATH#${EPREFIX}}"
+ dodir "${LIBPATH#"${EPREFIX}"}"
if is_jit ; then
mv "${ED}"/usr/lib/libgccjit* "${D}${LIBPATH}" || die
diff --git a/sdk_container/src/third_party/portage-stable/eclass/udev.eclass b/sdk_container/src/third_party/portage-stable/eclass/udev.eclass
index 9867c68d58..7d1c213fa6 100644
--- a/sdk_container/src/third_party/portage-stable/eclass/udev.eclass
+++ b/sdk_container/src/third_party/portage-stable/eclass/udev.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 2012-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: udev.eclass
@@ -57,9 +57,9 @@ _udev_get_udevdir() {
local -x PKG_CONFIG_FDO_SYSROOT_RULES=1
if $($(tc-getPKG_CONFIG) --exists udev); then
local udevdir="$($(tc-getPKG_CONFIG) --variable=udevdir udev)"
- echo "${udevdir#${EPREFIX}}"
+ echo "${udevdir#"${EPREFIX}"}"
else
- echo /lib/udev
+ echo /usr/lib/udev
fi
}
diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.10-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.10-r1.ebuild
index 1aa36f68a6..7c0ce4f436 100644
--- a/sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.10-r1.ebuild
+++ b/sdk_container/src/third_party/portage-stable/net-dialup/minicom/minicom-2.10-r1.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://salsa.debian.org/${PN}-team/${PN}/-/archive/${PV}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
IUSE="nls"
DEPEND="sys-libs/ncurses:="
diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/iptables/Manifest b/sdk_container/src/third_party/portage-stable/net-firewall/iptables/Manifest
index 678c49b2dd..c5f6b628eb 100644
--- a/sdk_container/src/third_party/portage-stable/net-firewall/iptables/Manifest
+++ b/sdk_container/src/third_party/portage-stable/net-firewall/iptables/Manifest
@@ -1,3 +1,5 @@
DIST iptables-1.8.11.tar.xz 649284 BLAKE2B 82daca3940e253f6fda7cf5b3332488c31391ff66c0112c0cae2645ab61918f81e6028ea2b1e1385f21e4c5ff8cd64cba31072a2417a2ab696fe1c6b5464cea1 SHA512 4937020bf52d57a45b76e1eba125214a2f4531de52ff1d15185faeef8bea0cd90eb77f99f81baa573944aa122f350a7198cef41d70594e1b65514784addbcc40
DIST iptables-1.8.12.tar.xz 652440 BLAKE2B 5516aadcf413efde272b09d1747e78e19f1d9e5481cdfdfe2360ca5f16926bb17535f58e4014a3616c59da83f41b39fc71e591c916bc309c7ca31701785a9e7e SHA512 b25bd6f6f78a6192699bce44c2b29ca65351ef71198a84fa26d29c47cb24ed695ee0406f6581fa81ece4d30445bb0680def5dc328f7fc708b80cadcd0230fe49
DIST iptables-1.8.12.tar.xz.sig 566 BLAKE2B aaa2574b6ad3848d8bb6603481a0f0734e2a529c0e0a351ee0178848dd981d507fbebff3a2756f2bd91bce373d7c398f572195c9767457e0ea096a20d2fc32a5 SHA512 c1a22b6c6104a0395823a8695eafca6459d82af3467e70e88dc5625aeb6d3feba485a3f2baaf0e8e6ff1b979dc1c764427a6d6614a070476078d1e2f8cd3fd34
+DIST iptables-1.8.13.tar.xz 652632 BLAKE2B 5bfaa3353c8aa8df34938e00739a6713b49697157268bb65302dac86b832c826d7b73c35ed5e71f376299c69d4a62c1d14d4b2d177c62a4f667d0b3c378a34fa SHA512 3aefd76ca60d00f46ba4d6f39cbcfdc60517d03b6714da25dcd67542f6f4eea8d82c4855bdd9124efe18b769f41951772b8340a6eda75b85f8dd52b2289b145b
+DIST iptables-1.8.13.tar.xz.sig 566 BLAKE2B d150357e5ab3af9743fc4fb514b899d342446b8299ac02b9eb2a17893b690a657d457da3f6a35867bf8d2c46519a926100a222c71bf4d8594f9616143556adc5 SHA512 9b8ef597e1f73c2697f29b07ac010313696f52f478f10c65ec4c4e2dc933be50c74c5c236512e4d756220c4d2fd511fded88dc46f2376fc5d7e2bea71fd267ca
diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/iptables/iptables-1.8.13.ebuild b/sdk_container/src/third_party/portage-stable/net-firewall/iptables/iptables-1.8.13.ebuild
new file mode 100644
index 0000000000..ce440b899b
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/net-firewall/iptables/iptables-1.8.13.ebuild
@@ -0,0 +1,181 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/netfilter.org.asc
+inherit systemd toolchain-funcs autotools flag-o-matic verify-sig
+
+DESCRIPTION="Linux kernel (2.4+) firewall, NAT and packet mangling tools"
+HOMEPAGE="https://www.netfilter.org/projects/iptables/"
+SRC_URI="
+ https://www.netfilter.org/projects/iptables/files/${P}.tar.xz
+ verify-sig? ( https://www.netfilter.org/projects/iptables/files/${P}.tar.xz.sig )
+"
+
+LICENSE="GPL-2"
+# Subslot reflects PV when libxtables and/or libip*tc was changed
+# the last time.
+SLOT="0/1.8.3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="conntrack netlink nftables pcap static-libs test"
+RESTRICT="!test? ( test )"
+# TODO: skip tests needing nftables if no xtables-nft-multi (bug #890628)
+REQUIRED_USE="test? ( conntrack nftables )"
+
+COMMON_DEPEND="
+ conntrack? ( >=net-libs/libnetfilter_conntrack-1.0.6 )
+ netlink? ( net-libs/libnfnetlink )
+ nftables? (
+ >=net-libs/libmnl-1.0:=
+ >=net-libs/libnftnl-1.2.6:=
+ )
+ pcap? ( net-libs/libpcap )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ virtual/os-headers
+ >=sys-kernel/linux-headers-4.4:0
+"
+BDEPEND="
+ virtual/pkgconfig
+ nftables? (
+ app-alternatives/lex
+ app-alternatives/yacc
+ )
+ verify-sig? ( sec-keys/openpgp-keys-netfilter )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ nftables? ( net-misc/ethertypes )
+ !=app-eselect/eselect-iptables-20220320"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.8.4-no-symlinks.patch
+)
+
+src_prepare() {
+ # Use the saner headers from the kernel
+ rm include/linux/{kernel,types}.h || die
+
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # Some libs use $(AR) rather than libtool to build, bug #444282
+ tc-export AR
+
+ # Hack around struct mismatches between userland & kernel for some ABIs
+ # bug #472388
+ use amd64 && [[ ${ABI} == "x32" ]] && append-flags -fpack-struct
+
+ local myeconfargs=(
+ --sbindir="${EPREFIX}/sbin"
+ --libexecdir="${EPREFIX}/$(get_libdir)"
+ --enable-devel
+ --enable-ipv6
+ --enable-shared
+ $(use_enable conntrack connlabel)
+ $(use_enable nftables)
+ $(use_enable netlink libnfnetlink)
+ $(use_enable pcap bpf-compiler)
+ $(use_enable pcap nfsynproxy)
+ $(use_enable static-libs static)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ emake V=1
+}
+
+src_install() {
+ default
+
+ # Managed by eselect-iptables
+ # https://bugs.gentoo.org/881295
+ rm "${ED}/usr/bin/iptables-xml" || die
+
+ dodoc iptables/iptables.xslt
+
+ # All the iptables binaries are in /sbin, so might as well
+ # put these small files in with them
+ into /
+ dosbin iptables/iptables-apply
+ dosym iptables-apply /sbin/ip6tables-apply
+ doman iptables/iptables-apply.8
+
+ insinto /usr/include
+ doins include/ip{,6}tables.h
+ insinto /usr/include/iptables
+ doins include/iptables/internal.h
+
+ keepdir /var/lib/ip{,6}tables
+ newinitd "${FILESDIR}"/${PN}-r4.init iptables
+ newconfd "${FILESDIR}"/${PN}-r1.confd iptables
+ dosym iptables /etc/init.d/ip6tables
+ newconfd "${FILESDIR}"/ip6tables-r1.confd ip6tables
+
+ if use nftables; then
+ # Bug #647458
+ rm "${ED}"/etc/ethertypes || die
+
+ # Bugs #660886 and #669894
+ rm "${ED}"/sbin/{arptables,ebtables}{,-{save,restore}} || die
+ fi
+
+ systemd_dounit "${FILESDIR}"/systemd/ip{,6}tables-{re,}store.service
+
+ find "${ED}" -type f -name "*.la" -delete || die
+}
+
+pkg_postinst() {
+ local default_iptables="xtables-legacy-multi"
+ if ! eselect iptables show &>/dev/null; then
+ elog "Current iptables implementation is unset, setting to ${default_iptables}"
+ eselect iptables set "${default_iptables}"
+ fi
+
+ if use nftables; then
+ local tables
+ for tables in {arp,eb}tables; do
+ if ! eselect ${tables} show &>/dev/null; then
+ elog "Current ${tables} implementation is unset, setting to ${default_iptables}"
+ eselect ${tables} set xtables-nft-multi
+ fi
+ done
+ fi
+
+ eselect iptables show
+}
+
+pkg_prerm() {
+ if [[ -z ${REPLACED_BY_VERSION} ]]; then
+ elog "Unsetting iptables symlinks before removal"
+ eselect iptables unset
+ fi
+
+ if ! has_version 'net-firewall/ebtables'; then
+ elog "Unsetting ebtables symlinks before removal"
+ eselect ebtables unset
+ elif [[ -z ${REPLACED_BY_VERSION} ]]; then
+ elog "Resetting ebtables symlinks to ebtables-legacy"
+ eselect ebtables set ebtables-legacy
+ fi
+
+ if ! has_version 'net-firewall/arptables'; then
+ elog "Unsetting arptables symlinks before removal"
+ eselect arptables unset
+ elif [[ -z ${REPLACED_BY_VERSION} ]]; then
+ elog "Resetting arptables symlinks to arptables-legacy"
+ eselect arptables set arptables-legacy
+ fi
+
+ # The eselect module failing should not be fatal
+ return 0
+}
diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libslirp/libslirp-4.9.1.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/libslirp/libslirp-4.9.1.ebuild
index 0a8e0d82b1..72832ec148 100644
--- a/sdk_container/src/third_party/portage-stable/net-libs/libslirp/libslirp-4.9.1.ebuild
+++ b/sdk_container/src/third_party/portage-stable/net-libs/libslirp/libslirp-4.9.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -14,7 +14,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm64 ~loong ~m68k ~ppc ppc64 ~riscv x86"
IUSE="static-libs valgrind"
RDEPEND="dev-libs/glib:="
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/Manifest b/sdk_container/src/third_party/portage-stable/net-misc/openssh/Manifest
index 0445960d52..35e0050423 100644
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/Manifest
+++ b/sdk_container/src/third_party/portage-stable/net-misc/openssh/Manifest
@@ -4,7 +4,9 @@ DIST openssh-10.1p1.tar.gz 1972831 BLAKE2B 08864c9302935cde87eec9d736a90b0bcf232
DIST openssh-10.1p1.tar.gz.asc 833 BLAKE2B c9df62728276464926ac7d28d54dd23a42bef150a9f64bfec14278d0e1817a876ee76b3329aca863997107bb8d4d43a694643f730249d9940d967b4c2a18fed3 SHA512 a4082bf8526d60094b5a3207995793c44448833b1cdd7ec91f04554fd8bddc1df3b45ee9ffe42de3bfc72d4968808834e289159e3c96f031e09a78da844641ae
DIST openssh-10.2p1.tar.gz 1974519 BLAKE2B 8c031b10b1642e21b46f7d1db84ba42692e378a54af3d8e5b5c8706c3a0a06d442a02ed8803063121e7ff325ea275cad4432b9eaa6a7f47a4d7cfad504953ab6 SHA512 66f3dd646179e71aaf41c33b6f14a207dc873d71d24f11c130a89dee317ee45398b818e5b94887b5913240964a38630d7bca3e481e0f1eff2e41d9e1cfdbdfc5
DIST openssh-10.2p1.tar.gz.asc 833 BLAKE2B 34e1a697e9565f5d4e8139537e76e123512285662576f6f2b513ba129d5e42310c1997e70d7c69b2c4fe1c85f9323ef686b8f83f12a73c5a4f229ff855efd7c6 SHA512 f1f71700b1b0b2117aed505488b98b7ebb51ce26e53184b08df0b07aa2c5a1e54dc4d3cbcbe871b5ad849a2a0e22b02af318ff22a68c980ab53b04be03c9bf3c
+DIST openssh-9.8_p1-backports.tar.gz 5879 BLAKE2B 98f2864977f512cb658d129cc89385df25b57fb4ec5ac0cb5e2655ff7f8bffa795194a2177a78339999b0d25c9aea708469b322b9d7c814165e570fb5a66ee9b SHA512 541a629b3ce7d20df29b649478f7a4348bed876045cc2b3c95b6544cce87850cd05c1d405e85ce713fb137b7768402d2b0052a6478b781c30a2567ffebcd4322
DIST openssh-9.8p1.tar.gz 1910393 BLAKE2B 3bf983c4ef5358054ed0104cd51d3e0069fbc2b80d8522d0df644d5508ec1d26a67bf061b1b5698d1cdf0d2cbba16b4cdca12a4ce30da24429094576a075e192 SHA512 95dec2f18e58eb47994f3de4430253e0665e185564b65088ca5f4108870e05feddef8cda8d3c0a4b75f18b98cc2c024df0e27de53b48c1a16da8da483cb8292a
DIST openssh-9.8p1.tar.gz.asc 833 BLAKE2B 5291e8c03ab9a75acb44285cd7fc010f4a33551f142499624165dac708fc05a6d077df81555aa41037b45f6301e4e5db3161a7a23404473f8a233a877fc55cc3 SHA512 4df1f1be2c6ab7f3aebaedd0a773b0e8c8929abb30cd3415873ad55d012cfa113f792e888e5e772dd468c394aeb7e35d62893a514dbc0ab1a03acd79918657f7
+DIST openssh-9.9_p2-backports.tar.gz 7994 BLAKE2B d2410b0cb2eb2056a4f1e5fabd6b0fe5a6ac8924159424fec6b3de3d7a5e3e8f1ed346522c52f9ce47fafb4001ad3be1d2f5493100a1b49f2c488dd63bbcb48b SHA512 8348aeb4e85a7763cf10d56fe7e5437206270dc4abb8ade65f86ad86b23be60f68c9aa7f83e021723c447d7746bdbfa82d4598481b4527b77f74872fa0783384
DIST openssh-9.9p2.tar.gz 1944499 BLAKE2B 1b5bc09482b3a807ccfee52c86c6be3c363acf0c8e774862e0ae64f76bfeb4ce7cf29b3ed2f99c04c89bb4977da0cf50a7a175b15bf1d9925de1e03c66f8306d SHA512 4c6d839aa3189cd5254c745f2bd51cd3f468b02f8e427b8d7a16b9ad017888a41178d2746dc51fb2d3fec5be00e54b9ab7c32c472ca7dec57a1dea4fc9840278
DIST openssh-9.9p2.tar.gz.asc 833 BLAKE2B 21d9ef3da2b54be47420327f1c724e38eef951ea11d646de81ac3ee2abf3d81f218424432cf5ac7d60cdae72e2190001f923dbdf5bed57f4a105ee1895261c9d SHA512 e7f9bc74d27e5cf8cbf4f5831fddd1d8ad00b03e51e7deb7f95ef17c5017ab7ce0116f4770374aaf6bd3a5f6013dab651a7651b21fa303d05ad6d14b537ab955
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0001-Fix-detection-of-setres-id-on-GNU-Hurd.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0001-Fix-detection-of-setres-id-on-GNU-Hurd.patch
deleted file mode 100644
index 1001988825..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0001-Fix-detection-of-setres-id-on-GNU-Hurd.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 20950a7c047ca08f9317d27866c06587ed51a338 Mon Sep 17 00:00:00 2001
-Message-ID: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-From: Samuel Thibault
-Date: Tue, 26 Mar 2024 22:15:08 +0100
-Subject: [PATCH 1/7] Fix detection of setres*id on GNU/Hurd
-
-Like Linux, proper _SOURCE macros need to be set to get declarations of
-various standard functions, notably setres*id. Now that Debian is using
--Werror=implicit-function-declaration this is really required. While at
-it, define other _SOURCE macros like on GNU/Linux, since GNU/Hurd uses
-the same glibc.
----
- configure.ac | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/configure.ac b/configure.ac
-index 5a865f8e1..2eede34c3 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1348,6 +1348,13 @@ EOD
- AC_DEFINE([BROKEN_SETVBUF], [1],
- [LynxOS has broken setvbuf() implementation])
- ;;
-+*-*-gnu*)
-+ dnl GNU Hurd. Needs to be after the linux and the other *-gnu entries.
-+ dnl Target SUSv3/POSIX.1-2001 plus BSD specifics.
-+ dnl _DEFAULT_SOURCE is the new name for _BSD_SOURCE
-+ dnl _GNU_SOURCE is needed for setres*id prototypes.
-+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_GNU_SOURCE"
-+ ;;
- esac
-
- AC_MSG_CHECKING([compiler and flags for sanity])
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0002-Add-9.8-branch-to-ci-status-page.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0002-Add-9.8-branch-to-ci-status-page.patch
deleted file mode 100644
index cc74ec2d30..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0002-Add-9.8-branch-to-ci-status-page.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 34f7a962f992a43e33b5b6e2dd71f1582433d551 Mon Sep 17 00:00:00 2001
-Message-ID: <34f7a962f992a43e33b5b6e2dd71f1582433d551.1758727870.git.sam@gentoo.org>
-In-Reply-To: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-References: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-From: Darren Tucker
-Date: Thu, 4 Jul 2024 20:12:26 +1000
-Subject: [PATCH 2/7] Add 9.8 branch to ci-status page.
-
----
- .github/ci-status.md | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/.github/ci-status.md b/.github/ci-status.md
-index fbf7c5fd6..4fa73894c 100644
---- a/.github/ci-status.md
-+++ b/.github/ci-status.md
-@@ -6,6 +6,10 @@ master :
- [](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:openssh)
- [](https://scan.coverity.com/projects/openssh-portable)
-
-+9.8 :
-+[](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml?query=branch:V_9_8)
-+[](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_9_8)
-+
- 9.7 :
- [](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml?query=branch:V_9_7)
- [](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_9_7)
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0003-Cast-to-sockaddr-in-systemd-interface.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0003-Cast-to-sockaddr-in-systemd-interface.patch
deleted file mode 100644
index aa7d593abf..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0003-Cast-to-sockaddr-in-systemd-interface.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From b35a64dd7d5278af859ff8cca1fbe42d2c308ac0 Mon Sep 17 00:00:00 2001
-Message-ID:
-In-Reply-To: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-References: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-From: Darren Tucker
-Date: Sun, 7 Jul 2024 18:46:19 +1000
-Subject: [PATCH 3/7] Cast to sockaddr * in systemd interface.
-
-Fixes build with musl libx. bz#3707.
----
- openbsd-compat/port-linux.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/openbsd-compat/port-linux.c b/openbsd-compat/port-linux.c
-index 4c024c6d2..8adfec5a7 100644
---- a/openbsd-compat/port-linux.c
-+++ b/openbsd-compat/port-linux.c
-@@ -366,7 +366,7 @@ ssh_systemd_notify(const char *fmt, ...)
- error_f("socket \"%s\": %s", path, strerror(errno));
- goto out;
- }
-- if (connect(fd, &addr, sizeof(addr)) != 0) {
-+ if (connect(fd, (struct sockaddr *)&addr, sizeof(addr)) != 0) {
- error_f("socket \"%s\" connect: %s", path, strerror(errno));
- goto out;
- }
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0004-upstream-correct-keyword-from-Yatao-Su-via-GHPR509.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0004-upstream-correct-keyword-from-Yatao-Su-via-GHPR509.patch
deleted file mode 100644
index 7d236829a5..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0004-upstream-correct-keyword-from-Yatao-Su-via-GHPR509.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From c21fc9d953f6d858ea0a9d7da38359d2eb397ed0 Mon Sep 17 00:00:00 2001
-Message-ID:
-In-Reply-To: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-References: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-From: "djm@openbsd.org"
-Date: Wed, 10 Jul 2024 21:58:34 +0000
-Subject: [PATCH 4/7] upstream: correct keyword; from Yatao Su via GHPR509
-
-OpenBSD-Commit-ID: 81c778c76dea7ef407603caa157eb0c381c52ad2
----
- sshd_config.5 | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/sshd_config.5 b/sshd_config.5
-index 1ab0f41d9..ce872de52 100644
---- a/sshd_config.5
-+++ b/sshd_config.5
-@@ -1586,7 +1586,7 @@ accumulated.
- .Pp
- Penalties are enabled by default with the default settings listed below
- but may disabled using the
--.Cm off
-+.Cm no
- keyword.
- The defaults may be overridden by specifying one or more of the keywords below,
- separated by whitespace.
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0005-support-sntrup761x25519-sha512-alias.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0005-support-sntrup761x25519-sha512-alias.patch
deleted file mode 100644
index d61a90605d..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0005-support-sntrup761x25519-sha512-alias.patch
+++ /dev/null
@@ -1,250 +0,0 @@
-From 26f73db15e0eee558a11b42a9d794d78c87dd11e Mon Sep 17 00:00:00 2001
-Message-ID: <26f73db15e0eee558a11b42a9d794d78c87dd11e.1758727870.git.sam@gentoo.org>
-In-Reply-To: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-References: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-From: Damien Miller
-Date: Mon, 11 Aug 2025 16:40:24 +1000
-Subject: [PATCH 5/7] support sntrup761x25519-sha512 alias
-
-OpenSSH 9.8 supports the sntrup761x25519-sha512@openssh.com
-key agreement algorithm. As part of standardisation, this algorithm
-has been assigned the name sntrup761x25519-sha512.
-
-This commit enables the existing algorithm under this new name.
----
- configure | 3 +++
- kex-names.c | 2 ++
- kex.h | 1 +
- moduli.0 | 2 +-
- myproposal.h | 1 +
- scp.0 | 2 +-
- sftp-server.0 | 2 +-
- sftp.0 | 2 +-
- ssh-add.0 | 2 +-
- ssh-agent.0 | 2 +-
- ssh-keygen.0 | 2 +-
- ssh-keyscan.0 | 2 +-
- ssh-keysign.0 | 2 +-
- ssh-pkcs11-helper.0 | 2 +-
- ssh-sk-helper.0 | 2 +-
- ssh.0 | 2 +-
- ssh_config.0 | 2 +-
- sshd.0 | 2 +-
- sshd_config.0 | 6 +++---
- 19 files changed, 24 insertions(+), 17 deletions(-)
-
-diff --git a/configure b/configure
-index 07d19fd30..32e38c4cb 100755
---- a/configure
-+++ b/configure
-@@ -13317,6 +13317,9 @@ EOD
- printf "%s\n" "#define BROKEN_SETVBUF 1" >>confdefs.h
-
- ;;
-+*-*-gnu*)
-+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_GNU_SOURCE"
-+ ;;
- esac
-
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking compiler and flags for sanity" >&5
-diff --git a/kex-names.c b/kex-names.c
-index 339eb1c23..1869b8ee1 100644
---- a/kex-names.c
-+++ b/kex-names.c
-@@ -77,6 +77,8 @@ static const struct kexalg kexalgs[] = {
- { KEX_CURVE25519_SHA256, KEX_C25519_SHA256, 0, SSH_DIGEST_SHA256 },
- { KEX_CURVE25519_SHA256_OLD, KEX_C25519_SHA256, 0, SSH_DIGEST_SHA256 },
- #ifdef USE_SNTRUP761X25519
-+ { KEX_SNTRUP761X25519_SHA512_IANA, KEX_KEM_SNTRUP761X25519_SHA512, 0,
-+ SSH_DIGEST_SHA512 },
- { KEX_SNTRUP761X25519_SHA512, KEX_KEM_SNTRUP761X25519_SHA512, 0,
- SSH_DIGEST_SHA512 },
- #endif
-diff --git a/kex.h b/kex.h
-index 34665eb20..ed22b929f 100644
---- a/kex.h
-+++ b/kex.h
-@@ -63,6 +63,7 @@
- #define KEX_CURVE25519_SHA256 "curve25519-sha256"
- #define KEX_CURVE25519_SHA256_OLD "curve25519-sha256@libssh.org"
- #define KEX_SNTRUP761X25519_SHA512 "sntrup761x25519-sha512@openssh.com"
-+#define KEX_SNTRUP761X25519_SHA512_IANA "sntrup761x25519-sha512"
-
- #define COMP_NONE 0
- /* pre-auth compression (COMP_ZLIB) is only supported in the client */
-diff --git a/moduli.0 b/moduli.0
-index 057a018ef..90700a16f 100644
---- a/moduli.0
-+++ b/moduli.0
-@@ -71,4 +71,4 @@ STANDARDS
- M. Friedl, N. Provos, and W. Simpson, Diffie-Hellman Group Exchange for
- the Secure Shell (SSH) Transport Layer Protocol, RFC 4419, March 2006.
-
--OpenBSD 7.5 April 16, 2022 OpenBSD 7.5
-+OpenBSD 7.7 April 16, 2022 OpenBSD 7.7
-diff --git a/myproposal.h b/myproposal.h
-index ee6e9f741..0528cd783 100644
---- a/myproposal.h
-+++ b/myproposal.h
-@@ -25,6 +25,7 @@
- */
-
- #define KEX_SERVER_KEX \
-+ "sntrup761x25519-sha512," \
- "sntrup761x25519-sha512@openssh.com," \
- "curve25519-sha256," \
- "curve25519-sha256@libssh.org," \
-diff --git a/scp.0 b/scp.0
-index e098ddf55..85d5f83d5 100644
---- a/scp.0
-+++ b/scp.0
-@@ -229,4 +229,4 @@ CAVEATS
- requires careful quoting of any characters that have special meaning to
- the remote shell, such as quote characters.
-
--OpenBSD 7.5 December 16, 2022 OpenBSD 7.5
-+OpenBSD 7.7 December 16, 2022 OpenBSD 7.7
-diff --git a/sftp-server.0 b/sftp-server.0
-index 23fdda399..273b69908 100644
---- a/sftp-server.0
-+++ b/sftp-server.0
-@@ -95,4 +95,4 @@ HISTORY
- AUTHORS
- Markus Friedl
-
--OpenBSD 7.5 July 27, 2021 OpenBSD 7.5
-+OpenBSD 7.7 July 27, 2021 OpenBSD 7.7
-diff --git a/sftp.0 b/sftp.0
-index c6a9e60c4..0476733c1 100644
---- a/sftp.0
-+++ b/sftp.0
-@@ -435,4 +435,4 @@ SEE ALSO
- T. Ylonen and S. Lehtinen, SSH File Transfer Protocol, draft-ietf-secsh-
- filexfer-00.txt, January 2001, work in progress material.
-
--OpenBSD 7.5 December 16, 2022 OpenBSD 7.5
-+OpenBSD 7.7 December 16, 2022 OpenBSD 7.7
-diff --git a/ssh-add.0 b/ssh-add.0
-index 30eed6672..20f1a88e2 100644
---- a/ssh-add.0
-+++ b/ssh-add.0
-@@ -206,4 +206,4 @@ AUTHORS
- created OpenSSH. Markus Friedl contributed the support for SSH protocol
- versions 1.5 and 2.0.
-
--OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-+OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-diff --git a/ssh-agent.0 b/ssh-agent.0
-index 2e4ef7b6e..238fa54e2 100644
---- a/ssh-agent.0
-+++ b/ssh-agent.0
-@@ -137,4 +137,4 @@ AUTHORS
- created OpenSSH. Markus Friedl contributed the support for SSH protocol
- versions 1.5 and 2.0.
-
--OpenBSD 7.5 August 10, 2023 OpenBSD 7.5
-+OpenBSD 7.7 August 10, 2023 OpenBSD 7.7
-diff --git a/ssh-keygen.0 b/ssh-keygen.0
-index a731a7fa8..13b032f46 100644
---- a/ssh-keygen.0
-+++ b/ssh-keygen.0
-@@ -904,4 +904,4 @@ AUTHORS
- created OpenSSH. Markus Friedl contributed the support for SSH protocol
- versions 1.5 and 2.0.
-
--OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-+OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-diff --git a/ssh-keyscan.0 b/ssh-keyscan.0
-index 110399094..cf0962c82 100644
---- a/ssh-keyscan.0
-+++ b/ssh-keyscan.0
-@@ -120,4 +120,4 @@ AUTHORS
- Davison added support for protocol version
- 2.
-
--OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-+OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-diff --git a/ssh-keysign.0 b/ssh-keysign.0
-index 577955d1b..ff3305809 100644
---- a/ssh-keysign.0
-+++ b/ssh-keysign.0
-@@ -47,4 +47,4 @@ HISTORY
- AUTHORS
- Markus Friedl
-
--OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-+OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-diff --git a/ssh-pkcs11-helper.0 b/ssh-pkcs11-helper.0
-index 564587259..4b1cb8d7d 100644
---- a/ssh-pkcs11-helper.0
-+++ b/ssh-pkcs11-helper.0
-@@ -32,4 +32,4 @@ HISTORY
- AUTHORS
- Markus Friedl
-
--OpenBSD 7.5 April 29, 2022 OpenBSD 7.5
-+OpenBSD 7.7 April 29, 2022 OpenBSD 7.7
-diff --git a/ssh-sk-helper.0 b/ssh-sk-helper.0
-index ea2117abd..4abc5e8a0 100644
---- a/ssh-sk-helper.0
-+++ b/ssh-sk-helper.0
-@@ -31,4 +31,4 @@ HISTORY
- AUTHORS
- Damien Miller
-
--OpenBSD 7.5 April 29, 2022 OpenBSD 7.5
-+OpenBSD 7.7 April 29, 2022 OpenBSD 7.7
-diff --git a/ssh.0 b/ssh.0
-index 78863b1b0..9c34e3e6e 100644
---- a/ssh.0
-+++ b/ssh.0
-@@ -1016,4 +1016,4 @@ AUTHORS
- created OpenSSH. Markus Friedl contributed the support for SSH protocol
- versions 1.5 and 2.0.
-
--OpenBSD 7.5 June 27, 2024 OpenBSD 7.5
-+OpenBSD 7.7 June 27, 2024 OpenBSD 7.7
-diff --git a/ssh_config.0 b/ssh_config.0
-index ef6c0936a..f9a82781b 100644
---- a/ssh_config.0
-+++ b/ssh_config.0
-@@ -1428,4 +1428,4 @@ AUTHORS
- created OpenSSH. Markus Friedl contributed the support for SSH protocol
- versions 1.5 and 2.0.
-
--OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-+OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-diff --git a/sshd.0 b/sshd.0
-index c7de2d311..eac127dcf 100644
---- a/sshd.0
-+++ b/sshd.0
-@@ -682,4 +682,4 @@ AUTHORS
- versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support
- for privilege separation.
-
--OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-+OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-diff --git a/sshd_config.0 b/sshd_config.0
-index 6883dda4b..ca030fcca 100644
---- a/sshd_config.0
-+++ b/sshd_config.0
-@@ -950,8 +950,8 @@ DESCRIPTION
- accumulated.
-
- Penalties are enabled by default with the default settings listed
-- below but may disabled using the off keyword. The defaults may
-- be overridden by specifying one or more of the keywords below,
-+ below but may disabled using the no keyword. The defaults may be
-+ overridden by specifying one or more of the keywords below,
- separated by whitespace. All keywords accept arguments, e.g.
- "crash:2m".
-
-@@ -1390,4 +1390,4 @@ AUTHORS
- versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support
- for privilege separation.
-
--OpenBSD 7.5 June 24, 2024 OpenBSD 7.5
-+OpenBSD 7.7 June 24, 2024 OpenBSD 7.7
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0006-back-out-unrelated-manpages-changes.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0006-back-out-unrelated-manpages-changes.patch
deleted file mode 100644
index f5ca5ebacf..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0006-back-out-unrelated-manpages-changes.patch
+++ /dev/null
@@ -1,206 +0,0 @@
-From d1460a177431d034248b62b36240f634482e48de Mon Sep 17 00:00:00 2001
-Message-ID:
-In-Reply-To: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-References: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-From: Damien Miller
-Date: Wed, 13 Aug 2025 09:19:53 +1000
-Subject: [PATCH 6/7] back out unrelated manpages changes
-
-spotted by Colin Wilson
----
- configure | 3 ---
- moduli.0 | 2 +-
- scp.0 | 2 +-
- sftp-server.0 | 2 +-
- sftp.0 | 2 +-
- ssh-add.0 | 2 +-
- ssh-agent.0 | 2 +-
- ssh-keygen.0 | 2 +-
- ssh-keyscan.0 | 2 +-
- ssh-keysign.0 | 2 +-
- ssh-pkcs11-helper.0 | 2 +-
- ssh-sk-helper.0 | 2 +-
- ssh.0 | 2 +-
- ssh_config.0 | 2 +-
- sshd.0 | 2 +-
- sshd_config.0 | 6 +++---
- 16 files changed, 17 insertions(+), 20 deletions(-)
-
-diff --git a/configure b/configure
-index 32e38c4cb..07d19fd30 100755
---- a/configure
-+++ b/configure
-@@ -13317,9 +13317,6 @@ EOD
- printf "%s\n" "#define BROKEN_SETVBUF 1" >>confdefs.h
-
- ;;
--*-*-gnu*)
-- CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_GNU_SOURCE"
-- ;;
- esac
-
- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking compiler and flags for sanity" >&5
-diff --git a/moduli.0 b/moduli.0
-index 90700a16f..057a018ef 100644
---- a/moduli.0
-+++ b/moduli.0
-@@ -71,4 +71,4 @@ STANDARDS
- M. Friedl, N. Provos, and W. Simpson, Diffie-Hellman Group Exchange for
- the Secure Shell (SSH) Transport Layer Protocol, RFC 4419, March 2006.
-
--OpenBSD 7.7 April 16, 2022 OpenBSD 7.7
-+OpenBSD 7.5 April 16, 2022 OpenBSD 7.5
-diff --git a/scp.0 b/scp.0
-index 85d5f83d5..e098ddf55 100644
---- a/scp.0
-+++ b/scp.0
-@@ -229,4 +229,4 @@ CAVEATS
- requires careful quoting of any characters that have special meaning to
- the remote shell, such as quote characters.
-
--OpenBSD 7.7 December 16, 2022 OpenBSD 7.7
-+OpenBSD 7.5 December 16, 2022 OpenBSD 7.5
-diff --git a/sftp-server.0 b/sftp-server.0
-index 273b69908..23fdda399 100644
---- a/sftp-server.0
-+++ b/sftp-server.0
-@@ -95,4 +95,4 @@ HISTORY
- AUTHORS
- Markus Friedl
-
--OpenBSD 7.7 July 27, 2021 OpenBSD 7.7
-+OpenBSD 7.5 July 27, 2021 OpenBSD 7.5
-diff --git a/sftp.0 b/sftp.0
-index 0476733c1..c6a9e60c4 100644
---- a/sftp.0
-+++ b/sftp.0
-@@ -435,4 +435,4 @@ SEE ALSO
- T. Ylonen and S. Lehtinen, SSH File Transfer Protocol, draft-ietf-secsh-
- filexfer-00.txt, January 2001, work in progress material.
-
--OpenBSD 7.7 December 16, 2022 OpenBSD 7.7
-+OpenBSD 7.5 December 16, 2022 OpenBSD 7.5
-diff --git a/ssh-add.0 b/ssh-add.0
-index 20f1a88e2..30eed6672 100644
---- a/ssh-add.0
-+++ b/ssh-add.0
-@@ -206,4 +206,4 @@ AUTHORS
- created OpenSSH. Markus Friedl contributed the support for SSH protocol
- versions 1.5 and 2.0.
-
--OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-+OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-diff --git a/ssh-agent.0 b/ssh-agent.0
-index 238fa54e2..2e4ef7b6e 100644
---- a/ssh-agent.0
-+++ b/ssh-agent.0
-@@ -137,4 +137,4 @@ AUTHORS
- created OpenSSH. Markus Friedl contributed the support for SSH protocol
- versions 1.5 and 2.0.
-
--OpenBSD 7.7 August 10, 2023 OpenBSD 7.7
-+OpenBSD 7.5 August 10, 2023 OpenBSD 7.5
-diff --git a/ssh-keygen.0 b/ssh-keygen.0
-index 13b032f46..a731a7fa8 100644
---- a/ssh-keygen.0
-+++ b/ssh-keygen.0
-@@ -904,4 +904,4 @@ AUTHORS
- created OpenSSH. Markus Friedl contributed the support for SSH protocol
- versions 1.5 and 2.0.
-
--OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-+OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-diff --git a/ssh-keyscan.0 b/ssh-keyscan.0
-index cf0962c82..110399094 100644
---- a/ssh-keyscan.0
-+++ b/ssh-keyscan.0
-@@ -120,4 +120,4 @@ AUTHORS
- Davison added support for protocol version
- 2.
-
--OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-+OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-diff --git a/ssh-keysign.0 b/ssh-keysign.0
-index ff3305809..577955d1b 100644
---- a/ssh-keysign.0
-+++ b/ssh-keysign.0
-@@ -47,4 +47,4 @@ HISTORY
- AUTHORS
- Markus Friedl
-
--OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-+OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-diff --git a/ssh-pkcs11-helper.0 b/ssh-pkcs11-helper.0
-index 4b1cb8d7d..564587259 100644
---- a/ssh-pkcs11-helper.0
-+++ b/ssh-pkcs11-helper.0
-@@ -32,4 +32,4 @@ HISTORY
- AUTHORS
- Markus Friedl
-
--OpenBSD 7.7 April 29, 2022 OpenBSD 7.7
-+OpenBSD 7.5 April 29, 2022 OpenBSD 7.5
-diff --git a/ssh-sk-helper.0 b/ssh-sk-helper.0
-index 4abc5e8a0..ea2117abd 100644
---- a/ssh-sk-helper.0
-+++ b/ssh-sk-helper.0
-@@ -31,4 +31,4 @@ HISTORY
- AUTHORS
- Damien Miller
-
--OpenBSD 7.7 April 29, 2022 OpenBSD 7.7
-+OpenBSD 7.5 April 29, 2022 OpenBSD 7.5
-diff --git a/ssh.0 b/ssh.0
-index 9c34e3e6e..78863b1b0 100644
---- a/ssh.0
-+++ b/ssh.0
-@@ -1016,4 +1016,4 @@ AUTHORS
- created OpenSSH. Markus Friedl contributed the support for SSH protocol
- versions 1.5 and 2.0.
-
--OpenBSD 7.7 June 27, 2024 OpenBSD 7.7
-+OpenBSD 7.5 June 27, 2024 OpenBSD 7.5
-diff --git a/ssh_config.0 b/ssh_config.0
-index f9a82781b..ef6c0936a 100644
---- a/ssh_config.0
-+++ b/ssh_config.0
-@@ -1428,4 +1428,4 @@ AUTHORS
- created OpenSSH. Markus Friedl contributed the support for SSH protocol
- versions 1.5 and 2.0.
-
--OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-+OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-diff --git a/sshd.0 b/sshd.0
-index eac127dcf..c7de2d311 100644
---- a/sshd.0
-+++ b/sshd.0
-@@ -682,4 +682,4 @@ AUTHORS
- versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support
- for privilege separation.
-
--OpenBSD 7.7 June 17, 2024 OpenBSD 7.7
-+OpenBSD 7.5 June 17, 2024 OpenBSD 7.5
-diff --git a/sshd_config.0 b/sshd_config.0
-index ca030fcca..6883dda4b 100644
---- a/sshd_config.0
-+++ b/sshd_config.0
-@@ -950,8 +950,8 @@ DESCRIPTION
- accumulated.
-
- Penalties are enabled by default with the default settings listed
-- below but may disabled using the no keyword. The defaults may be
-- overridden by specifying one or more of the keywords below,
-+ below but may disabled using the off keyword. The defaults may
-+ be overridden by specifying one or more of the keywords below,
- separated by whitespace. All keywords accept arguments, e.g.
- "crash:2m".
-
-@@ -1390,4 +1390,4 @@ AUTHORS
- versions 1.5 and 2.0. Niels Provos and Markus Friedl contributed support
- for privilege separation.
-
--OpenBSD 7.7 June 24, 2024 OpenBSD 7.7
-+OpenBSD 7.5 June 24, 2024 OpenBSD 7.5
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0007-mention-sntrup761x25519-sha512-in-manpages.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0007-mention-sntrup761x25519-sha512-in-manpages.patch
deleted file mode 100644
index d9a7a0143d..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.8_p1/0007-mention-sntrup761x25519-sha512-in-manpages.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From a38b48e77ccfe9528dd4a8516c114950fa7a111d Mon Sep 17 00:00:00 2001
-Message-ID:
-In-Reply-To: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-References: <20950a7c047ca08f9317d27866c06587ed51a338.1758727870.git.sam@gentoo.org>
-From: Damien Miller
-Date: Wed, 13 Aug 2025 09:16:34 +1000
-Subject: [PATCH 7/7] mention sntrup761x25519-sha512 in manpages
-
-Spotted by Colin Watson
----
- ssh_config.5 | 1 +
- sshd_config.5 | 3 +++
- 2 files changed, 4 insertions(+)
-
-diff --git a/ssh_config.5 b/ssh_config.5
-index 2e1902283..9473f4692 100644
---- a/ssh_config.5
-+++ b/ssh_config.5
-@@ -1281,6 +1281,7 @@ default set.
- .Pp
- The default is:
- .Bd -literal -offset indent
-+sntrup761x25519-sha512,
- sntrup761x25519-sha512@openssh.com,
- curve25519-sha256,curve25519-sha256@libssh.org,
- ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,
-diff --git a/sshd_config.5 b/sshd_config.5
-index ce872de52..3c727f4d3 100644
---- a/sshd_config.5
-+++ b/sshd_config.5
-@@ -1050,11 +1050,14 @@ ecdh-sha2-nistp384
- .It
- ecdh-sha2-nistp521
- .It
-+sntrup761x25519-sha512
-+.It
- sntrup761x25519-sha512@openssh.com
- .El
- .Pp
- The default is:
- .Bd -literal -offset indent
-+sntrup761x25519-sha512,
- sntrup761x25519-sha512@openssh.com,
- curve25519-sha256,curve25519-sha256@libssh.org,
- ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0001-Check-for-le32toh-le64toh-htole64-individually.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0001-Check-for-le32toh-le64toh-htole64-individually.patch
deleted file mode 100644
index ae9ca600d6..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0001-Check-for-le32toh-le64toh-htole64-individually.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From 4b8d141ec165aa29a48316768089cb03aed3aada Mon Sep 17 00:00:00 2001
-Message-ID: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-From: Darren Tucker
-Date: Wed, 26 Feb 2025 18:16:03 +1100
-Subject: [PATCH 01/10] Check for le32toh, le64toh, htole64 individually.
-
-It appears that at least some versions of endian.h in glibc do not have
-the latter two, so check for and replace each one individually.
-bz#3794, ok djm@
----
- configure.ac | 12 ++++++++++++
- defines.h | 28 +++++++++++++++++++++-------
- 2 files changed, 33 insertions(+), 7 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 9053a9a2b..57a8d1007 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -536,6 +536,18 @@ AC_CHECK_HEADERS([ \
- wchar.h \
- ])
-
-+AC_CHECK_DECLS([le32toh, le64toh, htole64], [], [], [
-+#ifdef HAVE_SYS_TYPES_H
-+# include
-+#endif
-+#ifdef HAVE_STDINT_H
-+# include
-+#endif
-+#ifdef HAVE_ENDIAN_H
-+# include
-+#endif
-+])
-+
- # On some platforms (eg SunOS4) sys/audit.h requires sys/[time|types|label.h]
- # to be included first.
- AC_CHECK_HEADERS([sys/audit.h], [], [], [
-diff --git a/defines.h b/defines.h
-index c1c21aba6..090f49f55 100644
---- a/defines.h
-+++ b/defines.h
-@@ -646,7 +646,9 @@ struct winsize {
- # endif /* WORDS_BIGENDIAN */
- #endif /* BYTE_ORDER */
-
--#ifndef HAVE_ENDIAN_H
-+#if (defined(HAVE_DECL_LE32TOH) && HAVE_DECL_LE32TOH == 0) || \
-+ (defined(HAVE_DECL_LE64TOH) && HAVE_DECL_LE64TOH == 0) || \
-+ (defined(HAVE_DECL_HTOLE64) && HAVE_DECL_HTOLE64 == 0)
- # define openssh_swap32(v) \
- (uint32_t)(((uint32_t)(v) & 0xff) << 24 | \
- ((uint32_t)(v) & 0xff00) << 8 | \
-@@ -662,13 +664,25 @@ struct winsize {
- ((uint64_t)(v) & 0xff000000000000ULL) >> 40 | \
- ((uint64_t)(v) & 0xff00000000000000ULL) >> 56)
- # ifdef WORDS_BIGENDIAN
--# define le32toh(v) (openssh_swap32(v))
--# define le64toh(v) (openssh_swap64(v))
--# define htole64(v) (openssh_swap64(v))
-+# if defined(HAVE_DECL_LE32TOH) && HAVE_DECL_LE32TOH == 0
-+# define le32toh(v) (openssh_swap32(v))
-+# endif
-+# if defined(HAVE_DECL_LE64TOH) && HAVE_DECL_LE64TOH == 0
-+# define le64toh(v) (openssh_swap64(v))
-+# endif
-+# if defined(HAVE_DECL_HTOLE64) && HAVE_DECL_HTOLE64 == 0
-+# define htole64(v) (openssh_swap64(v))
-+# endif
- # else
--# define le32toh(v) ((uint32_t)v)
--# define le64toh(v) ((uint64_t)v)
--# define htole64(v) ((uint64_t)v)
-+# if defined(HAVE_DECL_LE32TOH) && HAVE_DECL_LE32TOH == 0
-+# define le32toh(v) ((uint32_t)v)
-+# endif
-+# if defined(HAVE_DECL_LE64TOH) && HAVE_DECL_LE64TOH == 0
-+# define le64toh(v) ((uint64_t)v)
-+# endif
-+# if defined(HAVE_DECL_HTOLE64) && HAVE_DECL_HTOLE64 == 0
-+# define htole64(v) ((uint64_t)v)
-+# endif
- # endif
- #endif
-
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0002-Update-autoconf-files-for-endian.h-change.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0002-Update-autoconf-files-for-endian.h-change.patch
deleted file mode 100644
index 778ffba81c..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0002-Update-autoconf-files-for-endian.h-change.patch
+++ /dev/null
@@ -1,118 +0,0 @@
-From de4bcb51c893d81a741d4fac37c10107738a952f Mon Sep 17 00:00:00 2001
-Message-ID:
-In-Reply-To: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-References: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-From: Darren Tucker
-Date: Wed, 26 Feb 2025 18:25:33 +1100
-Subject: [PATCH 02/10] Update autoconf files for endian.h change.
-
----
- config.h.in | 12 +++++++++++
- configure | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 72 insertions(+)
-
-diff --git a/config.h.in b/config.h.in
-index 14bee6087..c841417f4 100644
---- a/config.h.in
-+++ b/config.h.in
-@@ -363,10 +363,22 @@
- don't. */
- #undef HAVE_DECL_HOWMANY
-
-+/* Define to 1 if you have the declaration of `htole64', and to 0 if you
-+ don't. */
-+#undef HAVE_DECL_HTOLE64
-+
- /* Define to 1 if you have the declaration of `h_errno', and to 0 if you
- don't. */
- #undef HAVE_DECL_H_ERRNO
-
-+/* Define to 1 if you have the declaration of `le32toh', and to 0 if you
-+ don't. */
-+#undef HAVE_DECL_LE32TOH
-+
-+/* Define to 1 if you have the declaration of `le64toh', and to 0 if you
-+ don't. */
-+#undef HAVE_DECL_LE64TOH
-+
- /* Define to 1 if you have the declaration of `loginfailed', and to 0 if you
- don't. */
- #undef HAVE_DECL_LOGINFAILED
-diff --git a/configure b/configure
-index b4d33b7cd..ec1de26c2 100755
---- a/configure
-+++ b/configure
-@@ -11325,6 +11325,65 @@ then :
- fi
-
-
-+ac_fn_check_decl "$LINENO" "le32toh" "ac_cv_have_decl_le32toh" "
-+#ifdef HAVE_SYS_TYPES_H
-+# include
-+#endif
-+#ifdef HAVE_STDINT_H
-+# include
-+#endif
-+#ifdef HAVE_ENDIAN_H
-+# include
-+#endif
-+
-+" "$ac_c_undeclared_builtin_options" "CFLAGS"
-+if test "x$ac_cv_have_decl_le32toh" = xyes
-+then :
-+ ac_have_decl=1
-+else $as_nop
-+ ac_have_decl=0
-+fi
-+printf "%s\n" "#define HAVE_DECL_LE32TOH $ac_have_decl" >>confdefs.h
-+ac_fn_check_decl "$LINENO" "le64toh" "ac_cv_have_decl_le64toh" "
-+#ifdef HAVE_SYS_TYPES_H
-+# include
-+#endif
-+#ifdef HAVE_STDINT_H
-+# include
-+#endif
-+#ifdef HAVE_ENDIAN_H
-+# include
-+#endif
-+
-+" "$ac_c_undeclared_builtin_options" "CFLAGS"
-+if test "x$ac_cv_have_decl_le64toh" = xyes
-+then :
-+ ac_have_decl=1
-+else $as_nop
-+ ac_have_decl=0
-+fi
-+printf "%s\n" "#define HAVE_DECL_LE64TOH $ac_have_decl" >>confdefs.h
-+ac_fn_check_decl "$LINENO" "htole64" "ac_cv_have_decl_htole64" "
-+#ifdef HAVE_SYS_TYPES_H
-+# include
-+#endif
-+#ifdef HAVE_STDINT_H
-+# include
-+#endif
-+#ifdef HAVE_ENDIAN_H
-+# include
-+#endif
-+
-+" "$ac_c_undeclared_builtin_options" "CFLAGS"
-+if test "x$ac_cv_have_decl_htole64" = xyes
-+then :
-+ ac_have_decl=1
-+else $as_nop
-+ ac_have_decl=0
-+fi
-+printf "%s\n" "#define HAVE_DECL_HTOLE64 $ac_have_decl" >>confdefs.h
-+
-+
- # On some platforms (eg SunOS4) sys/audit.h requires sys/[time|types|label.h]
- # to be included first.
- ac_fn_c_check_header_compile "$LINENO" "sys/audit.h" "ac_cv_header_sys_audit_h" "
-@@ -27710,3 +27769,4 @@ if test "$AUDIT_MODULE" = "bsm" ; then
- echo "WARNING: BSM audit support is currently considered EXPERIMENTAL."
- echo "See the Solaris section in README.platform for details."
- fi
-+
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0003-Rebuild-config-files-if-Makefile-changes.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0003-Rebuild-config-files-if-Makefile-changes.patch
deleted file mode 100644
index ad90441cef..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0003-Rebuild-config-files-if-Makefile-changes.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From ef95df4089f0dba640671ca6acfb876a78794b83 Mon Sep 17 00:00:00 2001
-Message-ID:
-In-Reply-To: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-References: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-From: Darren Tucker
-Date: Sat, 1 Mar 2025 10:28:59 +1100
-Subject: [PATCH 03/10] Rebuild config files if Makefile changes.
-
-This ensures paths are updated if they are changed by re-running configure.
-Patch from rapier at psc.edu.
----
- Makefile.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 4243006b0..fc7a1a354 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -267,7 +267,7 @@ $(MANPAGES): $(MANPAGES_IN)
- $(FIXPATHSCMD) $${manpage} | $(FIXALGORITHMSCMD) > $@; \
- fi
-
--$(CONFIGFILES): $(CONFIGFILES_IN)
-+$(CONFIGFILES): $(CONFIGFILES_IN) Makefile
- conffile=`echo $@ | sed 's/.out$$//'`; \
- $(FIXPATHSCMD) $(srcdir)/$${conffile} > $@
-
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0004-include-__builtin_popcount-replacement-function.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0004-include-__builtin_popcount-replacement-function.patch
deleted file mode 100644
index 6d0c87adb8..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0004-include-__builtin_popcount-replacement-function.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-From 3b4adf2018ae8fdd48623b6b5ede182319a76b8f Mon Sep 17 00:00:00 2001
-Message-ID: <3b4adf2018ae8fdd48623b6b5ede182319a76b8f.1758727915.git.sam@gentoo.org>
-In-Reply-To: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-References: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-From: Damien Miller
-Date: Sun, 2 Mar 2025 22:06:53 +1100
-Subject: [PATCH 04/10] include __builtin_popcount replacement function
-
-Some systems/compilers lack __builtin_popcount(), so replace it as
-necessary. Reported by Dennis Clarke; ok dtucker@
----
- configure.ac | 13 +++++++++++++
- libcrux_mlkem768_sha3.h | 8 ++++++--
- mlkem768.sh | 10 +++++++++-
- 3 files changed, 28 insertions(+), 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 57a8d1007..dbe189066 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -2041,6 +2041,19 @@ AC_CHECK_FUNCS([ \
- warn \
- ])
-
-+AC_MSG_CHECKING([whether compiler supports __builtin_popcount])
-+AC_LINK_IFELSE([AC_LANG_PROGRAM([[
-+ #include
-+ ]],
-+ [[ int x = 123, y;
-+ y = __builtin_popcount(123);
-+ exit(y == 6 ? 0 : -1); ]])],
-+ [ AC_MSG_RESULT([yes]) ], [
-+ AC_MSG_RESULT([no])
-+ AC_DEFINE([MISSING_BUILTIN_POPCOUNT], [1], [Define if your compiler lacks __builtin_popcount])
-+ ]
-+)
-+
- AC_CHECK_DECLS([bzero, memmem])
-
- dnl Wide character support.
-diff --git a/libcrux_mlkem768_sha3.h b/libcrux_mlkem768_sha3.h
-index b8ac1436f..885e82baf 100644
---- a/libcrux_mlkem768_sha3.h
-+++ b/libcrux_mlkem768_sha3.h
-@@ -177,10 +177,14 @@ static inline uint32_t core_num__u32_8__from_le_bytes(uint8_t buf[4]) {
- }
-
- static inline uint32_t core_num__u8_6__count_ones(uint8_t x0) {
--#ifdef _MSC_VER
-+#if defined(_MSC_VER)
- return __popcnt(x0);
--#else
-+#elif !defined(MISSING_BUILTIN_POPCOUNT)
- return __builtin_popcount(x0);
-+#else
-+ const uint8_t v[16] = { 0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4 };
-+ return v[x0 & 0xf] + v[(x0 >> 4) & 0xf];
-+
- #endif
- }
-
-diff --git a/mlkem768.sh b/mlkem768.sh
-index 3d12b2ed8..cbc3d14da 100644
---- a/mlkem768.sh
-+++ b/mlkem768.sh
-@@ -49,6 +49,11 @@ echo '#define KRML_HOST_EPRINTF(...)'
- echo '#define KRML_HOST_EXIT(x) fatal_f("internal error")'
- echo
-
-+__builtin_popcount_replacement='
-+ const uint8_t v[16] = { 0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4 };
-+ return v[x0 & 0xf] + v[(x0 >> 4) & 0xf];
-+'
-+
- for i in $FILES; do
- echo "/* from $i */"
- # Changes to all files:
-@@ -62,7 +67,10 @@ for i in $FILES; do
- # Replace endian functions with versions that work.
- perl -0777 -pe 's/(static inline void core_num__u64_9__to_le_bytes.*\n)([^}]*\n)/\1 v = htole64(v);\n\2/' |
- perl -0777 -pe 's/(static inline uint64_t core_num__u64_9__from_le_bytes.*?)return v;/\1return le64toh(v);/s' |
-- perl -0777 -pe 's/(static inline uint32_t core_num__u32_8__from_le_bytes.*?)return v;/\1return le32toh(v);/s'
-+ perl -0777 -pe 's/(static inline uint32_t core_num__u32_8__from_le_bytes.*?)return v;/\1return le32toh(v);/s' |
-+ # Compat for popcount.
-+ perl -0777 -pe 's/\#ifdef (_MSC_VER)(.*?return __popcnt\(x0\);)/\#if defined(\1)\2/s' |
-+ perl -0777 -pe "s/\\#else(\\n\\s+return __builtin_popcount\\(x0\\);)/\\#elif !defined(MISSING_BUILTIN_POPCOUNT)\\1\\n#else$__builtin_popcount_replacement/s"
- ;;
- # Default: pass through.
- *)
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0005-upstream-fix-PerSourcePenalty-incorrectly-using-cras.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0005-upstream-fix-PerSourcePenalty-incorrectly-using-cras.patch
deleted file mode 100644
index a2c7e98087..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0005-upstream-fix-PerSourcePenalty-incorrectly-using-cras.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From d58ae05bb7838e1fdae967752f06b0b2471a63f5 Mon Sep 17 00:00:00 2001
-Message-ID:
-In-Reply-To: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-References: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-From: "djm@openbsd.org"
-Date: Sun, 2 Mar 2025 22:44:00 +0000
-Subject: [PATCH 05/10] upstream: fix PerSourcePenalty incorrectly using
- "crash" penalty when
-
-LoginGraceTime was exceeded. Reported by irwin AT princeton.edu via bz3797
-
-OpenBSD-Commit-ID: 1ba3e490a5a9451359618c550d995380af454d25
----
- srclimit.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/srclimit.c b/srclimit.c
-index 33116fa52..c63a462e2 100644
---- a/srclimit.c
-+++ b/srclimit.c
-@@ -386,7 +386,7 @@ srclimit_penalise(struct xaddr *addr, int penalty_type)
- reason = "penalty: connection prohibited by RefuseConnection";
- break;
- case SRCLIMIT_PENALTY_GRACE_EXCEEDED:
-- penalty_secs = penalty_cfg.penalty_crash;
-+ penalty_secs = penalty_cfg.penalty_grace;
- reason = "penalty: exceeded LoginGraceTime";
- break;
- default:
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0006-regenerate-configure-config.h.in.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0006-regenerate-configure-config.h.in.patch
deleted file mode 100644
index 8ba648a421..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0006-regenerate-configure-config.h.in.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From 7d5b6c7ec3c597a6d57f64d0db925142bccd38a3 Mon Sep 17 00:00:00 2001
-Message-ID: <7d5b6c7ec3c597a6d57f64d0db925142bccd38a3.1758727915.git.sam@gentoo.org>
-In-Reply-To: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-References: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-From: Damien Miller
-Date: Mon, 3 Mar 2025 14:21:12 +1100
-Subject: [PATCH 06/10] regenerate configure, config.h.in
-
----
- config.h.in | 3 +++
- configure | 35 ++++++++++++++++++++++++++++++++++-
- 2 files changed, 37 insertions(+), 1 deletion(-)
-
-diff --git a/config.h.in b/config.h.in
-index c841417f4..57f63355b 100644
---- a/config.h.in
-+++ b/config.h.in
-@@ -1748,6 +1748,9 @@
- /* Set this to your mail directory if you do not have _PATH_MAILDIR */
- #undef MAIL_DIRECTORY
-
-+/* Define if your compiler lacks __builtin_popcount */
-+#undef MISSING_BUILTIN_POPCOUNT
-+
- /* Need setpgrp to for controlling tty */
- #undef NEED_SETPGRP
-
-diff --git a/configure b/configure
-index ec1de26c2..a18079da2 100755
---- a/configure
-+++ b/configure
-@@ -16785,6 +16785,40 @@ then :
- fi
-
-
-+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether compiler supports __builtin_popcount" >&5
-+printf %s "checking whether compiler supports __builtin_popcount... " >&6; }
-+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+
-+ #include
-+
-+int
-+main (void)
-+{
-+ int x = 123, y;
-+ y = __builtin_popcount(123);
-+ exit(y == 6 ? 0 : -1);
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+if ac_fn_c_try_link "$LINENO"
-+then :
-+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-+printf "%s\n" "yes" >&6; }
-+else $as_nop
-+
-+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
-+printf "%s\n" "no" >&6; }
-+
-+printf "%s\n" "#define MISSING_BUILTIN_POPCOUNT 1" >>confdefs.h
-+
-+
-+
-+fi
-+rm -f core conftest.err conftest.$ac_objext conftest.beam \
-+ conftest$ac_exeext conftest.$ac_ext
-+
- ac_fn_check_decl "$LINENO" "bzero" "ac_cv_have_decl_bzero" "$ac_includes_default" "$ac_c_undeclared_builtin_options" "CFLAGS"
- if test "x$ac_cv_have_decl_bzero" = xyes
- then :
-@@ -27769,4 +27803,3 @@ if test "$AUDIT_MODULE" = "bsm" ; then
- echo "WARNING: BSM audit support is currently considered EXPERIMENTAL."
- echo "See the Solaris section in README.platform for details."
- fi
--
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0007-upstream-Prime-caches-for-DNS-names-needed-for-tests.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0007-upstream-Prime-caches-for-DNS-names-needed-for-tests.patch
deleted file mode 100644
index 45ae5eb784..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0007-upstream-Prime-caches-for-DNS-names-needed-for-tests.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From be8026caf9da985638c762c353c397c0922be233 Mon Sep 17 00:00:00 2001
-Message-ID:
-In-Reply-To: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-References: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-From: "dtucker@openbsd.org"
-Date: Tue, 11 Mar 2025 11:46:44 +0000
-Subject: [PATCH 07/10] upstream: Prime caches for DNS names needed for tests.
-
-When running the SSHFP tests, particularly on an ephemeral VM, the first
-query or two can fail for some reason, presumably because something isn't
-fully initialized or something. To work around this, issue queries for the
-names we'll need before we need them.
-
-OpenBSD-Regress-ID: 900841133540e7dead253407db5a874a6ed09eca
----
- regress/sshfp-connect.sh | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/regress/sshfp-connect.sh b/regress/sshfp-connect.sh
-index f78646922..3c73a35d0 100644
---- a/regress/sshfp-connect.sh
-+++ b/regress/sshfp-connect.sh
-@@ -1,4 +1,4 @@
--# $OpenBSD: sshfp-connect.sh,v 1.4 2021/09/01 00:50:27 dtucker Exp $
-+# $OpenBSD: sshfp-connect.sh,v 1.5 2025/03/11 11:46:44 dtucker Exp $
- # Placed in the Public Domain.
-
- # This test requires external setup and thus is skipped unless
-@@ -29,6 +29,12 @@ if ! $SSH -Q key-plain | grep ssh-rsa >/dev/null; then
- elif [ -z "${TEST_SSH_SSHFP_DOMAIN}" ]; then
- skip "TEST_SSH_SSHFP_DOMAIN not set."
- else
-+ # Prime any DNS caches and resolvers.
-+ for i in sshtest sshtest-sha1 sshtest-sha256; do
-+ host -t sshfp ${i}.${TEST_SSH_SSHFP_DOMAIN} >/dev/null 2>&1
-+ host -t sshfp ${i}-bad.${TEST_SSH_SSHFP_DOMAIN} >/dev/null 2>&1
-+ done
-+
- # Set RSA host key to match fingerprints above.
- mv $OBJ/sshd_proxy $OBJ/sshd_proxy.orig
- $SUDO cp $SRC/rsa_openssh.prv $OBJ/host.ssh-rsa
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0008-MacOS-12-runners-are-deprecated-replace-with-15.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0008-MacOS-12-runners-are-deprecated-replace-with-15.patch
deleted file mode 100644
index f66f88bba7..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0008-MacOS-12-runners-are-deprecated-replace-with-15.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From aab12549a939d07f638df486f910544c6b11b972 Mon Sep 17 00:00:00 2001
-Message-ID:
-In-Reply-To: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-References: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-From: Darren Tucker
-Date: Thu, 17 Oct 2024 19:18:23 +1100
-Subject: [PATCH 08/10] MacOS 12 runners are deprecated, replace with 15.
-
----
- .github/workflows/c-cpp.yml | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/.github/workflows/c-cpp.yml b/.github/workflows/c-cpp.yml
-index c179f73d1..c49aa5ee8 100644
---- a/.github/workflows/c-cpp.yml
-+++ b/.github/workflows/c-cpp.yml
-@@ -17,9 +17,9 @@ jobs:
- target:
- - ubuntu-20.04
- - ubuntu-22.04
-- - macos-12
- - macos-13
- - macos-14
-+ - macos-15
- - windows-2019
- - windows-2022
- config: [default]
-@@ -100,9 +100,9 @@ jobs:
- - { target: ubuntu-22.04, config: selinux }
- - { target: ubuntu-22.04, config: kitchensink }
- - { target: ubuntu-22.04, config: without-openssl }
-- - { target: macos-12, config: pam }
- - { target: macos-13, config: pam }
- - { target: macos-14, config: pam }
-+ - { target: macos-15, config: pam }
- runs-on: ${{ matrix.target }}
- steps:
- - name: set cygwin git params
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0009-upstream-Remove-redundant-field-of-definition-check.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0009-upstream-Remove-redundant-field-of-definition-check.patch
deleted file mode 100644
index 0daf93d329..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0009-upstream-Remove-redundant-field-of-definition-check.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 8e4bd6ebdbde0ff22e0c1c1f1a134ef255af7595 Mon Sep 17 00:00:00 2001
-Message-ID: <8e4bd6ebdbde0ff22e0c1c1f1a134ef255af7595.1758727915.git.sam@gentoo.org>
-In-Reply-To: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-References: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-From: "tb@openbsd.org"
-Date: Tue, 3 Dec 2024 15:53:51 +0000
-Subject: [PATCH 09/10] upstream: Remove redundant field of definition check
-
-This will allow us to get rid of EC_GROUP_method_of() in the near future.
-
-ok djm
-
-OpenBSD-Commit-ID: b4a3d2e00990cf5c2ec6881c21ddca67327c2df8
----
- sshkey.c | 13 -------------
- 1 file changed, 13 deletions(-)
-
-diff --git a/sshkey.c b/sshkey.c
-index 1db83788d..44be674d1 100644
---- a/sshkey.c
-+++ b/sshkey.c
-@@ -2708,14 +2708,6 @@ sshkey_ec_validate_public(const EC_GROUP *group, const EC_POINT *public)
- * EC_POINT_oct2point then the caller will need to explicitly check.
- */
-
-- /*
-- * We shouldn't ever hit this case because bignum_get_ecpoint()
-- * refuses to load GF2m points.
-- */
-- if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) !=
-- NID_X9_62_prime_field)
-- goto out;
--
- /* Q != infinity */
- if (EC_POINT_is_at_infinity(group, public))
- goto out;
-@@ -2815,11 +2807,6 @@ sshkey_dump_ec_point(const EC_GROUP *group, const EC_POINT *point)
- fprintf(stderr, "%s: BN_new failed\n", __func__);
- goto out;
- }
-- if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) !=
-- NID_X9_62_prime_field) {
-- fprintf(stderr, "%s: group is not a prime field\n", __func__);
-- goto out;
-- }
- if (EC_POINT_get_affine_coordinates_GFp(group, point,
- x, y, NULL) != 1) {
- fprintf(stderr, "%s: EC_POINT_get_affine_coordinates_GFp\n",
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0010-upstream-Check-if-dbclient-supports-SHA1-before-tryi.patch b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0010-upstream-Check-if-dbclient-supports-SHA1-before-tryi.patch
deleted file mode 100644
index 11cd63dfe7..0000000000
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/9.9_p2/0010-upstream-Check-if-dbclient-supports-SHA1-before-tryi.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 3eeda15eb9d3b9f2fd762ba3493ba88abe6bbcd9 Mon Sep 17 00:00:00 2001
-Message-ID: <3eeda15eb9d3b9f2fd762ba3493ba88abe6bbcd9.1758727915.git.sam@gentoo.org>
-In-Reply-To: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-References: <4b8d141ec165aa29a48316768089cb03aed3aada.1758727915.git.sam@gentoo.org>
-From: "dtucker@openbsd.org"
-Date: Tue, 11 Mar 2025 07:42:08 +0000
-Subject: [PATCH 10/10] upstream: Check if dbclient supports SHA1 before trying
- SHA1-based
-
-KEX.
-
-Dropbear 2025.87 removed SHA1 support by default, which means
-diffie-hellman-group14-sha1 is not available. Unfortunately there isn't a
-flag to query supported KEX, so instead check MACs and if it doesn't have
-SHA1 methods, assuming SHA1 based KEXes are likewise not available. Spotted
-by anton@.
-
-OpenBSD-Regress-ID: acfa8e26c001cb18b9fb81a27271c3b51288d304
----
- regress/dropbear-kex.sh | 17 ++++++++++++-----
- 1 file changed, 12 insertions(+), 5 deletions(-)
-
-diff --git a/regress/dropbear-kex.sh b/regress/dropbear-kex.sh
-index d9f1b32c0..72717fbb7 100644
---- a/regress/dropbear-kex.sh
-+++ b/regress/dropbear-kex.sh
-@@ -1,4 +1,4 @@
--# $OpenBSD: dropbear-kex.sh,v 1.3 2024/06/19 10:10:46 dtucker Exp $
-+# $OpenBSD: dropbear-kex.sh,v 1.4 2025/03/11 07:42:08 dtucker Exp $
- # Placed in the Public Domain.
-
- tid="dropbear kex"
-@@ -10,8 +10,14 @@ fi
- cp $OBJ/sshd_proxy $OBJ/sshd_proxy.bak
-
- kex="curve25519-sha256 curve25519-sha256@libssh.org"
--if $SSH -Q kex | grep 'diffie-hellman-group14-sha1'; then
-- kex="$kex diffie-hellman-group14-sha256 diffie-hellman-group14-sha1"
-+if $SSH -Q kex | grep 'diffie-hellman-group14-sha256' >/dev/null; then
-+ kex="$kex diffie-hellman-group14-sha256"
-+fi
-+# There's no flag to query KEX, so if MACs does not contain SHA1, assume
-+# there's also SHA1-based KEX methods either.
-+if $SSH -Q kex | grep 'diffie-hellman-group14-sha1' >/dev/null && \
-+ $DBCLIENT -m help hst 2>&1 | grep -- '-sha1' >/dev/null ; then
-+ kex="$kex diffie-hellman-group14-sha1"
- fi
-
- for k in $kex; do
-@@ -19,8 +25,9 @@ for k in $kex; do
- rm -f ${COPY}
- # dbclient doesn't have switch for kex, so force in server
- (cat $OBJ/sshd_proxy.bak; echo "KexAlgorithms $k") >$OBJ/sshd_proxy
-- env HOME=$OBJ dbclient -y -i $OBJ/.dropbear/id_ed25519 2>$OBJ/dbclient.log \
-- -J "$OBJ/ssh_proxy.sh" somehost cat ${DATA} > ${COPY}
-+ env HOME=$OBJ \
-+ ${DBCLIENT} -y -i $OBJ/.dropbear/id_ed25519 2>$OBJ/dbclient.log \
-+ -J "$OBJ/ssh_proxy.sh" somehost cat ${DATA} > ${COPY}
- if [ $? -ne 0 ]; then
- fail "ssh cat $DATA failed"
- fi
---
-2.51.0
-
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/sshd-r2.confd b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/sshd-r2.confd
new file mode 100644
index 0000000000..73e5f1015a
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/sshd-r2.confd
@@ -0,0 +1,38 @@
+# /etc/conf.d/sshd: config file for /etc/init.d/sshd
+
+# Where is your sshd_config file stored?
+
+SSHD_CONFDIR="${RC_PREFIX%/}/etc/ssh"
+
+
+# Any random options you want to pass to sshd.
+# See the sshd(8) manpage for more info.
+
+SSHD_OPTS=""
+
+
+# Wait one second (length chosen arbitrarily) to see if sshd actually
+# creates a PID file, or if it crashes for some reason like not being
+# able to bind to the address in ListenAddress.
+
+#SSHD_SSD_OPTS="--wait 1000"
+
+
+# Pid file to use (needs to be absolute path).
+
+#SSHD_PIDFILE="${RC_PREFIX%/}/run/sshd.pid"
+
+
+# Path to the sshd binary (needs to be absolute path).
+
+#SSHD_BINARY="${RC_PREFIX%/}/usr/sbin/sshd"
+
+
+# Path to the ssh-keygen binary (needs to be absolute path).
+
+#SSHD_KEYGEN_BINARY="${RC_PREFIX%/}/usr/bin/ssh-keygen"
+
+
+# May be needed if ListenAddress is used to ensure that the interface
+# has been configured.
+#rc_need="net.eth0"
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/sshd-r2.initd b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/sshd-r2.initd
new file mode 100644
index 0000000000..f3b72e36c4
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/net-misc/openssh/files/sshd-r2.initd
@@ -0,0 +1,68 @@
+#!/sbin/openrc-run
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+extra_commands="checkconfig"
+extra_started_commands="reload"
+
+: ${SSHD_CONFDIR:=${RC_PREFIX%/}/etc/ssh}
+: ${SSHD_CONFIG:=${SSHD_CONFDIR}/sshd_config}
+: ${SSHD_PIDFILE:=${RC_PREFIX%/}/run/${SVCNAME}.pid}
+: ${SSHD_BINARY:=${RC_PREFIX%/}/usr/sbin/sshd}
+: ${SSHD_KEYGEN_BINARY:=${RC_PREFIX%/}/usr/bin/ssh-keygen}
+
+command="${SSHD_BINARY}"
+pidfile="${SSHD_PIDFILE}"
+command_args="${SSHD_OPTS} -o PidFile=${pidfile} -f ${SSHD_CONFIG}"
+
+# Wait one second (length chosen arbitrarily) to see if sshd actually
+# creates a PID file, or if it crashes for some reason like not being
+# able to bind to the address in ListenAddress (bug 617596).
+: ${SSHD_SSD_OPTS:=--wait 1000}
+start_stop_daemon_args="${SSHD_SSD_OPTS}"
+
+depend() {
+ # Entropy can be used by ssh-keygen, among other things, but
+ # is not strictly required (bug 470020).
+ use logger dns entropy
+}
+
+checkconfig() {
+ checkpath --mode 0755 --directory "${RC_PREFIX%/}/var/empty"
+
+ if [ ! -e "${SSHD_CONFIG}" ] ; then
+ eerror "You need an ${SSHD_CONFIG} file to run sshd"
+ eerror "There is a sample file in /usr/share/doc/openssh"
+ return 1
+ fi
+
+ ${SSHD_KEYGEN_BINARY} -A || return 2
+
+ "${command}" -t ${command_args} || return 3
+}
+
+start_pre() {
+ # Make sure that the user's config isn't busted before we try
+ # to start the daemon (this will produce better error messages
+ # than if we just try to start it blindly).
+ #
+ # We always need to call checkconfig because this function will
+ # also generate any missing host key and you can start a
+ # non-running service with "restart" argument.
+ checkconfig || return $?
+}
+
+stop_pre() {
+ # If this is a restart, check to make sure the user's config
+ # isn't busted before we stop the running daemon.
+ if [ "${RC_CMD}" = "restart" ] ; then
+ checkconfig || return $?
+ fi
+}
+
+reload() {
+ checkconfig || return $?
+ ebegin "Reloading ${SVCNAME}"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ eend $?
+}
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-10.2_p1-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-10.2_p1-r1.ebuild
new file mode 100644
index 0000000000..6c8c41c89c
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-10.2_p1-r1.ebuild
@@ -0,0 +1,437 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Remember to check the upstream release/stable branches for patches
+# to backport! See https://marc.info/?l=openssh-unix-dev&m=172723798122122&w=2.
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/openssh.org.asc
+inherit user-info flag-o-matic autotools optfeature pam systemd toolchain-funcs verify-sig eapi9-ver
+
+# Make it more portable between straight releases
+# and _p? releases.
+PARCH=${P/_}
+
+DESCRIPTION="Port of OpenBSD's free SSH release"
+HOMEPAGE="https://www.openssh.com/"
+SRC_URI="
+ mirror://openbsd/OpenSSH/portable/${PARCH}.tar.gz
+ verify-sig? ( mirror://openbsd/OpenSSH/portable/${PARCH}.tar.gz.asc )
+"
+S="${WORKDIR}/${PARCH}"
+
+LICENSE="BSD GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+# Probably want to drop ssl defaulting to on in a future version.
+IUSE="abi_mips_n32 audit debug kerberos ldns libedit livecd pam security-key selinux +ssl static test"
+
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="
+ ldns? ( ssl )
+ static? ( !kerberos !pam )
+ test? ( ssl )
+"
+
+LIB_DEPEND="
+ audit? ( sys-process/audit[static-libs(+)] )
+ ldns? (
+ net-libs/ldns[static-libs(+)]
+ net-libs/ldns[ecdsa(+),ssl(+)]
+ )
+ libedit? ( dev-libs/libedit:=[static-libs(+)] )
+ security-key? ( >=dev-libs/libfido2-1.5.0:=[static-libs(+)] )
+ selinux? ( >=sys-libs/libselinux-1.28[static-libs(+)] )
+ ssl? ( >=dev-libs/openssl-1.1.1l-r1:0=[static-libs(+)] )
+ virtual/libcrypt:=[static-libs(+)]
+ >=virtual/zlib-1.2.3:=[static-libs(+)]
+"
+RDEPEND="
+ acct-group/sshd
+ acct-user/sshd
+ !static? ( ${LIB_DEPEND//\[static-libs(+)]} )
+ pam? ( sys-libs/pam )
+ kerberos? ( virtual/krb5 )
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/os-headers
+ kernel_linux? ( !prefix-guest? ( >=sys-kernel/linux-headers-5.1 ) )
+ static? ( ${LIB_DEPEND} )
+"
+RDEPEND="
+ ${RDEPEND}
+ !net-misc/openssh-contrib
+ pam? ( >=sys-auth/pambase-20081028 )
+ !prefix? ( sys-apps/shadow )
+"
+BDEPEND="
+ dev-build/autoconf
+ virtual/pkgconfig
+ verify-sig? ( sec-keys/openpgp-keys-openssh )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-9.4_p1-Allow-MAP_NORESERVE-in-sandbox-seccomp-filter-maps.patch"
+ "${FILESDIR}/${PN}-9.7_p1-config-tweaks.patch"
+ # Backports from upstream release branch
+ #"${FILESDIR}/${PV}"
+ # Our own backports
+)
+
+pkg_pretend() {
+ local i enabled_eol_flags disabled_eol_flags
+ for i in hpn sctp X509; do
+ if has_version "net-misc/openssh[${i}]"; then
+ enabled_eol_flags+="${i},"
+ disabled_eol_flags+="-${i},"
+ fi
+ done
+
+ if [[ -n ${enabled_eol_flags} && ${OPENSSH_EOL_USE_FLAGS_I_KNOW_WHAT_I_AM_DOING} != yes ]]; then
+ # Skip for binary packages entirely because of environment saving, bug #907892
+ [[ ${MERGE_TYPE} == binary ]] && return
+
+ ewarn "net-misc/openssh does not support USE='${enabled_eol_flags%,}' anymore."
+ ewarn "The Base system team *STRONGLY* recommends you not rely on this functionality,"
+ ewarn "since these USE flags required third-party patches that often trigger bugs"
+ ewarn "and are of questionable provenance."
+ ewarn
+ ewarn "If you must continue relying on this functionality, switch to"
+ ewarn "net-misc/openssh-contrib. You will have to remove net-misc/openssh from your"
+ ewarn "world file first: 'emerge --deselect net-misc/openssh'"
+ ewarn
+ ewarn "In order to prevent loss of SSH remote login access, we will abort the build."
+ ewarn "Whether you proceed with disabling the USE flags or switch to the -contrib"
+ ewarn "variant, when re-emerging you will have to set"
+ ewarn
+ ewarn " OPENSSH_EOL_USE_FLAGS_I_KNOW_WHAT_I_AM_DOING=yes"
+
+ die "Building net-misc/openssh[${disabled_eol_flags%,}] without OPENSSH_EOL_USE_FLAGS_I_KNOW_WHAT_I_AM_DOING=yes"
+ fi
+
+ # Make sure people who are using tcp wrappers are notified of its removal. #531156
+ if grep -qs '^ *sshd *:' "${EROOT}"/etc/hosts.{allow,deny} ; then
+ ewarn "Sorry, but openssh no longer supports tcp-wrappers, and it seems like"
+ ewarn "you're trying to use it. Update your ${EROOT}/etc/hosts.{allow,deny} please."
+ fi
+}
+
+src_prepare() {
+ # don't break .ssh/authorized_keys2 for fun
+ sed -i '/^AuthorizedKeysFile/s:^:#:' sshd_config || die
+
+ [[ -d ${WORKDIR}/patches ]] && PATCHES+=( "${WORKDIR}"/patches )
+
+ default
+
+ # These tests are currently incompatible with PORTAGE_TMPDIR/sandbox
+ sed -e '/\t\tpercent \\/ d' \
+ -i regress/Makefile || die
+
+ tc-export PKG_CONFIG
+ local sed_args=(
+ -e "s:-lcrypto:$(${PKG_CONFIG} --libs openssl):"
+ # Disable fortify flags ... our gcc does this for us
+ -e 's:-D_FORTIFY_SOURCE=2::'
+ )
+
+ # _XOPEN_SOURCE causes header conflicts on Solaris
+ [[ ${CHOST} == *-solaris* ]] && sed_args+=(
+ -e 's/-D_XOPEN_SOURCE//'
+ )
+ sed -i "${sed_args[@]}" configure{.ac,} || die
+
+ eautoreconf
+}
+
+src_configure() {
+ addwrite /dev/ptmx
+
+ use debug && append-cppflags -DSANDBOX_SECCOMP_FILTER_DEBUG
+ use static && append-ldflags -static
+
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ # Solaris' glob.h doesn't have things like GLOB_TILDE, configure
+ # doesn't check for this, so force the replacement to be put in
+ # place
+ append-cppflags -DBROKEN_GLOB
+ fi
+
+ # use replacement, RPF_ECHO_ON doesn't exist here
+ [[ ${CHOST} == *-darwin* ]] && export ac_cv_func_readpassphrase=no
+
+ local myconf=(
+ --with-ldflags="${LDFLAGS}"
+ --disable-strip
+ --with-pid-dir="${EPREFIX}"$(usex kernel_linux '' '/var')/run
+ --sysconfdir="${EPREFIX}"/etc/ssh
+ --libexecdir="${EPREFIX}"/usr/$(get_libdir)/misc
+ --datadir="${EPREFIX}"/usr/share/openssh
+ --with-privsep-path="${EPREFIX}"/var/empty
+ --with-privsep-user=sshd
+ # optional at runtime; guarantee a known path
+ --with-xauth="${EPREFIX}"/usr/bin/xauth
+
+ # --with-hardening adds the following in addition to flags we
+ # already set in our toolchain:
+ # * -ftrapv (which is broken with GCC anyway),
+ # * -ftrivial-auto-var-init=zero (which is nice, but not the end of
+ # the world to not have)
+ # * -fzero-call-used-regs=used (history of miscompilations with
+ # Clang (bug #872548), ICEs on m68k (bug #920350, gcc PR113086,
+ # gcc PR104820, gcc PR104817, gcc PR110934)).
+ #
+ # Furthermore, OSSH_CHECK_CFLAG_COMPILE did not use AC_CACHE_CHECK
+ # until 10.1_p1, so we couldn't disable -fzero-call-used-regs=used.
+ #
+ # Therefore, just pass --without-hardening, given it doesn't negate
+ # our already hardened toolchain defaults, and avoids adding flags
+ # which are known-broken in both Clang and GCC and haven't been
+ # proven reliable.
+ --without-hardening
+ --without-pie
+ --without-stackprotect
+
+ # wtmpdb not yet packaged
+ --without-wtmpdb
+
+ $(use_with audit audit linux)
+ $(use_with kerberos kerberos5 "${EPREFIX}"/usr)
+ $(use_with ldns)
+ $(use_with libedit)
+ $(use_with pam)
+ $(use_with selinux)
+ $(use_with security-key security-key-builtin)
+ $(use_with ssl openssl)
+ $(use_with ssl ssl-engine)
+ )
+
+ if use elibc_musl; then
+ # musl defines bogus values for UTMP_FILE and WTMP_FILE (bug #753230)
+ myconf+=( --disable-utmp --disable-wtmp )
+ fi
+
+ econf "${myconf[@]}"
+}
+
+create_config_dropins() {
+ local locale_vars=(
+ # These are language variables that POSIX defines.
+ # http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html#tag_08_02
+ LANG LC_ALL LC_COLLATE LC_CTYPE LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME
+
+ # These are the GNU extensions.
+ # https://www.gnu.org/software/autoconf/manual/html_node/Special-Shell-Variables.html
+ LANGUAGE LC_ADDRESS LC_IDENTIFICATION LC_MEASUREMENT LC_NAME LC_PAPER LC_TELEPHONE
+ )
+
+ mkdir -p "${WORKDIR}"/etc/ssh/ssh{,d}_config.d || die
+
+ cat <<-EOF > "${WORKDIR}"/etc/ssh/ssh_config.d/9999999gentoo.conf || die
+ # Send locale environment variables (bug #367017)
+ SendEnv ${locale_vars[*]}
+
+ # Send COLORTERM to match TERM (bug #658540)
+ SendEnv COLORTERM
+ EOF
+
+ cat <<-EOF > "${WORKDIR}"/etc/ssh/ssh_config.d/9999999gentoo-security.conf || die
+ RevokedHostKeys "${EPREFIX}/etc/ssh/ssh_revoked_hosts"
+ EOF
+
+ cat <<-EOF > "${WORKDIR}"/etc/ssh/ssh_revoked_hosts || die
+ # https://github.blog/2023-03-23-we-updated-our-rsa-ssh-host-key/
+ ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
+ EOF
+
+ cat <<-EOF > "${WORKDIR}"/etc/ssh/sshd_config.d/9999999gentoo.conf || die
+ # Allow client to pass locale environment variables (bug #367017)
+ AcceptEnv ${locale_vars[*]}
+
+ # Allow client to pass COLORTERM to match TERM (bug #658540)
+ AcceptEnv COLORTERM
+ EOF
+
+ cat <<-EOF > "${WORKDIR}"/etc/ssh/sshd_config.d/9999999gentoo-subsystem.conf || die
+ # override default of no subsystems
+ Subsystem sftp ${EPREFIX}/usr/$(get_libdir)/misc/sftp-server
+ EOF
+
+ if use pam ; then
+ cat <<-EOF > "${WORKDIR}"/etc/ssh/sshd_config.d/9999999gentoo-pam.conf || die
+ UsePAM yes
+ # This interferes with PAM.
+ PasswordAuthentication no
+ # PAM can do its own handling of MOTD.
+ PrintMotd no
+ PrintLastLog no
+ EOF
+ fi
+
+ if use livecd ; then
+ cat <<-EOF > "${WORKDIR}"/etc/ssh/sshd_config.d/9999999gentoo-livecd.conf || die
+ # Allow root login with password on livecds.
+ PermitRootLogin Yes
+ EOF
+ fi
+}
+
+src_compile() {
+ default
+ create_config_dropins
+}
+
+src_test() {
+ local tests=( compat-tests )
+ local shell=$(egetshell "${UID}")
+ if [[ ${shell} == */nologin ]] || [[ ${shell} == */false ]] ; then
+ ewarn "Running the full OpenSSH testsuite requires a usable shell for the 'portage'"
+ ewarn "user, so we will run a subset only."
+ tests+=( interop-tests file-tests unit )
+ else
+ tests+=( tests )
+ fi
+
+ local -x SUDO= SSH_SK_PROVIDER= TEST_SSH_UNSAFE_PERMISSIONS=1
+ mkdir -p "${HOME}"/.ssh || die
+ emake -j1 "${tests[@]}" /dev/null 2>&1; then
+ ewarn "The ebuild will now attempt to restart OpenSSH to avoid"
+ ewarn "bricking the running instance. See bug #709748."
+ ebegin "Attempting to restart openssh via 'systemctl try-restart sshd'"
+ systemctl try-restart sshd
+ eend $?
+ elif [[ -d /run/openrc ]]; then
+ # We don't check for sshd -t here because the OpenRC init script
+ # has a stop_pre() which does checkconfig, i.e. we defer to it
+ # to give nicer output for a failed sanity check.
+ ewarn "The ebuild will now attempt to restart OpenSSH to avoid"
+ ewarn "bricking the running instance. See bug #709748."
+ ebegin "Attempting to restart openssh via 'rc-service -q --ifstarted --nodeps sshd restart'"
+ rc-service -q --ifstarted --nodeps sshd restart
+ eend $?
+ fi
+}
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.8_p1-r4.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.8_p1-r4.ebuild
index 37ba4097aa..8887ac5f48 100644
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.8_p1-r4.ebuild
+++ b/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.8_p1-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -15,6 +15,7 @@ HOMEPAGE="https://www.openssh.com/"
SRC_URI="
mirror://openbsd/OpenSSH/portable/${PARCH}.tar.gz
verify-sig? ( mirror://openbsd/OpenSSH/portable/${PARCH}.tar.gz.asc )
+ https://dev.gentoo.org/~floppym/dist/${P}-backports.tar.gz
"
S="${WORKDIR}/${PARCH}"
@@ -81,7 +82,7 @@ PATCHES=(
"${FILESDIR}/${PN}-9.7_p1-config-tweaks.patch"
"${FILESDIR}/${PN}-9.8_p1-inetd.patch"
# Backports from upstream release branch
- "${FILESDIR}/${PV}"
+ "${WORKDIR}/${P}-backports"
)
pkg_pretend() {
diff --git a/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.9_p2-r4.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.9_p2-r4.ebuild
index c4f8dd7c96..cf39868827 100644
--- a/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.9_p2-r4.ebuild
+++ b/sdk_container/src/third_party/portage-stable/net-misc/openssh/openssh-9.9_p2-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -18,6 +18,7 @@ HOMEPAGE="https://www.openssh.com/"
SRC_URI="
mirror://openbsd/OpenSSH/portable/${PARCH}.tar.gz
verify-sig? ( mirror://openbsd/OpenSSH/portable/${PARCH}.tar.gz.asc )
+ https://dev.gentoo.org/~floppym/dist/${P}-backports.tar.gz
"
S="${WORKDIR}/${PARCH}"
@@ -83,7 +84,7 @@ PATCHES=(
"${FILESDIR}/${PN}-9.6_p1-fix-xmss-c99.patch"
"${FILESDIR}/${PN}-9.7_p1-config-tweaks.patch"
# Backports from upstream release branch
- "${FILESDIR}/${PV}"
+ "${WORKDIR}/${P}-backports"
# Our own backports
"${FILESDIR}/${PN}-9.9_p1-x-forwarding-slow.patch"
)
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask
index e674454f34..31fa93e227 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask
@@ -17,6 +17,10 @@
#--- END OF EXAMPLES ---
+# Michał Górny (2026-03-03)
+# OpenMP offloading GPU runtimes are not keyworded everywhre.
+llvm-runtimes/clang-runtime -llvm_targets_AMDGPU -llvm_targets_NVPTX
+
# Ionen Wolkens (2026-02-11)
# net-libs/librist is available here
media-video/ffmpeg -rist
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask
index ecabb6fe99..fdac31d54d 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask
@@ -1,6 +1,10 @@
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Michał Górny (2026-03-03)
+# OpenMP offloading GPU runtimes are not keyworded everywhre.
+llvm-runtimes/clang-runtime llvm_targets_AMDGPU llvm_targets_NVPTX
+
# Ionen Wolkens (2026-02-11)
# net-libs/librist currently has very few keywords
media-video/ffmpeg rist
diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.mask
index dcbae565c2..0e868f3db3 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.mask
@@ -1,6 +1,11 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Ionen Wolkens (2026-03-03)
+# This version fails to build on sparc (bug #970872), hoping
+# will be fixed in 1.12.7.
+~dev-util/maturin-1.12.6
+
# matoro (2024-06-11)
# Extensive use of unaligned access, no plans to fix, #636552
# https://github.com/memcached/memcached/issues/902
diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/amdgpu_targets.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/amdgpu_targets.desc
index ee4029f1dc..5e11de011d 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/desc/amdgpu_targets.desc
+++ b/sdk_container/src/third_party/portage-stable/profiles/desc/amdgpu_targets.desc
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors.
+# Copyright 1999-2026 Gentoo Authors.
# Distributed under the terms of the GNU General Public License v2
# Reference: GPU name and architecture codename documented by
@@ -20,13 +20,15 @@ gfx950 - CDNA4 Accelerator, including AMD Instinct MI350X and MI355X
gfx1010 - RDNA GPU, codename navi10, including Radeon RX 5700XT/5700/5700M/5700B/5700XTB/5600XT/5600/5600M, Radeon Pro 5700XT/5700, Radeon Pro W5700X/W5700
gfx1011 - RDNA GPU, codename navi12, including Radeon Pro 5600M/V520
gfx1012 - RDNA GPU, codename navi14, including Radeon RX 5500XT/5500/5500M/5500XTB/5300/5300M, Radeon Pro 5500XT/5500M/5300/5300M, Radeon Pro W5500X/W5500/W5500M/W5300M
-gfx1030 - RDNA2 GPU, codename navi21/sienna cichlid, including Radeon RX 6950XT/6900XT/6800XT/6800, Radeon Pro W6800
+gfx1030 - RDNA2 GPU, codename navi21/sienna cichlid, including Radeon RX 6950XT/6900XT/6800XT/6800, Radeon Pro W6800/V620
gfx1031 - RDNA2 GPU, codename navi22/navy flounder, including Radeon RX 6750XT/6700XT/6800M/6700M
-gfx1100 - RDNA3 GPU, codename navi31/plum bonito, including Radeon RX 7900XTX/7900XT, AMD Radeon Pro W7900/W7800
-gfx1101 - RDNA3 GPU, codename navi32, including Radeon RX 7700XT/7800XT
-gfx1102 - RDNA3 GPU, codename navi33, including Radeon RX 7600/7600M/7600M XT/7700S/7600S, AMD Radeon PRO W7600/W7500
+gfx1100 - RDNA3 GPU, codename navi31/plum bonito, including Radeon RX 7900 XTX/XT/GRE, AMD Radeon Pro W7900/W7800
+gfx1101 - RDNA3 GPU, codename navi32, including Radeon RX 7700XT/7800XT, AMD Radeon PRO W7700/V710
+gfx1102 - RDNA3 GPU, codename navi33, including Radeon RX 7400/7600/7600M/7600M XT/7700S/7600S, AMD Radeon PRO W7600/W7500
gfx1103 - RDNA3 APU, codename navi3x, including Radeon 700M/780M
gfx1150 - RDNA 3.5 APU (Strix Point), including Radeon 890M
gfx1151 - RDNA 3.5 APU (Strix Halo), including Radeon 8060S
-gfx1200 - RDNA4 GPU, codename navi44, including Radeon RX 9060XT
-gfx1201 - RDNA4 GPU, codename navi48, including Radeon RX 9070/9070XT/9070GRE and Radeon AI PRO R9700
+gfx1152 - RDNA 3.5 APU (Krackan Point), including Radeon 860M/840M
+gfx1153 - RDNA 3.5 APU, including Radeon 820M
+gfx1200 - RDNA4 GPU, codename navi44, including Radeon RX 9060XT/9060XT LP
+gfx1201 - RDNA4 GPU, codename navi48, including Radeon RX 9070/9070XT/9070GRE and Radeon AI PRO R9600D/R9700
diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask
index 126613761d..575d675bcd 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask
@@ -1,6 +1,10 @@
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Alexey Sokolov (2026-03-02)
+# Rewritten in Rust.
+>=dev-util/bear-4
+
# Michał Górny (2025-01-27)
# google-auth now unconditionally requires cryptography.
dev-python/google-api-core
@@ -64,6 +68,7 @@ dev-python/sphinxcontrib-doxylink
>=dev-python/sphinxcontrib-httpdomain-2.0
dev-python/sybil
dev-python/testfixtures
+dev-python/toml-fmt-common
dev-python/uv-build
dev-python/zmq-anyio
net-analyzer/fail2ban
diff --git a/sdk_container/src/third_party/portage-stable/profiles/package.mask b/sdk_container/src/third_party/portage-stable/profiles/package.mask
index bdee1090c0..dfd1733d31 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/package.mask
+++ b/sdk_container/src/third_party/portage-stable/profiles/package.mask
@@ -36,6 +36,11 @@
#--- END OF EXAMPLES ---
+# Alfredo Tupone (2026-03-05)
+# Need more testing
+>=dev-lang/tcl-9
+>=dev-lang/tk-9
+
# Michał Górny (2026-02-28)
# The test suite is broken since 1.16.0 (Nov 2025), and upstream did not
# address the problem so far: https://github.com/pypa/hatch/issues/2123
@@ -204,11 +209,6 @@ net-analyzer/labrea
# issues. Removal on 2026-03-12. Bug #943786.
net-analyzer/echoping
-# Sam James (2026-02-09)
-# Only needed by last-rited hyprland stack. Out-of-date by quite a few
-# versions. Removal on 2026-03-11.
-dev-cpp/glaze
-
# Sam James (2026-02-09)
# This suite of packages is currently best placed in an overlay/external
# repository where users can more easily contribute. The ecosystem moves
@@ -231,15 +231,15 @@ dev-cpp/glaze
#
# Quite out-of-date, many open bugs, and needs several new dependencies.
# Removal on 2026-03-11.
-gui-libs/aquamarine
-gui-libs/hyprutils
-gui-libs/hyprland-qt-support
-gui-libs/hyprcursor
-dev-util/hyprwayland-scanner
-dev-libs/hyprlang
-dev-libs/hyprland-protocols
-dev-libs/hyprgraphics
-gui-wm/hyprland
+<=gui-libs/aquamarine-0.9.3
+<=gui-libs/hyprutils-0.8.4
+<=gui-libs/hyprland-qt-support-0.1.0
+<=gui-libs/hyprcursor-0.1.13
+<=dev-util/hyprwayland-scanner-0.4.5
+<=dev-libs/hyprlang-0.6.4
+<=dev-libs/hyprland-protocols-0.6.4
+<=dev-libs/hyprgraphics-0.1.5
+<=gui-wm/hyprland-0.51.1
# Andreas Sturmlechner (2026-02-09)
# Broken for ages with dev-libs/boost-1.85 but no one except tinderbox
diff --git a/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors b/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors
index 27053a3d1c..4a54041a8d 100644
--- a/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors
+++ b/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors
@@ -11,7 +11,6 @@ goproxy https://proxy.golang.org/ https://goproxy.io/
idsoftware ftp://ftp.fu-berlin.de/pc/games/idgames/idstuff ftp://ftp.gamers.org/pub/idgames/idstuff
imagemagick https://imagemagick.org/archive/releases/ https://mirror.checkdomain.de/imagemagick/releases/ https://ftp.acc.umu.se/mirror/imagemagick.org/ftp/releases/ ftp://ftp.fifi.org/pub/ImageMagick/releases/
kde https://download.kde.org https://mirror.csclub.uwaterloo.ca/kde ftp://mirrors.dotsrc.org/kde https://ftp.gwdg.de/pub/linux/kde https://ftp.mirrorservice.org/sites/ftp.kde.org/pub/kde
-lokigames http://updates.lokigames.com
mariadb https://archive.mariadb.org/ https://ftp.bme.hu/pub/mirrors/mariadb/ https://ftp.nluug.nl/db/mariadb/ https://mirrors.up.pt/pub/mariadb/ https://rsync.osuosl.org/pub/mariadb/ https://mirror.netcologne.de/mariadb/
mplayer https://www1.mplayerhq.hu/MPlayer http://www2.mplayerhq.hu/MPlayer http://www7.mplayerhq.hu/MPlayer http://www8.mplayerhq.hu/MPlayer ftp://ftp1.mplayerhq.hu/MPlayer/ ftp://ftp6.mplayerhq.hu/MPlayer/ ftp://ftp7.mplayerhq.hu/MPlayer/ ftp://ftp8.mplayerhq.hu/MPlayer/
nongnu https://download.savannah.nongnu.org/releases/ https://ftp.cc.uoc.gr/mirrors/nongnu.org/ http://ftp.twaren.net/Unix/NonGNU/ https://mirror.csclub.uwaterloo.ca/nongnu/ ftp://mirror.csclub.uwaterloo.ca/nongnu/ https://mirrors.fe.up.pt/pub/nongnu/ ftp://mirrors.fe.up.pt/pub/nongnu/ https://nongnu.askapache.com/ https://nongnu.uib.no/ ftp://nongnu.uib.no/pub/nongnu/ http://savannah.c3sl.ufpr.br/ ftp://ftp.twaren.net/Unix/NonGNU/
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r1.ebuild
similarity index 99%
rename from sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r1.ebuild
index 95e3022d87..9b1335a913 100644
--- a/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/file/file-5.47-r1.ebuild
@@ -60,6 +60,7 @@ 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"
)
src_prepare() {
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.47-magic.py.patch b/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.47-magic.py.patch
new file mode 100644
index 0000000000..1583873e39
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.47-magic.py.patch
@@ -0,0 +1,48 @@
+https://bugs.gentoo.org/970842
+
+From f70443485d6754b8e4ecb82dae1ec58102ab9dd5 Mon Sep 17 00:00:00 2001
+From: Christos Zoulas
+Date: Tue, 3 Mar 2026 14:55:15 +0000
+Subject: [PATCH] Use self._close Vincent Mihalkovic
+
+---
+ python/magic.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/python/magic.py b/python/magic.py
+index 14938281c6..24c32d2ddf 100644
+--- a/python/magic.py
++++ b/python/magic.py
+@@ -133,8 +133,8 @@ def close(self):
+ """
+ Closes the magic database and deallocates any resources used.
+ """
+- if _close:
+- _close(self._magic_t)
++ if self._close:
++ self._close(self._magic_t)
+
+ @staticmethod
+ def __tostr(s):
+From f8f8745ccc0fac38561ba7a168c7b5638135bcec Mon Sep 17 00:00:00 2001
+From: Christos Zoulas
+Date: Wed, 4 Mar 2026 10:26:12 +0000
+Subject: [PATCH] convert tab to spaces
+
+---
+ python/magic.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/python/magic.py b/python/magic.py
+index 24c32d2dd..1db4a5d01 100644
+--- a/python/magic.py
++++ b/python/magic.py
+@@ -127,7 +127,7 @@ class magic_set(Structure):
+ class Magic(object):
+ def __init__(self, ms):
+ self._magic_t = ms
+- self._close = _close
++ self._close = _close
+
+ def close(self):
+ """
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-Fix-gensub-bug-for-use-with-MinRX.-Add-test-case.patch b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-Fix-gensub-bug-for-use-with-MinRX.-Add-test-case.patch
new file mode 100644
index 0000000000..9b178f59ae
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-Fix-gensub-bug-for-use-with-MinRX.-Add-test-case.patch
@@ -0,0 +1,20 @@
+From 00be99d6ceae1439fd73a15f37d20710dd5798a5 Mon Sep 17 00:00:00 2001
+Message-ID: <00be99d6ceae1439fd73a15f37d20710dd5798a5.1772593597.git.sam@gentoo.org>
+In-Reply-To: <32e6f04bf47ea95773ea0d6d876c5fad8bb90834.1772593597.git.sam@gentoo.org>
+References: <32e6f04bf47ea95773ea0d6d876c5fad8bb90834.1772593597.git.sam@gentoo.org>
+From: "Arnold D. Robbins"
+Date: Fri, 27 Feb 2026 11:03:04 +0200
+Subject: [PATCH 4/9] Fix gensub() bug for use with MinRX. Add test case.
+
+--- a/builtin.c
++++ b/builtin.c
+@@ -2116,7 +2116,7 @@ do_sub(int nargs, unsigned int flags)
+ || ((long) textlen <= 0 && matchstart == matchend)
+ || research(rp, target->stptr, text - target->stptr,
+ use_gnu_matchers ? textlen : target->stlen,
+- RE_NEED_START) == -1)
++ searchflags) == -1)
+ break;
+
+ }
+
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-Small-efficiency-fix-in-array.c.patch b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-Small-efficiency-fix-in-array.c.patch
new file mode 100644
index 0000000000..35cd4c8018
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-Small-efficiency-fix-in-array.c.patch
@@ -0,0 +1,34 @@
+From de8f760a6bea360dd90c9daafc035999c83a3056 Mon Sep 17 00:00:00 2001
+Message-ID:
+In-Reply-To: <32e6f04bf47ea95773ea0d6d876c5fad8bb90834.1772593597.git.sam@gentoo.org>
+References: <32e6f04bf47ea95773ea0d6d876c5fad8bb90834.1772593597.git.sam@gentoo.org>
+From: "Arnold D. Robbins"
+Date: Sun, 1 Mar 2026 20:52:16 +0200
+Subject: [PATCH 6/9] Small efficiency fix in array.c.
+
+--- a/array.c
++++ b/array.c
+@@ -210,17 +210,17 @@ make_aname(const NODE *symbol)
+ slen = strlen(symbol->vname); /* subscript in parent array */
+ if (alen + slen + 4 > max_alen) { /* sizeof("[\"\"]") = 4 */
+ max_alen = alen + slen + 4 + SLEN;
+- erealloc(aname, char *, (max_alen + 1) * sizeof(char *));
++ erealloc(aname, char *, (max_alen + 1) * sizeof(char));
+ }
+ alen += sprintf(aname + alen, "[\"%s\"]", symbol->vname);
+ } else {
+ alen = strlen(symbol->vname);
+ if (aname == NULL) {
+ max_alen = alen + SLEN;
+- emalloc(aname, char *, (max_alen + 1) * sizeof(char *));
++ emalloc(aname, char *, (max_alen + 1) * sizeof(char));
+ } else if (alen > max_alen) {
+ max_alen = alen + SLEN;
+- erealloc(aname, char *, (max_alen + 1) * sizeof(char *));
++ erealloc(aname, char *, (max_alen + 1) * sizeof(char));
+ }
+ memcpy(aname, symbol->vname, alen + 1);
+ }
+--
+2.53.0
+
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-no-assertions-for-pma.patch b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-no-assertions-for-pma.patch
index d729d58a5c..e58bf201ea 100644
--- a/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-no-assertions-for-pma.patch
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/files/gawk-5.4.0-no-assertions-for-pma.patch
@@ -5,10 +5,6 @@ From: "Arnold D. Robbins"
Date: Mon, 23 Feb 2026 10:59:41 +0200
Subject: Disable assertions in support/pma.c.
----
- support/pma.c | 1 +
- 2 files changed, 7 insertions(+)
-
--- a/support/pma.c
+++ b/support/pma.c
@@ -27,6 +27,7 @@
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gawk/gawk-5.4.0-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/gawk-5.4.0-r2.ebuild
new file mode 100644
index 0000000000..e015e43921
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/gawk/gawk-5.4.0-r2.ebuild
@@ -0,0 +1,125 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+GAWK_IS_BETA=no
+
+DESCRIPTION="GNU awk pattern-matching language"
+HOMEPAGE="https://www.gnu.org/software/gawk/gawk.html"
+
+if [[ ${GAWK_IS_BETA} == yes || ${PV} == *_beta* ]] ; then
+ if [[ ${PV} == *_beta* ]] ; then
+ # Beta versioning is sometimes for the release prior, e.g.
+ # 5.2.1_beta is labelled upstream as 5.2.0b.
+ MY_PV=${PV/_beta/b}
+ MY_PV=$(ver_cut 1-2 ${MY_PV}).$(($(ver_cut 3 ${MY_PV}) - 1))$(ver_cut 4- ${MY_PV})
+ MY_P=${PN}-${MY_PV}
+
+ S="${WORKDIR}"/${MY_P}
+ else
+ MY_P=${P}
+ fi
+
+ SRC_URI="https://www.skeeve.com/gawk/${MY_P}.tar.gz"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gawk.asc
+ inherit verify-sig flag-o-matic
+
+ SRC_URI="mirror://gnu/gawk/${P}.tar.xz"
+ SRC_URI+=" verify-sig? ( mirror://gnu/gawk/${P}.tar.xz.sig )"
+
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-3+ pma? ( AGPL-3+ )"
+SLOT="0"
+# The gawk docs claim MPFR support is "on parole" and may be removed,
+# https://www.gnu.org/software/gawk/manual/html_node/MPFR-On-Parole.html
+# however this is somewhat outdated information, see
+# https://public-inbox.org/libc-alpha/202412190851.4BJ8psq4404509@freefriends.org/
+IUSE="+mpfr pma nls readline"
+
+RDEPEND="
+ mpfr? (
+ dev-libs/gmp:=
+ dev-libs/mpfr:=
+ )
+ readline? ( sys-libs/readline:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=sys-apps/texinfo-7.1
+ >=sys-devel/bison-3.5.4
+ nls? ( sys-devel/gettext )
+"
+
+if [[ ${GAWK_IS_BETA} != yes ]] ; then
+ BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-gawk )"
+fi
+
+PATCHES=(
+ "${FILESDIR}"/${P}-no-assertions-for-pma.patch
+ "${FILESDIR}"/${P}-Fix-gensub-bug-for-use-with-MinRX.-Add-test-case.patch
+ "${FILESDIR}"/${P}-Small-efficiency-fix-in-array.c.patch
+)
+
+src_prepare() {
+ default
+
+ use elibc_musl && append-cppflags -D__GNU_LIBRARY__
+
+ # Use symlinks rather than hardlinks, and disable version links
+ sed -i \
+ -e '/^LN =/s:=.*:= $(LN_S):' \
+ -e '/install-exec-hook:/s|$|\nfoo:|' \
+ Makefile.in doc/Makefile.in || die
+
+ # bug #413327
+ sed -i '/^pty1:$/s|$|\n_pty1:|' test/Makefile.in || die
+
+ # Fix standards conflict on Solaris
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ sed -i \
+ -e '/\<_XOPEN_SOURCE\>/s/1$/600/' \
+ -e '/\<_XOPEN_SOURCE_EXTENDED\>/s/1//' \
+ extension/inplace.c || die
+ fi
+}
+
+src_configure() {
+ # README says gawk may not work properly if built with non-Bison.
+ # We already BDEPEND on Bison, so just unset YACC rather than
+ # guessing if we need to do yacc.bison or bison -y.
+ unset YACC
+
+ local myeconfargs=(
+ --cache-file="${S}"/config.cache
+ --libexec='$(libdir)/misc'
+ $(use_with mpfr)
+ $(use_enable nls)
+ $(use_enable pma)
+ $(use_with readline)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ # bug #970495
+ local -x PAGER=cat
+
+ emake check
+}
+
+src_install() {
+ # Automatic dodocs barfs
+ rm -rf README_d || die
+
+ default
+
+ # Install headers
+ insinto /usr/include/awk
+ doins *.h
+ rm "${ED}"/usr/include/awk/config.h || die
+}
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/Manifest
index f59ce558b3..d3b1fa851c 100644
--- a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/Manifest
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/Manifest
@@ -1,3 +1,4 @@
DIST iproute2-6.16.0.tar.xz 931124 BLAKE2B d1c66f4d63edd6fa2701c92dbc47f8c4388d6a660d541d528e3463e8e261fda64df4a7f8930f510718c71ee82438b5c4859f072eb08c8ff1e4d1d65223108005 SHA512 88930ea1a3a901594a69dc04e533bfd1de0f5b79f176dedb45f11f01035bd680edccc8e04e56d0922ee430580581c646473a3baa941254739878f7ab946f17df
DIST iproute2-6.17.0.tar.xz 940952 BLAKE2B 49b88fd1eaea34376b086be02e72505ca62f52f3c53f3ee29cd273532521fabe8d38062277852dcc69f78b86b9460b213bbeedc9c51ce20d3bb1fd35d86b6fc8 SHA512 3d83d49233c1d984f15d285a46e2ec0eeb820c7cb84cfc84866921f37e8a57d31bc3953be07e8c79ed6079f326a25c3a85f591b0d67f9f689c0c70ccdb0fef77
DIST iproute2-6.18.0.tar.xz 945200 BLAKE2B 03af6c56beb8717f1d2ce77d91db1293188a45ed6b491924c37a6d7956da1b92106198503fc27dc12301648c2c0c5358883ce0fff046fb53e6e8be004696d6fd SHA512 c4a0852fbf0143b51a65adb6a29cbc838ecaed88b827574ea33ddd2e3f90c00732eaea06ff702a7122d82f7e4d926282f9fbb59b87e41be7da04403c73258fc2
+DIST iproute2-6.19.0.tar.xz 958920 BLAKE2B 779818bb5f790edc6d594155e96ade6092744d4c035281291bc34a987d2bee8a566aad3fa6091c736fe27f79f75baeb975abbeee0e3dce45af7e81019097e512 SHA512 0ca41b0ccfc253ab80cc5f9c687c92ec685d4e25cfbbb7cc512b919784c3248e20cc7c928420e271f8b24a4f56d6a4282f3ba394e27267552004701662e56494
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/files/iproute2-6.19.0-add-includes.patch b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/files/iproute2-6.19.0-add-includes.patch
new file mode 100644
index 0000000000..0dadfdf3be
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/files/iproute2-6.19.0-add-includes.patch
@@ -0,0 +1,42 @@
+From https://lore.kernel.org/netdev/20260223223435.289652-1-slyich@gmail.com/
+Bug: https://bugs.gentoo.org/970910
+
+From: Sergei Trofimovich
+To: netdev@vger.kernel.org
+Cc: Sergei Trofimovich
+Subject: [PATCH iproute2] include/json_print.h: add includes for `__u32` and `timeval` declarations
+Date: Mon, 23 Feb 2026 22:34:35 +0000
+
+Without the change the build fails on `musl` as:
+
+```
+../include/json_print.h:100:44: error: unknown type name ‘__u32’
+ 100 | unsigned int print_range(const char *name, __u32 start, __u32 end);
+ | ^~~~~
+...
+../include/json_print.h:82:30: warning: ‘struct timeval’ declared inside parameter list will not be visible outside of this definition or declaration
+ 82 | _PRINT_FUNC(tv, const struct timeval *)
+ | ^~~~~~~
+../include/json_print.h:57:45: note: in definition of macro ‘_PRINT_FUNC’
+ 57 | type value) \
+ | ^~~~
+../include/json_print.h: In function ‘print_tv’:
+../include/json_print.h:60:48: error: passing argument 5 of ‘print_color_tv’ from incompatible pointer type [-Wincompatible-pointer-types]
+ 60 | value); \
+ | ^~~~~
+ | |
+ | const struct timeval *
+```
+--- a/include/json_print.h
++++ b/include/json_print.h
+@@ -8,6 +8,10 @@
+ #ifndef _JSON_PRINT_H_
+ #define _JSON_PRINT_H_
+
++#include /* struct timeval typedef */
++
++#include /* __u32 typedef */
++
+ #include "json_writer.h"
+ #include "color.h"
+
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/files/iproute2-6.19.0-dpll.patch b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/files/iproute2-6.19.0-dpll.patch
new file mode 100644
index 0000000000..744c55f029
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/files/iproute2-6.19.0-dpll.patch
@@ -0,0 +1,11 @@
+diff --git a/dpll/Makefile b/dpll/Makefile
+index 3a37184b..40dfb87b 100644
+--- a/dpll/Makefile
++++ b/dpll/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ include ../config.mk
++include ../config.include
+
+ # iproute2 libraries
+ LIBNETLINK=../lib/libutil.a ../lib/libnetlink.a
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.19.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.19.0.ebuild
new file mode 100644
index 0000000000..0a91bb8494
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/iproute2/iproute2-6.19.0.ebuild
@@ -0,0 +1,221 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dot-a edo toolchain-funcs flag-o-matic
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git"
+ inherit git-r3
+else
+ SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+DESCRIPTION="kernel routing and traffic control utilities"
+HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="atm berkdb bpf caps elf +iptables minimal nfs selinux"
+# Needs root
+RESTRICT="test"
+
+# We could make libmnl optional, but it's tiny, so eh
+RDEPEND="
+ !minimal? ( net-libs/libmnl:= )
+ atm? ( net-dialup/linux-atm )
+ berkdb? ( sys-libs/db:= )
+ bpf? ( >=dev-libs/libbpf-0.6:= )
+ caps? ( sys-libs/libcap )
+ elf? ( virtual/libelf:= )
+ iptables? ( >=net-firewall/iptables-1.4.20:= )
+ nfs? ( net-libs/libtirpc:= )
+ selinux? ( sys-libs/libselinux )
+"
+# We require newer linux-headers for ipset support (bug #549948) and some defines (bug #553876)
+DEPEND="
+ ${RDEPEND}
+ >=sys-kernel/linux-headers-3.16
+"
+BDEPEND="
+ app-arch/xz-utils
+ >=sys-devel/bison-2.4
+ app-alternatives/lex
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.10.0-musl-2.patch # bug #926341
+ "${FILESDIR}"/${PN}-6.9.0-mtu.patch # bug #291907
+ "${FILESDIR}"/${PN}-6.8.0-configure-nomagic-nolibbsd.patch # bug #643722 & #911727
+ "${FILESDIR}"/${PN}-6.8.0-disable-libbsd-fallback.patch # bug #911727
+ "${FILESDIR}"/${PN}-6.18.0-netshaper.patch # bug #967691
+ "${FILESDIR}"/${PN}-6.19.0-dpll.patch # bug #967691
+ "${FILESDIR}"/${PN}-6.19.0-add-includes.patch # bug #970910
+)
+
+src_prepare() {
+ default
+
+ # Fix version if necessary
+ local versionfile="include/version.h"
+ if [[ ${PV} != 9999 ]] && ! grep -Fq "${PV}" ${versionfile} ; then
+ einfo "Fixing version string"
+ sed -i "s@\"[[:digit:]\.]\+\"@\"${PV}\"@" \
+ ${versionfile} || die
+ fi
+
+ # echo -n is not POSIX compliant
+ sed -i 's@echo -n@printf@' configure || die
+
+ sed -i \
+ -e '/^CC :\?=/d' \
+ -e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
+ -e "s|-O2|${CFLAGS} ${CPPFLAGS}|" \
+ -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
+ -e "/^DBM_INCLUDE/s:=.*:=${T}:" \
+ Makefile || die
+
+ # Build against system headers
+ rm -r include/netinet || die #include/linux include/ip{,6}tables{,_common}.h include/libiptc
+ sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
+
+ if use minimal ; then
+ sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile || die
+ fi
+}
+
+src_configure() {
+ tc-export AR CC PKG_CONFIG
+ lto-guarantee-fat
+
+ tc-export_build_env
+ export CBUILD_CFLAGS=${BUILD_CFLAGS}
+
+ # This sure is ugly. Should probably move into toolchain-funcs at some point.
+ local setns
+ pushd "${T}" >/dev/null || die
+ printf '#include \nint main(){return setns(0, 0);}\n' > test.c || die
+ if ${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null ; then
+ setns=y
+ else
+ setns=n
+ fi
+
+ echo 'int main(){return 0;}' > test.c || die
+ if ! ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null ; then
+ sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile || die
+ fi
+ popd >/dev/null || die
+
+ # build system does not pass CFLAGS to LDFLAGS, as is recommended by GCC upstream
+ # https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-flto
+ # https://bugs.gentoo.org/929233
+ append-ldflags ${CFLAGS}
+
+ # run "configure" script first which will create "config.mk"...
+ # Using econf breaks since 5.14.0 (a9c3d70d902a0473ee5c13336317006a52ce8242)
+ eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})"
+ edo ./configure --libbpf_force $(usex bpf on off) "${EXTRA_ECONF[@]}"
+
+ # Remove the definitions made by configure and allow them to be overridden
+ # by USE flags below.
+ # We have to do the cheesy only-sed-if-disabled because otherwise
+ # the *_FLAGS etc stuff found by configure will be used but result
+ # in a broken build.
+ if ! use berkdb ; then
+ sed -i -e '/HAVE_BERKELEY_DB/d' config.mk || die
+ fi
+
+ if ! use caps ; then
+ sed -i -e '/HAVE_CAP/d' config.mk || die
+ fi
+
+ if use minimal ; then
+ sed -i -e '/HAVE_MNL/d' config.mk || die
+ fi
+
+ if ! use elf ; then
+ sed -i -e '/HAVE_ELF/d' config.mk || die
+ fi
+
+ if ! use nfs ; then
+ sed -i -e '/HAVE_RPC/d' config.mk || die
+ fi
+
+ if ! use selinux ; then
+ sed -i -e '/HAVE_SELINUX/d' config.mk || die
+ fi
+
+ # ...Now switch on/off requested features via USE flags
+ # this is only useful if the test did not set other things, per bug #643722
+ # Keep in sync with ifs above, or refactor to be unified.
+ cat <<-EOF >> config.mk
+ TC_CONFIG_ATM := $(usex atm y n)
+ TC_CONFIG_XT := $(usex iptables y n)
+ TC_CONFIG_NO_XT := $(usex iptables n y)
+ # We've locked in recent enough kernel headers, bug #549948
+ TC_CONFIG_IPSET := y
+ HAVE_BERKELEY_DB := $(usex berkdb y n)
+ HAVE_CAP := $(usex caps y n)
+ HAVE_MNL := $(usex minimal n y)
+ HAVE_ELF := $(usex elf y n)
+ HAVE_RPC := $(usex nfs y n)
+ HAVE_SELINUX := $(usex selinux y n)
+ IP_CONFIG_SETNS := ${setns}
+ # Use correct iptables dir, bug #144265, bug #293709
+ IPT_LIB_DIR := $(use iptables && ${PKG_CONFIG} xtables --variable=xtlibdir)
+ EOF
+}
+
+src_compile() {
+ emake V=1 NETNS_RUN_DIR=/run/netns
+}
+
+src_test() {
+ emake check
+}
+
+src_install() {
+ if use minimal ; then
+ into /
+ dosbin tc/tc
+ dobin ip/ip
+ return 0
+ fi
+
+ emake \
+ DESTDIR="${D}" \
+ PREFIX="${EPREFIX}/usr" \
+ LIBDIR="${EPREFIX}"/$(get_libdir) \
+ SBINDIR="${EPREFIX}"/sbin \
+ CONFDIR="${EPREFIX}"/etc/iproute2 \
+ DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
+ MANDIR="${EPREFIX}"/usr/share/man \
+ ARPDDIR="${EPREFIX}"/var/lib/arpd \
+ install
+
+ dodir /bin
+ mv "${ED}"/{s,}bin/ip || die # bug #330115
+ mv "${ED}"/{s,}bin/ss || die # bug #547264
+
+ dolib.a lib/libnetlink.a
+ insinto /usr/include
+ doins include/libnetlink.h
+
+ # Collides with net-analyzer/ifstat
+ # https://bugs.gentoo.org/868321
+ mv "${ED}"/sbin/ifstat{,-iproute2} || die
+
+ if use berkdb ; then
+ keepdir /var/lib/arpd
+ # bug #47482, arpd doesn't need to be in /sbin
+ dodir /usr/bin
+ mv "${ED}"/sbin/arpd "${ED}"/usr/bin/ || die
+ elif [[ -d "${ED}"/var/lib/arpd ]]; then
+ rmdir --ignore-fail-on-non-empty -p "${ED}"/var/lib/arpd || die
+ fi
+ strip-lto-bytecode
+}
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.16-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.16-r2.ebuild
index 777f15252d..383abd0631 100644
--- a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.16-r2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.16-r2.ebuild
@@ -11,7 +11,7 @@ inherit eapi9-ver
# - It's considered fine (and somewhat encouraged) for us to make snapshots
# if we want specific fixes, perhaps aligned with newer kernels, glibc, etc.
# Just generate it with 'make dist'. We can set DISTVERSION if we want a vanity
-# name or if the comit hash is too long;
+# name or if the commit hash is too long;
#
# - If we do use a snapshot, *don't* grab it directly from git and use it
# raw in the ebuild. Use 'make dist' as above;
@@ -64,7 +64,7 @@ LICENSE="man-pages GPL-2+ BSD"
SLOT="0"
# Keep the following in sync with app-i18n/man-pages-l10n
MY_L10N=( cs da de el es fi fr hu id it ko mk nb nl pl pt-BR ro ru sr sv uk vi )
-IUSE="l10n_ja l10n_ru l10n_zh-CN ${MY_L10N[@]/#/l10n_}"
+IUSE="l10n_ja l10n_zh-CN ${MY_L10N[@]/#/l10n_}"
RESTRICT="binchecks"
RDEPEND="
@@ -72,10 +72,6 @@ RDEPEND="
"
PDEPEND="
l10n_ja? ( app-i18n/man-pages-ja )
- l10n_ru? ( || (
- app-i18n/man-pages-l10n[l10n_ru(-)]
- app-i18n/man-pages-ru
- ) )
l10n_zh-CN? ( app-i18n/man-pages-zh_CN )
"
for lang in "${MY_L10N[@]}"; do
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.17.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.17-r1.ebuild
similarity index 95%
rename from sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.17.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.17-r1.ebuild
index 777f15252d..383abd0631 100644
--- a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.17.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-6.17-r1.ebuild
@@ -11,7 +11,7 @@ inherit eapi9-ver
# - It's considered fine (and somewhat encouraged) for us to make snapshots
# if we want specific fixes, perhaps aligned with newer kernels, glibc, etc.
# Just generate it with 'make dist'. We can set DISTVERSION if we want a vanity
-# name or if the comit hash is too long;
+# name or if the commit hash is too long;
#
# - If we do use a snapshot, *don't* grab it directly from git and use it
# raw in the ebuild. Use 'make dist' as above;
@@ -64,7 +64,7 @@ LICENSE="man-pages GPL-2+ BSD"
SLOT="0"
# Keep the following in sync with app-i18n/man-pages-l10n
MY_L10N=( cs da de el es fi fr hu id it ko mk nb nl pl pt-BR ro ru sr sv uk vi )
-IUSE="l10n_ja l10n_ru l10n_zh-CN ${MY_L10N[@]/#/l10n_}"
+IUSE="l10n_ja l10n_zh-CN ${MY_L10N[@]/#/l10n_}"
RESTRICT="binchecks"
RDEPEND="
@@ -72,10 +72,6 @@ RDEPEND="
"
PDEPEND="
l10n_ja? ( app-i18n/man-pages-ja )
- l10n_ru? ( || (
- app-i18n/man-pages-l10n[l10n_ru(-)]
- app-i18n/man-pages-ru
- ) )
l10n_zh-CN? ( app-i18n/man-pages-zh_CN )
"
for lang in "${MY_L10N[@]}"; do
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-9999.ebuild
index 777f15252d..383abd0631 100644
--- a/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-9999.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-pages/man-pages-9999.ebuild
@@ -11,7 +11,7 @@ inherit eapi9-ver
# - It's considered fine (and somewhat encouraged) for us to make snapshots
# if we want specific fixes, perhaps aligned with newer kernels, glibc, etc.
# Just generate it with 'make dist'. We can set DISTVERSION if we want a vanity
-# name or if the comit hash is too long;
+# name or if the commit hash is too long;
#
# - If we do use a snapshot, *don't* grab it directly from git and use it
# raw in the ebuild. Use 'make dist' as above;
@@ -64,7 +64,7 @@ LICENSE="man-pages GPL-2+ BSD"
SLOT="0"
# Keep the following in sync with app-i18n/man-pages-l10n
MY_L10N=( cs da de el es fi fr hu id it ko mk nb nl pl pt-BR ro ru sr sv uk vi )
-IUSE="l10n_ja l10n_ru l10n_zh-CN ${MY_L10N[@]/#/l10n_}"
+IUSE="l10n_ja l10n_zh-CN ${MY_L10N[@]/#/l10n_}"
RESTRICT="binchecks"
RDEPEND="
@@ -72,10 +72,6 @@ RDEPEND="
"
PDEPEND="
l10n_ja? ( app-i18n/man-pages-ja )
- l10n_ru? ( || (
- app-i18n/man-pages-l10n[l10n_ru(-)]
- app-i18n/man-pages-ru
- ) )
l10n_zh-CN? ( app-i18n/man-pages-zh_CN )
"
for lang in "${MY_L10N[@]}"; do
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/Manifest
index 0e2730a25a..3c71ecd75f 100644
--- a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/Manifest
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/Manifest
@@ -1,4 +1,4 @@
-DIST texinfo-7.2.92.tar.xz 6931756 BLAKE2B 0048ddd72dddb3bc58e05f0562514e80495fd98eb4c9b1fb950c941bec729dd07ac8575a5685ea63cfa993143f2e9c1c34df89dc5feb16407dfb314d82c24bd4 SHA512 3aafc0cb035e0f72e5539473cc76d9b0795f496d24cc6e128fec54b267b5b9a1b6ba4ee721dffd014a5a17d2eac0ed440b615a9c65918e2c74ce1e601dfdf654
-DIST texinfo-7.2.92.tar.xz.sig 265 BLAKE2B ca333bd4010df6d78b36eb5b4bbe414859946c75726b16973e479a9f44bcc4f6e76d9c596f09da8e67fee06d63e1a59c028220b4db79efca6fabb4f9dcfbcb25 SHA512 259e280d13e880d3a82ef28fd670f5ef1d0bd8aacc915f9053420cc414c317e6f13d8c5501162b41ee0d7b6f5d764152a410b92bc20532fa3a89f59418600b9c
DIST texinfo-7.2.tar.xz 6408432 BLAKE2B fc6bd020310a437a73d5723d257ca3da1d15329e9e668fa78c49ac77759c2c990d4422c2a7071b217ea214b88389a0cbb43d3fcfa5fe9bf9651270167b15c342 SHA512 8e67337ae12a552fc620c43725507a4978710ea6630e98b0f5e98eb3f79a90e191dde5225699aa6217c26f171d277461f76150f0459cd07b40c3234d2f3d89bf
DIST texinfo-7.2.tar.xz.sig 265 BLAKE2B dc3a1b157efce581ff67b1605c646a5c78fe355176376b2ec8f5d35f0b1e28fc86ef03e73fe2f2ba4e50cc893d1ad379f6be1b8b627a6eb78560b37aeb37c880 SHA512 fcb5bcf655e16f8994b33242516cff7f5dc6684555c889fee4a4e5b01cbc9c8163d6ea5c77722b2bb8d6f65120650de4daff027bee135d1c29f82316211d8fb4
+DIST texinfo-7.3.tar.xz 6940392 BLAKE2B e9c17aec5ebf9d22eb22b40a06a24de675fca6d511f448170983d474b0906e23c25a00b75907b260abf66e660aefa6d6af928a1785bcf9b2099a0e791aac7025 SHA512 fb1a16df67f870e79c31f4b96d8431d9c944eb84e5aa71e9d94890417ce63047918d55620fa63bd582232c47e9b412a6f95a11a2479f53f40e92e49bc018d926
+DIST texinfo-7.3.tar.xz.sig 265 BLAKE2B 95d283be610ce45ce2aefdf2eb3cc9f46fe09d50685b344a16eba14c48a07315642199c5f950a93f115aacb1e5a1ee8181fcf8d0510e7e69417ec42919e5613f SHA512 161a4a3e12d35d3cda3a65c1960563421c1a8babd27cbd6d6f3d055fc5f4b2fe36278fca018870eb74523682e1b4c9c022b45799558d1eb305da96db9637a256
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2.92.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.3.ebuild
similarity index 98%
rename from sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2.92.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.3.ebuild
index 3989edaf83..e3aaa6c2b5 100644
--- a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.2.92.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.3.ebuild
@@ -61,6 +61,7 @@ DEPEND="${RDEPEND}"
BDEPEND="
${REGEN_BDEPEND}
nls? ( >=sys-devel/gettext-0.19.6 )
+ test? ( dev-perl/Test-Deep )
"
src_prepare() {
diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild
index bf8c85bb89..e3aaa6c2b5 100644
--- a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild
@@ -44,7 +44,8 @@ fi
LICENSE="GPL-3+"
SLOT="0"
-IUSE="nls +standalone static"
+IUSE="nls +standalone static test"
+RESTRICT="!test? ( test )"
RDEPEND="
|| ( app-doc/info-manual >=app-editors/emacs-26:* )
@@ -60,6 +61,7 @@ DEPEND="${RDEPEND}"
BDEPEND="
${REGEN_BDEPEND}
nls? ( >=sys-devel/gettext-0.19.6 )
+ test? ( dev-perl/Test-Deep )
"
src_prepare() {
diff --git a/sdk_container/src/third_party/portage-stable/sys-auth/sssd/files/sssd-2.12.0-dont-clobber-getpwnam-buffer.patch b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/files/sssd-2.12.0-dont-clobber-getpwnam-buffer.patch
new file mode 100644
index 0000000000..f9923d96ca
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/files/sssd-2.12.0-dont-clobber-getpwnam-buffer.patch
@@ -0,0 +1,87 @@
+From 0262207f76088f6801e055b64125b2a1006de1e2 Mon Sep 17 00:00:00 2001
+From: Christopher Byrne
+Date: Sun, 1 Mar 2026 20:05:21 -0600
+Subject: [PATCH] src/sss_client/common.c: Use getpwnam_r to avoid clobbering
+ struct passwd
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+If something else uses PAM (like openrc, see
+https://github.com/OpenRC/openrc/pull/984) and getpwnam, and calls
+something like pam_open_session, sssd's call to getpwnam in
+init_sssd_ids clobbers the cached value by the other program.
+
+Signed-off-by: Christopher Byrne
+Reviewed-by: Alexey Tikhonov
+Reviewed-by: Tomáš Halman
+---
+ src/sss_client/common.c | 51 +++++++++++++++++++++++++++++++++++++----
+ 1 file changed, 47 insertions(+), 4 deletions(-)
+
+diff --git a/src/sss_client/common.c b/src/sss_client/common.c
+index 094936d8f..8a2e693da 100644
+--- a/src/sss_client/common.c
++++ b/src/sss_client/common.c
+@@ -148,11 +148,54 @@ static void init_sssd_ids(void)
+ /* 'libnss_sss' doesn't resolve SSSD_USER,
+ * so no need to set '_SSS_LOOPS'
+ */
+- struct passwd *pwd = getpwnam(SSSD_USER);
+- if (pwd != NULL) {
+- sss_sssd_uid = pwd->pw_uid;
+- sss_sssd_gid = pwd->pw_gid;
++ struct passwd pwd;
++ struct passwd *result = NULL;
++ long sc_bufsize;
++ size_t bufsize;
++ char *buf;
++ char *newbuf;
++ int error;
++
++ sc_bufsize = sysconf(_SC_GETPW_R_SIZE_MAX);
++
++ if (sc_bufsize > 0)
++ bufsize = (size_t)sc_bufsize;
++ else {
++ bufsize = 16384;
++ }
++
++ buf = malloc(bufsize);
++
++ if (buf == NULL) {
++ return;
+ }
++
++ do {
++ error = getpwnam_r(SSSD_USER, &pwd, buf, bufsize, &result);
++ if (result == NULL) {
++ if (error == ERANGE) {
++ bufsize += 4096;
++
++ if (bufsize >= 65536) {
++ break;
++ }
++
++ newbuf = realloc(buf, bufsize);
++
++ if (newbuf == NULL) {
++ break;
++ }
++
++ buf = newbuf;
++ continue;
++ }
++ } else {
++ sss_sssd_uid = result->pw_uid;
++ sss_sssd_gid = result->pw_gid;
++ }
++ } while (result == NULL && error == ERANGE);
++
++ free(buf);
+ }
+ #endif
+ #endif /* SSSD_NON_ROOT_USER */
+--
+2.52.0
+
diff --git a/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.12.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.12.0-r1.ebuild
new file mode 100644
index 0000000000..99212ff16b
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.12.0-r1.ebuild
@@ -0,0 +1,365 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Ukrainian translation causes compile failure, so skip it for now
+#PLOCALES="ca de es fr ja ko pt_BR ru sv tr uk"
+PLOCALES="ca de es fr ja ko pt_BR ru sv tr"
+PLOCALES_BIN="${PLOCALES} bg cs eu fi hu id it ka nb nl pl pt tg zh_TW zh_CN"
+PLOCALE_BACKUP="sv"
+PYTHON_COMPAT=( python3_{11..14} )
+
+inherit autotools linux-info multilib-minimal optfeature plocale \
+ python-single-r1 pam systemd tmpfiles udev toolchain-funcs verify-sig
+
+DESCRIPTION="System Security Services Daemon provides access to identity and authentication"
+HOMEPAGE="https://github.com/SSSD/sssd"
+if [[ ${PV} != 9999 ]]; then
+ SRC_URI="https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz
+ https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz.asc"
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+else
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/SSSD/sssd.git"
+ EGIT_BRANCH="master"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="doc +netlink nfsv4 nls passkey python samba selinux systemd systemtap test"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ >=app-crypt/mit-krb5-1.19.1[${MULTILIB_USEDEP}]
+ app-crypt/p11-kit
+ >=dev-libs/ding-libs-0.2
+ >=dev-libs/cyrus-sasl-2.1.25-r3[kerberos]
+ dev-libs/jansson:=
+ dev-libs/libpcre2:=
+ dev-libs/libunistring:=[${MULTILIB_USEDEP}]
+ >=dev-libs/popt-1.16
+ >=dev-libs/openssl-1.0.2:=
+ >=net-dns/bind-9.9[gssapi]
+ >=net-dns/c-ares-1.10.0-r1:=[${MULTILIB_USEDEP}]
+ >=net-nds/openldap-2.4.30:=[sasl,experimental]
+ net-fs/cifs-utils[acl]
+ >=sys-apps/dbus-1.6
+ >=sys-apps/keyutils-1.5:=
+ sys-libs/libcap
+ >=sys-libs/pam-0-r1[${MULTILIB_USEDEP}]
+ >=sys-libs/talloc-2.0.7
+ >=sys-libs/tdb-1.2.9
+ >=sys-libs/tevent-0.9.16
+ virtual/ldb:=
+ virtual/libintl
+ netlink? ( dev-libs/libnl:3 )
+ nfsv4? ( >=net-fs/nfs-utils-2.3.1-r2 )
+ nls? ( >=sys-devel/gettext-0.18 )
+ passkey? ( dev-libs/libfido2:= )
+ python? (
+ ${PYTHON_DEPS}
+ systemd? (
+ $(python_gen_cond_dep '
+ dev-python/python-systemd[${PYTHON_USEDEP}]
+ ')
+ )
+ )
+ samba? ( >=net-fs/samba-4.10.2[winbind] )
+ selinux? (
+ >=sys-libs/libselinux-2.1.9
+ >=sys-libs/libsemanage-2.1
+ )
+ systemd? (
+ sys-apps/systemd:=
+ sys-apps/util-linux
+ )
+ systemtap? ( dev-debug/systemtap )"
+RDEPEND="${DEPEND}
+ acct-user/sssd
+ acct-group/sssd
+ selinux? ( >=sec-policy/selinux-sssd-2.20120725-r9 )"
+DEPEND+="
+ sys-apps/shadow"
+BDEPEND="
+ acct-user/sssd
+ acct-group/sssd
+ sys-libs/libcap
+ virtual/pkgconfig
+ ${PYTHON_DEPS}
+ doc? ( app-text/doxygen )
+ nls? ( app-text/po4a
+ sys-devel/gettext )
+ test? (
+ dev-libs/check
+ dev-libs/softhsm:2
+ dev-util/cmocka
+ net-libs/gnutls[pkcs11,tools]
+ sys-libs/libfaketime
+ sys-libs/nss_wrapper
+ sys-libs/pam_wrapper
+ sys-libs/uid_wrapper
+ )
+ app-text/docbook-xml-dtd:4.4
+ >=dev-libs/libxslt-1.1.26
+ verify-sig? ( sec-keys/openpgp-keys-sssd )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/sssd.asc
+
+CONFIG_CHECK="~KEYS"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.8.2-krb5_pw_locked.patch"
+ "${FILESDIR}/${PN}-2.9.6-conditional-python-install.patch"
+ "${FILESDIR}/${PN}-2.10.0_beta2-fix-systemd-systemconfdir.patch"
+ "${FILESDIR}/${PN}-2.12.0-dont-clobber-getpwnam-buffer.patch"
+)
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/ipa_hbac.h
+ /usr/include/sss_idmap.h
+ /usr/include/sss_nss_idmap.h
+ # --with-ifp
+ /usr/include/sss_sifp.h
+ /usr/include/sss_sifp_dbus.h
+ # from 1.15.3
+ /usr/include/sss_certmap.h
+)
+
+pkg_setup() {
+ linux-info_pkg_setup
+ python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ plocale_get_locales > src/man/po/LINGUAS || die
+
+ sed -i \
+ -e "/_langs]/ s/ .*//" \
+ src/man/po/po4a.cfg \
+ || die
+ enable_locale() {
+ local locale=${1}
+
+ sed -i \
+ -e "/_langs]/ s/$/ ${locale}/" \
+ src/man/po/po4a.cfg \
+ || die
+ }
+
+ plocale_for_each_locale enable_locale
+
+ PLOCALES="${PLOCALES_BIN}"
+ plocale_get_locales > po/LINGUAS || die
+
+ sed -i \
+ -e 's:/var/run:/run:' \
+ src/examples/logrotate \
+ || die
+
+ # disable flaky test, see https://github.com/SSSD/sssd/issues/5631
+ sed -i \
+ -e '/^\s*pam-srv-tests[ \\]*$/d' \
+ Makefile.am \
+ || die
+
+ # requires valgrind headers installed, see
+ # https://github.com/SSSD/sssd/pull/7845
+ sed -i \
+ -e '/^\s*test_iobuf[ \\]*$/d' \
+ Makefile.am \
+ || die
+
+ eautoreconf
+
+ multilib_copy_sources
+}
+
+src_configure() {
+ local native_dbus_cflags=$($(tc-getPKG_CONFIG) --cflags dbus-1 || die)
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=()
+
+ myconf+=(
+ --libexecdir="${EPREFIX}"/usr/libexec
+ --localstatedir="${EPREFIX}"/var
+ --runstatedir="${EPREFIX}"/run
+ --sbindir="${EPREFIX}"/usr/sbin
+ --with-pid-path="${EPREFIX}"/run/sssd
+ --with-plugin-path="${EPREFIX}"/usr/$(get_libdir)/sssd
+ --enable-pammoddir="${EPREFIX}"/$(getpam_mod_dir)
+ --with-ldb-lib-dir="${EPREFIX}"/usr/$(get_libdir)/samba/ldb
+ --with-db-path="${EPREFIX}"/var/lib/sss/db
+ --with-gpo-cache-path="${EPREFIX}"/var/lib/sss/gpo_cache
+ --with-pubconf-path="${EPREFIX}"/var/lib/sss/pubconf
+ --with-pipe-path="${EPREFIX}"/var/lib/sss/pipes
+ --with-mcache-path="${EPREFIX}"/var/lib/sss/mc
+ --with-secrets-db-path="${EPREFIX}"/var/lib/sss/secrets
+ --with-log-path="${EPREFIX}"/var/log/sssd
+ --with-tmpfilesdir=/usr/lib/tmpfiles.d
+ --with-udevrulesdir="$(get_udevdir)/rules.d"
+ --with-kcm
+ --enable-kcm-renewal
+ --with-os=gentoo
+ --disable-rpath
+ --disable-static
+ # Valgrind is only used for tests
+ --disable-valgrind
+ $(use_with samba)
+ --with-smb-idmap-interface-version=6
+ --enable-cifs-idmap-plugin
+ $(multilib_native_use_with selinux)
+ --enable-krb5-locator-plugin
+ $(use_enable samba pac-responder)
+ $(multilib_native_use_with nfsv4 nfsv4-idmapd-plugin)
+ $(use_enable nls)
+ $(multilib_native_use_with netlink libnl)
+ --with-manpages
+ --with-sudo
+ $(multilib_native_with autofs)
+ $(multilib_native_with ssh)
+ --without-oidc-child
+ $(multilib_native_with passkey)
+ --with-subid
+ $(use_enable systemtap)
+ --without-python2-bindings
+ $(multilib_native_use_with python python3-bindings)
+ # Annoyingly configure requires that you pick systemd XOR sysv
+ --with-initscript=$(usex systemd systemd sysv)
+ --with-sssd-user=sssd
+ KRB5_CONFIG="${ESYSROOT}"/usr/bin/krb5-config
+ CPPFLAGS="${CPPFLAGS} -I${ESYSROOT}/usr/include/samba-4.0"
+ )
+
+ use systemd && myconf+=(
+ --with-systemdunitdir=$(systemd_get_systemunitdir)
+ )
+
+ if ! multilib_is_native_abi; then
+ # work-around all the libraries that are used for CLI and server
+ myconf+=(
+ {POPT,TALLOC,TDB,TEVENT,LDB}_{CFLAGS,LIBS}=' '
+ # ldb headers are fine since native needs it
+ # ldb lib fails... but it does not seem to bother
+ {DHASH,UNISTRING,INI_CONFIG_V{0,1,1_1,1_3}}_{CFLAGS,LIBS}=' '
+ {PCRE,CARES,SYSTEMD_LOGIN,SASL,DBUS,CRYPTO,P11_KIT}_{CFLAGS,LIBS}=' '
+ {NDR_NBT,SAMBA_UTIL,SMBCLIENT,NDR_KRB5PAC,JANSSON}_{CFLAGS,LIBS}=' '
+
+ # use native include path for dbus (needed for build)
+ DBUS_CFLAGS="${native_dbus_cflags}"
+
+ # non-pkgconfig checks
+ ac_cv_lib_ldap_ldap_search=yes
+ --without-kcm
+ --without-manpages
+ )
+ fi
+
+ econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ use doc && emake docs
+ else
+ emake libnss_sss.la pam_sss.la pam_sss_gss.la
+ emake sssd_krb5_locator_plugin.la
+ use samba && emake sssd_pac_plugin.la
+ fi
+}
+
+multilib_src_test() {
+ if multilib_is_native_abi; then
+ local -x CK_TIMEOUT_MULTIPLIER=10
+ emake check VERBOSE=yes
+ fi
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ emake -j1 DESTDIR="${D}" install
+ if use python; then
+ python_fix_shebang "${ED}"
+ python_optimize
+ fi
+ else
+ # easier than playing with automake...
+ dopammod .libs/pam_sss.so
+ dopammod .libs/pam_sss_gss.so
+
+ into /
+ dolib.so .libs/libnss_sss.so*
+
+ exeinto /usr/$(get_libdir)/krb5/plugins/libkrb5
+ doexe .libs/sssd_krb5_locator_plugin.so
+
+ if use samba; then
+ exeinto /usr/$(get_libdir)/krb5/plugins/authdata
+ doexe .libs/sssd_pac_plugin.so
+ fi
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ insinto /etc/sssd
+ insopts -m600
+ doins src/examples/sssd-example.conf
+
+ insinto /etc/logrotate.d
+ insopts -m644
+ newins src/examples/logrotate sssd
+
+ newconfd "${FILESDIR}"/sssd.conf sssd
+
+ keepdir /var/lib/sss/db
+ keepdir /var/lib/sss/deskprofile
+ keepdir /var/lib/sss/gpo_cache
+ keepdir /var/lib/sss/keytabs
+ keepdir /var/lib/sss/mc
+ keepdir /var/lib/sss/pipes/private
+ keepdir /var/lib/sss/pubconf/krb5.include.d
+ keepdir /var/lib/sss/secrets
+ keepdir /var/log/sssd
+ keepdir /etc/sssd/conf.d
+ keepdir /etc/sssd/pki
+
+ # strip empty dirs
+ if ! use doc; then
+ rm -r "${ED}"/usr/share/doc/"${PF}"/doc || die
+ rm -r "${ED}"/usr/share/doc/"${PF}"/{hbac,idmap,nss_idmap}_doc || die
+ fi
+
+ rm -r "${ED}"/run || die
+ find "${ED}" -type f -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ udev_reload
+ tmpfiles_process sssd-tmpfiles.conf
+ echo
+ elog "You must set up sssd.conf (default installed into /etc/sssd)"
+ elog "and (optionally) configuration in /etc/pam.d in order to use SSSD"
+ elog "features."
+ echo
+ optfeature "Kerberos keytab renew (see krb5_renew_interval)" app-crypt/adcli
+
+ if ! use python; then
+ echo
+ ewarn "sssctl analyze will not work because the python USE flag is disabled."
+ fi
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.8.ebuild b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.8.ebuild
index 65085070cd..80f192a476 100644
--- a/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.8.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-auth/sssd/sssd-2.9.8.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="https://github.com/SSSD/sssd"
if [[ ${PV} != 9999 ]]; then
SRC_URI="https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz
https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz.asc"
- KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ KEYWORDS="amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc x86"
else
inherit git-r3
EGIT_REPO_URI="https://github.com/SSSD/sssd.git"
diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/grub/Manifest b/sdk_container/src/third_party/portage-stable/sys-boot/grub/Manifest
index 5779294414..7b096489df 100644
--- a/sdk_container/src/third_party/portage-stable/sys-boot/grub/Manifest
+++ b/sdk_container/src/third_party/portage-stable/sys-boot/grub/Manifest
@@ -3,7 +3,7 @@ DIST dejavu-sans-ttf-2.37.zip 417746 BLAKE2B c8904f3cd5a49370a7dc10e456684c88aea
DIST grub-2.12-bash-completion.patch.gz 3627 BLAKE2B 6ba80fd4fb4b28ae2e5a2387133d815da126a4eaa4b5cb24b13f4ba5a2499ab4099d10ada366ed39f84be2c38774122f48e1a1894768c5bee29149528610d095 SHA512 a9ee6d2253ae48d7f90907a9e975a3a1d01346bc621d8b8cddf7cc815cd91e078f6c61392724d13556ee64f099fa15c94fcb88a49ff02d4a90ebd376252cea5c
DIST grub-2.12.tar.xz 6675608 BLAKE2B a678f7fafb945d325c8cf47aa086f48357a8f6335b762f77038c30a3896b3b05491598d9931d5335841d224fffcbe4a9a43ca1479057c1f1ce52b8d2a952c431 SHA512 761c060a4c3da9c0e810b0ea967e3ebc66baa4ddd682a503ae3d30a83707626bccaf49359304a16b3a26fc4435fe6bea1ee90be910c84de3c2b5485a31a15be3
DIST grub-2.12.tar.xz.sig 566 BLAKE2B 9b77fe53041b99f1196743aa6d9fc9c727b17c6512129bab2b35005f2c70f371e30521ddd804bf0c666e36cf2667247980f385ca1ac911fa9b8e0311427dc01c SHA512 fbe971d8c382578b49d33902234edd9cbd084b70820a1a56a59df4ec30874c0dd4fe27f8dc44bb380716bb7480ca68a87d120a25b92a6a10ff6c8ec1b60548d3
-DIST grub-2.14-lld-support.tar.xz 6828 BLAKE2B 586274c56558f4b782f6bbfa511549daea4497c95f279a4aa733fe77e1ed7ddf2ced2ce803df999425c6d30d4ad888573b2ee0e69b8b14ce8102c5606bb2a311 SHA512 89522a61c174a8cf0ae7183a93f2ca01da89ff5f251c2207195408064fa882353a919b3185c784958a0e28d79d037b409a4c58a0e97e803968fa2c8c615401f2
+DIST grub-2.14-patches.tar.xz 10700 BLAKE2B 6a8850da59a56427c4e8159332e89b18c9c4f49fe95ecf4c7d8e9c8c905fea9d40a9c294e24cc4aa32f12175426f7e95fac16b16345092f8b9848c7f34b6a19e SHA512 eff9a7007f2230d642763ee8e9005da4041fffd9eb0527b909e871bf7681747f9e71ab5459b54f7ce5b9bb64a6d0659beb6fd0fb172488f62fe4148d4e73a86e
DIST grub-2.14.tar.xz 7725668 BLAKE2B 724bb430d8824bec39e6a025cf354a780b79260684c7c4e3d28beb08c8bee10d082a089fcb799f8f5eb6e83abcf8675fb7c5f5ddf443c5c0e61d6f180ee341af SHA512 5008e3b70072798d2b34301219fe174cc6bcfead40a9ab25fe32f30c62a392ffb7bf2eb629d481f4a6c19c2925324af3f08d7043e62623e746be2d8b3cbd1182
DIST grub-2.14.tar.xz.sig 566 BLAKE2B a26d44082a94b95efd13738a47dc37c33142f1d486b1643100c5e61f280464513679407c13ad3d362caf83ca63dc47ad0249a4291660dbc5aa47b739502cc6b5 SHA512 3087cc4c9abd4c16e5d57f3f9fcea83af471c1a5950d487ecb93908feac537df8720bc83854328891c46f26b202a16eadeec8d1ab343c6fe269986b6f9dd2de8
DIST unifont-15.0.06.pcf.gz 1358322 BLAKE2B 81811e3de390ca35d1a2dc1f1dee73464e97f44907ba522c218ba9c5e39ca3c9d767552780a257a97c156eb623c17786d9c0d2b67786d61df5ca33a1e10db7ca SHA512 0a28a406629c604f5cbf51f501528239a7ed50d19f93ea505bc5bdc72639e4b926b03f4b8782a5733041f7cdb4aebb9948ac7cfd5a8ad9a0fe309944e595517b
diff --git a/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14-r3.ebuild
similarity index 99%
rename from sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14-r2.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14-r3.ebuild
index 7d50dd838c..8cbfee458c 100644
--- a/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14-r2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-boot/grub/grub-2.14-r3.ebuild
@@ -46,7 +46,7 @@ if [[ ${PV} != 9999 ]]; then
SRC_URI="
mirror://gnu/${PN}/${P}.tar.xz
verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )
- https://dev.gentoo.org/~floppym/dist/${P}-lld-support.tar.xz
+ https://dev.gentoo.org/~floppym/dist/${P}-patches.tar.xz
"
S=${WORKDIR}/${P%_*}
fi
@@ -176,7 +176,7 @@ src_unpack() {
src_prepare() {
local PATCHES=(
- "${WORKDIR}/${P}-lld-support"
+ "${WORKDIR}/${P}-patches"
)
default
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.46.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.46.0.ebuild
index 357b3d282c..d7ff48ad1f 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.46.0.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.46.0.ebuild
@@ -35,7 +35,7 @@ else
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
#
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest
index 73d0fbb972..aff5dc7b1c 100644
--- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest
@@ -15,6 +15,7 @@ DIST gcc-13-20260205.tar.xz 84578824 BLAKE2B 889ff4c361b30c7429c1067445a3dd86b60
DIST gcc-13-20260212.tar.xz 84576196 BLAKE2B c637df92a9948bd88654509a9e03813daca16aff27909e35e47a7b1cf3a7e9abe07064c6bf2ee8223829a8203b6f7bab365d4cbd620d0a563c5cd9e6a73ba4f8 SHA512 9fdd87433a7b49c6a969dea2b023dabadbdec614b0eac84c5b0c459fd49df1786fb7b595e4015632691400bd6db2c5109db593709a5c0b89ce0b20021b888487
DIST gcc-13-20260219.tar.xz 84574608 BLAKE2B 72f5f1f292c5cd609ef05089dc9d524ce4a894a28aedbae38aa45369d8691efb2bb6aafc34870b5668634ccabbb68a029049767cae83678153f1cafedb422859 SHA512 037a489177de2fd42463d3993d857c33f3d2f7a78f9213070930f8226820b6546ba6b3a3c8fbfb47f2df4250154ac5f30e79f563b43ff850643bc4b9fc17d4c0
DIST gcc-13-20260226.tar.xz 84576560 BLAKE2B 02ad5b8bb991f5fcc951eb5d33492dea80747f4193d83d24bc308af54fb5d68a58274160f00ef0abeb731e9b72b2e9cd11312442835766d036bb7c8b203b4953 SHA512 19aa010b674edcf9a54cc2e5669cce6fd08c70b2233f9431d5d7cc89f6638f7a95b7cb9944f7d36ecf2c3c3074c21ecfa78b1b4e79ae0ff3185febaf5b87f0cd
+DIST gcc-13-20260305.tar.xz 84579092 BLAKE2B 9141ecd9bc92282e6823ffb389557163912b22122140a6d30c63860e6855fcdd04a8203dc6678bb450467ead4c886c2460a83a5adefa58149e995db6a1eca911 SHA512 c204297cc5bfaf48aaecbcd08868d2fc97cd2813be3ce7e176e0b1074bdc12758bee4c6dec36f7681a2a7ee29daa07b092eec8fd19f02d26a171f5715268202f
DIST gcc-13.2.0-musl-patches-2.tar.xz 5292 BLAKE2B c057d6574d03c05854edaa9f3fd40e9149662b04f3ac7a7db3eb078d73a7b535726d1bf52e5b12736dedb2f9898ad731f2e48a6421fcfbf7b90f929dee072fcb SHA512 a691da0c87c443a5e9d23731f4005f27871c5b12bc9102873ffa24d374aa7b9fbd187c4f5635d23fa9ffb17e351e76173c2d3fdf40646e355c4cb314b538de69
DIST gcc-13.2.0-patches-3.tar.xz 30956 BLAKE2B 29ce043b46645640ca1e983397af3e158588ad87575f0bc59451ea4a7dd5e3bb5b190ed031de6a22cd790d423ba111e95d222187dd09985dceb12db9f0a2d907 SHA512 4ffecae7be320124ad0c4e71e39e142b7aa8db0e70b5f486f491d7a33ea31efc6464c6abeea77df02a8bd5cf81f08225d625c8af5c27f9afa32c0d7d989f7a3c
DIST gcc-13.2.0.tar.xz 87858592 BLAKE2B 0034b29d3d6cc05821f0c4253ce077805943aff7b370729dd203bda57d89c107edd657eeddc2fb1e69ea15c7b0323b961f46516c7f4af89a3ccf7fea84701be2 SHA512 d99e4826a70db04504467e349e9fbaedaa5870766cda7c5cab50cdebedc4be755ebca5b789e1232a34a20be1a0b60097de9280efe47bdb71c73251e30b0862a2
@@ -29,6 +30,7 @@ DIST gcc-14-20260206.tar.xz 88365888 BLAKE2B 8ab03dea6ef6f20bffb15198a327fc686a0
DIST gcc-14-20260213.tar.xz 88372424 BLAKE2B 7831805a232eb732cba36853849a2b3e7dfc8911a4944ac25e3baea08ed6282b7850a62acd6d13877e23b44f8744e684753c1cb08d2957434a1a602843ad4db2 SHA512 0957d2b63269f43abc59538021b59bfa9971188eb194d2de2ebd50726ee19aa0f2903652d0ed20e240d5df77c308f19365f7c55351b8c35c3f91a3da5d0d73d7
DIST gcc-14-20260220.tar.xz 88374408 BLAKE2B e06578c3e17aded587bc857b67229a49b7dc9070b8989f440f1861fbf88b466e603e5398b467f1f88a2fd990d7cb6cd3533fac47c95d53b7a1baa7bbdf712048 SHA512 a9080da674d31bb7b29685c49c4b0546ce8fe1a2bec607f50a3a94ead1ad4ac2015f0ae5510ce5ceb0c2ad089745ca0f55905bc36b087fe09f87c9471021e418
DIST gcc-14-20260227.tar.xz 88377520 BLAKE2B 1b542572649e0200934ddb2ee096f1ef4b06e12a86b12a98991f3e4cc8738659a2b02f4b6d77afd70064d59f731a4e6400c51e764598aa0facdd028ee1e9be0a SHA512 fac95c7f487463af7508f5ed6504a0d72f2a507d679dd4f3f10c827f2d0095e9743feabf410376a1995e0387d1e51939f112253ea0ff02c114731dd2bcd5d372
+DIST gcc-14-20260306.tar.xz 88371144 BLAKE2B 88708d5bc8102cda936f22b00e8710d01e93bf38fc482cdcedd623fbf145697ca3aaecfb2a3238b9f40aaa5b8934a1747699fca1d2af27365bbe2c823c0e9420 SHA512 c0c36b9c02127fa246aea0aa86a20eb843505236646b47524f8eeac06bb210da05f94f6e52f4337b7bf384a776f5ca8adf65adb8f2604ed22a7b626fd7ca7c6c
DIST gcc-14.3.0-musl-patches-2.tar.xz 6888 BLAKE2B e2f9ce6d445b7ced8f78c18585887422ffdd32356368a456a7cfde5a1854515b32546c1d25a2ab8637ee62d04a2c0bda1afc8d53c44e5c80c12499918c3c18fc SHA512 0b59d228213024cd93d9ffbd4ae5947021db2dc71bd320cc0e4ccf523d39f72e61be25c1a49a343729fe7b9abf7181503de3e650b255d80ab6d969d0de317d19
DIST gcc-14.3.0-patches-4.tar.xz 28116 BLAKE2B 5804f10b40befad1cb9eab4e536377c08aed8c54d3de27f188ae2d52fa7c082a529ad9cb64f9574087afe74e64138c9fc918d653bd2c1d062b8b68d5c7ab640d SHA512 75ee4895efea0131107cf664a0f9fd10f38da0d0f93704e1920778e07f1a860d872a97e1e528f8e1ab754cca25948bb09c444b80cc04f5ae3a516336290bb99c
DIST gcc-14.3.0-patches-5.tar.xz 53952 BLAKE2B 3e5f63d760caf3c18c0f683c00170bb71998b4f0e15552103359d5c0954144676f6ca60e3e367a94cbdff0ab9bec21f3e04e30c38aae8f7e79911da30e6aeb76 SHA512 1702b7f6ee791468d02fcb9d418d2dd48e10cd6dc6eab0cf455aaf848bb78d953b00690fd78cab1ddd5af02acc237072c99ee43f0e512ae3e2e5f922f40f0dfe
@@ -41,6 +43,7 @@ DIST gcc-15-20260207.tar.xz 92363192 BLAKE2B 8914359de9f39731cde87efe28b59256f09
DIST gcc-15-20260214.tar.xz 92376288 BLAKE2B 36aad1794fa23574501dc27b4ce88cce9aed13f6ee93f9797bd058388d68da1b3f93f5fa4b5dd2f02d99556e15ed1f92e9c6cfa45c9ecba2f9c3130c5ac4afff SHA512 e610aa9142e58ab59b32f7a83f62cf629ce08b41e1fe41ef56cbad72240c0d10dc1e784bb6e34962a03e271d0d8ca6ae95ca67886fa9f229668ad7e514dbc357
DIST gcc-15-20260221.tar.xz 92364832 BLAKE2B 899d0963c0b688fd8249cf9201b003e08b24f67ec397b0d29df24a972313560954c146d2eacb01ed894df1932091c8e1d77508d16c692dca71949263e6c10a11 SHA512 01485ac36fca7df2f132db7468158532ff8083d9227c1d57582b65047932e8202ab3ac1caf2c2bdedad58bcd31a6568217f51d3492e461ee7415b8e6506aa77d
DIST gcc-15-20260228.tar.xz 92382472 BLAKE2B e1f0aa167133e634248e940b8bd4e0b05d032b9fed03e6540d1497e3fa33f74a67e70fa22586a781e9305b99fe42bab60af694caba30de7277ef869a49640f0f SHA512 051918fd499be7ac77e3281e655f444ddb3e2e825ae3d895d56db3440b9ab67d374899fd52699adbd036458c5701b9dfa36806fa019b6bbf762de818432343b2
+DIST gcc-15-20260307.tar.xz 92385576 BLAKE2B 8bedda7ff2cc8f75af831ff5ba36be1db1191cf18974a7f61961519188281053034b5eca74ee8b231a4c268303f3e7c89cea103c92e6ba550f17ba812d5d20a0 SHA512 8e0eefcb2c4cdaf266f4b2355784ae79d0c11881a0136b703113641663c76e74db2c3afdad7600ee08a909d28019e7ef4916298b2fd0ae7a0eff20c22574b989
DIST gcc-15.2.0-musl-patches-1.tar.xz 7168 BLAKE2B 6b7cfb123c3a691693240db815e6852a1e6c3820baa499368c463e0a0c1490c701053cfea10bf1d33f89dd2ba7bbddf63c4e6e0976590e3aaf1fee78b9282079 SHA512 ab80ffd69b9ead1fe06a9433faaa97ae53947d214999e77ea363fa6435de080d031a1aa6869e1dc088e800317952f2dc249a9e872113db56fb76f0a432240871
DIST gcc-15.2.0-patches-2.tar.xz 18708 BLAKE2B 09c54bd1b8436e12a3da1c3ee41017cd3e960268a5d4637252152b44a4cc93934d4dc93eff842d7dcee4d1688b7f2d98be48114ef5c864793242177f7549c933 SHA512 f11cfafe00f7d18e05a316bd1dc522477cc4118fdd65019cf85bca674ff0180951506fef84ce0b5b13190ccfe44c777a64afdc602a4580595005b43b79ae7411
DIST gcc-15.2.0-patches-3.tar.xz 17436 BLAKE2B ae72e3c5feb7b96c10eb0706efe95047f0516a66ec19488ad7281dd4c62d4c6f1d1d594c6a865c808293b30b4f57ee8bc018b90fcf5944ccb935bc391752aa74 SHA512 4d23fd0dacc33c069528ef0bd6ece3029a4b221e55c82347c2df8a6fa8b890c6e7eeaf15284204a4a29841678b033af2272481bde6fca8ebcc08f8c233f4e7e3
@@ -52,12 +55,14 @@ DIST gcc-16-20260208.tar.xz 98344104 BLAKE2B 55968c9e137bab67ffed776a1ce9981ffc0
DIST gcc-16-20260215.tar.xz 98388052 BLAKE2B 924334293d0628a7457cda91aa46f5a3fa9c0d49915c497391efd1758a079ee9e1e210efe1514d526181a74d99c78f5bb9f074350136c03aa921fe41f17d6d59 SHA512 c2e7395d07f06f27a8e588b2f96dcb6630b1ac47aab0ab1ab6ee7055ec34661b4f0e17c7184e9fc0273765475829d652108f7f7c53c08f1b5f780e7df23809d0
DIST gcc-16-20260222.tar.xz 98490280 BLAKE2B a78546fe74ff97593cfc0e4c35d8bd67faa21fe2853918578f48b3e53170a295c6a98db0e5c1c252fe38b786bc35af5e7aa2db2f5ce39145025a31f298ff5834 SHA512 3dc5bbcb2ecbc0fa0262bbfeb8af75e5c90c3935bca825055d984e8cda87b31b03b16949eb2a3a88b3f89996302d9fd2b624fab6cdeea5b3e4a1f40c280a68ee
DIST gcc-16-20260301.tar.xz 98581536 BLAKE2B ab779e3c30965b182c13a7f25388f19b757cb071420d6ec17e1dbdc0364645f48d225a60c3f14f02e1d19b769b2741a46a4ffadbcf207b28a61a1e8238b5263f SHA512 3a9bb3d41793e780adf704690ae4d60345b504f6b19ee4c545b68f8df0ab1afce07046a7f90ac11710de87762d710bbf6d652f53bb3bbd4eef0db20db25c5acc
+DIST gcc-16-20260308.tar.xz 98605400 BLAKE2B 757a6ddc67f21f733e0469bf0c8832281fd5457b93ec436812b8dab7d3e74c79482e7dc526a9d76fcfd819c4a42b5fce3c71fb36b278cf11e6cc87610f2229ac SHA512 2b4644dd3f225ed89d14eff1436a1d7977b7f39c55683bf789a7afe74ef2e699aa2ac25934ca5f3474397ff6d50fa5debfe46a56d47cb622f8d88ecb010d95d0
DIST gcc-16.0.0-musl-patches-1.tar.xz 3040 BLAKE2B 18b16357699780eb470cf44a10710281955140103198e0bd55b75e1efe3dbec233689edb11e1b9a62f782f3d97293af4906c18c2c41613b422eda085ee819467 SHA512 5ba580c7c7bb9e62935a5162d44d357cc31185a113acff7498ed7b1ac43fd0a35de7c3de0c87f02fe0be46b5e55b49bb35d1f5cd470058d21a9ea4096a37e13d
DIST gcc-16.0.0-patches-34.tar.xz 27964 BLAKE2B 69cb42657f2e52c8d54c98023261a2deb811d1dc7a63064eaf24936ea10ef6826350339f2273b9bb276959d10c8e819fcb671de9d96e16ce5ce6f1c8dd4071c5 SHA512 16ab66ed14083a5c00e28d2f8ae06319a6187049fbf0cea0929f0c80acb647801bc08dc7621472d9d639b763311dce586f81e6a8bb0c13a1fe796a9036a325e4
DIST gcc-16.0.0-patches-35.tar.xz 25940 BLAKE2B e6a7f7e550a83a706914a46d9226690e0fc8c130492f1c0c6e000a3bcfbcc28cab07437d6e0cbbfc9f511e9130f49272096bf1335e5e9bdbe9aa5812ca99ba42 SHA512 70f8128e24a5fcff4cafcddf2847bd439cf445359cf37d908749133ae0f69d6da18bfc6a8de9bc968963eec86f3eec9684df2db5eb66fe25717a4ed8b2533f4e
DIST gcc-16.0.0-patches-36.tar.xz 26860 BLAKE2B 87387001fa68c9d1007cc257168a5c2c3fae9151852a9eac74b1a184f554f8b5686f433efc5a676248a5e650bde4a3c74789ea8103d531ca0b8766fbbec23c98 SHA512 5b1feb07491375e4d343af625f1e6cdfd5797d7a7527885fb744880271eb0906ada69e823508454a44ca11b7715c339f2c2349b953e996f9f5170e4113810d17
DIST gcc-16.0.0-patches-37.tar.xz 25552 BLAKE2B 6fcd16c4d3e40ebb61bd371b1e234e3ccae4f869501b2affd3c705a385f0cfe6390ead5fb212e43999c62177d15149c1737ae32321d034eac8db7601458400bd SHA512 857ed03394b9222d46a4d908167a77b8ff5e0ebdce7eddaeb9eb73666c6f227d8074d4d1afb0bd5fdcdcd44ff9c99c27aba8ef27bbba0d91b7a6a459bb60739a
DIST gcc-16.0.0-patches-38.tar.xz 26208 BLAKE2B a2d717e2eca757bc8e2cf8eed7c03c7022847f7a8100555c098b447035cf802eba3aa5f3ea042a1464b8225368e8019ba30f486a1307b5050befb7bcb7f9678e SHA512 967bf16a72dd45bde5cc059a4a6a51453d1a039edfaf8634f8f631e33d0395f933a0fdc48406fd82dd824b221389d776ed0301d0d0a0db8dfe94dcde18feaa46
+DIST gcc-16.0.0-patches-39.tar.xz 27360 BLAKE2B 33680cf4e1cd74c772d93d923d5500fd3ca5cbcc78c04e91c4ce996416c493f85a3e8d9cb9e61df56142485083c532321d8b0642930c5af3dadd7b18a836c41d SHA512 4c996fe13f6717645f953682c898bd464b094a6bf9a34464f51b39deeae7411f11d8eaa6e1d2d7c2ebb44c88bd7f01e161a9ba490e721a2b93decbe0dabda396
DIST gcc-8.5.0-patches-5.tar.xz 20188 BLAKE2B 45b29161105edc6344bb48f5bdf17e1aad6e8d9edb4d9434816425996c1b12c10f1303963776adad9db866d845f864d80d198a30e35ee6c204ca3659cf7a1401 SHA512 f22ab5d8e3116e2e896a5dcbbf5cef67dc5090182af364ef64fc22d2b28c029da5ed39f126f446721e388e7b6848239d01f5fc0346e49b96d5c04068b557f8f8
DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8
DIST gcc-9.5.0-patches-3.tar.xz 17888 BLAKE2B f2be05f32f4ecca41ebf4f402bf8fb3c11a36a8b7bd912ee9fe6baea980929774b629e12df7afb3405f1f5d044766a437b3eca5433f4af6c757f4a9dbb2e77eb SHA512 d31bb1964cdb2376572e4981b22c7ffa6fa695259c27af5d0d12aebc334cd1122c2f75739033f25f1e672300adeab2b3772622cb16099d002f3f8c5a8fe694f9
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260305.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260305.ebuild
new file mode 100644
index 0000000000..2448afba4b
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.4.1_p20260305.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes and explanations of GCC handling are on the wiki:
+# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc
+
+TOOLCHAIN_PATCH_DEV="sam"
+TOOLCHAIN_HAS_TESTS=1
+PATCH_GCC_VER="13.3.0"
+MUSL_GCC_VER="13.3.0"
+PATCH_VER="9"
+MUSL_VER="3"
+PYTHON_COMPAT=( python3_{11..14} )
+
+if [[ ${PV} == *.9999 ]] ; then
+ MY_PV_2=$(ver_cut 2)
+ MY_PV_3=1
+ if [[ ${MY_PV_2} == 0 ]] ; then
+ MY_PV_2=0
+ MY_PV_3=0
+ else
+ MY_PV_2=$((${MY_PV_2} - 1))
+ fi
+
+ # e.g. 12.2.9999 -> 12.1.1
+ TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3}
+elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
+ # Cheesy hack for RCs
+ MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
+ MY_P=${PN}-${MY_PV}
+ GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
+ TOOLCHAIN_SET_S=no
+ S="${WORKDIR}"/${MY_P}
+fi
+
+inherit toolchain
+
+if tc_is_live ; then
+ # Needs to be after inherit (for now?), bug #830908
+ EGIT_BRANCH=releases/gcc-$(ver_cut 1)
+elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+ # Don't keyword live ebuilds
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ :;
+fi
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+ # Technically only if USE=hardened *too* right now, but no point in complicating it further.
+ # If GCC is enabling CET by default, we need glibc to be built with support for it.
+ # bug #830454
+ RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
+ DEPEND="${RDEPEND}"
+fi
+
+src_prepare() {
+ local p upstreamed_patches=(
+ # add them here
+ )
+ for p in "${upstreamed_patches[@]}"; do
+ rm -v "${WORKDIR}/patch/${p}" || die
+ done
+
+ toolchain_src_prepare
+
+ eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
+ eapply_user
+}
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260306.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260306.ebuild
new file mode 100644
index 0000000000..5803052183
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.3.1_p20260306.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes and explanations of GCC handling are on the wiki:
+# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc
+
+TOOLCHAIN_PATCH_DEV="sam"
+TOOLCHAIN_HAS_TESTS=1
+PATCH_GCC_VER="14.3.0"
+PATCH_VER="5"
+MUSL_VER="2"
+MUSL_GCC_VER="14.3.0"
+PYTHON_COMPAT=( python3_{11..14} )
+
+if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
+ # Cheesy hack for RCs
+ MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
+ MY_P=${PN}-${MY_PV}
+ GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
+ TOOLCHAIN_SET_S=no
+ S="${WORKDIR}"/${MY_P}
+fi
+
+inherit toolchain
+
+if tc_is_live ; then
+ # Needs to be after inherit (for now?), bug #830908
+ EGIT_BRANCH=releases/gcc-$(ver_cut 1)
+elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+ # m68k doesnt build (ICE, bug 932733)
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ :;
+fi
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+ # Technically only if USE=hardened *too* right now, but no point in complicating it further.
+ # If GCC is enabling CET by default, we need glibc to be built with support for it.
+ # bug #830454
+ RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
+ DEPEND="${RDEPEND}"
+fi
+
+src_prepare() {
+ local p upstreamed_patches=(
+ # add them here
+ )
+ for p in "${upstreamed_patches[@]}"; do
+ rm -v "${WORKDIR}/patch/${p}" || die
+ done
+
+ toolchain_src_prepare
+
+ eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
+ eapply_user
+}
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260307.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260307.ebuild
new file mode 100644
index 0000000000..bd7ab16f42
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-15.2.1_p20260307.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes and explanations of GCC handling are on the wiki:
+# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc
+
+TOOLCHAIN_PATCH_DEV="sam"
+TOOLCHAIN_HAS_TESTS=1
+PATCH_GCC_VER="15.2.0"
+PATCH_VER="5"
+MUSL_VER="1"
+MUSL_GCC_VER="15.2.0"
+PYTHON_COMPAT=( python3_{11..14} )
+
+if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
+ # Cheesy hack for RCs
+ MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
+ MY_P=${PN}-${MY_PV}
+ GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
+ TOOLCHAIN_SET_S=no
+ S="${WORKDIR}"/${MY_P}
+fi
+
+inherit toolchain
+
+if tc_is_live ; then
+ # Needs to be after inherit (for now?), bug #830908
+ EGIT_BRANCH=master
+elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+ # Don't keyword live ebuilds
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ :;
+fi
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+ # Technically only if USE=hardened *too* right now, but no point in complicating it further.
+ # If GCC is enabling CET by default, we need glibc to be built with support for it.
+ # bug #830454
+ RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
+ DEPEND="${RDEPEND}"
+fi
+
+src_prepare() {
+ local p upstreamed_patches=(
+ # add them here
+ )
+ for p in "${upstreamed_patches[@]}"; do
+ rm -v "${WORKDIR}/patch/${p}" || die
+ done
+
+ toolchain_src_prepare
+ eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
+ eapply_user
+}
diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260308.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260308.ebuild
new file mode 100644
index 0000000000..f0674c77da
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-16.0.1_p20260308.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes and explanations of GCC handling are on the wiki:
+# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc
+
+TOOLCHAIN_PATCH_DEV="sam"
+TOOLCHAIN_HAS_TESTS=1
+PATCH_GCC_VER="16.0.0"
+PATCH_VER="39"
+MUSL_VER="1"
+MUSL_GCC_VER="16.0.0"
+PYTHON_COMPAT=( python3_{11..14} )
+
+if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
+ # Cheesy hack for RCs
+ MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
+ MY_P=${PN}-${MY_PV}
+ GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
+ TOOLCHAIN_SET_S=no
+ S="${WORKDIR}"/${MY_P}
+fi
+
+inherit toolchain
+
+if tc_is_live ; then
+ # Needs to be after inherit (for now?), bug #830908
+ EGIT_BRANCH=master
+elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+ # Don't keyword live ebuilds
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ :;
+fi
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+ # Technically only if USE=hardened *too* right now, but no point in complicating it further.
+ # If GCC is enabling CET by default, we need glibc to be built with support for it.
+ # bug #830454
+ RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
+ DEPEND="${RDEPEND}"
+fi
+
+src_prepare() {
+ local p upstreamed_patches=(
+ # add them here
+ )
+ for p in "${upstreamed_patches[@]}"; do
+ rm -v "${WORKDIR}/patch/${p}" || die
+ done
+
+ toolchain_src_prepare
+ eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
+ eapply_user
+}
diff --git a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest
index fa3144686b..6ee771e672 100644
--- a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest
+++ b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest
@@ -1,7 +1,5 @@
-DIST intel-microcode-collection-20251112.tar.xz 22855268 BLAKE2B 13d40d224e838b9aecb5d404f63c36bec0fe162f51cc909a32cee8665a844a628083bdd915e06d4710029d89479c4e0e1c8ec2f9c7ade0a6fd2b210bdfc597d5 SHA512 cb7f070933c2fa49402f9d4646b4484d67a201b95c14b995cef749482e896f586a9eefd2cc8add7a6659012f95bc5316ea48f1ffae2502f268b30afab8587725
DIST intel-microcode-collection-20260211.tar.xz 24796412 BLAKE2B a5944ed538a1d7ddae5e92409383f09e10304b39834d8488e5197e1b66d17fadd495f23e0bdab4ed06cd6abee73048617805f902ee95a01f37f79f54851d3ba0 SHA512 7d760a121601c329fdb7ef3d79217b29a6e3e2c7c7b112f701a6e60467641472fe4e3f66bf61d2788c4bfeb17fa2e6c1dc11c5cd18efd99e2acf753fdb3b1b0c
DIST intel-microcode-collection-20260227.tar.xz 26976652 BLAKE2B 7a49dfcd62d9ba1773768954b4aaff98c37ae50a2be16c671a78a4046c5523634bc19809b4bbef03cd7a60e8c710ce477a9b0949ff6a8ddc8aa9f8590143de23 SHA512 1ce5428d50e692015b9c919049bda27215453aaddbcb8bc3c8c3312ad763ca9f102b0cc614905931441e031a5fc1ac7f54dd367a0b4506b41f73e7260e11ee18
DIST intel-ucode-sig_0x406e3-rev_0xd6.bin 101376 BLAKE2B 66d55867954d69dda1425febd93bb8c89f7aa836d504f8b5fee127f8505bcf2246f4fcc55cc245bc5e532528d60cca2eee278de7ab5174dc2862db7982a2b36f SHA512 248066b521bf512b5d8e4a8c7e921464ce52169c954d6e4ca580d8c172cd789519e22b4cf56c212e452b4191741f0202019f7061d322c9433b5af9ce5413b567
-DIST microcode-20251111.tar.gz 16586556 BLAKE2B 5cfe307f498a153540196679d5f32b3d15d54ece195f7c2f937bb16731e705bb643ad9302e1eaf0356414a0d345fb158e75035e75993b4d00275fb9565fd77b4 SHA512 a11ded3158d761ae68258ca61a15014258d68ea28e9e9c94c125a49490a1df0f4b5c6cc37e97b42d84594760e455a1444feb2106e920ea6dd09934e545d92188
DIST microcode-20260210.tar.gz 16622114 BLAKE2B 3b3a8fef499a67af0264550b457ae7de4f6965d9c8c02cc1b5b0f02316580662397016287510e09274e241d8d9cb7d70245f05a584f746515ac7c9bbe4a5cb28 SHA512 ec4ed32600ce1ce2c9c52796458f92205c89c38ba2834d84ab86d800790c709d22cb66e4fca5edda42752363956324f8066d08e3b1d81c50ac879d2749068655
DIST microcode-20260227.tar.gz 16621772 BLAKE2B 3725dee3af32b545a754a47616c7451a6e7e227af125a8eb35729b2784dfbdecccea6054e1f3190119253041697ce525380e5a98c929e42a4294028d2eca1ebd SHA512 d9de41b1f1b2740d12f0e9e4987b8001d7b9a0ae53382e9bd715936fb7cab7da74a9154df781950738db1c1ebb9ad4f46700355b67a0fb4e8fd5e80711702723
diff --git a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20251111_p20251112.ebuild b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20251111_p20251112.ebuild
deleted file mode 100644
index f99a41e15b..0000000000
--- a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20251111_p20251112.ebuild
+++ /dev/null
@@ -1,338 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit dist-kernel-utils linux-info mount-boot
-
-# Find updates by searching and clicking the first link (hopefully it's the one):
-# https://www.intel.com/content/www/us/en/search.html?keyword=Processor+Microcode+Data+File
-#
-#
-# Package Maintenance instructions:
-# 1. The ebuild is in the form of intel-microcode-_p.ebuild
-# 2. The INTEL_SNAPSHOT upstream is located at: https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files
-# 3. The COLLECTION_SNAPSHOT is created manually using the following steps:
-# a. Clone the repository https://github.com/platomav/CPUMicrocodes
-# b. Rename the Intel directory to intel-microcode-collection-
-# c. From the CPUMicrocodes directory tar and xz compress the contents of intel-microcode-collection-:
-# tar -cJf intel-microcode-collection-.tar.xz intel-microcode-collection-/
-# d. This file can go in your devspace, add the URL to SRC_URI if it's not there
-# https://dev.gentoo.org/~/dist/intel-microcode/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz
-#
-# PV:
-# * the first date is upstream
-# * the second date is snapshot (use last commit date in repo) from intel-microcode-collection
-
-COLLECTION_SNAPSHOT="${PV##*_p}"
-INTEL_SNAPSHOT="${PV/_p*}"
-#NUM="28087"
-
-#https://downloadcenter.intel.com/Detail_Desc.aspx?DwnldID=${NUM}
-#https://downloadmirror.intel.com/${NUM}/eng/microcode-${INTEL_SNAPSHOT}.tgz
-
-DESCRIPTION="Intel IA32/IA64 microcode update data"
-HOMEPAGE="https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files https://github.com/platomav/CPUMicrocodes http://inertiawar.com/microcode/"
-SRC_URI="
- https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/archive/microcode-${INTEL_SNAPSHOT}.tar.gz
- https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/raw/437f382b1be4412b9d03e2bbdcda46d83d581242/intel-ucode/06-4e-03 -> intel-ucode-sig_0x406e3-rev_0xd6.bin
- https://dev.gentoo.org/~mpagano/dist/intel-microcode/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz
- https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz
-"
-S="${WORKDIR}"
-
-LICENSE="intel-ucode"
-SLOT="0"
-KEYWORDS="-* amd64 x86"
-IUSE="dist-kernel hostonly +initramfs +split-ucode vanilla"
-REQUIRED_USE="
- || ( initramfs split-ucode )
- dist-kernel? ( split-ucode )
-"
-RESTRICT="binchecks strip"
-
-BDEPEND=">=sys-apps/iucode_tool-2.3"
-# !/dev/null; then
- # new tarball format from GitHub
- mv * ../ || die "Failed to move Intel-Linux-Processor-Microcode-Data*"
- cd .. || die
- rm -r Intel-Linux-Processor-Microcode-Data* || die
- fi
-
- mkdir intel-ucode-old || die
- cp "${DISTDIR}"/intel-ucode-sig_0x406e3-rev_0xd6.bin "${S}"/intel-ucode-old/ || die
-
- # Prevent "invalid file format" errors from iucode_tool
- rm -f "${S}"/intel-ucod*/list || die
-
- # https://gitlab.com/iucode-tool/iucode-tool/-/issues/4
- rm "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT}/cpu106C0_plat01_ver00000007_2007-08-24_PRD_923CDFA3.bin || die
-
- # Remove non-microcode file from list
- rm -f "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT}/LICENSE || die
- rm -f "${S}"/intel-ucode*/LICENSE || die
-}
-
-src_install() {
- # This will take ALL of the upstream microcode sources:
- # - microcode.dat
- # - intel-ucode/
- # In some cases, they have not contained the same content (eg the directory has newer stuff).
- MICROCODE_SRC=(
- "${S}"/intel-ucode/
- "${S}"/intel-ucode-with-caveats/
- "${S}"/intel-ucode-old/
- )
-
- # Allow users who are scared about microcode updates not included in Intel's official
- # microcode tarball to opt-out and comply with Intel marketing
- if ! use vanilla; then
- MICROCODE_SRC+=( "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT} )
- fi
-
- # These will carry into pkg_preinst via env saving.
- : ${MICROCODE_BLACKLIST=${MICROCODE_BLACKLIST_DEFAULT}}
- : ${MICROCODE_SIGNATURES=${MICROCODE_SIGNATUES_DEFAULT}}
-
- opts=(
- ${MICROCODE_BLACKLIST}
- ${MICROCODE_SIGNATURES}
- # be strict about what we are doing
- --overwrite
- --strict-checks
- --no-ignore-broken
- # we want to install latest version
- --no-downgrade
- # show everything we find
- --list-all
- # show what we selected
- --list
- )
-
- # Instruct Dracut on whether or not we want the microcode in initramfs
- # Use here 15 instead of 10, intel-microcode overwrites linux-firmware
- (
- insinto /usr/lib/dracut/dracut.conf.d
- newins - 15-${PN}.conf <<<"early_microcode=$(usex initramfs)"
- )
- if use initramfs; then
- # Install installkernel/kernel-install hooks for non-dracut initramfs
- # generators that don't bundled the microcode
- (
- exeinto /usr/lib/kernel/preinst.d
- doexe "${FILESDIR}/35-intel-microcode.install"
- exeinto /usr/lib/kernel/install.d
- doexe "${FILESDIR}/35-intel-microcode-systemd.install"
- )
- fi
-
- # The earlyfw cpio needs to be in /boot because it must be loaded before
- # rootfs is mounted.
- if ! use dist-kernel && use initramfs; then
- dodir /boot && opts+=( --write-earlyfw="${ED}/boot/intel-uc.img" )
- fi
-
- keepdir /lib/firmware/intel-ucode
- opts+=( --write-firmware="${ED}/lib/firmware/intel-ucode" )
-
- iucode_tool \
- "${opts[@]}" \
- "${MICROCODE_SRC[@]}" \
- || die "iucode_tool ${opts[@]} ${MICROCODE_SRC[@]}"
-
- dodoc releasenote.md
-}
-
-pkg_preinst() {
- if [[ ${MICROCODE_BLACKLIST} != ${MICROCODE_BLACKLIST_DEFAULT} ]]; then
- ewarn "MICROCODE_BLACKLIST is set to \"${MICROCODE_BLACKLIST}\" instead of default \"${MICROCODE_BLACKLIST_DEFAULT}\". You are on your own!"
- fi
-
- if [[ ${MICROCODE_SIGNATURES} != ${MICROCODE_SIGNATURES_DEFAULT} ]]; then
- ewarn "Package was created using advanced options:"
- ewarn "MICROCODE_SIGNATURES is set to \"${MICROCODE_SIGNATURES}\" instead of default \"${MICROCODE_SIGNATURES_DEFAULT}\"!"
- fi
-
- # Make sure /boot is available if needed.
- use initramfs && ! use dist-kernel && mount-boot_pkg_preinst
-
- local _initramfs_file="${ED}/boot/intel-uc.img"
-
- if use hostonly; then
- # While this output looks redundant we do this check to detect
- # rare cases where iucode_tool was unable to detect system's processor(s).
- local _detected_processors=$(iucode_tool --scan-system 2>&1)
- if [[ -z "${_detected_processors}" ]]; then
- ewarn "Looks like iucode_tool was unable to detect any processor!"
- else
- einfo "Only installing ucode(s) for ${_detected_processors#iucode_tool: system has } due to USE=hostonly ..."
- fi
-
- opts=(
- --scan-system
- # be strict about what we are doing
- --overwrite
- --strict-checks
- --no-ignore-broken
- # we want to install latest version
- --no-downgrade
- # show everything we find
- --list-all
- # show what we selected
- --list
- )
-
- # The earlyfw cpio needs to be in /boot because it must be loaded before
- # rootfs is mounted.
- if ! use dist-kernel && use initramfs; then
- opts+=( --write-earlyfw=${_initramfs_file} )
- fi
-
- if use split-ucode; then
- opts+=( --write-firmware="${ED}/lib/firmware/intel-ucode" )
- fi
-
- opts+=( "${ED}/lib/firmware/intel-ucode-temp" )
-
- mv "${ED}"/lib/firmware/intel-ucode{,-temp} || die
- keepdir /lib/firmware/intel-ucode
-
- iucode_tool "${opts[@]}" || die "iucode_tool ${opts[@]}"
-
- rm -r "${ED}"/lib/firmware/intel-ucode-temp || die
-
- elif ! use split-ucode; then # hostonly disabled
- rm -r "${ED}"/lib/firmware/intel-ucode || die
- fi
-
- # Because it is possible that this package will install not one single file
- # due to user selection which is still somehow unexpected we add the following
- # check to inform user so that the user has at least a chance to detect
- # a problem/invalid select.
- local _has_installed_something=
- if use initramfs && [[ -s "${_initramfs_file}" ]]; then
- _has_installed_something="yes"
- elif use split-ucode; then
- _has_installed_something=$(find "${ED}/lib/firmware/intel-ucode" -maxdepth 0 -not -empty -exec echo yes \;)
- fi
-
- if use hostonly && [[ -n "${_has_installed_something}" ]]; then
- elog "You only installed ucode(s) for all currently available (=online)"
- elog "processor(s). Remember to re-emerge this package whenever you"
- elog "change the system's processor model."
- elog ""
- elif [[ -z "${_has_installed_something}" ]]; then
- ewarn "WARNING:"
- if [[ ${MICROCODE_SIGNATURES} != ${MICROCODE_SIGNATURES_DEFAULT} ]]; then
- ewarn "No ucode was installed! Because you have created this package"
- ewarn "using MICROCODE_SIGNATURES variable please double check if you"
- ewarn "have an invalid select."
- ewarn "It's rare but it is also possible that just no ucode update"
- ewarn "is available for your processor(s). In this case it is safe"
- ewarn "to ignore this warning."
- else
- ewarn "No ucode was installed! It's rare but it is also possible"
- ewarn "that just no ucode update is available for your processor(s)."
- ewarn "In this case it is safe to ignore this warning."
- fi
-
- ewarn ""
-
- if use hostonly; then
- ewarn "Unset \"hostonly\" USE flag to install all available ucodes."
- ewarn ""
- fi
- fi
-}
-
-pkg_prerm() {
- # Make sure /boot is mounted so that we can remove /boot/intel-uc.img!
- use initramfs && ! use dist-kernel && mount-boot_pkg_prerm
-}
-
-pkg_postrm() {
- # Don't forget to umount /boot if it was previously mounted by us.
- use initramfs && ! use dist-kernel && mount-boot_pkg_postrm
-}
-
-pkg_postinst() {
- if use initramfs; then
- if use dist-kernel; then
- dist-kernel_reinstall_initramfs "${KV_DIR}" "${KV_FULL}" --all
- else
- # Don't forget to umount /boot if it was previously mounted by us.
- mount-boot_pkg_postinst
- fi
- fi
-
- # We cannot give detailed information if user is affected or not:
- # If MICROCODE_BLACKLIST wasn't modified, user can still use MICROCODE_SIGNATURES
- # to to force a specific, otherwise blacklisted, microcode. So we
- # only show a generic warning based on running kernel version:
- if kernel_is -lt 4 14 34; then
- ewarn "${P} contains microcode updates which require"
- ewarn "additional kernel patches which aren't yet included in kernel <4.14.34."
- ewarn "Loading such a microcode through kernel interface from an unpatched kernel"
- ewarn "can crash your system!"
- ewarn ""
- ewarn "Those microcodes are blacklisted per default. However, if you have altered"
- ewarn "MICROCODE_BLACKLIST or MICROCODE_SIGNATURES, you maybe have unintentionally"
- ewarn "re-enabled those microcodes...!"
- ewarn ""
- ewarn "Check \"${EROOT}/usr/share/doc/${PN}-*/releasenot*\" if your microcode update"
- ewarn "requires additional kernel patches or not."
- fi
-}
diff --git a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20260227_p20260227.ebuild b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20260227_p20260227.ebuild
index 7f888c0588..c7ca5d9bbe 100644
--- a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20260227_p20260227.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20260227_p20260227.ebuild
@@ -43,7 +43,7 @@ S="${WORKDIR}"
LICENSE="intel-ucode"
SLOT="0"
-KEYWORDS="-* ~amd64 ~x86"
+KEYWORDS="-* amd64 x86"
IUSE="dist-kernel hostonly +initramfs +split-ucode vanilla"
REQUIRED_USE="
|| ( initramfs split-ucode )
diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/Manifest b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/Manifest
index 72f5ac544c..52bfa98996 100644
--- a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/Manifest
+++ b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/Manifest
@@ -1,2 +1,4 @@
DIST e2fsprogs-1.47.3.tar.sign 310 BLAKE2B 9bf3f1765aeec209c85466a7fdd77bc257d9648dece7e6489e99e76d12e28813f77c3975771588bf3237a65e3febbb986b4c464ab5376d20c4af98f152cd7357 SHA512 b31544569bd5ab0ed6485fc5e737309e41d3dbc67f6fc3ecbf9a6fc3875f14a30d9e588cfee471fe102c706502f77c9b770802d2d920ffa73fd0eec5c0c8fa21
DIST e2fsprogs-1.47.3.tar.xz 7321540 BLAKE2B 5d83a47d24f28fb4e0a6e8a145b146e6ff0de4463a16720790041f6fe750e595d749e730016bc3a9255c9ed3172b15e37f0fa8af4e8463f724f6bd221a9fa161 SHA512 1139b793cfa2f1af4e8ef06439522ff5aa3bab701201f2a4ef74910eb0c4d8c86dbd40d5a8bdc798dc52f121a0ca9e454eda0c6058e2dc5d4a25e82f669e96ae
+DIST e2fsprogs-1.47.4.tar.sign 310 BLAKE2B e0b2f3c9f0299c69234d882f867a163f21854537a6c318f92457a8a92bcaa06fbe70a498ec130ad9ec33d977ad763bb8e7113516b2b31227f73408b6329e1f9c SHA512 02844b80e97c401203f2ff1693e19dd946a425c18509223f118ab9f19c8c1ca9482d5ae2a6b2b9eac5072a78c44120d7a273b0fa9d2a08954c70c6efe753f669
+DIST e2fsprogs-1.47.4.tar.xz 7337236 BLAKE2B ae190e773a83c12a0ab438e13911a5a3f8a25da68373a0911eaddf0a979debcc5a15c22fc7d6fbaed43659c1fc1276e6a345d2f6a73a4ab92e730f177fe40cdb SHA512 c316ce38d73786fb45b3728cd31991fe81b14a1e61dae645f3471c3f35983c4394e4606b47194c3e607897b7ae5a5ef1d376adb204383afa8c4219db8617d970
diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.4.ebuild
new file mode 100644
index 0000000000..84180092fb
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-fs/e2fsprogs/e2fsprogs-1.47.4.ebuild
@@ -0,0 +1,183 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/tytso.asc
+inherit multilib-minimal systemd toolchain-funcs udev verify-sig
+
+DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities"
+HOMEPAGE="http://e2fsprogs.sourceforge.net/"
+SRC_URI="
+ https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz
+ verify-sig? ( https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.sign )
+"
+
+LICENSE="GPL-2 BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="archive cron fuse nls static-libs test +tools"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ !sys-libs/${PN}-libs
+ archive? ( app-arch/libarchive:= )
+ cron? ( sys-fs/lvm2[lvm] )
+ fuse? ( sys-fs/fuse:3= )
+ nls? ( virtual/libintl )
+ tools? ( sys-apps/util-linux )
+"
+# For testing lib/ext2fs, lib/support/libsupport.a is required, which
+# unconditionally includes '' from sys-apps/util-linux.
+DEPEND="
+ ${RDEPEND}
+ test? ( sys-apps/util-linux[${MULTILIB_USEDEP}] )
+"
+BDEPEND="
+ sys-apps/texinfo
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )
+ verify-sig? ( sec-keys/openpgp-keys-tytso )
+"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/ext2fs/ext2_types.h
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch # bug #516854
+
+ # Upstream patches (can usually removed with next version bump)
+)
+
+src_unpack() {
+ # Upstream sign the decompressed .tar
+ if use verify-sig ; then
+ verify-sig_uncompress_verify_unpack "${DISTDIR}"/${P}.tar.xz \
+ "${DISTDIR}"/${P}.tar.sign
+ else
+ default
+ fi
+}
+
+src_prepare() {
+ default
+
+ cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes"
+
+ # Get rid of doc -- we don't use them. This also prevents a sandbox
+ # violation due to mktexfmt invocation
+ rm -r doc || die "Failed to remove doc dir"
+
+ # Prevent included intl cruft from building, bug #81096
+ sed -i -r \
+ -e 's:@LIBINTL@:@LTLIBINTL@:' \
+ MCONFIG.in || die 'intl cruft'
+}
+
+multilib_src_configure() {
+ # Keep the package from doing silly things, bug #261411
+ export VARTEXFONTS="${T}/fonts"
+
+ local myeconfargs=(
+ --with-root-prefix="${EPREFIX}"
+ $(use_with cron crond-dir "${EPREFIX}/etc/cron.d")
+ --with-systemd-unit-dir="$(systemd_get_systemunitdir)"
+ --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d"
+ --enable-symlink-install
+ --enable-elf-shlibs
+ $(tc-has-tls || echo --disable-tls)
+ $(multilib_native_use_with archive libarchive direct)
+ $(multilib_native_use_enable fuse fuse2fs)
+ $(use_enable nls)
+ $(multilib_native_use_enable tools e2initrd-helper)
+ --disable-fsck
+ --disable-uuidd
+ --disable-lto
+ --with-pthread
+ --enable-largefile
+ )
+
+ # We use blkid/uuid from util-linux now
+ if use kernel_linux ; then
+ export ac_cv_lib_{uuid_uuid_generate,blkid_blkid_get_cache}=yes
+ myeconfargs+=( --disable-lib{blkid,uuid} )
+ fi
+
+ ac_cv_path_LDCONFIG=: \
+ ECONF_SOURCE="${S}" \
+ CC="$(tc-getCC)" \
+ BUILD_CC="$(tc-getBUILD_CC)" \
+ BUILD_LD="$(tc-getBUILD_LD)" \
+ econf "${myeconfargs[@]}"
+
+ if grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then
+ eerror "INTL sanity check failed, aborting build."
+ eerror "Please post your ${S}/config.log file as an"
+ eerror "attachment to https://bugs.gentoo.org/81096"
+ die "Preventing included intl cruft from building"
+ fi
+}
+
+multilib_src_compile() {
+ # Parallel make issue (bug #936493)
+ emake -C lib/et V=1 compile_et
+ emake -C lib/ext2fs V=1 ext2_err.h
+
+ if multilib_is_native_abi && use tools ; then
+ emake V=1
+ else
+ emake -C lib/et V=1
+ emake -C lib/ss V=1
+ emake -C lib/ext2fs V=1
+ emake -C lib/e2p V=1
+ fi
+}
+
+multilib_src_test() {
+ if multilib_is_native_abi && use tools ; then
+ emake V=1 check
+ else
+ # Required by lib/ext2fs's check target
+ emake -C lib/support V=1
+
+ # For non-native, there's no binaries to test. Just libraries.
+ emake -C lib/et V=1 check
+ emake -C lib/ss V=1 check
+ emake -C lib/ext2fs V=1 check
+ emake -C lib/e2p V=1 check
+ fi
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi && use tools ; then
+ emake STRIP=':' V=1 DESTDIR="${D}" install
+ else
+ emake -C lib/et V=1 DESTDIR="${D}" install
+ emake -C lib/ss V=1 DESTDIR="${D}" install
+ emake -C lib/ext2fs V=1 DESTDIR="${D}" install
+ emake -C lib/e2p V=1 DESTDIR="${D}" install
+ fi
+
+ # configure doesn't have an option to disable static libs
+ if ! use static-libs ; then
+ find "${ED}" -name '*.a' -delete || die
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ if use tools ; then
+ insinto /etc
+ doins "${FILESDIR}"/e2fsck.conf
+ fi
+}
+
+pkg_postinst() {
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/files/mdraid.rc b/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/files/mdraid.rc
index a30035dbbb..6fbe4a26ea 100644
--- a/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/files/mdraid.rc
+++ b/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/files/mdraid.rc
@@ -7,11 +7,24 @@ depend() {
after modules
}
+assemble() {
+ local rv
+ mdadm -As ${MDADM_ASSEMBLE_OPTS} 2>&1
+ rv=$?
+ if [ ${rv} -eq 2 ]; then
+ # mdadm exits with status 2 when there is nothing to assemble.
+ # This is undocumented.
+ # https://bugs.gentoo.org/295397
+ return 0
+ fi
+ return "${rv}"
+}
+
start() {
local output
ebegin "Starting up RAID devices"
- output=$(mdadm -As ${MDADM_ASSEMBLE_OPTS} 2>&1)
+ output=$(assemble)
eend $? "${output}"
local pat="/dev/md_d*"
diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.4-r1.ebuild
similarity index 98%
rename from sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.4.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.4-r1.ebuild
index cb3b0a96ed..3e0c88d505 100644
--- a/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.4.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.4-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.5.ebuild b/sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.5-r1.ebuild
similarity index 100%
rename from sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.5.ebuild
rename to sdk_container/src/third_party/portage-stable/sys-fs/mdadm/mdadm-4.5-r1.ebuild
diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/Manifest b/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/Manifest
index b0300b37f4..667ad7f3d2 100644
--- a/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/Manifest
+++ b/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/Manifest
@@ -17,6 +17,7 @@ DIST gentoo-headers-6.16-1.tar.xz 1168 BLAKE2B 01e016fd7fbe35c03e9be3df8c0bc4f4d
DIST gentoo-headers-6.16-3.tar.xz 2256 BLAKE2B a023a3a72a29b486ba763f072c2c3f4f079ba2d857ebe2ee22633ee891b05e668475b79cb82e5f4714aed11f7832401f713e75a397e0d683eb4d17c76cc09f65 SHA512 fc363f073ede597764f731f84aeed73e47aa9a644612d0e7f86d3062fdb3daca7edef7b4c3a122336d5292db339bf68f6f09ce9bd1d33e5228ddd5271a40d844
DIST gentoo-headers-6.17-2.tar.xz 2244 BLAKE2B 7a1b08bada363a22bb4e30e2a1add4245b3c9bfb2309d9aa47a2687371019fdc01da7b540e8ec055bbb294e1774c0fa2a868fb7bd598b49f81365b027b0586fa SHA512 ecb3a3be672d3c82f11dfb1d8abb8155fdce2a46fcd3f9d0b83730d7d3dfbaf638c81168ba4fb7f15cf02e6eec09affa24b3da99bcfaae627106305888c984ac
DIST gentoo-headers-6.18-1.tar.xz 2064 BLAKE2B f6a97a95d1086885b4bb53ef0230ce1638a7cc1518f062eeeb629def79325e54385296db7beab596cd47172fa07fbfb631e5405e3ac58e0b9177b3bf623145f5 SHA512 f10d0741a6fd9cd4aab0e59efab7cc0d3044d3c6b9dddbd1b7fd6223a30ad50a4375b1c1b7e457350417e90b9e03075e05a9ed1347b5c4c034428877a61db0b3
+DIST gentoo-headers-6.19-1.tar.xz 1868 BLAKE2B 5796f9b45aae0c03a4d31e873713db4483bcf621f573f134fb30788e7197c56881cc21fbfe2ef0afda677770aa9ebc990d6abb85e70bbe10965ad2a56e664d7c SHA512 36f8dffce8bb0c4f119f3ef5f4e9da400c36f651eb07cdae0936bff3e9a3d02014702feb4a35f119a81c31603b2a044ab1ccd947e0f9de1b36864ddfac9672ec
DIST gentoo-headers-6.6-1.tar.xz 1172 BLAKE2B 626bb33b42f48bceca2ba6a0a9c0b043a8607bb391d3b541e98d2af42eacfabeda3a5a3d48b7bee1fd0a2a8ad0b6173bde49d3827ea087e501eb0e91d18c4ab7 SHA512 09bcda97d9d17ee3f66ee46d9c00b8ac4fba5b9662fa24e4e2754bd9e4e7b3f097e5f2d52281eeb7a671dfe303aabe15c8fd66f117fddf29fb094e28d8c603b3
DIST gentoo-headers-6.8-1.tar.xz 1164 BLAKE2B 43283b61fc35057c7f703108d6e4aead901329106e4c297cdfc261e8f9cb1f2ec9370b7367432b9eabe9fcc4358da745170b1f4ec6079d373f50de1fde148778 SHA512 c43e18ce1b39a60e163c2e0f824b1402bcbda84f20b2ae38d53681ff517713c42fd876954fab0ab8044b66e28e32f9ee93fc61ecbbc9c2bb5a9932a0616e570c
DIST gentoo-headers-6.9-1.tar.xz 1164 BLAKE2B fd385a2c39e9528f60dee582f153485842e76a8a9ad87fd8a11179b8ad2558df23e3c7fb7476f3f1011536e26da50f625a660d2a8ae01954300085f8b3f1bb01 SHA512 3fad4602e453a9aae24cc640ee6c70b06f221c78262f5befe794ca5eb48c352aff335715b5033760ca690bdef55e6a6acb5d3d2351bae885f3023098b5c6ecb1
@@ -38,6 +39,7 @@ DIST linux-6.15.tar.xz 151168812 BLAKE2B 465596c6dc053ff3a3966302a906d3edb4f7ee1
DIST linux-6.16.tar.xz 152620004 BLAKE2B 87bc4da7e89cc8265aebffea7ec6c09f711be24fee87cb1c03a264c03fd5a538d66aa806640835aa5103926e612cdfbc52d7c861d7f7065f1a8bb11d893b0921 SHA512 55a00f89ad6db6db2e26ff5dc5cfc96bbf6654e5bd5d17d2a3b944a47640367e54139716d230923187bebc6cb7756edc9511a620fb8abc6f32c50a658a734784
DIST linux-6.17.tar.xz 153382068 BLAKE2B 0edb2324be5638aa75984128aafdba3e50824187d2fcdff8794eab99d85c10c3a17d1e840053c2c83df5ee11fdf69f1c9452c57ecc9dae01c4af38180fe7821a SHA512 063999d7b819970657f6b7713fdb4173da2065ffdeed7cae197026dbb1edfd7f1d50374f073a1e19ef9686539594824ff6ecb8a930d97c4f272cb12f1c6d8355
DIST linux-6.18.tar.xz 154309096 BLAKE2B b94b7b9bf18aca0c3e50baf79b009a1448fc6cd9c3ee019f641cc247dcf53a4abef4274ee0608ad8cd4943af69854363a95d26e117ff23620bb07dccb158859f SHA512 88599ffdec96d150c1feb9b261ba93bb0301a9d0e1ad6bef7aeab1f5372cbfc57d8b43c7e902bd8f76921d1dbd8189663c142ea869e51d0e2b483b150ee00fe0
+DIST linux-6.19.tar.xz 156067644 BLAKE2B d1551c058e9a1201a0fa769b427255f13bb0d73fdd384e2c0302956cc9a1eeba255b013fa87a15fdad508bc00fdae2085590572c76cfe20fe2af31ba87b7d289 SHA512 01b29c7f4e5bc0c9802794c2cd027fece825f90417be229a71e60eefce530010d5d301749c54ae744e9d4a483518e769e2bb7e6e9209687681ad7fff11c3ed86
DIST linux-6.6.tar.xz 140064536 BLAKE2B 5f02fd8696d42f7ec8c5fbadec8e7270bdcfcb1f9844a6c4db3e1fd461c93ce1ccda650ca72dceb4890ebcbbf768ba8fba0bce91efc49fbd2c307b04e95665f2 SHA512 458b2c34d46206f9b4ccbac54cc57aeca1eaecaf831bc441e59701bac6eadffc17f6ce24af6eadd0454964e843186539ac0d63295ad2cc32d112b60360c39a35
DIST linux-6.8.tar.xz 142502100 BLAKE2B c6f17f816cea16e629f63e9379b98888713f57b2c5173306926471f139a9d612a0c74e119341f8075390e55e203d787d9edeb4ad5a064b18870f6f0f7ffaafb2 SHA512 5c4eb4aa1d3f7d1ea01c0f7ddeadacdece6e144fd4bdfc16b2b925d3e10dc04de3a6db69320b79a96c3560052616f001d2c09e7a1bb4f7b731e2380a7ecce068
DIST linux-6.9.tar.xz 144034416 BLAKE2B 4cf86c3cfe6e6534745d42dfaeca59b17ea1168c4e8b615c80e6d8aac735f11283cd85fa992b440b5d4452917e94b9f08397a64af0be5894e3df23c68892377e SHA512 fed3b4cd1fbfb4d94618587c1934273d2ecc8b6e42a3d586ff8a5f24980be930f2ef803aa2923ca3bfa5e4e619f967f3af315368f24fa76f610b10443624a579
diff --git a/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/linux-headers-6.19.ebuild b/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/linux-headers-6.19.ebuild
new file mode 100644
index 0000000000..331d81fbbc
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-kernel/linux-headers/linux-headers-6.19.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ETYPE="headers"
+H_SUPPORTEDARCH="alpha amd64 arc arm arm64 csky hexagon hppa loong m68k microblaze mips nios2 openrisc ppc ppc64 riscv s390 sh sparc x86 xtensa"
+inherit kernel-2
+detect_version
+
+PATCH_PV=${PV} # to ease testing new versions against not existing patches
+PATCH_VER="1"
+PATCH_DEV="sam"
+SRC_URI="
+ ${KERNEL_URI}
+ ${PATCH_VER:+https://dev.gentoo.org/~${PATCH_DEV}/distfiles/sys-kernel/linux-headers/gentoo-headers-${PATCH_PV}-${PATCH_VER}.tar.xz}
+"
+S="${WORKDIR}/linux-${PV}"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+BDEPEND="
+ app-arch/xz-utils
+ dev-lang/perl
+ net-misc/rsync
+"
+
+src_unpack() {
+ # Avoid kernel-2_src_unpack
+ default
+}
+
+src_prepare() {
+ local PATCHES=()
+ [[ -n ${PATCH_VER} ]] && PATCHES+=( "${WORKDIR}"/${PATCH_PV} )
+
+ # TODO: May need forward porting to newer versions
+ use elibc_musl && PATCHES+=(
+ "${FILESDIR}"/${PN}-5.15-remove-inclusion-sysinfo.h.patch
+ )
+
+ # Avoid kernel-2_src_prepare
+ default
+}
+
+src_install() {
+ kernel-2_src_install
+
+ find "${ED}" \( -name '.install' -o -name '*.cmd' \) -delete || die
+ # Delete empty directories
+ find "${ED}" -empty -type d -delete || die
+}
diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.46.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.46.0.ebuild
index d0f7092c54..c21f4131e0 100644
--- a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.46.0.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.46.0.ebuild
@@ -38,7 +38,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_P}.tar.xz
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_PN}-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT="0/${PV}"
- 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"
fi
BDEPEND="
diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.2.ebuild
index fc1b63c555..4a2172e1b4 100644
--- a/sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.2.ebuild
+++ b/sdk_container/src/third_party/portage-stable/sys-libs/pam/pam-1.7.2.ebuild
@@ -35,7 +35,7 @@ fi
LICENSE="|| ( BSD GPL-2 )"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
IUSE="audit berkdb elogind examples debug nis nls selinux systemd"
REQUIRED_USE="?? ( elogind systemd )"
diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/timezone-data/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/timezone-data/Manifest
index f09c3073ca..dc5bb175a1 100644
--- a/sdk_container/src/third_party/portage-stable/sys-libs/timezone-data/Manifest
+++ b/sdk_container/src/third_party/portage-stable/sys-libs/timezone-data/Manifest
@@ -1,3 +1,4 @@
DIST tzdb-2025a.tar.lz 548434 BLAKE2B cccd37ca71bfde7e56ed5138be5a610ec9d5ca59658b90e5e2a10af9221ed6d09b24b106bef46b04bbc97bff74b6e97a1f800c078a523aa32c13416a33264df2 SHA512 1e8c4e141158d63ca5c39babc9d18c32df14e2e59bc7649a7fed8c3e577f7b175bafa43883cf351139ff198515f5f8c22b1418e2ac7efb7f837faa8f61d2574d
DIST tzdb-2025b.tar.lz 549879 BLAKE2B 6930d475e7fa2c29d7c6c9a1d3c8a8e4ec80745d3f8d7be6b74ae1fc1ba06fbe362e5ff96f6e3b6faa4e15240973ec4162a7f764cddf451029776f443966824c SHA512 4f4afca86645ca5564a9d7d3ddc36e6b07c15c1b87cd4edbbcae72c6be4e6154e4ad1966407a7081237550301f1093af53dd8a486effb95f7cf3e5721db47c8f
DIST tzdb-2025c.tar.lz 556440 BLAKE2B 21524cbbde446b7ea2a4536765795f4eb0f180f88fe1e1857168ae0d59ccd1c0e459b1853ba6ff9c6444514dfa22c04d367c1b3039e1bbd40779a80d3e1bb955 SHA512 6fa233d6a884acd24b52c44b2eecf683f9403f44b39dcbe85b1ec92fc11f4daf6ee5143f05332faf9258b8bd8f7ca7d4882e19b1e3d892b4761be43fd4f39d51
+DIST tzdb-2026a.tar.lz 559308 BLAKE2B aaa57fb5301dc661d39d3614493d156f9da2066bb6544c0c58e3e267d21658fdcb70412fe10bf14c3d92bdf01deee490fb2a86b6aaf902f7fec9690f863e0860 SHA512 1824fc2e198a449ebaa41e6c679a494c486b848f13fe8f18f948fde0533e99f5f01e7e7298e257c565838d24ec743e824f402887abdf525d1ce578a714c71414
diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/timezone-data/timezone-data-2026a.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/timezone-data/timezone-data-2026a.ebuild
new file mode 100644
index 0000000000..782a7c5644
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/sys-libs/timezone-data/timezone-data-2026a.ebuild
@@ -0,0 +1,169 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs flag-o-matic unpacker
+
+DESCRIPTION="Timezone data (/usr/share/zoneinfo) and utilities (tzselect/zic/zdump)"
+HOMEPAGE="https://www.iana.org/time-zones"
+SRC_URI="
+ https://data.iana.org/time-zones/releases/tzdb-${PV}.tar.lz
+"
+S="${WORKDIR}"/tzdb-${PV}
+
+LICENSE="BSD public-domain"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+IUSE="nls leaps-timezone zic-slim"
+
+DEPEND="nls? ( virtual/libintl )"
+RDEPEND="
+ ${DEPEND}
+ !sys-libs/glibc[vanilla(+)]
+"
+BDEPEND="$(unpacker_src_uri_depends)"
+
+src_prepare() {
+ default
+
+ if tc-is-cross-compiler ; then
+ cp -pR "${S}" "${S}"-native || die
+ fi
+}
+
+src_configure() {
+ tc-export CC
+
+ # bug #471102
+ append-lfs-flags
+
+ if use elibc_Darwin ; then
+ # bug #138251
+ append-cppflags -DSTD_INSPIRED
+ fi
+
+ append-cppflags -DHAVE_GETTEXT=$(usex nls 1 0) -DTZ_DOMAIN='\"libc\"'
+
+ # Upstream default is 'slim', but it breaks quite a few programs,
+ # that parse /etc/localtime directly: bug #747538.
+ append-cppflags -DZIC_BLOAT_DEFAULT='\"'$(usex zic-slim slim fat)'\"'
+
+ LDLIBS=""
+ if use nls ; then
+ # See if an external libintl is available. bug #154181, bug #578424
+ local c="${T}/test"
+ echo 'int main(){}' > "${c}.c" || die
+ if $(tc-getCC) ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} "${c}.c" -o "${c}" -lintl 2>/dev/null ; then
+ LDLIBS+=" -lintl"
+ fi
+ fi
+}
+
+_emake() {
+ emake \
+ REDO=$(usex leaps-timezone posix_right posix_only) \
+ TOPDIR="${EPREFIX}" \
+ ZICDIR='$(TOPDIR)/usr/bin' \
+ "$@"
+}
+
+src_compile() {
+ tc-export AR CC RANLIB
+
+ _emake \
+ CFLAGS="${CFLAGS} -std=gnu99 ${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ LDLIBS="${LDLIBS}"
+
+ if tc-is-cross-compiler ; then
+ _emake -C "${S}"-native \
+ AR="$(tc-getBUILD_AR)" \
+ CC="$(tc-getBUILD_CC)" \
+ RANLIB="$(tc-getBUILD_RANLIB)" \
+ CFLAGS="${BUILD_CFLAGS} ${BUILD_CPPFLAGS}" \
+ LDFLAGS="${BUILD_LDFLAGS}" \
+ LDLIBS="${LDLIBS}" \
+ zic
+ fi
+}
+
+src_test() {
+ # CURL is used for extended/web based tests. Punt on them.
+ emake check CURL=:
+}
+
+src_install() {
+ local zic=""
+ tc-is-cross-compiler && zic="zic=${S}-native/zic"
+ _emake install ${zic} DESTDIR="${D}" LIBDIR="/nukeit"
+ rm -rf "${D}/nukeit" "${ED}/etc" || die
+
+ insinto /usr/share/zoneinfo
+ doins "${S}"/leap-seconds.list
+
+ # Delete man pages installed by man-pages package.
+ rm "${ED}"/usr/share/man/man5/tzfile.5* "${ED}"/usr/share/man/man8/{tzselect,zdump,zic}.8 || die
+ dodoc CONTRIBUTING README NEWS *.html
+}
+
+configure_tz_data() {
+ # Make sure the /etc/localtime file does not get stale, bug #127899
+ local tz src="${EROOT}/etc/timezone" etc_lt="${EROOT}/etc/localtime"
+
+ # If it's a symlink, assume the user knows what they're doing and
+ # they're managing it themselves, bug #511474
+ if [[ -L "${etc_lt}" ]] ; then
+ einfo "Skipping update: ${etc_lt} is a symlink."
+ if [[ -e ${src} ]]; then
+ einfo "Removing ${src}."
+ rm "${src}"
+ fi
+ return 0
+ fi
+
+ if [[ ! -e ${src} ]] ; then
+ einfo "Skipping update: ${src} does not exist."
+ return 0
+ fi
+
+ tz=$(sed -e 's:#.*::' -e 's:[[:space:]]*::g' -e '/^$/d' "${src}")
+
+ if [[ -z ${tz} ]]; then
+ einfo "Skipping update: ${src} is empty."
+ return 0
+ fi
+
+ local tzpath="${EROOT}/usr/share/zoneinfo/${tz}"
+
+ if [[ ! -e ${tzpath} ]]; then
+ ewarn "The timezone specified in ${src} is not valid!"
+ return 1
+ fi
+
+ if [[ -f ${etc_lt} ]]; then
+ # If a regular file already exists, copy over it.
+ ewarn "Found a regular file at ${etc_lt}."
+ ewarn "Some software may expect a symlink instead."
+ ewarn "Convert it to a symlink by removing the file and running:"
+ ewarn " emerge --config sys-libs/timezone-data"
+ einfo "Copying ${tzpath} to ${etc_lt}."
+ cp -f "${tzpath}" "${etc_lt}"
+ else
+ # Otherwise, create a symlink and remove the timezone file.
+ tzpath="../usr/share/zoneinfo/${tz}"
+ einfo "Linking ${tzpath} at ${etc_lt}."
+ if ln -snf "${tzpath}" "${etc_lt}"; then
+ einfo "Removing ${src}."
+ rm -f "${src}"
+ fi
+ fi
+}
+
+pkg_config() {
+ configure_tz_data
+}
+
+pkg_postinst() {
+ configure_tz_data
+}
diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/Manifest b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/Manifest
index 43cd6221fa..af9c71aff7 100644
--- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/Manifest
+++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/Manifest
@@ -1,55 +1,55 @@
DIST NVIDIA-Linux-aarch64-535.288.01.run 269886661 BLAKE2B 9f9e994fcefd81e75db9a9c280668ad55423085e34eb9083043bad3f1317379ba14ffc9442fe94ee26b600f1ecf2e19f83708dae1c599b6a9df69d94ac3e116f SHA512 e8df9e97500a87d68e8c8d1f9601a8b37f2dd93773928a96b605a515d37e9382782cbdc0900cd6151923ae385045c644af3e37cc006771830ac0b0a532afb09c
DIST NVIDIA-Linux-aarch64-570.211.01.run 290912556 BLAKE2B 4335d6a6b7a55bc7d2717071c6be968b63c90932592534be8eff28290a8bf98614b37bb52b4ee0f9563a6f0fdacf6b0e8a04b8eedbe8081587962f3599209a88 SHA512 22816d8f798d6ce141ff2ce750b5df1ca4fef9b1ba79762157fd7f93c1ea905c74f421dc6ac2b7bf5b383192d2baa735d7a7d240523be815defb68be54c4a6be
-DIST NVIDIA-Linux-aarch64-580.126.09.run 313588580 BLAKE2B bb98dc322fb0bb21a11aaebd2101528efc651ed833870326fbc4570f54264a4b536e8669351153817b47dcb81b9aeac88b7d664cf6971e5182b9d4203c453a29 SHA512 7ec0fd917bade1eb14b135bab2ade17a5116546190c3011379be7105404485016e26a5fb1ece5a4800eea39ac10c1abea19cc40be6f8f31188b3eeb78344a6c7
DIST NVIDIA-Linux-aarch64-580.126.18.run 313585073 BLAKE2B 9cf8680392434126ae60cc4260f6a3ee44a74c8a5c5623e9990feb6b73cd4fc4661c2111214b192957ccc0c0e2623c3649685e739bc7440e36cbcbf4949bfc3f SHA512 b453b8aa9fa4fdaa1ce532f69a52317606d41728958a49f05e9725c093ebe8e90c65b5e5ad095ebcf5febdcd2d712bf0246ce06746078d8333c75bb7559b4245
DIST NVIDIA-Linux-aarch64-590.48.01.run 319634379 BLAKE2B ff1b0641f8d4dfc834d9627fa934c5491bddcb9e6f5396a07d6d7831c15e2ab396614ff1ab6b5af4a69b42b8c6a022215cc1e3531eca7ca177c9d940f52281ea SHA512 ec81da1a11dd9609427e40434cba69d7c0426e4d60cb5c078c66ec992b6dd44483df2c9dfe02deb4db3a815a4c801b3c42f6ac2b08f0506327f1cdfe5446211d
+DIST NVIDIA-Linux-aarch64-595.45.04.run 316623169 BLAKE2B 0596a7896b895d9f96545e30231056885d8688ce0cf144d56c87a2cf91877d7e8573a821dd522968da09c4aad72565861a2f6c27065b9457a8d4df536b336327 SHA512 a75b927d660f22fd353a500ed4732fd7bdfe12b30d8c7aeb00d7a6d770d9df080d441aa070f302a5d0e386eeeae3fb82a7629108d31c8cc77a142e7de9d352dd
DIST NVIDIA-Linux-x86-390.157.run 49417041 BLAKE2B 435b5e0e60468cc74b41cc5d9b5bb0105d29c11a2d408457835212a96519c9334ecf19278b36749d3ff7f498f5b0ae45a2efae2d428703dac21245c62f1efebe SHA512 dae9ac2c12f9ad90f7441e00e01a984147c577892421911d7f67f6a31e616ac1cb7d434bc9c7f58fbd9b8ae909521b5bece607a63c79588c0bb9d99c6bad5fb0
DIST NVIDIA-Linux-x86_64-390.157.run 85835541 BLAKE2B 44b855cd11f3b2f231f9fb90492ae2e67a67ea3ea83c413e7c90956d38c9730a8bd0321281ae03c6afce633d102f5b499aed25622b9bfd31bdd2c98f0717e95b SHA512 4780503a4cff0180b1b1f37d20a6ba3438dd78b51fa7f69b98d35521835e5d61099129746929d51d63afa2d47b672b3e145e1e1897584dc3799e7f822c5b3a0a
DIST NVIDIA-Linux-x86_64-470.256.02.run 272850014 BLAKE2B 0fdc867f92b82b2a60810c3b43751cad7ac2c39928c92c6c343c0c6044f4d7d923d93b8599db3f7c999c0ee7d16940e65d991a61cbb30e1d9e49c5639ac6bdc8 SHA512 a837946dd24d7945c1962a695f1f31965f3ceb6927f52cd08fd51b8db138b7a888bbeab69243f5c8468a7bd7ccd47f5dbdb48a1ca81264866c1ebb7d88628f88
DIST NVIDIA-Linux-x86_64-535.288.01.run 341968325 BLAKE2B e37428855b41c295e5c6df66a029f4a1f6916af932a159587002c6b20b58c8280faee1a4fd6edf4791439df4da6bd21d18b3c9bdf300b3923f5dd30666f44d90 SHA512 8ccd90cc37cef6591412c9c0d3a48af9fe08bf5d715a2e8a9c0adab1fb8e72b716ec75c8b81bc0ac9d09d6f82fa8e01af144bfba5d58cfe7a524c47aa97ae6e1
DIST NVIDIA-Linux-x86_64-570.211.01.run 376192072 BLAKE2B 56a135681eba576377106b5ee4bad4e0ec7e41e512db8e32297fbafe03455ee4e9e0dafe782588dd3832fde74ecfd9ee5858ec662f3dc2ef3f1e1dab7a9c909d SHA512 3e751d90a8f126e369c5167e2d5ba8b218dd306ccf00907290ae70fb1c3f752f0ad0b973ce356a1a24cd0f19c31a07169cfd5705613a6bbb5918881635650839
-DIST NVIDIA-Linux-x86_64-580.126.09.run 396807358 BLAKE2B a8b7fe16718a8f9ec6d93cad71e07c96d837ff612ae21a96018981fc904839c6d85dc2515c1d640361483fad59b5fd79bdae6a32951ec2f5db4a9115d24798dc SHA512 d5c41131304b29d55d0caf8cd84c95b454d81e68d7b23ca893504c63d84dd78726e2dbd7f076b7f12be518e641d110d131ac178336d61a00bcc81b7a1890799d
DIST NVIDIA-Linux-x86_64-580.126.18.run 396862844 BLAKE2B fa2d992d4f23beac7a10bc5d17695ee0c211e3afcb6fb9135f09b8eebed86db226b1cb4b9646917ab28f6127136b349fbc02deeecef2c5625f2be6a178cd268e SHA512 3007896838256c5534d7a04958f38f2837314b09d05e595966ba68789b0166fd8c1a574b29c8dd9ee5414822c9aebad9f9c7e5db777b811701fcac2b92245f0f
DIST NVIDIA-Linux-x86_64-580.94.18.run 397082112 BLAKE2B c8ca38518debb4ed7bc26114aeb375acfe7da7f63056f08a9422f8e785f8488b1bfb9a66410985e8f883266f0befcd5bcd08e6bd4e0489c31bdf6374abe42bd1 SHA512 b1141f13cf2160e25004c9147328e60afb48b17866c907adfe1db6730ed50163fe5b8ff641d180c4b0420c0f47c0928585e52bf23c196d43a375d7a9466f8fe7
DIST NVIDIA-Linux-x86_64-590.48.01.run 416273526 BLAKE2B 57bc232f3d5cc52b3ba7c097e5c04b0e128947b34f75c8c7a75135ebbdda565dd9ae829f3707cfef35a9b8b554f2b46a50756f6b256a0f0280c22cf9ecefb2e1 SHA512 31fd82af707dbe9a6d3848766925386f5e91c5fae0a605819450eb8e5a5a52eaab3ae5cff50b4dd36bc5c32fe1aabc29a6a79438d6614988c7b08f509ef0da6d
+DIST NVIDIA-Linux-x86_64-595.45.04.run 423188245 BLAKE2B 262bad2e9caf54c54968a5bdd3385d4ce725a4fe97537d92be20cf20c692c2d6fbaf875e8af5d62685158db6cafc22c656f33b08bfd0353cc137822211e90c2c SHA512 36907e0329564787e42eb598eff48e04c4058856bc95115cd5448eb4dfd351ac3d0df95b0fe5d2ef68e7ce9e848689955f40b3a9302d5231366efa89cfb21f7d
DIST NVIDIA-kernel-module-source-535.288.01.tar.xz 12538144 BLAKE2B 597c58a62591e82b77fb29527d240bd2043b37439a1e7089ce5ab7ecb514ca3cae5be415aa4324f1156c08ddc1138c02e58337df5f38eaf7f19294773e4bcebc SHA512 b70d95af6737c36f8573d877a3473d38ecf3d7a4a35b899c38c1682888b455dcc60f6738ccee60a584477856b79dd25e6a10ffd1a4503c1d78a88902ba8329b4
DIST NVIDIA-kernel-module-source-570.211.01.tar.xz 17951900 BLAKE2B d40d2c1b4a92dfe8da95e1000413dfb484c9c96ad232dd5db14246378f6df8e73f04706592a536025c3d5512d5e663e7841de8bda782e3611b4b594b9b107ad4 SHA512 c988270d3aaa707310c3924de83eb5f5bdc4d022d1666eb3f41ed46eff35e98a765d4d6d34c22c02ac507016bed3c34af1da2e1befc285ec9158031a4a1447e4
-DIST NVIDIA-kernel-module-source-580.126.09.tar.xz 22250272 BLAKE2B 218c0df05f9506b22281a575db566d48760a7ab3df7f2c4d171d5157f44979efb6f40e8aebaec26e830cf3495bf2366ab406919293d2eab6e543567c0cae14fb SHA512 1c62f12e39d827f1a9dc13d934f8d690e3cf3da7838f39044b1175b612eb03e2f452424f6e456fed81bfa448c8a2dfe94b58e71bff08c4e5d5d8c944c74cdb2e
DIST NVIDIA-kernel-module-source-580.126.18.tar.xz 22192576 BLAKE2B ed2b39aaed517a3a55633c6e0fc5605641bf85fcf370b1c8e7eb3950d3cf9112b6c3656ef3aff3fedbbbb769bb7f975a87f218b91c4131a9930cc04c8df27bf0 SHA512 810c596cdb40666b5dbccf9c1d358ef155e9171a489513f78fee73f48d73798fee0f655d8a9c994144d933ff9a9e0fc362f7c4918f87c8dfa9f00d30beee102e
DIST NVIDIA-kernel-module-source-590.48.01.tar.xz 22530000 BLAKE2B eae57ceccc78f0730fc4962b20f08f270bd21960e84ad5985433590e5229403a74bfc2518540f9e2ef07d319d9cb2288edfbe0d5f7a27cc7e0903aa61fed388c SHA512 6fe32d5d1a84df0baeaaecd4a847ba73a89bcd1b51d5f9c7525efd2af891f6d5512c1ac97c8b766ba1d1103312c53e5406653589e22684df9260fd75977591a6
+DIST NVIDIA-kernel-module-source-595.45.04.tar.xz 23778508 BLAKE2B 604dbf06c03ac2002efbebb0581711f2a4e698353bde84a3fc78b5fbb5b0b1bd358a6c0bd418ca91b0d7e7d4d44f23ec7e47844b357675584b31e47c8b96b05c SHA512 c1179c9ea356d41b29ca9cc9f9771294575667dd72ba5dba208679a2197119ddd82f8345797661ef064b07dbfcbe123e964d52cd3516e3b9555833c3b964635d
DIST nvidia-installer-390.157.tar.bz2 150323 BLAKE2B 8058ca87a6dea956d564af9f7eab9b1fc82b1f2382bd5cb2f6d97cbe2e19292533522d5f8f2eacbeb16520372715fcb72f8f9b0998962af5d4e75522c8d74524 SHA512 93a7ece648602157496c8e27a88864ede341a100f5328a4c1a25faf8f0b94d252060e5e2f71d0c302fd0566c10773c30b76b3b5f431d8039b71c90a7969f7d7e
DIST nvidia-installer-470.256.02.tar.bz2 146269 BLAKE2B 4402e725c8fd0157eb84d4ec140a33f97e873014577487ef1e32fb8921cabe79c60ff46532e5bfaabb2b6ac894f7c80086dbab19e61906e2e27346fb85f98829 SHA512 c962dc17d9696256d1ebedcaeb3010994f2ce3895aedc47987599ebfec132a9b9a249d2ece6502b15bd4a93f9b0106aa13487a7da5f64199c274ce11eba27cfd
DIST nvidia-installer-535.288.01.tar.bz2 148906 BLAKE2B c559bfaeddd1af6c72647fb2e5c46638817339bd59ced80bcc6acfa14304f5ab07123aa0e43d18feff5d2582f08ceb0f84d2b97eef783bcd833c12f751e4c945 SHA512 b5d92a68b39a11709dae83ded0d9b860f9ff4cef514a1eb957305daf80d4354a272a88e4a58db61547b0073e57c2913f2dc038c2d51b2eb649fc9ae25eb42954
DIST nvidia-installer-570.211.01.tar.bz2 169330 BLAKE2B 100cdb3e0cccb19e3bbf69d4289d079a64cbca95fc20f4d48179190b5e61cfdcbfeb5b95c381c70824c185975356a70af4c89efb53ca0cbc5c61fc95d974ca77 SHA512 90efcd442feacd7f9d9bf25fddb77c521b2e7c79063703c320ce2bbd50a5cce950b0937ec926e89081634c6606c18861efda0e6288e24fab5ee31cd5d52d211f
-DIST nvidia-installer-580.126.09.tar.bz2 169652 BLAKE2B 664354a67b56f3fbf323b7231b73c7af3510ec4b8f00533904e0771c6c76dfe98855cb7348bf177fc4902109519d1803ff8074f1fa2c4b7b0b007e459b9eb743 SHA512 9cb0be263204d6a90aeacd694066c12790d1dd513e40deef284fdb979e4227764fdf5e7692956cc08d4db270f17c4c7a3fa53e3033c863ec652fb4f48c33a8ef
DIST nvidia-installer-580.126.18.tar.bz2 169283 BLAKE2B 87e64a32358d5547dee98293b7a507465d1375bc1262f011d181112aa4d3f2103b2820587d688f92cf3cc8f6bf0e120e695998d47ca98de9c950c16f0428b0a9 SHA512 54bb99cd8b17004f7ed0ab87ef781104410d6eb57be2789c15550fbb2215473cc1180410c8dd2b2f75af3132c1047eeb5e906f45fcd7d6931dec3b1bb1db9d9c
DIST nvidia-installer-590.48.01.tar.bz2 170826 BLAKE2B 450bd298e6c574ae6dc085714c130984058f6e606c3de628c5adeefddbfde3bf2e025b1e422948311e9e028cfbc6e8d4c68a22a10d30a9a28466f3105aa7c13c SHA512 4c776ad602594a5d2ced2570fd26b51e5fdf5b7613c43263a7f647a5d3d550c6c35960a6cd8884766a71f0b34c397e7d8bd0507b84043cbbc1c04a82ec067932
+DIST nvidia-installer-595.45.04.tar.bz2 171588 BLAKE2B ec9ac1711672be755e03aabbb83fc35d108dd524304798f7c893f57d93ef47337f61103a7a853262776d5577b679660f5129e1784eec7b9283aee4ced47015f4 SHA512 13769efd203b29dfb36f2e1a77b96dd868322d0674fc9b2e6fc7e147e043cd8280fc4ff41cc1e5356a0078dd5c88dedce657bcb00ac0642ba24172e104500df9
DIST nvidia-modprobe-390.157.tar.bz2 35306 BLAKE2B 80d202b39c2f95ec0f909712c2e101483af50124092c32efb33bd98ff58ddfb97b737ff07f1ddc941f688c1b4c26a15f392566d522e18506771f10422fcd571c SHA512 109bbe24a3758b568ea65fe1e9d78f69fae6108ec0497b796c885a3912825fe04ffd7389a3e22987f1a10a2926bf6eaa384faabc59478aa3ee244dd3ac91c6d3
DIST nvidia-modprobe-470.256.02.tar.bz2 38769 BLAKE2B 0db444b09b0b6d24c04877fae95249e781d82b3141f90eb05d869b64d2b6e65ad00bf44c4e427c64dbd4765fa99a8699f80a1d95b00c66137a54dc878d7ea298 SHA512 c1cbfa6c8e188e5a5eb5d390b9a903406cbff103d212fc30e611e4023be3fde896ad84e8bb45b030beb5d1bcd8155c9e55a8f9636c45ce1e2a5c03f672989a31
DIST nvidia-modprobe-535.288.01.tar.bz2 40729 BLAKE2B 60a8a22bcbaefb4d7ab1bbddba814939078b88a0ffb3f3fafece04910b476370f5e1f38878b1c0f109abe4449193dcbfcd308efadd03d28786b78dd2eaeac75b SHA512 0acb8e676fbc230978b97302df98450ee11fc7d59927c46643a8f92d5aec99a5d1d1bca861203a013cfbc61cadf89ed74e2fa999932264b833e3b5a53d42836e
DIST nvidia-modprobe-570.211.01.tar.bz2 41631 BLAKE2B 953113337b742ea246bf24a47cbe679f03d89ecfa48a655f179b0913dd7d9c1742f4b1bd765c4d4263c9d45c352de87bff9f0a5a2c3aa48c86f221177cd5d1fb SHA512 c1bbba303b587f18e824cd2dd9a74341d5a03ee56c6adff67bb33c4f65ed16742f094dca9457a04d68b676c3671756e47d996090523827f42c8780329988e3fb
-DIST nvidia-modprobe-580.126.09.tar.bz2 41685 BLAKE2B 6024b6ecbd8732c98892c01920b633de6e96316d63d80570befb7cb35078349b6737371592d92ac8d60b3662454a9bd5f6f9be8023a614e6233186b48204d8ee SHA512 fecbebeeb9add103726bab211f58d1f4afb85cb47affa960a19e057c78c7ccf975b8e32043591a6e9c93402a8ae7f7232ba3b5aadd4f30e2f531914bb4787c43
DIST nvidia-modprobe-580.126.18.tar.bz2 41651 BLAKE2B f2b8c639e50841f844e32ec4e41381af034c99ec81250fec68d7a79af5e61b005fd43c802d2dc9983f74b9816b8f6996b2580d21aca21ba3dcf4097fdb6dc11c SHA512 a179eb37f9513f962976d58c16417f90e6b51d43dacbed720d05727f1d6404dff1f81b4206dc913161198776028636187fab6812c2ec96fa9cca70d9e63c0652
DIST nvidia-modprobe-590.48.01.tar.bz2 41660 BLAKE2B 0780a1aa529d95323b37115efa529dab030cbea589a03ddc70460f4176e7aa88388401ce8508a093a2e9a0ad406589e9e94ff0391021307e879cbcacec8b6759 SHA512 805a70d5012fbc26af3787104e39b3626b2ed7d53a4989365d2fbf6926daf817eec1dc6b7cd50dfbfe29bbd71569ac3095f0a37cad2199994dbdaa76720d8fb0
+DIST nvidia-modprobe-595.45.04.tar.bz2 41723 BLAKE2B 1dfd5c71de90f7522d7a33e90597706f407fc68c60d2c9e2f2827803b4b41b6431a7e00ef64382c2e0760b3f09c2d0b4227e75bdde64080d736d9c5b380b214a SHA512 9c3d77077cc53ab41047ca8ebc838d1345fd14a039a118fca04a88de832ebfde241d3714eb7720431021f3ea521202f2a88b0d66a9c1273429515a0c919c3463
DIST nvidia-persistenced-390.157.tar.bz2 48654 BLAKE2B 2cf6c92da90acff55e8c180a06b0c6a29d48be9fd8ca3c541202fd14f0697220fba6b66452942aa7ae7cc8821f5c5eb9fa8f7a31d2248624e5f9141d83a176b8 SHA512 70f0707ed6f2b877e69ef90cf782f66cbc9d2071db53ca09ceb7b89427b0fe176708517340621fa251539b7d481b238adeeb60261674eed74de1f62db6dbb72e
DIST nvidia-persistenced-470.256.02.tar.bz2 46567 BLAKE2B 8f837322a3b88412fd2f6acf38721b49a6cb444fbd842d652519e5596f2e545d8f06bbdf017f46a22301ce87455f96147fab2829ca5fbf26131ec3e4a772e282 SHA512 4fd19258649b7d39945fb5c8578bf11ab118617dd14f3d11cdf15cb3fe77daf7b4719e4ae57af59031b1b809d02f4e8e8afed0ec60b9d0aed4d2488bd3013cd9
DIST nvidia-persistenced-535.288.01.tar.bz2 48600 BLAKE2B 025d2d28a078354898a501eef857d496e504279e45ab2b167a4abd5345d50e8effa1432a46da7ffc0276faed5698fb02afec21eee810335daac638e4656d7ce8 SHA512 b92c96b12346d8e26321679ae51532e8d28eff6c2998b6e781ea840eecf022823e47b48ac0c918c1069eb04a601833c4e70c88f66eb4891bdea2a85666597d90
DIST nvidia-persistenced-570.211.01.tar.bz2 61779 BLAKE2B 02ac6f53eb4c053ca894f79b49d2a4b1b1f8e9f1a349053794542e72112bf0fab87aa2ee317d486758aaf77811c929d0aa8fbbcef9de8cc59836445ef845cb7d SHA512 5cb8feb56bf245e8e51e65d3d6d31f2b588e7b84ca29330e564d3c27ab37ceb67df0f80f8b37dfafb49a9fe8d7fef6b26d6334c6403902737298e8f3b23d1cb3
-DIST nvidia-persistenced-580.126.09.tar.bz2 62240 BLAKE2B 980dfd0a2c852c97e246f36f69c984808ca01cdba299b2be51a2cd7e5125d56a98280a003a32ccaf6873afc3183f13aed0433077aa399475fb404e5d7811b37c SHA512 b6699cafb543d958911086c6773f7ac1ac3c32bb20b3a88c92e029f303f48f8daec7338cf080bf74ff97f26f4c92f640c1f51cf95fc9a601e666317fadf882ea
DIST nvidia-persistenced-580.126.18.tar.bz2 62246 BLAKE2B 2dd91f79713631afebd574bd3eed8fe2867083bece0ba9f57ffc3d41221729e39b2e04a2514b137c7a9407b0cb9569de3dc0c8f5ae78f9a15c78600c6feb8198 SHA512 32394ef4922b466a56f666ecea913831338af02a9768b85275ad1bbd9a7f75379e17597828412a4080a0dcfafb7e9bd5510d6244539594ca60a22a541de8458e
DIST nvidia-persistenced-590.48.01.tar.bz2 62193 BLAKE2B e6f03ce2f24f1ddc6b1dc9b7a8dd22de4541d5ec82f85c58943cf48f295e7f77555765b01edcce1c7f5ba67580c51273de8b8200d522c49e2321cffcfc8aeb6b SHA512 960f37355e58da20af92f0f0df091709623e32d9ef4eaba34d1f6b52f71227ac7c3a7f84aec64460952fa32986672f9373774ab1e65149ed426c59be47d7f2d8
+DIST nvidia-persistenced-595.45.04.tar.bz2 62427 BLAKE2B 9e637fd80a7ee75a7ec8f28d62aef2b3c544b00f53b37ddd218a2cbe74715e6880f7edf4662e5662a859ebad2690e901bee369c372c6aa761ef1c4b0704d45a8 SHA512 53816fceeaa47753ca4ae733dab276b9c808283a4fb91c9377c101e9a7b1ea87e8e48a9226f3f05dc6b8343325ea0f6581404f1919c752bf7f7c484a1ca8d820
DIST nvidia-settings-390.157.tar.bz2 1108938 BLAKE2B d9ec1ab5d7f157d74627272adf752a671dd17e2ede02069437b6180b927fe315b15cc6416d584ab2f038b76fe01e5b64514a834f24d88ac16676e55205fdecdd SHA512 b16699009bf56a1ff3b623a528c58061c4f5a2c5c4a373756a07bcd667743a1df7c733a572d2d0baa835a904ac2fda8a5c85890dcc00c3a0f223e0467aea902d
DIST nvidia-settings-470.256.02.tar.bz2 1062273 BLAKE2B 8e66201e7861469b12932595ef8f9fd29d4cfd570c2576ae7fbb7383f61c55ac71fe721cc431e79d6d69f86d998b5b4c3cafe531b573f439e6b499b0fc047a19 SHA512 626e66118ae2e62eacfdf44e37529c409b945a6f33637b9690d74abd87a2afb581aaca5f90328d280da99ceb659959d0e5dc5c22ef8013b2205b2b1c72e08007
DIST nvidia-settings-535.288.01.tar.bz2 1094513 BLAKE2B 8b7112b44bbe3445b63ddc245edbdb717436432482e9f87398863ffd08c520b6ac3527d3d47a75cc7e0ddec3931302e3029ccd7050db1abcc317ebf697284e01 SHA512 f1a817d9463a928fe47fed14da5d1bc0b9cbe0a910cbf01fca0d4edbee0effa989ec1cbf34e0aba6cc8516cf7bdadbc60ee6f0e4178e3c6cfb78301a1ef5aa8b
DIST nvidia-settings-570.211.01.tar.bz2 1123957 BLAKE2B 7355319d29f96aeeada3cd1ffd08b053fa76a5f2f0dd35fac383ff5c1ffd4abba95d0a7f0f421fc4b74a11f2c94352c9e2db363034e5361a0d18017a321261f2 SHA512 8f29c02597eedd934531e703c617aaa7504effe836257de07c664145e07690b0b34b8c893c01e9e561bf90cb3c15b1b6c116e2a7a88ea1a733f2872490c10441
-DIST nvidia-settings-580.126.09.tar.bz2 1132737 BLAKE2B 9d32e702265c8802fee8694cd5b1170c4c19dce8e5c33047376368492a6b531ee09b9aaa81617db5b48dde6e8d1b34f5010fbe7e720598997e68f754c5985b05 SHA512 57ae5968056fbe5c76a2a0bebcd42c5a530874c787be2439ed7dd0e916dad20b1151f9ab91073751bbf0bbd344e70d32598ceec03344691a7fe2812e8a3d1c19
DIST nvidia-settings-580.126.18.tar.bz2 1132578 BLAKE2B d903f91d84de3f98fcb6c32601c77297ad8cb34e74dc5719a36e5777a4f2003207f7ec3c41defaea4b26af739099a84648f994720db700090b81f7980d3e7cdb SHA512 6980829ba2e4517f0765b3a0321e408182627ed4f08601b9a44cbb7fd35bac46ba6eedc890e585ac9d1feb971fc0a0f3ae6992f3ee30bfe496cdec97ef4d6f30
DIST nvidia-settings-590.48.01.tar.bz2 1134292 BLAKE2B 901a3bad03d4eaca3f78afc154539f72aa882ae19052b43b6bfb267a3be1ded4af607fbc05d1a379a8038a22fa5a9c19dd6c393f3436cda97cc7049820f1ec57 SHA512 c82737dc8894a35b7e87afd99fb98c0a4093ec8fd48590cc8e09154d55f948ceaf48fff31c7d015adcceab31a00c5ec4334fe1e90aec94c4bb076118b789dd4c
+DIST nvidia-settings-595.45.04.tar.bz2 1135962 BLAKE2B 4df308484ffc82b81acc7f19af778f8b2fb98efec7750a1293f57cf894589589a2bbd5791bb042fe9618674c4e112033ddf199b7915d3a229f222f56078c0a5d SHA512 aaab0cfa803e635adb855fdf7874d8b0da90fe8e5d192a99d24e0f810dba3afd13b476427c1ef171daf03feb82a35c0d215f0c2d205d90ab4716cd66461eaec2
DIST nvidia-xconfig-390.157.tar.bz2 107399 BLAKE2B 0cbb3b1ba508ddc3ba4a161c290b31bf7a67f67880bdbd01171a962c5fa97ca945b1ef17932403f8589309380743f1da632c728d8accb6d4e56dbd895e7486bb SHA512 50b390811c9bf091b14add41f886925b17496b41006b7d3981d2398caa65cf5db8a579c8cebed78278384bf3acc629befb07b54339c61abcc75852c0dcb8b8ca
DIST nvidia-xconfig-470.256.02.tar.bz2 108698 BLAKE2B e468574e4bc57e7279d4120e2b08a201671b50d408be0c530eabe5da7d45daaf21cbf5c7fa31410d0d732fe8ea1551cbfb21d1ae193c1b3f5b5c50c764c9e236 SHA512 9dcec1e0c2b56b4d38a5f2c76086302f8bc0860cc15012cce29c3a5062f801a48b6a2bb78344361b07a2717b58502783441a2daf402d9973a17526175b1f15ca
DIST nvidia-xconfig-535.288.01.tar.bz2 110671 BLAKE2B 94f8f5c651df7d43de308938312b2c97e8a0292a2575914250e22dc62e139cba36be038453d6f1688e8ebb90883ce0806424eee7ca6fd3a5cee5e9884cfc8d60 SHA512 4368625df5eec5ec8296b9f561a8dc32fda958fd4ea37a4bc9da42303529d6366b41a028d2d9614ba0dcd029a3a5740c15e4fa1febec31da7df51b0b276a831c
DIST nvidia-xconfig-570.211.01.tar.bz2 111263 BLAKE2B 9d6e7e973156d91ce1a213a95aa31269d811024ebf358dfad42c0771cafc6c4f2d4257994d67e67ac637a1107527511d8f8219446e9a57560bab8ba7d4d2684c SHA512 8e8be1e95998fde590bdb5c0246764a426d623c8bf9e705e7bff649f1daebb86726cead4add570622e34aea9a38b697d31d11d7a2fc741dd91af2ccaaa024cd1
-DIST nvidia-xconfig-580.126.09.tar.bz2 111541 BLAKE2B bab1f4347613ffe30ada9df4fa387a8426f4c829c4346cdb57cfa4334f93b2048b1296033e8ea79c1a5210ae8021ab5e4aa7d8dcbec216a886f5be14b684fdf4 SHA512 810e831e2522029e82e5bde1eab9ec641da271336c430eb2ce5645e7e765f179694fdb93a41e49ba2c951c0b0edc2fdffa77d088e9678ab206eabe45866c6c09
DIST nvidia-xconfig-580.126.18.tar.bz2 111880 BLAKE2B 669b02a4dd3d3b08937f67f7812ac6b4f715d471526b3c5178623699fff2b89c596c199d1b8fa1837bb2a5c784f8adf68d1977686da8c586c5abd3f8b49d71f9 SHA512 769cff278522fd3a5435d0b2c31c627f4091be996f2e13ede2df064e025a32cdbe6818e5a81e86a0338a6e7b9c96b9aa4bd7d8a9ff737f738a46f0be63c9b90a
DIST nvidia-xconfig-590.48.01.tar.bz2 110986 BLAKE2B 6ec7f5eee2ca4c4a96f0607ac94ec3d491137a0e8750a6ae4c46feddced61f7a8b1eb77aa333008a69ceab7ad071671b7449bb2ed9ba285359fd1cb991a9c9b2 SHA512 e85dbd9ba5e056fb6f8a4618df35fa1692d0037e50122a5659ebda043a9b380fdf72aaa56f82b64e5525c36f429ed9bbd7f0e319c608f7c50355d47ab3b24077
+DIST nvidia-xconfig-595.45.04.tar.bz2 111057 BLAKE2B 89cab70e2ed1aaf6af883966eed8597010497485ab6b019e8f237ab03c4a4a1bc37aab8ea24f67e96118f7315c21bf4b5056f97b188ce622b390919761e8b3d0 SHA512 85a64cf414f6a2ebf07466c7ecb9ca838810031f59c9fecfff3325fa4db0b37edeae7f6cf94a1127be074fe34af44e9ade06ea36d5c3764a0907d1706b49e8e4
DIST open-gpu-kernel-modules-580.94.18.tar.gz 23301123 BLAKE2B d05530e8dd763a5305a20fd7a47a99f5bb9088cee68fc023f00c94c48f6477b0db504fa95f3ff1262d21cd57b05af529341bebfc69ec3ce904ac0315d424b0f7 SHA512 71fb699c57061d226ddfc1e8974c9c3f50d68af651e0d56afb425482b35c8892c67f60f9a41bde86e3f6d93b15bb8661d1f57b55b0fc18c84a6b8775ca5328c4
diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-595.conf b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-595.conf
new file mode 100644
index 0000000000..e166611781
--- /dev/null
+++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/files/nvidia-595.conf
@@ -0,0 +1,36 @@
+# NVIDIA drivers options
+# See /usr/share/doc/nvidia-drivers-*/README.txt* for more information.
+
+# nvidia-drivers and nouveau / nova cannot be used at same time.
+# Comment out the following lines if you wish to allow either.
+blacklist nouveau
+blacklist nova_core
+
+# By default, NVIDIA will handle the console/tty display and allow
+# overriding DRM devices such as simpledrm. May or may not cause
+# issues like being unable to display/switch tty properly or resume
+# from sleep with *some* setups. Try disabling by uncommenting if
+# need to troubleshoot issues, and re-enable if unrelated.
+#options nvidia-drm fbdev=0
+
+# Suspend options. Notifiers=1 implies NVreg_PreserveVideoMemoryAllocations=1
+# which is needed to avoid issues when resuming from suspend esp. on wayland
+# (former systemd suspend services are not needed with kernel notifiers).
+options nvidia \
+ NVreg_UseKernelSuspendNotifiers=1 \
+ NVreg_TemporaryFilePath=/var/tmp
+
+# !!! Security Warning !!!
+# Do not change the DeviceFile options unless you know what you are doing.
+# Only add trusted users to the 'video' group, these users may be able to
+# crash, compromise, or irreparably damage the machine.
+options nvidia \
+ NVreg_DeviceFileGID=@VIDEOGID@ \
+ NVreg_DeviceFileMode=432 \
+ NVreg_DeviceFileUID=0 \
+ NVreg_ModifyDeviceFiles=1
+
+# Should be no need to touch anything below.
+alias char-major-195 nvidia
+alias /dev/nvidiactl char-major-195
+remove nvidia modprobe -r --ignore-remove nvidia-drm nvidia-modeset nvidia-uvm nvidia
diff --git a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/metadata.xml b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/metadata.xml
index d7260344c5..7bfd5a9390 100644
--- a/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/metadata.xml
+++ b/sdk_container/src/third_party/portage-stable/x11-drivers/nvidia-drivers/metadata.xml
@@ -12,8 +12,10 @@