From 2eb1ab37792689eff5292503fa64825ef6610454 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Thu, 9 Sep 2021 09:34:33 +0200 Subject: [PATCH 1/6] eclass: Support python3 3.8 to 3.10 That way, we will stop getting errors about invalid python implementation after updating some package that declares compatibility with a python version we haven't yet packaged. This could also be done by simply taking the updated version of the eclass files from gentoo, but they also drop support for older EAPIs that we unfortunately still use in some places. --- .../third_party/portage-stable/eclass/python-utils-r1.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 f8f51ecb69..96d7195d56 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 @@ -44,7 +44,7 @@ _PYTHON_ALL_IMPLS=( jython2_7 pypy pypy3 python2_7 - python3_5 python3_6 python3_7 + python3_5 python3_6 python3_7 python3_8 python3_9 python3_10 ) readonly _PYTHON_ALL_IMPLS @@ -80,7 +80,7 @@ _python_impl_supported() { # keep in sync with _PYTHON_ALL_IMPLS! # (not using that list because inline patterns shall be faster) case "${impl}" in - python2_7|python3_[567]|jython2_7) + python2_7|python3_[56789]|jython2_7|python3_10) return 0 ;; pypy1_[89]|pypy2_0|python2_[56]|python3_[1234]) From f0b36f19e14ef12997e887ba81db48ef8aaf3f46 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Thu, 9 Sep 2021 09:34:54 +0200 Subject: [PATCH 2/6] eclass: Accept one parameter only It's backported from gentoo, some newer packages in gentoo started to use python_gen_cond_dep with one parameter only, so when we updated them in portage stable, we don't want them to fail to build. --- .../third_party/portage-stable/eclass/python-utils-r1.eclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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 96d7195d56..90df1fec75 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 @@ -176,7 +176,8 @@ _python_set_impls() { # b) '-2' to indicate all Python 2 variants (= !python_is_python3) # c) '-3' to indicate all Python 3 variants (= python_is_python3) _python_impl_matches() { - [[ ${#} -ge 2 ]] || die "${FUNCNAME}: takes at least 2 parameters" + [[ ${#} -ge 1 ]] || die "${FUNCNAME}: takes at least 1 parameter" + [[ ${#} -eq 1 ]] && return 0 local impl=${1} pattern shift From a62a2153f778d62dd3bfe7b3d7c1b76b4a813c11 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Thu, 9 Sep 2021 08:31:57 +0200 Subject: [PATCH 3/6] sys-apps/coreutils: Bring back from overlay Comes from commit 644f513293168d45627a987fe44ff49a09167219. Could be updated later, when we update python3. --- .../sys-apps/coreutils/Manifest | 4 + .../sys-apps/coreutils/coreutils-8.30.ebuild | 210 ++++++++++++++++++ .../coreutils/coreutils-8.31-r1.ebuild | 190 ++++++++++++++++ .../coreutils/coreutils-8.32-r1.ebuild | 201 +++++++++++++++++ .../coreutils-8.31-sandbox-env-test.patch | 52 +++++ ...eutils-8.32-ls-restore-8.31-behavior.patch | 94 ++++++++ .../coreutils-8.32-sandbox-env-test.patch | 64 ++++++ .../sys-apps/coreutils/metadata.xml | 20 ++ 8 files changed, 835 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/Manifest create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.30.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.31-r1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.32-r1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.31-sandbox-env-test.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.32-ls-restore-8.31-behavior.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.32-sandbox-env-test.patch create mode 100644 sdk_container/src/third_party/portage-stable/sys-apps/coreutils/metadata.xml diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/Manifest new file mode 100644 index 0000000000..587b6b33bc --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/Manifest @@ -0,0 +1,4 @@ +DIST coreutils-8.30-patches-01.tar.xz 5788 BLAKE2B a41511ce39ac570cb14b7f12d125eebef92217469a9490808719fa0665f5e5c0adb96fbd02c4bac4d280d1502295669575790a81dbc01afe2ca3a9d384cbefb0 SHA512 b1e1933637de4581d5f8c6ede4e80a012435d13f0cf5550a76ab5bbe9441e3c15ce19ef3f78a7ea3b8368d5e9a3bb17c1207c471d26171b59786f38adeba0454 +DIST coreutils-8.30.tar.xz 5359532 BLAKE2B b66ccd112a6c2c8b90e58ff1c3371e7f5827937035769329885e5bdae197466189f3715720b8f8cf0b5047fe16d6c86984dcee994117c2d3c7b8dbd597027255 SHA512 25bc132c0d89ce71c33e417f04649c9fcfce6c5ef8b19f093b2e9e2851bfde9b5a31e20499d9c427332228ba54b88d445ddb445551e1944bb8f5cbff5ffa4eda +DIST coreutils-8.31.tar.xz 5410140 BLAKE2B e3ae6be8edbe9df9164b4c9ac8bf14dc23b147fa665f20669e18ac4c6e45ba839dc0dc99e05670eb006d22133475a4a717a5f40b00ebaedfd6e1fbab887674d5 SHA512 ef8941dae845bbf5ae5838bc49e44554a766302930601aada6fa594e8088f0fbad74e481ee392ff89633e68b99e4da3f761fcb5d31ee3b233d540fe2a2d4e1af +DIST coreutils-8.32.tar.xz 5547836 BLAKE2B 0ad99c176c19ec214fcfd0845523e5362f0151827707c759bd46c0fe8d2501c6ad1c29c5b71266f6525857bc0d56c472db0d7fe29953b6c65e2e6c76bdf3c515 SHA512 1c8f3584efd61b4b02e7ac5db8e103b63cfb2063432caaf1e64cb2dcc56d8c657d1133bbf10bd41468d6a1f31142e6caa81d16ae68fa3e6e84075c253613a145 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.30.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.30.ebuild new file mode 100644 index 0000000000..fda25b3b8b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.30.ebuild @@ -0,0 +1,210 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +PYTHON_COMPAT=( python3_6 ) + +inherit eutils flag-o-matic python-any-r1 toolchain-funcs + +PATCH_VER="01" +DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)" +HOMEPAGE="https://www.gnu.org/software/coreutils/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.xz + mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz + https://dev.gentoo.org/~polynomial-c/dist/${P}-patches-${PATCH_VER}.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~x86-linux" +IUSE="acl caps gmp hostname kill multicall nls selinux +split-usr static test userland_BSD vanilla xattr" +RESTRICT="!test? ( test )" + +LIB_DEPEND="acl? ( sys-apps/acl[static-libs] ) + caps? ( sys-libs/libcap ) + gmp? ( dev-libs/gmp:=[static-libs] ) + xattr? ( !userland_BSD? ( sys-apps/attr[static-libs] ) )" +RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs]} ) + selinux? ( sys-libs/libselinux ) + nls? ( virtual/libintl )" +DEPEND="${RDEPEND} + static? ( ${LIB_DEPEND} ) + app-arch/xz-utils + test? ( + dev-lang/perl + dev-perl/Expect + !userland_BSD? ( + dev-util/strace + ) + ${PYTHON_DEPS} + $(python_gen_any_dep 'dev-python/pyinotify[${PYTHON_USEDEP}]') + )" +RDEPEND+=" + hostname? ( !sys-apps/net-tools[hostname] ) + kill? ( + !sys-apps/util-linux[kill] + !sys-process/procps[kill] + ) + !app-misc/realpath + ! "${ww}" + #!${EPREFIX}/bin/sh + exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P $w) "\$@" + EOF + chmod a+rx "${ww}" + done + } + mkwrap mount umount + + addwrite /dev/full + #export RUN_EXPENSIVE_TESTS="yes" + #export FETISH_GROUPS="portage wheel" + env PATH="${T}/mount-wrappers:${PATH}" \ + emake -j1 -k check +} + +src_install() { + default + + insinto /etc + newins src/dircolors.hin DIR_COLORS + + if [[ ${USERLAND} == "GNU" ]] ; then + cd "${ED%/}"/usr/bin || die + dodir /bin + # move critical binaries into /bin (required by FHS) + local fhs="cat chgrp chmod chown cp date dd df echo false ln ls + mkdir mknod mv pwd rm rmdir stty sync true uname" + mv ${fhs} ../../bin/ || die "could not move fhs bins" + if use hostname; then + mv hostname ../../bin/ || die + fi + if use kill; then + mv kill ../../bin/ || die + fi + if use split-usr ; then + # move critical binaries into /bin (common scripts) + local com="basename chroot cut dir dirname du env expr head mkfifo + mktemp readlink seq sleep sort tail touch tr tty vdir wc yes" + mv ${com} ../../bin/ || die "could not move common bins" + # create a symlink for uname in /usr/bin/ since autotools require it + local x + for x in ${com} uname ; do + dosym ../../bin/${x} /usr/bin/${x} + done + fi + else + # For now, drop the man pages, collides with the ones of the system. + rm -rf "${ED%/}"/usr/share/man + fi + +} + +pkg_postinst() { + ewarn "Make sure you run 'hash -r' in your active shells." + ewarn "You should also re-source your shell settings for LS_COLORS" + ewarn " changes, such as: source /etc/profile" + + # Help out users using experimental filesystems + if grep -qs btrfs "${EROOT%/}"/etc/fstab /proc/mounts ; then + case $(uname -r) in + 2.6.[12][0-9]|2.6.3[0-7]*) + ewarn "You are running a system with a buggy btrfs driver." + ewarn "Please upgrade your kernel to avoid silent corruption." + ewarn "See: https://bugs.gentoo.org/353907" + ;; + esac + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.31-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.31-r1.ebuild new file mode 100644 index 0000000000..57d93329c4 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.31-r1.ebuild @@ -0,0 +1,190 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +PYTHON_COMPAT=( python3_{6,7} ) + +inherit eutils flag-o-matic python-any-r1 toolchain-funcs + +PATCH="${PN}-8.30-patches-01" +DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)" +HOMEPAGE="https://www.gnu.org/software/coreutils/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.xz + mirror://gentoo/${PATCH}.tar.xz + https://dev.gentoo.org/~polynomial-c/dist/${PATCH}.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x86-linux" +IUSE="acl caps gmp hostname kill multicall nls selinux +split-usr static test vanilla xattr" +RESTRICT="!test? ( test )" + +LIB_DEPEND="acl? ( sys-apps/acl[static-libs] ) + caps? ( sys-libs/libcap ) + gmp? ( dev-libs/gmp:=[static-libs] ) + xattr? ( sys-apps/attr[static-libs] )" +RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs]} ) + selinux? ( sys-libs/libselinux ) + nls? ( virtual/libintl )" +DEPEND="${RDEPEND} + static? ( ${LIB_DEPEND} ) + app-arch/xz-utils + test? ( + dev-lang/perl + dev-perl/Expect + dev-util/strace + ${PYTHON_DEPS} + )" +RDEPEND+=" + hostname? ( !sys-apps/net-tools[hostname] ) + kill? ( + !sys-apps/util-linux[kill] + !sys-process/procps[kill] + ) + !app-misc/realpath + ! "${ww}" + #!${EPREFIX}/bin/sh + exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@" + EOF + chmod a+rx "${ww}" + done + } + mkwrap mount umount + + addwrite /dev/full + #export RUN_EXPENSIVE_TESTS="yes" + #export FETISH_GROUPS="portage wheel" + env PATH="${T}/mount-wrappers:${PATH}" \ + emake -j1 -k check +} + +src_install() { + default + + insinto /etc + newins src/dircolors.hin DIR_COLORS + + if use split-usr ; then + cd "${ED%/}"/usr/bin || die + dodir /bin + # move critical binaries into /bin (required by FHS) + local fhs="cat chgrp chmod chown cp date dd df echo false ln ls + mkdir mknod mv pwd rm rmdir stty sync true uname" + mv ${fhs} ../../bin/ || die "could not move fhs bins" + if use hostname; then + mv hostname ../../bin/ || die + fi + if use kill; then + mv kill ../../bin/ || die + fi + # move critical binaries into /bin (common scripts) + # Why are these required for booting? + local com="basename chroot cut dir dirname du env expr head mkfifo + mktemp readlink seq sleep sort tail touch tr tty vdir wc yes" + mv ${com} ../../bin/ || die "could not move common bins" + # create a symlink for uname in /usr/bin/ since autotools require it + # Other than uname, we need to figure out why we are + # creating symlinks for these in /usr/bin instead of leaving + # the files there in the first place. + local x + for x in ${com} uname ; do + dosym ../../bin/${x} /usr/bin/${x} + done + fi +} + +pkg_postinst() { + ewarn "Make sure you run 'hash -r' in your active shells." + ewarn "You should also re-source your shell settings for LS_COLORS" + ewarn " changes, such as: source /etc/profile" +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.32-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.32-r1.ebuild new file mode 100644 index 0000000000..63b8e1f694 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/coreutils-8.32-r1.ebuild @@ -0,0 +1,201 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8} ) + +inherit eutils flag-o-matic python-any-r1 toolchain-funcs + +PATCH="${PN}-8.30-patches-01" +DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)" +HOMEPAGE="https://www.gnu.org/software/coreutils/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.xz + !vanilla? ( + mirror://gentoo/${PATCH}.tar.xz + https://dev.gentoo.org/~polynomial-c/dist/${PATCH}.tar.xz + ) +" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x86-linux" +IUSE="acl caps gmp hostname kill multicall nls selinux +split-usr static test vanilla xattr" +RESTRICT="!test? ( test )" + +LIB_DEPEND="acl? ( sys-apps/acl[static-libs] ) + caps? ( sys-libs/libcap ) + gmp? ( dev-libs/gmp:=[static-libs] ) + xattr? ( sys-apps/attr[static-libs] )" +RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs]} ) + selinux? ( sys-libs/libselinux ) + nls? ( virtual/libintl )" +DEPEND=" + ${RDEPEND} + static? ( ${LIB_DEPEND} ) +" +BDEPEND=" + app-arch/xz-utils + test? ( + dev-lang/perl + dev-perl/Expect + dev-util/strace + ${PYTHON_DEPS} + ) +" +RDEPEND+=" + hostname? ( !sys-apps/net-tools[hostname] ) + kill? ( + !sys-apps/util-linux[kill] + !sys-process/procps[kill] + ) + !app-misc/realpath + ! "${ww}" + #!${EPREFIX}/bin/sh + exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P ${w}) "\$@" + EOF + chmod a+rx "${ww}" + done + } + mkwrap mount umount + + addwrite /dev/full + #export RUN_EXPENSIVE_TESTS="yes" + #export FETISH_GROUPS="portage wheel" + env PATH="${T}/mount-wrappers:${PATH}" \ + emake -j1 -k check +} + +src_install() { + default + + insinto /etc + newins src/dircolors.hin DIR_COLORS + + if use split-usr ; then + cd "${ED}"/usr/bin || die + dodir /bin + # move critical binaries into /bin (required by FHS) + local fhs="cat chgrp chmod chown cp date dd df echo false ln ls + mkdir mknod mv pwd rm rmdir stty sync true uname" + mv ${fhs} ../../bin/ || die "could not move fhs bins" + if use hostname; then + mv hostname ../../bin/ || die + fi + if use kill; then + mv kill ../../bin/ || die + fi + # move critical binaries into /bin (common scripts) + # Why are these required for booting? + local com="basename chroot cut dir dirname du env expr head mkfifo + mktemp readlink seq sleep sort tail touch tr tty vdir wc yes" + mv ${com} ../../bin/ || die "could not move common bins" + # create a symlink for uname in /usr/bin/ since autotools require it + # Other than uname, we need to figure out why we are + # creating symlinks for these in /usr/bin instead of leaving + # the files there in the first place. + local x + for x in ${com} uname ; do + dosym ../../bin/${x} /usr/bin/${x} + done + fi +} + +pkg_postinst() { + ewarn "Make sure you run 'hash -r' in your active shells." + ewarn "You should also re-source your shell settings for LS_COLORS" + ewarn " changes, such as: source /etc/profile" +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.31-sandbox-env-test.patch b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.31-sandbox-env-test.patch new file mode 100644 index 0000000000..f81ea13776 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.31-sandbox-env-test.patch @@ -0,0 +1,52 @@ +Skip tests known to fail when running under Gentoo sandbox. + +--- a/tests/du/long-from-unreadable.sh ++++ b/tests/du/long-from-unreadable.sh +@@ -29,6 +29,9 @@ + # unnecessarily to using FTS_NOCHDIR mode in this corner case. + + . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src ++# Avoid #413621 until #548250 is resolved ++test -n "$SANDBOX_ACTIVE" && skip_ "Gentoo: Test known bad under sandbox (#413621)" ++ + print_ver_ du + + require_perl_ +--- a/tests/ls/stat-free-symlinks.sh ++++ b/tests/ls/stat-free-symlinks.sh +@@ -17,6 +17,9 @@ + # along with this program. If not, see . + + . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src ++# Avoid #413621 until #548250 is resolved ++test -n "$SANDBOX_ACTIVE" && skip_ "Gentoo: Test known bad under sandbox (#413621)" ++ + print_ver_ ls + require_strace_ stat + +--- a/tests/misc/env-S.pl ++++ b/tests/misc/env-S.pl +@@ -30,6 +30,11 @@ $env = $1; + # Turn off localization of executable's output. + @ENV{qw(LANGUAGE LANG LC_ALL)} = ('C') x 3; + ++# Skip if sandbox is enabled ++if ($ENV{SANDBOX_ACTIVE}) { ++ CuSkip::skip "Gentoo: Test known bad under sandbox (#675802)\n"; ++} ++ + my @Tests = + ( + # Test combination of -S and regular arguments +--- a/tests/rm/deep-2.sh ++++ b/tests/rm/deep-2.sh +@@ -17,6 +17,9 @@ + # along with this program. If not, see . + + . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src ++# Avoid #413621 until #548250 is resolved ++test -n "$SANDBOX_ACTIVE" && skip_ "Gentoo: Test known bad under sandbox (#413621)" ++ + print_ver_ rm + require_perl_ + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.32-ls-restore-8.31-behavior.patch b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.32-ls-restore-8.31-behavior.patch new file mode 100644 index 0000000000..62a35cd85a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.32-ls-restore-8.31-behavior.patch @@ -0,0 +1,94 @@ +From 10fcb97bd728f09d4a027eddf8ad2900f0819b0a Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Thu, 5 Mar 2020 17:25:29 -0800 +Subject: ls: restore 8.31 behavior on removed directories + +* src/ls.c: Do not include +(print_dir): Don't worry about whether the directory is removed. +* tests/ls/removed-directory.sh: Adjust to match new (i.e., old) +behavior. + +diff --git a/src/ls.c b/src/ls.c +index 24b983287..4acf5f44d 100644 +--- a/src/ls.c ++++ b/src/ls.c +@@ -49,10 +49,6 @@ + # include + #endif + +-#ifdef __linux__ +-# include +-#endif +- + #include + #include + #include +@@ -2896,7 +2892,6 @@ print_dir (char const *name, char const *realname, bool command_line_arg) + struct dirent *next; + uintmax_t total_blocks = 0; + static bool first = true; +- bool found_any_entries = false; + + errno = 0; + dirp = opendir (name); +@@ -2972,7 +2967,6 @@ print_dir (char const *name, char const *realname, bool command_line_arg) + next = readdir (dirp); + if (next) + { +- found_any_entries = true; + if (! file_ignored (next->d_name)) + { + enum filetype type = unknown; +@@ -3018,22 +3012,6 @@ print_dir (char const *name, char const *realname, bool command_line_arg) + if (errno != EOVERFLOW) + break; + } +-#ifdef __linux__ +- else if (! found_any_entries) +- { +- /* If readdir finds no directory entries at all, not even "." or +- "..", then double check that the directory exists. */ +- if (syscall (SYS_getdents, dirfd (dirp), NULL, 0) == -1 +- && errno != EINVAL) +- { +- /* We exclude EINVAL as that pertains to buffer handling, +- and we've passed NULL as the buffer for simplicity. +- ENOENT is returned if appropriate before buffer handling. */ +- file_failure (command_line_arg, _("reading directory %s"), name); +- } +- break; +- } +-#endif + else + break; + +diff --git a/tests/ls/removed-directory.sh b/tests/ls/removed-directory.sh +index e8c835dab..fe8f929a1 100755 +--- a/tests/ls/removed-directory.sh ++++ b/tests/ls/removed-directory.sh +@@ -26,20 +26,14 @@ case $host_triplet in + *) skip_ 'non linux kernel' ;; + esac + +-LS_FAILURE=2 +- +-cat <<\EOF >exp-err || framework_failure_ +-ls: reading directory '.': No such file or directory +-EOF +- + cwd=$(pwd) + mkdir d || framework_failure_ + cd d || framework_failure_ + rmdir ../d || framework_failure_ + +-returns_ $LS_FAILURE ls >../out 2>../err || fail=1 ++ls >../out 2>../err || fail=1 + cd "$cwd" || framework_failure_ + compare /dev/null out || fail=1 +-compare exp-err err || fail=1 ++compare /dev/null err || fail=1 + + Exit $fail +-- +cgit v1.2.1 + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.32-sandbox-env-test.patch b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.32-sandbox-env-test.patch new file mode 100644 index 0000000000..40b1554d94 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/files/coreutils-8.32-sandbox-env-test.patch @@ -0,0 +1,64 @@ +Skip tests known to fail when running under Gentoo sandbox. + +--- a/tests/du/long-from-unreadable.sh ++++ b/tests/du/long-from-unreadable.sh +@@ -29,6 +29,9 @@ + # unnecessarily to using FTS_NOCHDIR mode in this corner case. + + . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src ++# Avoid #413621 until #548250 is resolved ++test -n "$SANDBOX_ACTIVE" && skip_ "Gentoo: Test known bad under sandbox (#413621)" ++ + print_ver_ du + + require_perl_ +--- a/tests/ls/removed-directory.sh ++++ b/tests/ls/removed-directory.sh +@@ -19,6 +19,9 @@ + # along with this program. If not, see . + + . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src ++# Avoid #413621 until #548250 is resolved ++test -n "$SANDBOX_ACTIVE" && skip_ "Gentoo: Test known bad under sandbox (#413621)" ++ + print_ver_ ls + + case $host_triplet in +--- a/tests/ls/stat-free-symlinks.sh ++++ b/tests/ls/stat-free-symlinks.sh +@@ -17,6 +17,9 @@ + # along with this program. If not, see . + + . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src ++# Avoid #413621 until #548250 is resolved ++test -n "$SANDBOX_ACTIVE" && skip_ "Gentoo: Test known bad under sandbox (#413621)" ++ + print_ver_ ls + require_strace_ stat + +--- a/tests/misc/env-S.pl ++++ b/tests/misc/env-S.pl +@@ -30,6 +30,11 @@ $env = $1; + # Turn off localization of executable's output. + @ENV{qw(LANGUAGE LANG LC_ALL)} = ('C') x 3; + ++# Skip if sandbox is enabled ++if ($ENV{SANDBOX_ACTIVE}) { ++ CuSkip::skip "Gentoo: Test known bad under sandbox (#675802)\n"; ++} ++ + my @Tests = + ( + # Test combination of -S and regular arguments +--- a/tests/rm/deep-2.sh ++++ b/tests/rm/deep-2.sh +@@ -17,6 +17,9 @@ + # along with this program. If not, see . + + . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src ++# Avoid #413621 until #548250 is resolved ++test -n "$SANDBOX_ACTIVE" && skip_ "Gentoo: Test known bad under sandbox (#413621)" ++ + print_ver_ rm + require_perl_ + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/metadata.xml b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/metadata.xml new file mode 100644 index 0000000000..4e46af051b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/coreutils/metadata.xml @@ -0,0 +1,20 @@ + + + + + base-system@gentoo.org + Gentoo Base System + +Standard GNU file utilities (chmod, cp, dd, dir, ls, ...), text utilities (sort, tr, head, wc, ...), and shell utilities (whoami, who, ...) + + + Add Linux capabilities support in output of file utilities (ls, dir, ...) via sys-libs/libcap + Build the hostname program + Build the kill program + Build all tools into a single `coreutils` program akin to busybox to save space + Enable this if /bin and /usr/bin are separate directories + + + cpe:/a:gnu:coreutils + + From 8682ce1bada9423281e1c9ecea50214658a0e611 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Thu, 9 Sep 2021 08:39:14 +0200 Subject: [PATCH 4/6] sys-libs/talloc: Bring back from overlay This comes from gentoo commit 3e3fc100e5298bae3ef766d10144dac5c46218c3, so it's a bit older than the version in overlay, but the differences are small: the newer version dropped "multilib" from inherit and has more stable keywords. We will need to add accept_keywords to overlay for this package. --- .../portage-stable/sys-libs/talloc/Manifest | 2 + .../sys-libs/talloc/metadata.xml | 15 +++ .../sys-libs/talloc/talloc-2.3.1.ebuild | 118 ++++++++++++++++++ .../sys-libs/talloc/talloc-2.3.2.ebuild | 118 ++++++++++++++++++ 4 files changed, 253 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/talloc/Manifest create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/talloc/metadata.xml create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/talloc/talloc-2.3.1.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/talloc/talloc-2.3.2.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/talloc/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/talloc/Manifest new file mode 100644 index 0000000000..3258d711e0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/talloc/Manifest @@ -0,0 +1,2 @@ +DIST talloc-2.3.1.tar.gz 638878 BLAKE2B 3d014a47639434c65f5dda2c51da3c6c28d5d60dbc9afdaca27b8ec903cde3433a8fa4ca33305750ff60911f7e43171d0d932d98c2d30ea38494aa532d6d9626 SHA512 064fc39a9aaace6e0209f3251c8ff198d8a318b4cf4198006ff9892ca6e15e7d817b2fda43e0444fbbf04d2c3e70d06523dff5d57cbb796d27317ef4759e062e +DIST talloc-2.3.2.tar.gz 661344 BLAKE2B 957eedc4a367051cb99fa4d2edb8e778de8e0187bb5c0d84a1afef20aab122a8b7310d10c694e15ddd6a0a45194889fe3d26dae0ceb8e406d51512af95a23014 SHA512 c851a6f43025720453a3bff8734bfcfff0e29fb7cf2ffcc6c03b6ab8589098daf01d668deec61aa2f238d4df3eb3c47bd080e26eec760cf04a70e1afcad5c5e1 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/talloc/metadata.xml b/sdk_container/src/third_party/portage-stable/sys-libs/talloc/metadata.xml new file mode 100644 index 0000000000..afa6476170 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/talloc/metadata.xml @@ -0,0 +1,15 @@ + + + + + patrick@gentoo.org + Patrick Lauer + + + samba@gentoo.org + Samba + + + Enable extra compatibility stuff + + diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/talloc/talloc-2.3.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/talloc/talloc-2.3.1.ebuild new file mode 100644 index 0000000000..849ee66f46 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/talloc/talloc-2.3.1.ebuild @@ -0,0 +1,118 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6..9} ) +PYTHON_REQ_USE="threads(+)" +inherit waf-utils python-single-r1 multilib multilib-minimal + +DESCRIPTION="Samba talloc library" +HOMEPAGE="https://talloc.samba.org/" +SRC_URI="https://www.samba.org/ftp/${PN}/${P}.tar.gz" + +LICENSE="GPL-3 LGPL-3+ LGPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~sparc-solaris ~x64-solaris" +IUSE="compat +python" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="test" + +RDEPEND=" + !elibc_FreeBSD? ( + !elibc_SunOS? ( + !elibc_Darwin? ( + dev-libs/libbsd[${MULTILIB_USEDEP}] + ) + ) + ) + python? ( ${PYTHON_DEPS} ) + !! Date: Thu, 9 Sep 2021 08:50:33 +0200 Subject: [PATCH 5/6] dev-python/setuptools: Bring back from overlay This comes from gentoo commit fe13784be44e5167f67315bf280690004aae885e. --- .../dev-python/setuptools/Manifest | 2 + .../dev-python/setuptools/metadata.xml | 14 +++ .../setuptools/setuptools-46.4.0-r3.ebuild | 85 +++++++++++++++++++ .../setuptools/setuptools-50.3.0.ebuild | 73 ++++++++++++++++ 4 files changed, 174 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/setuptools/metadata.xml create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-46.4.0-r3.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-50.3.0.ebuild diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest new file mode 100644 index 0000000000..c8c321783c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest @@ -0,0 +1,2 @@ +DIST setuptools-46.4.0.zip 865912 BLAKE2B 452d36132f5648c79c7e1616a93ff6a39ab2f64b2864ee397b4f57e7f72c47d418ff274f5decd35b0591b09800ad2a7cbd71c283550bd0e60a4d85744a57d4ec SHA512 31e58fd1d682089a45d23aa07c3c2c4c952ca016fa4c3416b2cba979d8b57369f80baef98ce857912e506e87d6cb456497a1ce1c75a0cdf1ee25d4e753b58726 +DIST setuptools-50.3.0.zip 2169216 BLAKE2B 029ea0159de270af0078a4661c696b93681b33dcc475640c7626f5a40bf1bb4759e5915948696c03b76dca10bdc4e790e2e9ef9628f41abca9a6aa48adcb72f6 SHA512 f67a2b7d639e03bf8b3815133e128902a559baf689afdd5893844ddc7c83505d727a6bb30ced1f78c4d2719dd405d2f4c527576bfa14dd9cb50c8ec4a479683e diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/metadata.xml new file mode 100644 index 0000000000..bd9e6b5273 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/metadata.xml @@ -0,0 +1,14 @@ + + + + + python@gentoo.org + Python + + + + setuptools + pypa/setuptools + cpe:/a:python:setuptools + + diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-46.4.0-r3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-46.4.0-r3.ebuild new file mode 100644 index 0000000000..9819bcdb50 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-46.4.0-r3.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +# Set to 'manual' to avoid triggering install QA check +DISTUTILS_USE_SETUPTOOLS=manual +PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} pypy3 ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 + +DESCRIPTION="Collection of extensions to Distutils" +HOMEPAGE="https://github.com/pypa/setuptools https://pypi.org/project/setuptools/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.zip" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + app-arch/unzip + test? ( + $(python_gen_cond_dep ' + dev-python/mock[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + >=dev-python/pytest-3.7.0[${PYTHON_USEDEP}] + dev-python/pytest-fixture-config[${PYTHON_USEDEP}] + dev-python/pytest-virtualenv[${PYTHON_USEDEP}] + dev-python/wheel[${PYTHON_USEDEP}] + ' -3) + ) +" +# installing plugins apparently breaks stuff at runtime, so let's pull +# it early +PDEPEND=" + >=dev-python/certifi-2016.9.26[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/setuptools_scm[${PYTHON_USEDEP}] + ' -3)" + +# Force in-source build because build system modifies sources. +DISTUTILS_IN_SOURCE_BUILD=1 + +DOCS=( {CHANGES,README}.rst docs/{easy_install.txt,pkg_resources.txt,setuptools.txt} ) + +python_prepare_all() { + # silence the py2 warning that is awfully verbose and breaks some + # packages by adding unexpected output + # (also, we know!) + sed -i -e '/py2_warn/d' pkg_resources/__init__.py || die + + # disable tests requiring a network connection + rm setuptools/tests/test_packageindex.py || die + + # don't run integration tests + rm setuptools/tests/test_integration.py || die + + # xpass-es for me on py3 + sed -e '/xfail.*710/s:(:(six.PY2, :' \ + -i setuptools/tests/test_archive_util.py || die + + # avoid pointless dep on flake8 + sed -i -e 's:--flake8::' pytest.ini || die + + distutils-r1_python_prepare_all +} + +python_test() { + if ! python_is_python3; then + einfo "Tests are skipped on py2 to untangle deps" + return + fi + + distutils_install_for_testing + # test_easy_install raises a SandboxViolation due to ${HOME}/.pydistutils.cfg + # It tries to sandbox the test in a tempdir + HOME="${PWD}" pytest -vv ${PN} || die "Tests failed under ${EPYTHON}" +} + +python_install() { + export DISTRIBUTE_DISABLE_VERSIONED_EASY_INSTALL_SCRIPT=1 + distutils-r1_python_install +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-50.3.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-50.3.0.ebuild new file mode 100644 index 0000000000..ccd3f2338a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-50.3.0.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +# Set to 'manual' to avoid triggering install QA check +DISTUTILS_USE_SETUPTOOLS=manual +PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 + +DESCRIPTION="Collection of extensions to Distutils" +HOMEPAGE="https://github.com/pypa/setuptools https://pypi.org/project/setuptools/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.zip" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + app-arch/unzip + test? ( + dev-python/jaraco-envs[${PYTHON_USEDEP}] + dev-python/mock[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + >=dev-python/pytest-3.7.0[${PYTHON_USEDEP}] + dev-python/pytest-fixture-config[${PYTHON_USEDEP}] + dev-python/pytest-virtualenv[${PYTHON_USEDEP}] + dev-python/wheel[${PYTHON_USEDEP}] + ) +" +PDEPEND=" + >=dev-python/certifi-2016.9.26[${PYTHON_USEDEP}] + dev-python/setuptools_scm[${PYTHON_USEDEP}]" + +# Force in-source build because build system modifies sources. +DISTUTILS_IN_SOURCE_BUILD=1 + +DOCS=( {CHANGES,README}.rst docs/{easy_install.txt,pkg_resources.txt,setuptools.txt} ) + +python_prepare_all() { + # disable tests requiring a network connection + rm setuptools/tests/test_packageindex.py || die + + # don't run integration tests + rm setuptools/tests/test_integration.py || die + + # xpass-es for me on py3 + #sed -e '/xfail.*710/s:(:(six.PY2, :' \ + # -i setuptools/tests/test_archive_util.py || die + + # avoid pointless dep on flake8 + sed -i -e 's:--flake8::' -e 's:--cov::' pytest.ini || die + + # disable the code disabling non-existing coverage plugin + sed -i -e 's:cov = .*:return:' conftest.py || die + + distutils-r1_python_prepare_all +} + +python_test() { + distutils_install_for_testing + # test_easy_install raises a SandboxViolation due to ${HOME}/.pydistutils.cfg + # It tries to sandbox the test in a tempdir + HOME="${PWD}" pytest -vv ${PN} || die "Tests failed under ${EPYTHON}" +} + +python_install() { + export DISTRIBUTE_DISABLE_VERSIONED_EASY_INSTALL_SCRIPT=1 + distutils-r1_python_install +} From 31736e36381aff4b0276e2b44fc559dae9068d2f Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Thu, 9 Sep 2021 08:54:45 +0200 Subject: [PATCH 6/6] app-portage/gentoolkit: Bring back from overlay This is from gentoo commit 8e426ccff148220423503c9a1c6c512c9b63ddfa. --- .../app-portage/gentoolkit/Manifest | 4 + .../files/gentoolkit-0.5.0-python3_9.patch | 43 ++++++++++ .../files/gentoolkit-0.5.0-r1-python3_9.patch | 34 ++++++++ .../gentoolkit/gentoolkit-0.4.6.ebuild | 75 ++++++++++++++++++ .../gentoolkit/gentoolkit-0.4.7.ebuild | 75 ++++++++++++++++++ .../gentoolkit/gentoolkit-0.4.8.ebuild | 75 ++++++++++++++++++ .../gentoolkit/gentoolkit-0.5.0-r2.ebuild | 78 +++++++++++++++++++ .../gentoolkit/gentoolkit-9999.ebuild | 74 ++++++++++++++++++ .../app-portage/gentoolkit/metadata.xml | 14 ++++ 9 files changed, 472 insertions(+) create mode 100644 sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/Manifest create mode 100644 sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/files/gentoolkit-0.5.0-python3_9.patch create mode 100644 sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/files/gentoolkit-0.5.0-r1-python3_9.patch create mode 100644 sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.6.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.7.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.8.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.5.0-r2.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-9999.ebuild create mode 100644 sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/metadata.xml diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/Manifest b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/Manifest new file mode 100644 index 0000000000..af04c94753 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/Manifest @@ -0,0 +1,4 @@ +DIST gentoolkit-0.4.6.tar.gz 3205641 BLAKE2B 7da91a313c8a9263eb7b4abd6207ece9dd602a5069a87f1e78ada13fc9f396e1f2afddaf0637c473445034cf57b5ca7631e209361a88fa3892d302b20f4cc986 SHA512 3aa3c9af7e994313400607943b9090fd813227ddd6d550b50fbcf7eeb4053da8bcdb41c9ef2579d957d2f279fdcc4e2f2ceca1091c5fd457df4204dd11792d6e +DIST gentoolkit-0.4.7.tar.gz 3205669 BLAKE2B e5f64b85546bc10ad16e7fa42d288965539177375e8796b40df699859efa13fb98bb86aec58e60363c955b2d5e4b2e6379a7597252ee4fdbeec49559de67b328 SHA512 0fab600b4323d23e12009eeb4ade595950880a88b05bcfbfeada1a9b9af615b96d31c568285629bf6e5de7b45ed857bdf98b6261dc54974fbaf70c924e093c76 +DIST gentoolkit-0.4.8.tar.gz 3206070 BLAKE2B 7f689ae85136827b8af50401165ccd44bc824e12bec43dad786c7221ec78ee3c1f14d538d197e277a2fedc23f570440f4ec7c0cc707a146814315ff6de48c115 SHA512 689b4229c5d2b6f4440b7d3d57e4b9be5265eead53737890c17dbd0510df287f5c19f86b924735d4ad146d1a500c59a15869b718cbf805b894b0bf115b69f838 +DIST gentoolkit-0.5.0.tar.gz 3206598 BLAKE2B a379dcbbaba9d52c241fea020b87c458384e44092539947909e14fd6c63fd9cc06d076b8081874edf17fc50e80fe48ceab3400c90046867dc409e7ac39c17231 SHA512 8a5c344f3a17c4c779abbcaa35b5e3f147106dbc61310d0d1a816ec8080914271fa45c311a8feeb1bfe14195af7cf34c0b29142d6e43e2de232dae96fbd00861 diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/files/gentoolkit-0.5.0-python3_9.patch b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/files/gentoolkit-0.5.0-python3_9.patch new file mode 100644 index 0000000000..6a50db9ca6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/files/gentoolkit-0.5.0-python3_9.patch @@ -0,0 +1,43 @@ +# https://github.com/gentoo/gentoolkit/pull/11 +# https://bugs.gentoo.org/747034 +diff --git a/pym/gentoolkit/metadata.py b/pym/gentoolkit/metadata.py +index 22c249e..c3dba98 100644 +--- a/pym/gentoolkit/metadata.py ++++ b/pym/gentoolkit/metadata.py +@@ -73,8 +73,7 @@ class _Maintainer(object): + self.description = None + self.restrict = node.get('restrict') + self.status = node.get('status') +- maint_attrs = node.getchildren() +- for attr in maint_attrs: ++ for attr in node.iter(): + setattr(self, attr.tag, attr.text) + + def __repr__(self): +@@ -101,7 +100,7 @@ class _Useflag(object): + _desc = '' + if node.text: + _desc = node.text +- for child in node.getchildren(): ++ for child in node.iter(): + _desc += child.text if child.text else '' + _desc += child.tail if child.tail else '' + # This takes care of tabs and newlines left from the file +@@ -213,7 +212,7 @@ class MetaData(object): + if herd in ('no-herd', 'maintainer-wanted', 'maintainer-needed'): + return None + +- for node in self._herdstree.getiterator('herd'): ++ for node in self._herdstree.iter('herd'): + if node.findtext('name') == herd: + return node.findtext('email') + +@@ -283,7 +282,7 @@ class MetaData(object): + return self._useflags + + self._useflags = [] +- for node in self._xml_tree.getiterator('flag'): ++ for node in self._xml_tree.iter('flag'): + self._useflags.append(_Useflag(node)) + + return self._useflags diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/files/gentoolkit-0.5.0-r1-python3_9.patch b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/files/gentoolkit-0.5.0-r1-python3_9.patch new file mode 100644 index 0000000000..a9dae61504 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/files/gentoolkit-0.5.0-r1-python3_9.patch @@ -0,0 +1,34 @@ +From f14b6198d1dd9cb7f4a83f3822e4a1782a5581e8 Mon Sep 17 00:00:00 2001 +From: Brian Dolbec +Date: Tue, 13 Oct 2020 10:04:07 -0400 +Subject: [PATCH] metadata.py: Fix duplicated use flag text bug 748129 + +Regression from commit: 517581df206766 +link: https://gitweb.gentoo.org/proj/gentoolkit.git/commit/?id=517581df206766fabf10273cde565e0a6dc62829 +Gentoo bug: https://bugs.gentoo.org/748129 +Signed-off-by: Brian Dolbec +--- + pym/gentoolkit/metadata.py | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/pym/gentoolkit/metadata.py b/pym/gentoolkit/metadata.py +index c3dba98..0b58392 100644 +--- a/pym/gentoolkit/metadata.py ++++ b/pym/gentoolkit/metadata.py +@@ -101,8 +101,11 @@ class _Useflag(object): + if node.text: + _desc = node.text + for child in node.iter(): +- _desc += child.text if child.text else '' +- _desc += child.tail if child.tail else '' ++ # prevent duplicate text ++ if child.text and child.text not in _desc: ++ _desc += child.text ++ if child.tail and not child.tail in _desc: ++ _desc += child.tail + # This takes care of tabs and newlines left from the file + self.description = re.sub(r'\s+', ' ', _desc) + +-- +libgit2 1.0.1 + diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.6.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.6.ebuild new file mode 100644 index 0000000000..3c9347c0e9 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.6.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DISTUTILS_USE_SETUPTOOLS=no +PYTHON_COMPAT=( python3_{6,7} ) +PYTHON_REQ_USE="xml(+),threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Collection of administration scripts for Gentoo" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage-Tools" +SRC_URI="https://gitweb.gentoo.org/proj/gentoolkit.git/snapshot/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +IUSE="" + +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +DEPEND=" + sys-apps/portage[${PYTHON_USEDEP}]" +RDEPEND="${DEPEND} + sys-apps/gawk + sys-apps/gentoo-functions" + +python_prepare_all() { + python_setup + echo VERSION="${PVR}" "${PYTHON}" setup.py set_version + VERSION="${PVR}" "${PYTHON}" setup.py set_version + distutils-r1_python_prepare_all +} + +python_install_all() { + distutils-r1_python_install_all +} + +pkg_preinst() { + if has_version "<${CATEGORY}/${PN}-0.4.0"; then + SHOW_GENTOOKIT_DEV_DEPRECATED_MSG=1 + fi +} + +pkg_postinst() { + # Create cache directory for revdep-rebuild + mkdir -p -m 0755 "${EROOT}"/var/cache + mkdir -p -m 0700 "${EROOT}"/var/cache/revdep-rebuild + + if [[ ${SHOW_GENTOOKIT_DEV_DEPRECATED_MSG} ]]; then + elog "Starting with version 0.4.0, ebump, ekeyword and imlate are now" + elog "part of the gentoolkit package." + elog "The gentoolkit-dev package is now deprecated in favor of a single" + elog "gentoolkit package. The remaining tools from gentoolkit-dev" + elog "are now obsolete/unused with the git based tree." + fi + + # Only show the elog information on a new install + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog + elog "For further information on gentoolkit, please read the gentoolkit" + elog "guide: https://wiki.gentoo.org/wiki/Gentoolkit" + elog + elog "Another alternative to equery is app-portage/portage-utils" + elog + elog "Additional tools that may be of interest:" + elog + elog " app-admin/eclean-kernel" + elog " app-portage/diffmask" + elog " app-portage/flaggie" + elog " app-portage/install-mask" + elog " app-portage/portpeek" + elog " app-portage/smart-live-rebuild" + fi +} diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.7.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.7.ebuild new file mode 100644 index 0000000000..34ae357f65 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.7.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DISTUTILS_USE_SETUPTOOLS=no +PYTHON_COMPAT=( python3_{6,7,8} pypy3 ) +PYTHON_REQ_USE="xml(+),threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Collection of administration scripts for Gentoo" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage-Tools" +SRC_URI="https://gitweb.gentoo.org/proj/gentoolkit.git/snapshot/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +IUSE="" + +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +DEPEND=" + sys-apps/portage[${PYTHON_USEDEP}]" +RDEPEND="${DEPEND} + sys-apps/gawk + sys-apps/gentoo-functions" + +python_prepare_all() { + python_setup + echo VERSION="${PVR}" "${PYTHON}" setup.py set_version + VERSION="${PVR}" "${PYTHON}" setup.py set_version + distutils-r1_python_prepare_all +} + +python_install_all() { + distutils-r1_python_install_all +} + +pkg_preinst() { + if has_version "<${CATEGORY}/${PN}-0.4.0"; then + SHOW_GENTOOKIT_DEV_DEPRECATED_MSG=1 + fi +} + +pkg_postinst() { + # Create cache directory for revdep-rebuild + mkdir -p -m 0755 "${EROOT}"/var/cache + mkdir -p -m 0700 "${EROOT}"/var/cache/revdep-rebuild + + if [[ ${SHOW_GENTOOKIT_DEV_DEPRECATED_MSG} ]]; then + elog "Starting with version 0.4.0, ebump, ekeyword and imlate are now" + elog "part of the gentoolkit package." + elog "The gentoolkit-dev package is now deprecated in favor of a single" + elog "gentoolkit package. The remaining tools from gentoolkit-dev" + elog "are now obsolete/unused with the git based tree." + fi + + # Only show the elog information on a new install + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog + elog "For further information on gentoolkit, please read the gentoolkit" + elog "guide: https://wiki.gentoo.org/wiki/Gentoolkit" + elog + elog "Another alternative to equery is app-portage/portage-utils" + elog + elog "Additional tools that may be of interest:" + elog + elog " app-admin/eclean-kernel" + elog " app-portage/diffmask" + elog " app-portage/flaggie" + elog " app-portage/install-mask" + elog " app-portage/portpeek" + elog " app-portage/smart-live-rebuild" + fi +} diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.8.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.8.ebuild new file mode 100644 index 0000000000..d2a61bf8f6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.4.8.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DISTUTILS_USE_SETUPTOOLS=no +PYTHON_COMPAT=( python3_{6,7,8} pypy3 ) +PYTHON_REQ_USE="xml(+),threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Collection of administration scripts for Gentoo" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage-Tools" +SRC_URI="https://gitweb.gentoo.org/proj/gentoolkit.git/snapshot/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +IUSE="" + +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +DEPEND=" + sys-apps/portage[${PYTHON_USEDEP}]" +RDEPEND="${DEPEND} + sys-apps/gawk + sys-apps/gentoo-functions" + +python_prepare_all() { + python_setup + echo VERSION="${PVR}" "${PYTHON}" setup.py set_version + VERSION="${PVR}" "${PYTHON}" setup.py set_version + distutils-r1_python_prepare_all +} + +python_install_all() { + distutils-r1_python_install_all +} + +pkg_preinst() { + if has_version "<${CATEGORY}/${PN}-0.4.0"; then + SHOW_GENTOOKIT_DEV_DEPRECATED_MSG=1 + fi +} + +pkg_postinst() { + # Create cache directory for revdep-rebuild + mkdir -p -m 0755 "${EROOT}"/var/cache + mkdir -p -m 0700 "${EROOT}"/var/cache/revdep-rebuild + + if [[ ${SHOW_GENTOOKIT_DEV_DEPRECATED_MSG} ]]; then + elog "Starting with version 0.4.0, ebump, ekeyword and imlate are now" + elog "part of the gentoolkit package." + elog "The gentoolkit-dev package is now deprecated in favor of a single" + elog "gentoolkit package. The remaining tools from gentoolkit-dev" + elog "are now obsolete/unused with the git based tree." + fi + + # Only show the elog information on a new install + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog + elog "For further information on gentoolkit, please read the gentoolkit" + elog "guide: https://wiki.gentoo.org/wiki/Gentoolkit" + elog + elog "Another alternative to equery is app-portage/portage-utils" + elog + elog "Additional tools that may be of interest:" + elog + elog " app-admin/eclean-kernel" + elog " app-portage/diffmask" + elog " app-portage/flaggie" + elog " app-portage/install-mask" + elog " app-portage/portpeek" + elog " app-portage/smart-live-rebuild" + fi +} diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.5.0-r2.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.5.0-r2.ebuild new file mode 100644 index 0000000000..77fdfb33cf --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-0.5.0-r2.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DISTUTILS_USE_SETUPTOOLS=no +PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 ) +PYTHON_REQ_USE="xml(+),threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Collection of administration scripts for Gentoo" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage-Tools" +SRC_URI="https://gitweb.gentoo.org/proj/gentoolkit.git/snapshot/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +IUSE="" + +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +DEPEND=" + sys-apps/portage[${PYTHON_USEDEP}]" +RDEPEND="${DEPEND} + sys-apps/gawk + sys-apps/gentoo-functions" + +distutils_enable_tests setup.py + +PATCHES=( + "${FILESDIR}"/${PN}-0.5.0-python3_9.patch + "${FILESDIR}"/${PN}-0.5.0-r1-python3_9.patch +) + +python_prepare_all() { + python_setup + echo VERSION="${PVR}" "${PYTHON}" setup.py set_version + VERSION="${PVR}" "${PYTHON}" setup.py set_version + distutils-r1_python_prepare_all +} + +pkg_preinst() { + if has_version "<${CATEGORY}/${PN}-0.4.0"; then + SHOW_GENTOOKIT_DEV_DEPRECATED_MSG=1 + fi +} + +pkg_postinst() { + # Create cache directory for revdep-rebuild + mkdir -p -m 0755 "${EROOT}"/var/cache + mkdir -p -m 0700 "${EROOT}"/var/cache/revdep-rebuild + + if [[ ${SHOW_GENTOOKIT_DEV_DEPRECATED_MSG} ]]; then + elog "Starting with version 0.4.0, ebump, ekeyword and imlate are now" + elog "part of the gentoolkit package." + elog "The gentoolkit-dev package is now deprecated in favor of a single" + elog "gentoolkit package. The remaining tools from gentoolkit-dev" + elog "are now obsolete/unused with the git based tree." + fi + + # Only show the elog information on a new install + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog + elog "For further information on gentoolkit, please read the gentoolkit" + elog "guide: https://wiki.gentoo.org/wiki/Gentoolkit" + elog + elog "Another alternative to equery is app-portage/portage-utils" + elog + elog "Additional tools that may be of interest:" + elog + elog " app-admin/eclean-kernel" + elog " app-portage/diffmask" + elog " app-portage/flaggie" + elog " app-portage/install-mask" + elog " app-portage/portpeek" + elog " app-portage/smart-live-rebuild" + fi +} diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-9999.ebuild new file mode 100644 index 0000000000..983d63f9d3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/gentoolkit-9999.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DISTUTILS_USE_SETUPTOOLS=no +PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 ) +PYTHON_REQ_USE="xml(+),threads(+)" + +EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/gentoolkit.git" +inherit distutils-r1 git-r3 + +DESCRIPTION="Collection of administration scripts for Gentoo" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage-Tools" +SRC_URI="" + +LICENSE="GPL-2" +SLOT="0" +IUSE="" + +KEYWORDS="" + +DEPEND=" + sys-apps/portage[${PYTHON_USEDEP}]" +RDEPEND="${DEPEND} + sys-apps/gawk + sys-apps/gentoo-functions" + +distutils_enable_tests setup.py + +python_prepare_all() { + python_setup + echo VERSION="${PVR}" "${PYTHON}" setup.py set_version + VERSION="${PVR}" "${PYTHON}" setup.py set_version + distutils-r1_python_prepare_all +} + +pkg_preinst() { + if has_version "<${CATEGORY}/${PN}-0.4.0"; then + SHOW_GENTOOKIT_DEV_DEPRECATED_MSG=1 + fi +} + +pkg_postinst() { + # Create cache directory for revdep-rebuild + mkdir -p -m 0755 "${EROOT}"/var/cache + mkdir -p -m 0700 "${EROOT}"/var/cache/revdep-rebuild + + if [[ ${SHOW_GENTOOKIT_DEV_DEPRECATED_MSG} ]]; then + elog "Starting with version 0.4.0, ebump, ekeyword and imlate are now" + elog "part of the gentoolkit package." + elog "The gentoolkit-dev package is now deprecated in favor of a single" + elog "gentoolkit package. The remaining tools from gentoolkit-dev" + elog "are now obsolete/unused with the git based tree." + fi + + # Only show the elog information on a new install + if [[ ! ${REPLACING_VERSIONS} ]]; then + elog + elog "For further information on gentoolkit, please read the gentoolkit" + elog "guide: https://wiki.gentoo.org/wiki/Gentoolkit" + elog + elog "Another alternative to equery is app-portage/portage-utils" + elog + elog "Additional tools that may be of interest:" + elog + elog " app-admin/eclean-kernel" + elog " app-portage/diffmask" + elog " app-portage/flaggie" + elog " app-portage/install-mask" + elog " app-portage/portpeek" + elog " app-portage/smart-live-rebuild" + fi +} diff --git a/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/metadata.xml b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/metadata.xml new file mode 100644 index 0000000000..011e78ec74 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-portage/gentoolkit/metadata.xml @@ -0,0 +1,14 @@ + + + + + tools-portage@gentoo.org + Gentoo Portage tools team + + +Gentoolkit is a collection of useful adminstration scripts particular to +the Gentoo Linux distribution. It contains rough drafts and +implementations of features that may in time make it into Portage, or +into full-fledged tools in their own right. + +