[gentoo-dev] Last rites: net-misc/netkit-rsh
# John Helmert III (2021-06-19) # Unmaintained, open security bug. # Removal on 2021-07-19. Bug #717794. net-misc/netkit-rsh signature.asc Description: PGP signature
[gentoo-dev] news item: riscv upgrade to 20.0 profiles
Feedback welcome... Title: riscv upgrade to 20.0 profiles Author: Andreas K. Hüttel Posted: 2021-06-25 Revision: 1 News-Item-Format: 2.0 Display-If-Profile: default/linux/riscv/17.0/rv64gc/lp64d Display-If-Profile: default/linux/riscv/17.0/rv64gc/lp64d/systemd Display-If-Profile: default/linux/riscv/17.0/rv64gc/lp64 Display-If-Profile: default/linux/riscv/17.0/rv64gc/lp64/systemd On RISC-V we are switching from two-level library directories (e.g., /usr/lib64/lp64d) to a more traditional directory architecture. This is done via the profile upgrade from 17.0 to 20.0 profiles. We recommend to re-install from scratch using a 20.0 profile based stage. 17.0 profiles will be deprecated immediately and removed in 6 months. If you want to upgrade an existing installation, the following steps should be taken. Please read all commands carefully first and make sure you understand them, since the procedure is risky. The commands are given for a lp64d profile; in case of a lp64 profile, always replace lp64d with lp64. # cd /usr/local/lib64 # cp -av lp64d/. . # rm -rf lp64d # ln -s . lp64d # cd /usr/lib64 # cp -av lp64d/. . # rm -rf lp64d # ln -s . lp64d # cd /lib64 # cp -av lp64d/. . # rm -rf lp64d # sln . lp64d Note that the last command uses "sln" instead of "ln -s". Then switch from your 17.0 profile to the corresponding 20.0 profile, either by using "eselect profile" or by manually changing the /etc/portage/make.profile symlink. Next, rebuild all packages: # emerge -eav world As last step, check if portage has removed any of the symlinks created above, and if yes, recreate them. -- Andreas K. Hüttel dilfri...@gentoo.org Gentoo Linux developer (council, toolchain, base-system, perl, libreoffice) signature.asc Description: This is a digitally signed message part.
Re: [gentoo-dev] [PATCH 1/3] readme.gentoo-r1.eclass: works just fine with EAPI=8
See my posting 4 days ago: https://archives.gentoo.org/gentoo-dev/message/c71621ccc96873d98697fb35c98c55b1 Merged now. signature.asc Description: PGP signature
[gentoo-dev] Last rites: dev-python/brotlipy
# Michał Górny (2021-06-19) # Conflicts with app-arch/brotli[python]. Discontinued in favor # of dev-python/brotlicffi. No revdeps remain. # Removal on 2021-07-19. Bug #796749. dev-python/brotlipy -- Best regards, Michał Górny
Re: [gentoo-dev] [PATCH 2/3] perl-functions.eclass: Add new helpers for EAPI=8 ...
On Sat, 2021-06-19 at 13:01 +0200, dilfri...@gentoo.org wrote: > From: Andreas K. Hüttel > > ... and fix an existing one. > > fperms works on ${D} by default, so we can give it / to operate on. > > Bug: https://bugs.gentoo.org/554346 > Bug: https://bugs.gentoo.org/733020 > Signed-off-by: Andreas K. Hüttel > --- > eclass/perl-functions.eclass | 35 --- > 1 file changed, 32 insertions(+), 3 deletions(-) > > diff --git a/eclass/perl-functions.eclass b/eclass/perl-functions.eclass > index 8633f384f1bf..d0a082797265 100644 > --- a/eclass/perl-functions.eclass > +++ b/eclass/perl-functions.eclass > @@ -8,7 +8,7 @@ > # Seemant Kulleen > # Andreas K. Huettel > # Kent Fredric > -# @SUPPORTED_EAPIS: 5 6 7 > +# @SUPPORTED_EAPIS: 5 6 7 8 > # @BLURB: helper functions eclass for perl modules > # @DESCRIPTION: > # The perl-functions eclass is designed to allow easier installation of perl > @@ -19,7 +19,7 @@ > [[ ${CATEGORY} == "perl-core" ]] && inherit alternatives > > case "${EAPI:-0}" in > - 5|6|7) > + 5|6|7|8) > ;; > *) > die "EAPI=${EAPI} is not supported by perl-functions.eclass" > @@ -134,7 +134,8 @@ perl_delete_emptybsdir() { > perl_fix_permissions() { > debug-print-function $FUNCNAME "$@" > perl_set_version > - fperms -R u+w "${D}" > + einfo Fixing installed file permissions > + fperms -R u+w / > } > > # @FUNCTION: perl_fix_packlist > @@ -596,3 +597,31 @@ perl_domodule() { > insinto "/${target#/}" > doins "${doins_opts[@]}" "${files[@]}" > } > + > +# @FUNCTION: perl_get_wikiurl > +# @DESCRIPTION: > +# Convenience helper for returning the Gentoo Wiki maintenance page URL of a > +# package. Optionally a suffix can be passed for an in-page anchor. > +# > +# Example: > +# @CODE > +# my_url="$(perl_get_wikiurl Testing)" > +# @CODE > + > +perl_get_wikiurl() { > + debug-print-function $FUNCNAME "$@" > + > + if [[ "" == ${1} ]]; then [[ -z ${1} ]] ? ;-) > + echo > "https://wiki.gentoo.org/wiki/Project:Perl/maint-notes/${CATEGORY}/${PN}"; > + else > + echo > "https://wiki.gentoo.org/wiki/Project:Perl/maint-notes/${CATEGORY}/${PN}#${1}"; > + fi > +} > + > +perl_get_wikiurl_features() { > + perl_get_wikiurl Optional_Features > +} > + > +perl_get_wikiurl_tests() { > + perl_get_wikiurl Testing > +} -- Best regards, Michał Górny
[gentoo-dev] [PATCH 3/3] perl-module.eclass: Add EAPI=8 support
From: Andreas K. Hüttel New features: DIST_WIKI and DIST_MAKE File permissions are fixed on installation Bug: https://bugs.gentoo.org/733020 Bug: https://bugs.gentoo.org/554346 Bug: https://bugs.gentoo.org/261375 Signed-off-by: Andreas K. Hüttel --- eclass/perl-module.eclass | 89 +-- 1 file changed, 76 insertions(+), 13 deletions(-) diff --git a/eclass/perl-module.eclass b/eclass/perl-module.eclass index 3f7e4100db07..6285e9363156 100644 --- a/eclass/perl-module.eclass +++ b/eclass/perl-module.eclass @@ -7,7 +7,7 @@ # @AUTHOR: # Seemant Kulleen # Andreas K. Hüttel -# @SUPPORTED_EAPIS: 5 6 7 +# @SUPPORTED_EAPIS: 5 6 7 8 # @BLURB: eclass for installing Perl module distributions # @DESCRIPTION: # The perl-module eclass is designed to allow easier installation of Perl @@ -27,6 +27,10 @@ case ${EAPI:-0} in inherit multiprocessing perl-functions PERL_EXPF="src_prepare src_configure src_compile src_test src_install" ;; + 8) + inherit multiprocessing perl-functions readme.gentoo-r1 + PERL_EXPF="src_prepare src_configure src_compile src_test src_install" + ;; *) die "EAPI=${EAPI} is not supported by perl-module.eclass" ;; @@ -99,7 +103,7 @@ case ${EAPI:-0} in EXPORT_FUNCTIONS ${PERL_EXPF} ;; - 7) + *) [[ ${CATEGORY} == perl-core ]] && \ PERL_EXPF+=" pkg_postinst pkg_postrm" @@ -126,9 +130,6 @@ case ${EAPI:-0} in EXPORT_FUNCTIONS ${PERL_EXPF} ;; - *) - die "EAPI=${EAPI:-0} is not supported by perl-module.eclass" - ;; esac LICENSE="${LICENSE:-|| ( Artistic GPL-1+ )}" @@ -180,6 +181,25 @@ LICENSE="${LICENSE:-|| ( Artistic GPL-1+ )}" # a use-flag examples, if not you'll have to add the useflag in your ebuild. # Examples are installed only if the useflag examples exists and is activated. +# @ECLASS-VARIABLE: DIST_WIKI +# @DEFAULT_UNSET +# @DESCRIPTION: +# (EAPI=8 and later) This variable can be set to contain space-separated keywords +# corresponding to article sections in a maintenance notes wiki article. If a +# keyword is set, an ebuild phase can output a message and a link to the wiki. +# Current keywords as of EAPI=8 are: +# * features: Notes about additional dependencies for optional features +# * tests:Notes about additional dependencies and preparations needed for testing + +# @ECLASS-VARIABLE: DIST_MAKE +# @DESCRIPTION: +# (EAPI=8 and later) This Bash array contains parameters to the make call +# from ExtUtils::MakeMaker. Replaces mymake in EAPI=7 and earlier. +# Defaults to ( OPTIMIZE="${CFLAGS}" ) +if [[ $(declare -p DIST_MAKE 2>&-) != "declare -a DIST_MAKE="* ]]; then + DIST_MAKE=( OPTIMIZE="${CFLAGS}" ) +fi + if [[ ${EAPI:-0} == 5 ]]; then if [[ -n ${MY_PN} || -n ${MY_PV} || -n ${MODULE_VERSION} ]] ; then @@ -343,11 +363,18 @@ perl-module_src_compile() { debug-print-function $FUNCNAME "$@" perl_set_version - if [[ $(declare -p mymake 2>&-) != "declare -a mymake="* ]]; then - local mymake_local=(${mymake}) - else - local mymake_local=("${mymake[@]}") - fi + case ${EAPI} in + 5|6|7) + if [[ $(declare -p mymake 2>&-) != "declare -a mymake="* ]]; then + local mymake_local=(${mymake}) + else + local mymake_local=("${mymake[@]}") + fi + ;; + *) + local mymake_local=("${DIST_MAKE[@]}") + ;; + esac if [[ -f Build ]] ; then ./Build build \ @@ -396,7 +423,7 @@ perl-module_src_test() { local my_test_control local my_test_verbose - if [[ ${EAPI:-0} == 5 ]] ; then + if [[ ${EAPI} == 5 ]] ; then my_test_control=${SRC_TEST} my_test_verbose=${TEST_VERBOSE:-0} if has 'do' ${my_test_control} || has 'parallel' ${my_test_control} ; then @@ -434,6 +461,18 @@ perl-module_src_test() { fi fi + case ${EAPI} in + 5|6|7) + ;; + *) + if has 'tests' ${DIST_WIKI} ; then + ewarn "This package may require additional dependencies and/or preparation steps for" + ewarn "comprehensive testing. For details, see:" + ewarn "$(perl_get_wikiurl_tests)" + fi + ;; + esac + perl_set_version if [[ -f Build ]] ; then ./Build test verbose=${my_test_verbose} || die "test failed" @@ -473,9 +512,17 @@ perl-module_src_inst
[gentoo-dev] [PATCH 2/3] perl-functions.eclass: Add new helpers for EAPI=8 ...
From: Andreas K. Hüttel ... and fix an existing one. fperms works on ${D} by default, so we can give it / to operate on. Bug: https://bugs.gentoo.org/554346 Bug: https://bugs.gentoo.org/733020 Signed-off-by: Andreas K. Hüttel --- eclass/perl-functions.eclass | 35 --- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/eclass/perl-functions.eclass b/eclass/perl-functions.eclass index 8633f384f1bf..d0a082797265 100644 --- a/eclass/perl-functions.eclass +++ b/eclass/perl-functions.eclass @@ -8,7 +8,7 @@ # Seemant Kulleen # Andreas K. Huettel # Kent Fredric -# @SUPPORTED_EAPIS: 5 6 7 +# @SUPPORTED_EAPIS: 5 6 7 8 # @BLURB: helper functions eclass for perl modules # @DESCRIPTION: # The perl-functions eclass is designed to allow easier installation of perl @@ -19,7 +19,7 @@ [[ ${CATEGORY} == "perl-core" ]] && inherit alternatives case "${EAPI:-0}" in - 5|6|7) + 5|6|7|8) ;; *) die "EAPI=${EAPI} is not supported by perl-functions.eclass" @@ -134,7 +134,8 @@ perl_delete_emptybsdir() { perl_fix_permissions() { debug-print-function $FUNCNAME "$@" perl_set_version - fperms -R u+w "${D}" + einfo Fixing installed file permissions + fperms -R u+w / } # @FUNCTION: perl_fix_packlist @@ -596,3 +597,31 @@ perl_domodule() { insinto "/${target#/}" doins "${doins_opts[@]}" "${files[@]}" } + +# @FUNCTION: perl_get_wikiurl +# @DESCRIPTION: +# Convenience helper for returning the Gentoo Wiki maintenance page URL of a +# package. Optionally a suffix can be passed for an in-page anchor. +# +# Example: +# @CODE +# my_url="$(perl_get_wikiurl Testing)" +# @CODE + +perl_get_wikiurl() { + debug-print-function $FUNCNAME "$@" + + if [[ "" == ${1} ]]; then + echo "https://wiki.gentoo.org/wiki/Project:Perl/maint-notes/${CATEGORY}/${PN}"; + else + echo "https://wiki.gentoo.org/wiki/Project:Perl/maint-notes/${CATEGORY}/${PN}#${1}"; + fi +} + +perl_get_wikiurl_features() { + perl_get_wikiurl Optional_Features +} + +perl_get_wikiurl_tests() { + perl_get_wikiurl Testing +} -- 2.31.1
[gentoo-dev] [PATCH 1/3] readme.gentoo-r1.eclass: works just fine with EAPI=8
From: Andreas K. Hüttel Signed-off-by: Andreas K. Hüttel --- eclass/readme.gentoo-r1.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eclass/readme.gentoo-r1.eclass b/eclass/readme.gentoo-r1.eclass index dfa3b52b6765..ce492b900104 100644 --- a/eclass/readme.gentoo-r1.eclass +++ b/eclass/readme.gentoo-r1.eclass @@ -6,7 +6,7 @@ # Pacho Ramos # @AUTHOR: # Author: Pacho Ramos -# @SUPPORTED_EAPIS: 4 5 6 7 +# @SUPPORTED_EAPIS: 4 5 6 7 8 # @BLURB: install a doc file shown via elog messages # @DESCRIPTION: # An eclass for installing a README.gentoo doc file recording tips @@ -24,7 +24,7 @@ case "${EAPI:-0}" in 0|1|2|3) die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}" ;; - 4|5|6|7) + 4|5|6|7|8) ;; *) die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" -- 2.31.1
[gentoo-dev] [PATCH] python-utils-r1.eclass: Pass -Wdefault to epytest to avoid -Werror
Make pytest pass -Wdefault in order to override upstream default warning options that commonly include -Werror. This has often caused tests to start failing due to new deprecation warnings introduced in dependencies, or block new implementations due to harmless deprecation warnings. A side effect of this is that we are overriding all warning options used by upstream. This could e.g. cause more warnings to be reported (when upstream ignores some of them). This might also break badly written tests (e.g. when they rely on exceptions to catch warnings). Signed-off-by: Michał Górny --- eclass/python-utils-r1.eclass | 3 +++ 1 file changed, 3 insertions(+) diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass index 3dbf221eac5d..2766db4d9da6 100644 --- a/eclass/python-utils-r1.eclass +++ b/eclass/python-utils-r1.eclass @@ -1284,6 +1284,9 @@ epytest() { -ra # print local variables in tracebacks, useful for debugging -l + # override filterwarnings=error, we do not really want -Werror + # for end users, as it tends to fail on new warnings from deps + -Wdefault ) set -- "${EPYTHON}" -m pytest "${args[@]}" "${@}" -- 2.32.0