Re: [gentoo-dev] [PATCH] rpm.eclass: Drop support for EAPI 6

2024-04-12 Thread David Seifert
On Fri, 2024-04-12 at 17:52 +0200, Ulrich Müller wrote:
> Signed-off-by: Ulrich Müller 
> ---
>  eclass/rpm.eclass | 63 +++---
> -
>  1 file changed, 3 insertions(+), 60 deletions(-)
> 
> diff --git a/eclass/rpm.eclass b/eclass/rpm.eclass
> index b9187167eb8f..c9c21aa6ebbd 100644
> --- a/eclass/rpm.eclass
> +++ b/eclass/rpm.eclass
> @@ -1,14 +1,13 @@
> -# Copyright 1999-2023 Gentoo Authors
> +# Copyright 1999-2024 Gentoo Authors
>  # Distributed under the terms of the GNU General Public License v2
>  
>  # @ECLASS: rpm.eclass
>  # @MAINTAINER:
>  # base-sys...@gentoo.org
> -# @SUPPORTED_EAPIS: 6 7 8
> +# @SUPPORTED_EAPIS: 7 8
>  # @BLURB: convenience class for extracting RPMs
>  
>  case ${EAPI} in
> - 6) inherit epatch eqawarn ;;
>   7|8) ;;
>   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
>  esac
> @@ -18,10 +17,7 @@ _RPM_ECLASS=1
>  
>  inherit estack
>  
> -case ${EAPI} in
> - 6) DEPEND="app-arch/rpm2targz" ;;
> - *) BDEPEND="app-arch/rpm2targz" ;;
> -esac
> +BDEPEND="app-arch/rpm2targz"
>  
>  # @FUNCTION: rpm_unpack
>  # @USAGE: 
> @@ -88,59 +84,6 @@ rpm_src_unpack() {
>   done
>  }
>  
> -# @FUNCTION: rpm_spec_epatch
> -# @USAGE: [spec]
> -# @DEPRECATED: none
> -# @DESCRIPTION:
> -# Read the specified spec (defaults to ${PN}.spec) and attempt to
> apply
> -# all the patches listed in it.  If the spec does funky things like
> moving
> -# files around, well this won't handle that.
> -rpm_spec_epatch() {
> - # no epatch in EAPI 7 and later
> - [[ ${EAPI} == 6 ]] || die "${FUNCNAME} is banned in EAPI
> ${EAPI}"
> -
> - local p spec=$1
> - local dir
> -
> - if [[ -z ${spec} ]] ; then
> - # search likely places for the spec file
> - for spec in "${PWD}" "${S}" "${WORKDIR}" ; do
> - spec+="/${PN}.spec"
> - [[ -e ${spec} ]] && break
> - done
> - fi
> - [[ ${spec} == */* ]] \
> - && dir=${spec%/*} \
> - || dir=
> -
> - ebegin "Applying patches from ${spec}"
> -
> - grep '^%patch' "${spec}" | \
> - while read line ; do
> - # expand the %patch line
> - set -- ${line}
> - p=$1
> - shift
> -
> - # process the %patch arguments
> - local arg
> - EPATCH_OPTS=
> - for arg in "$@" ; do
> - case ${arg} in
> - -b) EPATCH_OPTS+=" --suffix" ;;
> - *)  EPATCH_OPTS+=" ${arg}" ;;
> - esac
> - done
> -
> - # extract the patch name from the Patch# line
> - set -- $(grep "^P${p#%p}: " "${spec}")
> - shift
> - epatch "${dir:+${dir}/}$*"
> - done
> -
> - eend
> -}
> -
>  fi
>  
>  EXPORT_FUNCTIONS src_unpack

LGTM



Re: [gentoo-dev] RFC: banning "AI"-backed (LLM/GPT/whatever) contributions to Gentoo

2024-02-28 Thread David Seifert
On Tue, 2024-02-27 at 15:45 +0100, Michał Górny wrote:
> Hello,
> 
> Given the recent spread of the "AI" bubble, I think we really need to
> look into formally addressing the related concerns.  In my opinion,
> at this point the only reasonable course of action would be to safely
> ban "AI"-backed contribution entirely.  In other words, explicitly
> forbid people from using ChatGPT, Bard, GitHub Copilot, and so on, to
> create ebuilds, code, documentation, messages, bug reports and so on
> for
> use in Gentoo.
> 
> Just to be clear, I'm talking about our "original" content.  We can't
> do
> much about upstream projects using it.
> 
> 
> Rationale:
> 
> 1. Copyright concerns.  At this point, the copyright situation around
> generated content is still unclear.  What's pretty clear is that
> pretty
> much all LLMs are trained on huge corpora of copyrighted material, and
> all fancy "AI" companies don't give shit about copyright violations.
> In particular, there's a good risk that these tools would yield stuff
> we
> can't legally use.
> 
> 2. Quality concerns.  LLMs are really great at generating plausibly
> looking bullshit.  I suppose they can provide good assistance if you
> are
> careful enough, but we can't really rely on all our contributors being
> aware of the risks.
> 
> 3. Ethical concerns.  As pointed out above, the "AI" corporations
> don't
> give shit about copyright, and don't give shit about people.  The AI
> bubble is causing huge energy waste.  It is giving a great excuse for
> layoffs and increasing exploitation of IT workers.  It is driving
> enshittification of the Internet, it is empowering all kinds of spam
> and scam.
> 
> 
> Gentoo has always stood out as something different, something that
> worked for people for whom mainstream distros were lacking.  I think
> adding "made by real people" to the list of our advantages would be
> a good thing — but we need to have policies in place, to make sure
> shit
> doesn't flow in.
> 
> Compare with the shitstorm at:
> https://github.com/pkgxdev/pantry/issues/5358
> 

+1

Can we get this added to the agenda for the next council meeting?



[gentoo-dev] Package up for grabs: app-arch/unar

2024-02-17 Thread David Seifert
I'm dropping app-arch/unar, since it was the only ObjC package on my
system. These days, libarchive is IMO a much better choice.

All bugs have been fixed. The upstream isn't gone, but somewhat
unresponsive.



Re: [gentoo-dev] special small-files USE flag without effect on dependencies: [ unicode ]

2024-02-10 Thread David Seifert
On Fri, 2024-02-09 at 22:56 +, stefan1 wrote:
> On 2024-02-09 21:56, Eli Schwartz wrote:
> > On 2/9/24 4:25 PM, Michael Orlitzky wrote:
> > > This is the part where you try to convince me that the things I
> > > want
> > > are stupid. OK. I don't care. I want it off. Leave me alone :)
> > 
> > 
> > As evidenced by the removal of libressl and eudev, this logic is
> > fallacious and wrong and not the way Gentoo is developed.
> > 
> 
> Both removals definitely not still being contested and debated.
> 
> > Gentoo does indeed discuss the things that people want, and try to
> > determine whether they are useful to users, whether they are a
> > placebo,
> > and whether they are maintainable or have an adverse effect either
> > on
> > users or on the effort to maintain a consistent tree.
> > 
> > So circling back around to the start of the thread:
> > 
> > > pkgcheck complains about each new version of dev-lisp/sbcl:
> > 
> > It is the allegation of the QA team that the option is a lie, it
> > contains no purpose or value and doesn't contribute to use choice,
> > and
> > pkgcheck is reporting the QA team's allegation.
> > 
> > If you wish to convince the QA team otherwise, be my guest... but I
> > would personally encourage you to come up with a better argument
> > than
> > "the option makes me feel better about myself, I don't care what you
> > have to say, just leave my options alone goshdarnit; I have the
> > right 
> > to
> > be stupid".
> > 
> > Because I don't think you're likely to convince anyone like that. 
> > Sorry.
> 
> Maybe support as much choice as possible, and not act like you know
> what 
> users want better that the users themselves.
> 

Are users like you going to maintain and fix these obscure bugs too? I
don't recall seeing you sending in many fixes or patches, yet you seem
to be demanding that we go out of our way to accommodate you.



Re: [gentoo-dev] Packages up for grabs: app-admin/usbview, media-video/handbrake, sys-fs/compsize,...

2024-01-29 Thread David Seifert
On Mon, 2024-01-29 at 00:10 +0100, Jonas Stein wrote:
> Dear all
> 
> the following packages are up for grabs after retirement of the
> proxied 
> maintainer:
> 
> app-admin/usbview
> dev-libs/cudnn-frontend
> media-video/handbrake
> net-analyzer/prettyping
> sys-fs/compsize
> 
> https://packages.gentoo.org/packages/app-admin/usbview
> https://packages.gentoo.org/packages/dev-libs/cudnn-frontend
> https://packages.gentoo.org/packages/media-video/handbrake
> https://packages.gentoo.org/packages/net-analyzer/prettyping
> https://packages.gentoo.org/packages/sys-fs/compsize
> 
> 
> media-video/handbrake has 6 open tickets. One is a version bump.
> 

I will take over usbview.



Re: [gentoo-dev] [PATCH] profiles: workaround sandbox bug with getcwd() configure test (gl_cv_func_getcwd_path_max)

2024-01-22 Thread David Seifert
On Mon, 2024-01-22 at 16:14 +, Sam James wrote:
> Workaround for sandbox bug which causes this gnulib configure test to
> take
> many real hours on slower machines, and certainly a huge amount of CPU
> hours
> on others.
> 
> Spoof the same result as configure gets on a modern glibc & musl
> system for now.
> 
> Bug: https://bugs.gentoo.org/447970
> Closes: https://bugs.gentoo.org/922652
> Signed-off-by: Sam James 
> ---
>  profiles/default/linux/make.defaults | 9 -
>  profiles/features/musl/make.defaults | 7 +++
>  2 files changed, 15 insertions(+), 1 deletion(-)
> 
> diff --git a/profiles/default/linux/make.defaults
> b/profiles/default/linux/make.defaults
> index 74dd59d5d8179..4e21cd58fdf22 100644
> --- a/profiles/default/linux/make.defaults
> +++ b/profiles/default/linux/make.defaults
> @@ -1,4 +1,4 @@
> -# Copyright 1999-2023 Gentoo Authors
> +# Copyright 1999-2024 Gentoo Authors
>  # Distributed under the terms of the GNU General Public License v2
>  #
>  # System-wide defaults for the Portage system
> @@ -54,3 +54,10 @@ LDFLAGS="-Wl,-O1 -Wl,--as-needed"
>  # Prevent automagic use of 64-bit time_t.
>  # https://bugs.gentoo.org/828001
>  enable_year2038="no"
> +
> +# Sam James  (2024-01-22)
> +# Workaround for sandbox bug which causes this gnulib configure test
> to take
> +# many real hours on slower machines, and certainly a huge amount of
> CPU hours
> +# on others. Spoof the same result as configure gets on a modern
> glibc system
> +# for now. See bug #447970 and bug #922652.
> +gl_cv_func_getcwd_path_max="yes"
> diff --git a/profiles/features/musl/make.defaults
> b/profiles/features/musl/make.defaults
> index 3078bdd61b09c..ca792276e3945 100644
> --- a/profiles/features/musl/make.defaults
> +++ b/profiles/features/musl/make.defaults
> @@ -17,3 +17,10 @@ FEATURES="-multilib-strict"
>  # that use a charset, it causes package collisons.
>  # Note: we use a full path for locale.alias for bug #799437
>  INSTALL_MASK="charset.alias /usr/share/locale/locale.alias"
> +
> +# Sam James  (2024-01-22)
> +# Workaround for sandbox bug which causes this gnulib configure test
> to take
> +# many real hours on slower machines, and certainly a huge amount of
> CPU hours
> +# on others. Spoof the same result as configure gets on a modern musl
> system
> +# for now. See bug #447970 and bug #922652.
> +gl_cv_func_getcwd_path_max="no, but it is partly working"

LGTM



[gentoo-dev] Last rites: net-wireless/crda

2024-01-21 Thread David Seifert
# David Seifert  (2024-01-21)
# Not required anymore since 4.14 is EOL, handled within the kernel
# nowadays. Removal on 2024-02-20.
net-wireless/crda



signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] Re: [gentoo-dev-announce] Last rites: dev-build/bazel, sci-libs/keras, sci-libs/tensorflow, sci-libs/tensorflow-estimator, sci-visualization/tensorboard

2024-01-18 Thread David Seifert
On Thu, 2024-01-18 at 14:33 +0100, Maciej Barć wrote:
> A lot of Bazel bugs were just left to rot, even though they are
> invalid.
> There are work from users to get Bazel to a reasonable state, see:
> https://bugs.gentoo.org/918703 (plus comment #1)
> 
> > # Unmasking this requires a sign-off from QA and treecleaners, since
> > # these packages require a ton of mental bandwidth to keep up to
> > date
> 
> I would urge to reconsider leaving Bazel out of this; I do not think 
> that one is lost for now. Since I sometimes use Bazel myself, I will 
> work on adding a bazel-bin + virtual.
> 

Then fix the bugs that are open right now (and keep it masked), since I
don't believe Bazel is much better than the rest. Once the overwhelming
majority of bugs are fixed, we can see again.

That said, given how brittle all of this stuff is and how little Google
cares about FOSS users, I don't believe this to be sustainable path
forward.

> I will NOT however use/support Bazel for Gentoo packages nor eclasses.
> 
> On 18.01.2024 13:53, David Seifert wrote:
> > # David Seifert  (2024-01-18)
> > # Unmaintained set of packages. Overall, TensorFlow is ill-suited
> > for
> > # distro packaging, since it's entangled with tons of googleware and
> > # continually breaks on minor dependency updates coupled with a
> > # byzantine build system. These 5 packages together have a total of
> > # 54 bugs reported against them, with zero activity from the
> > maintainer.
> > #
> > # Unmasking this requires a sign-off from QA and treecleaners, since
> > # these packages require a ton of mental bandwidth to keep up to
> > date
> > # and Google's general unwillingness to take community input quickly
> > # leads to maintainer burnout.
> > # Use sci-libs/pytorch as a modern alternative with better
> > packaging.
> > # Removal on 2024-02-17. Bug #922374
> > dev-build/bazel
> > sci-libs/keras
> > sci-libs/tensorflow
> > sci-libs/tensorflow-estimator
> > sci-visualization/tensorboard
> > 
> 
> -- 
> Have a great day!
> 
> ~ Maciej XGQT Barć
> 
> x...@gentoo.org
> Gentoo Linux developer
> (dotnet, emacs, math, ml, nim, scheme, sci)
> https://wiki.gentoo.org/wiki/User:Xgqt
> 9B0A 4C5D 02A3 B43C 9D6F D6B1 14D7 4A1F 43A6 AC3C




[gentoo-dev] Last rites: dev-build/bazel, sci-libs/keras, sci-libs/tensorflow, sci-libs/tensorflow-estimator, sci-visualization/tensorboard

2024-01-18 Thread David Seifert
# David Seifert  (2024-01-18)
# Unmaintained set of packages. Overall, TensorFlow is ill-suited for
# distro packaging, since it's entangled with tons of googleware and
# continually breaks on minor dependency updates coupled with a
# byzantine build system. These 5 packages together have a total of
# 54 bugs reported against them, with zero activity from the maintainer.
#
# Unmasking this requires a sign-off from QA and treecleaners, since
# these packages require a ton of mental bandwidth to keep up to date
# and Google's general unwillingness to take community input quickly
# leads to maintainer burnout.
# Use sci-libs/pytorch as a modern alternative with better packaging.
# Removal on 2024-02-17. Bug #922374
dev-build/bazel
sci-libs/keras
sci-libs/tensorflow
sci-libs/tensorflow-estimator
sci-visualization/tensorboard



signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] [PATCH v2 1/3] greadme.eclass: new eclass

2024-01-09 Thread David Seifert
On Tue, 2024-01-09 at 09:39 +0100, Florian Schmaus wrote:
> This new eclass is similar to readme.gentoo-r1.eclass. The main
> differences are as follows. Firstly, it also displays the doc file
> contents if they have changed. Secondly, it provides a convenient API
> to
> install the doc file via stdin.
> 
> Furthermore, this eclass dos not store the doc file's contents in an
> environment variable, which helps to keep the environment size of
> ebuilds using the eclass small.
> 
> Signed-off-by: Florian Schmaus 
> ---
>  eclass/greadme.eclass | 307
> ++
>  1 file changed, 307 insertions(+)
>  create mode 100644 eclass/greadme.eclass
> 
> diff --git a/eclass/greadme.eclass b/eclass/greadme.eclass
> new file mode 100644
> index ..25e0210406c1
> --- /dev/null
> +++ b/eclass/greadme.eclass
> @@ -0,0 +1,307 @@
> +# Copyright 1999-2024 Gentoo Authors
> +# Distributed under the terms of the GNU General Public License v2
> +
> +# @ECLASS: greadme.eclass
> +# @MAINTAINER:
> +# Florian Schmaus 
> +# @AUTHOR:
> +# Author: Florian Schmaus 
> +# @SUPPORTED_EAPIS: 6 7 8
> +# @BLURB: install a doc file, that will be conditionally shown via
> elog messages
> +# @DESCRIPTION:
> +# An eclass for installing a README.gentoo doc file recording tips
> +# shown via elog messages.  With this eclass, those elog messages
> will only be
> +# shown at first package installation or if the contents of the file
> have changed.
> +# Furthermore, a file for later reviewing will be installed under
> +# /usr/share/doc/${PF}
> +#
> +# This eclass is similar to readme.gentoo-r1.eclass.  The main
> +# differences are as follows.  Firstly, it also displays the doc file
> +# contents if they have changed.  Secondly, it provides a convenient
> API to
> +# install the doc file via stdin.
> +#
> +# @CODE
> +# inherit greadme
> +#
> +# src_install() {
> +#   …
> +#   greadme_stdin <<- EOF
> +#   This is the content of the created readme doc file.
> +#   EOF
> +#   …
> +#   if use foo; then
> +# greadme_stdin --apend <<-EOF
> +# This is conditional readme content, based on USE=foo.
> +# EOF
> +#   fi
> +# }
> +# @CODE
> +#
> +# You must call greadme_pkg_preinst and greadme_pkg_postinst
> explicitly, if
> +# you override the default pkg_preinst or respectively pkg_postinst.
> +#
> +# TODO:
> +# - Should this be named README.Distribution instead of
> README.Gentoo?
> +#   Would that make things easier for Gentoo derivates?
> +#   Similary, (g → d)readme, (G → D)README?
> +# - Incooperate changes into readme.gentoo-r1.elcass?
> +# - Compressing the readme doc file is probably fragile, as it is not
> +#   guaranteed that the required binaries for decompression are
> installed
> +#   in pkg_preinst/pkg_postinst. Note that it is even possible that
> two
> +#   different compression algorithms are used, in case of binpkgs.
> +
> +if [[ -z ${_README_GENTOO_ECLASS} ]]; then
> +_README_GENTOO_ECLASS=1
> +
> +case ${EAPI} in
> + 6|7|8) ;;
> + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
> +esac
> +
> +if [[ ${_GREADME_COMPRESS} ]]; then
> + inherit unpacker
> +fi
> +
> +_GREADME_FILENAME="README.gentoo"
> +_GREADME_TMP_FILE="${T}/${_GREADME_FILENAME}"
> +_GREADME_REL_PATH="usr/share/doc/${PF}/${_GREADME_FILENAME}"
> +
> +# @FUNCTION: greadme_stdin
> +# @USAGE: [--append]
> +# @DESCRIPTION:
> +# Create the readme doc via stdin.  You can use --append to append to
> an
> +# existing readme doc.
> +greadme_stdin() {
> + debug-print-function ${FUNCNAME} "${@}"
> +
> + local append=false
> + while [[ -n ${1} ]] && [[ ${1} =~ --* ]]; do
> + case ${1} in
> + --append)
> + append=true
> + shift
> + ;;
> + esac
> + done
> +
> + if $append; then
> + if [[ ! -f "${_GREADME_TMP_FILE}" ]]; then
> + die "Gentoo README does not exist when trying
> to append to it"
> + fi
> +
> + cat >> "${_GREADME_TMP_FILE}" || die
> + else
> + if [[ -f "${_GREADME_TMP_FILE}" ]]; then
> + die "Gentoo README already exists while
> trying to create it"
> + fi
> +
> + cat > "${_GREADME_TMP_FILE}" || die
> + fi
> +
> + _greadme_install_doc
> +}
> +
> +# @FUNCTION: greadme_file
> +# @USAGE: 
> +# @DESCRIPTION:
> +# Installs the provided file as readme doc.
> +greadme_file() {
> + debug-print-function ${FUNCNAME} "${@}"
> +
> + local input_doc_file="${1}"
> + if [[ -z "${input_doc_file}" ]]; then
> + die "No file specified"
> + fi
> +
> + if [[ -f "${_GREADME_TMP_FILE}" ]]; then
> + die "Gentoo README already exists"
> + fi
> +
> + cp "${input_doc_file}" "${_GREADME_TMP_FILE}" || die
> +
> + _greadme_install_doc
> +}
> +
> +# @FUNCTION: _greadme_install_doc
> +# @INTERNAL
> +# @DESCRIPTION:
> +# 

[gentoo-dev] Package up for grabs: net-im/skypeforlinux

2024-01-02 Thread David Seifert
I have updated net-im/skypeforlinux to the latest upstream version
before dropping myself as a maintainer of this package. I believe that
in 2024 Skype as a technology has become pretty much obsolete and have
removed it from all my machines at this point.

There are two open bugs.

Regards
David


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] [PATCH] ssl-cert.eclass: Drop support for EAPI 6

2023-12-29 Thread David Seifert
On Fri, 2023-12-29 at 09:20 +0100, Ulrich Müller wrote:
> Signed-off-by: Ulrich Müller 
> ---
>  eclass/ssl-cert.eclass | 19 ---
>  1 file changed, 4 insertions(+), 15 deletions(-)
> 
> diff --git a/eclass/ssl-cert.eclass b/eclass/ssl-cert.eclass
> index 0453f0fbf665..48cb10db16e8 100644
> --- a/eclass/ssl-cert.eclass
> +++ b/eclass/ssl-cert.eclass
> @@ -6,7 +6,7 @@
>  # maintainer-nee...@gentoo.org
>  # @AUTHOR:
>  # Max Kalika 
> -# @SUPPORTED_EAPIS: 6 7 8
> +# @SUPPORTED_EAPIS: 7 8
>  # @BLURB: Eclass for SSL certificates
>  # @DESCRIPTION:
>  # This eclass implements a standard installation procedure for
> installing
> @@ -15,7 +15,7 @@
>  # "install_cert /foo/bar" installs ${ROOT}/foo/bar.{key,csr,crt,pem}
>  
>  case ${EAPI} in
> - 6|7|8) ;;
> + 7|8) ;;
>   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
>  esac
>  
> @@ -42,22 +42,11 @@ _SSL_CERT_ECLASS=1
>  
>  if [[ "${SSL_DEPS_SKIP}" == "0" ]]; then
>   if [[ "${SSL_CERT_MANDATORY}" == "0" ]]; then
> - SSL_DEPEND="${SSL_CERT_USE}? ( dev-libs/openssl:0 )"
> + BDEPEND="${SSL_CERT_USE}? ( dev-libs/openssl:0 )"
>   IUSE="${SSL_CERT_USE}"
>   else
> - SSL_DEPEND="dev-libs/openssl:0"
> + BDEPEND="dev-libs/openssl:0"
>   fi
> -
> - case "${EAPI}" in
> - 6)
> - DEPEND="${SSL_DEPEND}"
> - ;;
> - *)
> - BDEPEND="${SSL_DEPEND}"
> - ;;
> - esac
> -
> - unset SSL_DEPEND
>  fi
>  
>  # @FUNCTION: gen_cnf

Remove the :0 slot dep, since we don't use slots for openssl anymore.



Re: [gentoo-dev] [PATCH] profiles/features/hardened/amd64: enable USE=pic

2023-11-25 Thread David Seifert
On Sat, 2023-11-25 at 06:55 +, Sam James wrote:
> There's no real reason not to do this. The status quo is wrong for
> when
> we're doing multilib 32-bit builds on x86, and we already have to undo
> this on musl because its handling for TEXTRELs is limited (see bug
> #707660).
> 
> (I noted my intention to do this in
> 80a72bac2350811712c018b68f61a031736c579f
> as well.)
> 
> This seems to have been added originally in
> e718e1dc1781b3bb5cd80233c217aea3b0e46755
> and bb28d08f1cf8cf16f6e57929a8de6b7c85bbe714 (git graft commit).
> 
> Bug: https://bugs.gentoo.org/707660
> Bug: https://bugs.gentoo.org/913412
> Signed-off-by: Sam James 
> ---
>  profiles/features/hardened/amd64/make.defaults | 2 +-
>  profiles/features/hardened/amd64/no-multilib/make.defaults | 6 --
>  2 files changed, 1 insertion(+), 7 deletions(-)
>  delete mode 100644 profiles/features/hardened/amd64/no-
> multilib/make.defaults
> 
> diff --git a/profiles/features/hardened/amd64/make.defaults
> b/profiles/features/hardened/amd64/make.defaults
> index e8f0bdf8ba650..89a7242c35648 100644
> --- a/profiles/features/hardened/amd64/make.defaults
> +++ b/profiles/features/hardened/amd64/make.defaults
> @@ -1,4 +1,4 @@
>  # Copyright 1999-2023 Gentoo Authors.
>  # Distributed under the terms of the GNU General Public License v2
>  
> -USE="cet -pic"
> +USE="cet"
> diff --git a/profiles/features/hardened/amd64/no-
> multilib/make.defaults b/profiles/features/hardened/amd64/no-
> multilib/make.defaults
> deleted file mode 100644
> index 1dd0a2a0f7e0d..0
> --- a/profiles/features/hardened/amd64/no-multilib/make.defaults
> +++ /dev/null
> @@ -1,6 +0,0 @@
> -# Copyright 1999-2011 Gentoo Foundation
> -# Distributed under the terms of the GNU General Public License v2
> -
> -# We don't need to have pic on
> -USE="-pic"
> -

LGTM



[gentoo-dev] Last rites: app-misc/dvorakng

2023-10-08 Thread David Seifert
# David Seifert  (2023-10-08)
# Upstream long gone, unmaintained, EAPI 6, only Gentoo still packages
# this. Removal on 2023-11-07. Bug #905187.
app-misc/dvorakng



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: app-backup/flexbackup

2023-10-08 Thread David Seifert
# David Seifert  (2023-10-08)
# Unmaintained, EAPI 6, tons of patches we have to carry, last release
# 20 years ago, all major distros have removed this.
# Removal on 2023-11-07. Bug #602382.
app-backup/flexbackup



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: app-admin/qpage

2023-10-08 Thread David Seifert
# David Seifert  (2023-10-08)
# Unmaintained, last release over 23 years(!) ago, multiple QA issues,
# no other major distro carries this anymore. Removal on 2023-11-07.
# Bug #425872, #452982, #520968, #605450, #878621, #905945.
app-admin/qpage



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: app-admin/longrun

2023-10-08 Thread David Seifert
# David Seifert  (2023-10-08)
# Upstream gone, kept on life support by Debian, most distros don't
# carry this anymore, Transmeta CPUs are long obsolete at this point.
# Removal on 2023-11-07. Bug #541694, #905186.
app-admin/longrun



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: x11-misc/sselp

2023-10-07 Thread David Seifert
# David Seifert  (2023-10-08)
# Unmaintained, typical broken suckless build system, no upstream
# activity, only Fedora still carries it.
# Removal on 2023-11-06. Bug #732422, #914638.
x11-misc/sselp



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: dev-libs/libtubo, x11-libs/librfm, x11-misc/rodent

2023-10-07 Thread David Seifert
# David Seifert  (2023-10-08)
# Unmaintained, last release over 5 years ago, lots of QA issues, no
# other distro carries this.
# Removal on 2023-11-06. Bug #742782, #742809, #771858, #811393,
# #898314, #898322, #898324, #898326.
dev-libs/libtubo
x11-libs/librfm
x11-misc/rodent



signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] [PATCH] eclass/depend.apache: drop support for EAPI 0-5

2023-09-24 Thread David Seifert
On Sun, 2023-09-24 at 10:35 +0200, Hans de Graaff wrote:
> Signed-off-by: Hans de Graaff 
> ---
>  eclass/depend.apache.eclass | 60 
> -
>  1 file changed, 12 insertions(+), 48 deletions(-)
> 
> diff --git a/eclass/depend.apache.eclass b/eclass/depend.apache.eclass
> index 51410265bbc5..4dc3f68daabc 100644
> --- a/eclass/depend.apache.eclass
> +++ b/eclass/depend.apache.eclass
> @@ -1,10 +1,10 @@
> -# Copyright 1999-2021 Gentoo Authors
> +# Copyright 1999-2023 Gentoo Authors
>  # Distributed under the terms of the GNU General Public License v2
>  
>  # @ECLASS: depend.apache.eclass
>  # @MAINTAINER:
>  # apache-b...@gentoo.org
> -# @SUPPORTED_EAPIS: 0 2 3 4 5 6 7
> +# @SUPPORTED_EAPIS: 6 7
>  # @BLURB: Functions to allow ebuilds to depend on apache
>  # @DESCRIPTION:
>  # This eclass handles depending on apache in a sane way and provides
> information
> @@ -41,9 +41,6 @@
>  # @CODE
>  
>  case ${EAPI:-0} in
> - 0|2|3|4|5)
> - inherit multilib
> - ;;
>   6|7)
>   ;;
>   *)
> @@ -78,8 +75,7 @@ esac
>  # @ECLASS_VARIABLE: APACHE_BASEDIR
>  # @DESCRIPTION:
>  # Path to the server root directory.
> -# This variable is set by the want/need_apache functions (EAPI=0
> through 5)
> -# or depend.apache_pkg_setup (EAPI=6 and later).
> +# This variable is set by depend.apache_pkg_setup.
>  
>  # @ECLASS_VARIABLE: APACHE_CONFDIR
>  # @DESCRIPTION:
> @@ -99,8 +95,7 @@ esac
>  # @ECLASS_VARIABLE: APACHE_MODULESDIR
>  # @DESCRIPTION:
>  # Path where we install modules.
> -# This variable is set by the want/need_apache functions (EAPI=0
> through 5)
> -# or depend.apache_pkg_setup (EAPI=6 and later).
> +# This variable is set by depend.apache_pkg_setup.
>  
>  # @ECLASS_VARIABLE: APACHE_DEPEND
>  # @DESCRIPTION:
> @@ -140,12 +135,6 @@ _init_apache2() {
>   APACHE_CONFDIR="/etc/apache2"
>   APACHE_MODULES_CONFDIR="${APACHE_CONFDIR}/modules.d"
>   APACHE_VHOSTS_CONFDIR="${APACHE_CONFDIR}/vhosts.d"
> -
> - case ${EAPI:-0} in
> - 0|2|3|4|5)
> - _init_apache2_late
> - ;;
> - esac
>  }
>  
>  _init_apache2_late() {
> @@ -177,27 +166,14 @@ depend.apache_pkg_setup() {
>  
>   local myiuse=${1:-apache2}
>  
> - case ${EAPI:-0} in
> - 0|2|3|4|5)
> - if has ${myiuse} ${IUSE}; then
> - if use ${myiuse}; then
> - _init_apache2
> - else
> - _init_no_apache
> - fi
> - fi
> - ;;
> - *)
> - if in_iuse ${myiuse}; then
> - if use ${myiuse}; then
> - _init_apache2
> - _init_apache2_late
> - else
> - _init_no_apache
> - fi
> - fi
> - ;;
> - esac
> + if in_iuse ${myiuse}; then
> + if use ${myiuse}; then
> + _init_apache2
> + _init_apache2_late
> + else
> + _init_no_apache
> + fi
> + fi
>  }
>  
>  # @FUNCTION: want_apache
> @@ -327,12 +303,6 @@ has_apache() {
>  has_apache_threads() {
>   debug-print-function $FUNCNAME $*
>  
> - case ${EAPI:-0} in
> - 0|1)
> - die "depend.apache.eclass: has_apache_threads
> is not supported for EAPI=${EAPI:-0}"
> - ;;
> - esac
> -
>   if ! has_version 'www-servers/apache[threads]'; then
>   return
>   fi
> @@ -356,12 +326,6 @@ has_apache_threads() {
>  has_apache_threads_in() {
>   debug-print-function $FUNCNAME $*
>  
> - case ${EAPI:-0} in
> - 0|1)
> - die "depend.apache.eclass:
> has_apache_threads_in is not supported for EAPI=${EAPI:-0}"
> - ;;
> - esac
> -
>   if ! has_version 'www-servers/apache[threads]'; then
>   return
>   fi

LGTM



Re: [gentoo-dev] Re: [gentoo-dev-announce] last rites (kinda, long masked): sys-apps/opentmpfiles

2023-09-17 Thread David Seifert
On Sun, 2023-09-17 at 08:26 +0300, Alexe Stefan wrote:
> One is written in shell, the other is written in c.(no problems here)
> One is not part of systemd, the other is.
> How are they identical.
> 
> I use this on my raspi server, works fine.
> 
> Gentoo really became a systemd distro, further restricting choice by
> the day.
> 

http://www.islinuxaboutchoice.com/



Re: [gentoo-dev] last rites: sys-fs/eudev

2023-09-16 Thread David Seifert
On Fri, 2023-09-15 at 15:40 -0700, orbea wrote:
> On Fri, 15 Sep 2023 01:19:22 +0200
> Arsen Arsenović  wrote:
> 
> > "Eddie Chapman"  writes:
> > 
> > > Not aiming this at you personally but this argument has been made
> > > more than once in this thread and I personally don't think it
> > > carries any weight, because it can be levelled at anyone who
> > > raises
> > > an issue about anything. If you don't like it, then just go and
> > > roll your own.  
> > 
> > ::gentoo is supposed to be a coherent set of packages provided by
> > Gentoo developers, with a reasonable scope.  eudev no longer fits
> > into the 'coherent' part of that definition, and there are zero
> > advantages to it over systemd-utils[udev].
> > 
> > The _only_ difference between a sys-fs/eudev::eudev and
> > sys-fs/eudev::gentoo package that would exist if the former were to
> > be
> > made into an overlay is that Gentoo developers would be responsible
> > for the latter.  There are no Gentoo developers interested in being
> > responsible for the latter (AFAIK), and there is no tangible benefit
> > to the latter for any Gentoo developer to latch onto.
> > 
> > Seeing as there is at least half a dozen people seemingly interested
> > in maintaining eudev, why not just form an overlay?  This way,
> > virtual/{,lib}udev doesn't get polluted with implementations which
> > don't fullfil the definition of a virtual provider in ::gentoo, nor
> > with use-flag hacks, but users which wish to use eudev still have
> > access to it, and upstream eudev gets half a dozen potential
> > contributors, which are needed, _badly_.  At risk of repeating
> > myself, I'd like to point out again that the only viable approach
> > for
> > eudev upstream to take is to re-fork systemd and find a viable way
> > to
> > stay up-to-date, while fixing up incompatibilities with musl.  I've
> > made proposals a few years ago and restated them in this thread.
> 
> I just want to reiterate that the overlay suggestion is bad and the
> LibreSSL overlay is a good example of why. The result is most of the
> work is redoing things that ::gentoio has already done by copying
> ebuild changes where actual changes for LibreSSL itself or for
> packages
> not compatible with it is a vast minority of the work.
> 

Many people told you that ::libressl is a waste of time, and you've
proven to us that it is.



[gentoo-dev] Last rites: dev-lang/php:8.0, virtual/httpd-php:8.0

2023-09-09 Thread David Seifert
# David Seifert  (2023-09-09)
# EOL upstream in 2 months, causes major headaches for OpenSSL 1.1
# masking. Removal on 2023-10-09.
dev-lang/php:8.0
virtual/httpd-php:8.0



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: ~www-apps/tt-rss-20220218

2023-09-09 Thread David Seifert
# David Seifert  (2023-09-09)
# Depends on PHP 8.0. Removal on 2023-10-09.
~www-apps/tt-rss-20220218



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: www-apps/icingaweb2-module-director, www-apps/icingaweb2-module-incubator

2023-09-09 Thread David Seifert
# David Seifert  (2023-09-09)
# Unmaintained, depends on PHP 8.0. Removal on 2023-10-09.
www-apps/icingaweb2-module-director
www-apps/icingaweb2-module-incubator



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: www-apps/moodle:3.11.16, www-apps/moodle:4.0.10

2023-09-09 Thread David Seifert
# David Seifert  (2023-09-09)
# Depends on PHP 8.0, which in turn depends on OpenSSL 1.1, which in
# turn is to be masked and removed soon. Removal on 2023-10-09.
www-apps/moodle:3.11.16
www-apps/moodle:4.0.10



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: app-crypt/tpm2-tss-engine

2023-09-05 Thread David Seifert
# David Seifert  (2023-09-05)
# OpenSSL 1.1 based, does not work with 3.0+. tpm2-openssl is the
# spiritual successor for OpenSSL 3.0+, but isn't packaged.
# Removal on 2023-10-05.
app-crypt/tpm2-tss-engine



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Packages up for grabs: mail-mta/opensmtpd

2023-08-26 Thread David Seifert
Hi
mail-mta/opensmtpd is up for grabs, since the last maintainer hasn't
touched it in close to 3 years.

There's 4 open bugs that should all be addressed with my bump to
7.3.0_p1.


signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: sci-libs/rosetta-db

2023-07-29 Thread David Seifert
# David Seifert  (2023-07-29)
# EAPI 6, fetch restrictions require annoying registration, no other
# distro packages this, over 10 years old. Removal on 2023-08-28.
sci-libs/rosetta-db



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] [PATCH] pam.eclass: remove EAPI 6

2023-07-26 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/pam.eclass | 69 +--
 1 file changed, 31 insertions(+), 38 deletions(-)

diff --git a/eclass/pam.eclass b/eclass/pam.eclass
index 22b59ad65e43..2516fa896587 100644
--- a/eclass/pam.eclass
+++ b/eclass/pam.eclass
@@ -6,14 +6,14 @@
 # base-sys...@gentoo.org
 # @AUTHOR:
 # Diego Pettenò 
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Handles pam related tasks
 # @DESCRIPTION:
 # This eclass contains functions to install pamd configuration files and
 # pam modules.
 
-case ${EAPI:-0} in
-   [678]) ;;
+case ${EAPI} in
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
@@ -22,6 +22,14 @@ _PAM_ECLASS=1
 
 inherit flag-o-matic
 
+# @FUNCTION: _pam_flag_disabled
+# @INTERNAL
+# @DESCRIPTION:
+# Check whether pam support is disabled.
+_pam_flag_disabled() {
+   in_iuse pam && ! use pam
+}
+
 # @FUNCTION: dopamd
 # @USAGE:  [more files]
 # @DESCRIPTION:
@@ -29,15 +37,13 @@ inherit flag-o-matic
 dopamd() {
[[ -z $1 ]] && die "dopamd requires at least one argument"
 
-   if has pam ${IUSE} && ! use pam; then
-   return 0;
-   fi
+   _pam_flag_disabled && return 0
 
( # dont want to pollute calling env
insinto /etc/pam.d
insopts -m 0644
doins "$@"
-   ) || die "failed to install $@"
+   )
cleanpamd "$@"
 }
 
@@ -48,15 +54,13 @@ dopamd() {
 newpamd() {
[[ $# -ne 2 ]] && die "newpamd requires two arguments"
 
-   if has pam ${IUSE} && ! use pam; then
-   return 0;
-   fi
+   _pam_flag_disabled && return 0
 
( # dont want to pollute calling env
insinto /etc/pam.d
insopts -m 0644
newins "$1" "$2"
-   ) || die "failed to install $1 as $2"
+   )
cleanpamd $2
 }
 
@@ -67,15 +71,13 @@ newpamd() {
 dopamsecurity() {
[[ $# -lt 2 ]] && die "dopamsecurity requires at least two arguments"
 
-   if has pam ${IUSE} && ! use pam; then
-   return 0
-   fi
+   _pam_flag_disabled && return 0
 
( # dont want to pollute calling env
insinto /etc/security/$1
insopts -m 0644
doins "${@:2}"
-   ) || die "failed to install ${@:2}"
+   )
 }
 
 # @FUNCTION: newpamsecurity
@@ -85,15 +87,13 @@ dopamsecurity() {
 newpamsecurity() {
[[ $# -ne 3 ]] && die "newpamsecurity requires three arguments"
 
-   if has pam ${IUSE} && ! use pam; then
-   return 0;
-   fi
+   _pam_flag_disabled && return 0
 
( # dont want to pollute calling env
insinto /etc/security/$1
insopts -m 0644
newins "$2" "$3"
-   ) || die "failed to install $2 as $3"
+   )
 }
 
 # @FUNCTION: getpam_mod_dir
@@ -129,12 +129,10 @@ EOF
 dopammod() {
[[ -z $1 ]] && die "dopammod requires at least one argument"
 
-   if has pam ${IUSE} && ! use pam; then
-   return 0;
-   fi
+   _pam_flag_disabled && return 0
 
exeinto $(getpam_mod_dir)
-   doexe "$@" || die "failed to install $@"
+   doexe "$@"
 }
 
 # @FUNCTION: newpammod
@@ -145,12 +143,10 @@ dopammod() {
 newpammod() {
[[ $# -ne 2 ]] && die "newpammod requires two arguments"
 
-   if has pam ${IUSE} && ! use pam; then
-   return 0;
-   fi
+   _pam_flag_disabled && return 0
 
exeinto $(getpam_mod_dir)
-   newexe "$1" "$2" || die "failed to install $1 as $2"
+   newexe "$1" "$2"
 }
 
 # @FUNCTION: pamd_mimic_system
@@ -171,26 +167,23 @@ pamd_mimic_system() {
 pamd_mimic() {
[[ $# -lt 3 ]] && die "pamd_mimic requires at least three arguments"
 
-   if has pam ${IUSE} && ! use pam; then
-   return 0;
-   fi
+   _pam_flag_disabled && return 0
 
dodir /etc/pam.d
-   pamdfile=${D}/etc/pam.d/$2
-   echo -e "# File autogenerated by pamd_mimic in pam eclass\n\n" >> \
-   $pamdfile
+   local pamdfile="${ED}/etc/pam.d/$2"
+   echo -e "# File autogenerated by pamd_mimic in pam eclass\n\n" \
+   >> "${pamdfile}" || die
 
-   originalstack=$1
-   authlevels="auth account password session"
+   local authlevels="auth account password session"
 
-   mimic="\tsubstack\t\t${originalstack}"
+   lo

[gentoo-dev] Last rites: dev-python/progressbar, sys-apps/gcp

2023-07-22 Thread David Seifert
# David Seifert  (2023-07-22)
# Upstream unresponsive and package is pretty much dead. dev-python/tqdm
# is a modern and fast replacement for dev-python/progressbar.
# Removal on 2023-08-21. Bug #909929, #910031.
dev-python/progressbar
sys-apps/gcp



signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] [PATCH 1/1]: profiles/use.desc: add efi global use flag

2023-07-14 Thread David Seifert
On Thu, 1970-01-01 at 00:00 +, Andrew Ammerlaan wrote:
> Hi all,
> 
> Currently we have 7 packages defining the efi flag and an additional 2
> defining the uefi flag. These flags do the same thing, add support for
> (U)EFI booting. I therefore propose we introduce efi as a new global 
> flag and later rename the uefi flag to efi in sys-apps/fwupd and 
> sys-apps/ipmicfg.
> 
> I don't have a strong preference between the efi or uefi flags, but 
> since a majority of the packages has chosen efi I suggest we go with
> that.
> 
> Best regards,
> Andrew
> 
> 
>  From 737eb5d8509b088f7689d417375c00773c131042 Mon Sep 17 00:00:00
> 2001
> From: Andrew Ammerlaan 
> Date: Fri, 14 Jul 2023 10:47:55 +0200
> Subject: [PATCH 14/14] profiles/use.desc: add efi global use flag
> 
> Signed-off-by: Andrew Ammerlaan 
> ---
>   profiles/use.desc | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/profiles/use.desc b/profiles/use.desc
> index df2115388949..ed600244f273 100644
> --- a/profiles/use.desc
> +++ b/profiles/use.desc
> @@ -70,6 +70,7 @@ dvb - Add support for DVB (Digital Video
> Broadcasting)
>   dvd - Add support for DVDs
>   dvdr - Add support for DVD writer hardware (e.g. in xcdroast)
>   eds - Enable support for Evolution-Data-Server (EDS)
> +efi - Enable support the (Unified) Extensible Firmware Interface
>   elogind - Enable session tracking via sys-auth/elogind
>   emacs - Add support for GNU Emacs
>   emboss - Add support for the European Molecular Biology Open
> Software 
> Suite

Please switch to "uefi". UEFI is the forward going name and more aligned
with how it's used commonly. It's called the "UEFI forum" that writes
the UEFI spec and it's on uefi.org. A GPU needs a UEFI GOP to
initialise.



[gentoo-dev] Re: [PATCH] profiles/targets/desktop: enable USE=vulkan by default

2023-05-22 Thread David Seifert
On Sun, 2023-05-21 at 22:48 +0100, Sam James wrote:
> Ionen pointed this out again today and it made me look back at it;
> there's
> no reason to not have vulkan on by default for desktop profiles.
> 
> In particular, Steam expects it for plenty of games to work, but at
> this point,
> it's becoming jarring for users to _not_ have it as it's considered a
> fundamental part
> of the modern desktop.
> 
> Signed-off-by: Sam James 
> ---
>  profiles/targets/desktop/make.defaults | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/profiles/targets/desktop/make.defaults
> b/profiles/targets/desktop/make.defaults
> index 46a8c5d3911e8..caccdbdd22a3e 100644
> --- a/profiles/targets/desktop/make.defaults
> +++ b/profiles/targets/desktop/make.defaults
> @@ -1,4 +1,4 @@
> -# Copyright 1999-2022 Gentoo Authors
> +# Copyright 1999-2023 Gentoo Authors
>  # Distributed under the terms of the GNU General Public License v2
>  
> -USE="a52 aac acpi alsa bluetooth branding cairo cdda cdr cups dbus
> dri dts dvd dvdr elogind encode exif flac gif gpm gtk gui icu jpeg
> lcms libnotify mad mng mp3 mp4 mpeg ogg opengl pango pdf png policykit
> ppds qt5 sdl sound spell startup-notification svg tiff truetype vorbis
> udev udisks unicode upower usb wxwidgets X xcb xft x264 xml xv xvid"
> +USE="a52 aac acpi alsa bluetooth branding cairo cdda cdr cups dbus
> dri dts dvd dvdr elogind encode exif flac gif gpm gtk gui icu jpeg
> lcms libnotify mad mng mp3 mp4 mpeg ogg opengl pango pdf png policykit
> ppds qt5 sdl sound spell startup-notification svg tiff truetype vorbis
> udev udisks unicode upower usb vulkan wxwidgets X xcb xft x264 xml xv
> xvid"

Agreed, vulkan is absolutely needed on a modern desktop.



[gentoo-dev] Last rites: app-portage/gs-elpa

2023-05-18 Thread David Seifert
# David Seifert  (2023-05-19)
# Depends on obsolete app-portage/g-sorcery.
# Removal on 2023-06-18.
app-portage/gs-elpa



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: dev-python/pyGPG

2023-05-18 Thread David Seifert
# David Seifert  (2023-05-19)
# Abandoned, NIH library only used by other obsolete packages like gkeys
# and layman, use app-crypt/gpgme[python] as a proper upstream
# supported gpg library. Removal on 2023-06-18.
dev-python/pyGPG



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: app-portage/layman

2023-05-18 Thread David Seifert
# David Seifert  (2023-05-19)
# Abandoned, replaced by 'eselect repository', tons of open bugs.
# Removal on 2023-06-18. Bug #761199.
app-portage/layman



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: app-portage/g-sorcery

2023-05-18 Thread David Seifert
# David Seifert  (2023-05-19)
# Depends on app-portage/layman. Removal on 2023-06-18.
app-portage/g-sorcery


signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: app-crypt/gentoo-keys

2023-05-18 Thread David Seifert
# David Seifert  (2023-05-19)
# EAPI 6, abandoned, never went anywhere, long obsolete with
# app-crypt/gkeys removal. Removal on 2023-06-18. Bug #566782, #659822
app-crypt/gentoo-keys



signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] [PATCH] profiles: create USE=valgrind global USE flag

2023-05-14 Thread David Seifert
On Sun, 2023-05-14 at 09:26 +0100, Sam James wrote:
> This always has the same meaning in packages - build in annotations to
> help
> with e.g. custom memory allocators to reduce noise and improve
> Valgrind's accuracy.
> 
> All invalid uses of this were already fixed (cases where it was used
> to control
> running the testsuite under Valgrind which we don't want to do, it's
> too flaky
> under sandbox & not reliable with diff arches.)
> 
> Signed-off-by: Sam James 
> ---
>  profiles/use.desc | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/profiles/use.desc b/profiles/use.desc
> index 04ca8e845ccd9..675fd291fee22 100644
> --- a/profiles/use.desc
> +++ b/profiles/use.desc
> @@ -1,4 +1,4 @@
> -# Copyright 1999-2022 Gentoo Authors
> +# Copyright 1999-2023 Gentoo Authors
>  # Distributed under the terms of the GNU General Public License v2
>  
>  # Keep them sorted
> @@ -333,6 +333,7 @@ usb - Add USB support to applications that have
> optional USB support (e.g. cups)
>  v4l - Enable support for video4linux (using linux-headers or
> userspace libv4l libraries)
>  vaapi - Enable Video Acceleration API for hardware decoding
>  vala - Enable bindings for dev-lang/vala
> +valgrind - Enable annotations for accuracy. May slow down runtime
> slightly. Safe to use even if not currently using dev-util/valgrind
>  vanilla - Do not add extra patches which change default behaviour; DO
> NOT USE THIS ON A GLOBAL SCALE as the severity of the meaning changes
> drastically
>  vcd - Video CD support
>  vdpau - Enable the Video Decode and Presentation API for Unix
> acceleration interface

yes please, lgtm



[gentoo-dev] Last rites: dev-vcs/cvsync

2023-05-14 Thread David Seifert
# David Seifert  (2023-05-14)
# QA and build issues, EAPI 6, no proper releases, no other
# distro packages this. Removal on 2023-06-13. Bug #713794, #872539.
dev-vcs/cvsync



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: dev-tex/cpp2latex

2023-05-14 Thread David Seifert
# David Seifert  (2023-05-14)
# EAPI 6, last release over 20 years ago, no other distro packages this
# anymore. Removal on 2023-06-13.
dev-tex/cpp2latex



signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] Re: EGO_SUM

2023-04-27 Thread David Seifert
On Thu, 2023-04-27 at 13:00 -0500, William Hubbs wrote:
>  That, however, doesn't remove the concern about big ebuilds and
>  manifests. I will look at the remainder of the thread to figure out
>  what is going on with that.

You do know that the main reason it was deprecated in ::gentoo was the
ballooning of manifests, not some SRC_URI-generating implementation
details of the eclass itself?



[gentoo-dev] Last rites: x11-misc/sprop

2023-04-17 Thread David Seifert
# David Seifert  (2023-04-17)
# Unmaintained, no release in over 10 years, EAPI 6, no other distro
# carries this, usual suckless.org assortment of build system
# patching required. Removal on 2023-05-17. Bug #732424.
x11-misc/sprop



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: x11-plugins/ascpu

2023-04-13 Thread David Seifert
# David Seifert  (2023-04-13)
# Unmaintained, implicit declarations, last release over 17 years ago,
# no other distro still packages this.
# Removal on 2023-05-13. Bug #874522, #898456.
x11-plugins/ascpu



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: dev-perl/Bio-SamTools, sci-biology/samtools:0.1-legacy

2023-04-06 Thread David Seifert
# David Seifert  (2023-04-06)
# Last release over 7 years ago, abandoned upstream, still depends on
# dead 0.1-legacy samtools slot. No revdeps in tree.
# Removal on 2023-05-06. Bug #862288.
dev-perl/Bio-SamTools
sci-biology/samtools:0.1-legacy



signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] Last rites: dev-ruby/hiera-eyaml and dev-ruby/hiera-eyaml-gpg

2023-03-26 Thread David Seifert
On Sun, 2023-03-26 at 21:39 +, Robin H. Johnson wrote:
> On Sun, Mar 26, 2023 at 09:57:36AM +0200, Hans de Graaff wrote:
> > # Hans de Graaff  (2023-03-26)
> > # Mask ruby27-only packages related to hiera-eyaml. These require a
> > now
> > # masked version of puppet and other obsolete ruby27-only test
> > # dependencies. Masked for removal on 2023-04-26.
> > dev-ruby/hiera-eyaml
> > dev-ruby/hiera-eyaml-gpg
> Infra needs these, please revert.
> 
> I can confirm that the package does work properly with both Ruby 3.0 &
> Ruby 3.1
> 
> The Puppet/Aruba/Cucumber deps are test-only.
> 
> Looking deeper, I think the  CI
> tests on Ruby 3.1 + Puppet7 already successfully. The Gemfile doesn't
> lock in old Puppet either.
> https://github.com/voxpupuli/hiera-eyaml/actions/runs/4280324437/jobs/7451960271
> 
> The same CI run *also* shows aruba-0.6.2 installed on Ruby 3.2, and
> used
> to test hiera-eyaml (hiera-eyaml has a tiny patch in master for Ruby
> 3.2
> support).
> 
> Lastly, if I tweak aruba-0.6.2 and install it for Ruby 3.0 & Ruby 3.1
> myself without FEATURES=tests on aruba, then the tests on hiera-eyaml
> &
> hiera-eyaml-gpg ALSO pass.
> 
> So do we really remove packages because a 2nd-order test-only
> dependency
> fails it's own tests? (aruba:0 failing tests on Ruby 3 being the only
> reason I can see to remove stuff right now).

There's a pattern here of infra or packages added for infra rotting with
unattended bugs or otherwise not meeting modern standards and then panic
at the 11th hour when they're last-rited.

Python and Ruby packages especially *need* tests because of how brittle
they are. An import can break because of a new or changed dependency,
for example.

Instead of asking graaff to revert it, you should fix the package to
work with modern Ruby implementations and get either its tests in full
or a subset of its tests running (with a comment in the ebuild
explaining the situation).

It is _critical_ that we get into ruby31 or newer ASAP and graaff is
doing hard work to get us there, especially because of the upcoming
openssl EOL. Unmasking this would mean we have to keep ruby27 around for
longer and can't focus efforts on newer Ruby.



[gentoo-dev] Last rites: dev-perl/PerlMol

2023-03-19 Thread David Seifert
# David Seifert  (2023-03-19)
# Unmaintained, last release 18 years ago, assortment of QA issues,
# upstream gone, fails with modern C, no revdeps remaining.
# Removal on 2023-04-18. Bug #833484, #833536, #833944, #883757.
dev-perl/PerlMol



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: sci-libs/xdrfile

2023-03-19 Thread David Seifert
# David Seifert  (2023-03-19)
# Upstream disappeared, last release over 8.5 years ago, unmaintained,
# laundry list of QA issues, fails with modern C, no revdeps remaining.
# Removal on 2023-04-18. Bug #683166, #814658, #834966, #898262.
sci-libs/xdrfile



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: x11-wm/subtle

2023-03-19 Thread David Seifert
# David Seifert  (2023-03-19)
# Last release over 7.5 years ago, repo link broken and redirects to
# homepage, build system is a mess, fails with modern C.
# Removal on 2023-04-18. Bug #802729, #862414, #876993, #880577.
x11-wm/subtle



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: dev-ruby/ruby-xslt

2023-03-19 Thread David Seifert
# David Seifert  (2023-03-19)
# Last release over 5 years ago, fails with modern C, no revdeps in
# tree.
# Removal on 2023-04-18. Bug #884407.
dev-ruby/ruby-xslt



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: dev-ruby/tidy-ext

2023-03-19 Thread David Seifert
# David Seifert  (2023-03-19)
# Last release over 10 years ago, fails with modern C, no revdeps in
# tree.
# Removal on 2023-04-18. Bug #587222, #884409.
dev-ruby/tidy-ext



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: dev-ruby/sigar

2023-03-19 Thread David Seifert
# David Seifert  (2023-03-19)
# Upstream disappeared, last release over 8 years ago, fails with modern
# C, no revdeps in tree.
# Removal on 2023-04-18. Bug #713784, #895686.
dev-ruby/sigar



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: dev-util/dmake

2023-03-19 Thread David Seifert
# David Seifert  (2023-03-19)
# Apache NIH make, long abandoned upstream, forked reboot went nowhere.
# Last release over 2 years ago, fails with modern C and no revdeps in
# tree. Removal on 2023-04-18. Bug #880401.
dev-util/dmake



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: net-analyzer/bigeye

2023-03-18 Thread David Seifert
# David Seifert  (2023-03-18)
# Upstream disappeared, last release over 20 years ago, only Gentoo
# still carries this, breaks with modern C under Clang, no revdeps.
# Removal on 2023-04-17. Bug #875683.
net-analyzer/bigeye



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: net-analyzer/traceroute-nanog

2023-03-18 Thread David Seifert
# David Seifert  (2023-03-18)
# Upstream disappeared, last release over 15 years ago, only Gentoo
# still carries this, breaks with modern C under Clang, no revdeps.
# Removal on 2023-04-17. Bug #875020.
net-analyzer/traceroute-nanog



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: sci-chemistry/prekin

2023-03-18 Thread David Seifert
# David Seifert  (2023-03-18)
# Upstream disappeared, release is over 14 years old, only Gentoo still
# carries this, breaks with modern C under Clang, no revdeps.
# Removal on 2023-04-17. Bug #862438.
sci-chemistry/prekin


signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: media-plugins/vdr-remotetimers

2023-03-18 Thread David Seifert
# David Seifert  (2023-03-18)
# Last release over 7.5 years ago, only Gentoo still carries this,
# breaks with modern C under Clang, no revdeps.
# Removal on 2023-04-17. Bug #871711.
media-plugins/vdr-remotetimers



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: sword-module.eclass

2023-03-18 Thread David Seifert
# David Seifert  (2023-03-17)
# @DEAD, no more revdeps
# Removal on 2023-04-16.


signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: net-wireless/spectools

2023-03-18 Thread David Seifert
# David Seifert  (2023-03-18)
# Unmaintained in Gentoo, last upstream commit 7 years ago, breaks with
# modern C under Clang, no revdeps. Bug #741078, #874648, #883303.
# Removal on 2023-04-17.
net-wireless/spectools



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] [PATCH 22/22] eclass: standardize prologue/epilogue

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/acct-group.eclass|  9 +
 eclass/acct-user.eclass | 10 +-
 eclass/ada.eclass   |  7 ++-
 eclass/ant-tasks.eclass | 11 ---
 eclass/autotools.eclass | 16 +++-
 eclass/bzr.eclass   |  8 
 eclass/cargo.eclass | 23 +++
 eclass/check-reqs.eclass| 10 +-
 eclass/chromium-2.eclass|  4 ++--
 eclass/cmake-multilib.eclass|  4 ++--
 eclass/cmake.eclass |  2 +-
 eclass/common-lisp-3.eclass | 10 +-
 eclass/cuda.eclass  | 25 +
 eclass/cvs.eclass   | 12 ++--
 eclass/distutils-r1.eclass  | 20 
 eclass/docs.eclass  |  4 ++--
 eclass/ecm.eclass   |  4 ++--
 eclass/elisp.eclass |  8 
 eclass/fcaps.eclass |  6 +++---
 eclass/font-ebdftopcf.eclass|  8 
 eclass/font.eclass  | 14 +++---
 eclass/fortran-2.eclass | 20 +---
 eclass/frameworks.kde.org.eclass|  4 ++--
 eclass/freedict.eclass  | 16 
 eclass/gear.kde.org.eclass  |  4 ++--
 eclass/gnustep-2.eclass |  4 ++--
 eclass/go-module.eclass | 13 +++--
 eclass/haskell-cabal.eclass | 15 ++-
 eclass/java-ant-2.eclass| 12 ++--
 eclass/java-vm-2.eclass | 17 +++--
 eclass/kde.org.eclass   |  4 ++--
 eclass/kodi-addon.eclass|  6 +++---
 eclass/llvm.org.eclass  | 13 +
 eclass/lua-single.eclass| 19 +++
 eclass/lua-utils.eclass | 13 ++---
 eclass/lua.eclass   | 19 +++
 eclass/mate-desktop.org.eclass  | 12 
 eclass/mate.eclass  | 11 ---
 eclass/meson-multilib.eclass|  6 +++---
 eclass/meson.eclass |  6 +++---
 eclass/mount-boot.eclass|  8 
 eclass/myspell-r2.eclass| 13 +
 eclass/netsurf.eclass   |  6 +++---
 eclass/optfeature.eclass|  4 ++--
 eclass/out-of-source.eclass |  4 ++--
 eclass/php-pear-r2.eclass   | 24 
 eclass/plasma-mobile.kde.org.eclass |  4 ++--
 eclass/plasma.kde.org.eclass|  4 ++--
 eclass/python-r1.eclass |  4 ++--
 eclass/qt5-build.eclass | 16 ++--
 eclass/qt6-build.eclass | 22 +-
 eclass/rebar.eclass |  9 +++--
 eclass/ruby-ng.eclass   | 25 +++--
 eclass/savedconfig.eclass   | 17 +++--
 eclass/sgml-catalog-r1.eclass   | 14 +++---
 eclass/ssl-cert.eclass  |  8 
 eclass/tests/distutils-r1.sh|  2 +-
 eclass/tests/distutils-r1_single.sh |  2 +-
 eclass/texlive-common.eclass| 13 ++---
 eclass/texlive-module.eclass| 17 +
 eclass/toolchain.eclass | 11 +--
 eclass/tree-sitter-grammar.eclass   | 19 +--
 eclass/unpacker.eclass  |  8 
 eclass/verify-sig.eclass|  8 
 eclass/vim-plugin.eclass| 20 +---
 eclass/vim-spell.eclass | 10 +-
 eclass/virtualx.eclass  |  6 +++---
 eclass/xorg-3.eclass| 28 ++--
 68 files changed, 382 insertions(+), 373 deletions(-)

diff --git a/eclass/acct-group.eclass b/eclass/acct-group.eclass
index f55c9f4c9587..47e2d278f73e 100644
--- a/eclass/acct-group.eclass
+++ b/eclass/acct-group.eclass
@@ -1,4 +1,4 @@
-# Copyright 2019-2022 Gentoo Authors
+# Copyright 2019-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: acct-group.eclass
@@ -36,9 +36,9 @@
 if [[ -z ${_ACCT_GROUP_ECLASS} ]]; then
 _ACCT_GROUP_ECLASS=1
 
-case ${EAPI:-0} in
+case ${EAPI} in
7|8) ;;
-   *) die "EAPI=${EAPI:-0} not supported";;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
 inherit user-info
@@ -83,7 +83,6 @@ S=${WORKDIR}
 
 
 # << Phase functions >>
-EXPORT_FUNCTIONS pkg_pretend src_install pkg_preinst
 
 # @FUNCTION: acct-group_pkg_pretend
 # @DESCRIPTION:
@@ -184,3 +183,5 @@ acct-group_pkg_preinst() {
 }
 
 fi
+
+EXPORT_FUNCTIONS pkg_pretend src_install pkg_preinst
diff --git a/eclass/acct-user.eclass b/eclass/acct-user.eclass
index 14fda76ced73..145fdb41aaf8 100644
--- a/eclass/acct-user.eclass
+++ b/eclass/acct-user.eclass
@@ -1,4 +1,4 @@
-# Copyright 2019-2022 Gentoo Authors
+# Copyright 2019-2023 Gentoo Authors
 # Distributed under the

[gentoo-dev] [PATCH 21/22] xdg.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/xdg.eclass | 65 ---
 1 file changed, 33 insertions(+), 32 deletions(-)

diff --git a/eclass/xdg.eclass b/eclass/xdg.eclass
index a3e75103a046..14c56047af45 100644
--- a/eclass/xdg.eclass
+++ b/eclass/xdg.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: xdg.eclass
@@ -6,56 +6,54 @@
 # freedesktop-b...@gentoo.org
 # @AUTHOR:
 # Original author: Gilles Dartiguelongue 
-# @SUPPORTED_EAPIS: 5 6 7 8
+# @SUPPORTED_EAPIS: 6 7 8
 # @PROVIDES: xdg-utils
 # @BLURB: Provides phases for XDG compliant packages.
 # @DESCRIPTION:
 # Utility eclass to update the desktop, icon and shared mime info as laid
 # out in the freedesktop specs & implementations
 
-inherit xdg-utils
-
-_DEFINE_XDG_SRC_PREPARE=false
-case "${EAPI}" in
-   5|6|7)
-   # src_prepare is only exported in EAPI < 8.
-   EXPORT_FUNCTIONS src_prepare
-   _DEFINE_XDG_SRC_PREPARE=true
-   ;;
-   8)
-   ;;
-   *) die "${ECLASS}: EAPI=${EAPI} is not supported" ;;
+case ${EAPI} in
+   6|7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
-EXPORT_FUNCTIONS pkg_preinst pkg_postinst pkg_postrm
+
+if [[ -z ${_XDG_ECLASS} ]]; then
+_XDG_ECLASS=1
+
+inherit xdg-utils
 
 # Avoid dependency loop as both depend on glib-2
-if [[ ${CATEGORY}/${P} != dev-libs/glib-2.* ]] ; then
-_XDG_DEPEND="
+[[ ${CATEGORY}/${P} != dev-libs/glib-2.* ]] && _XDG_DEPEND="
dev-util/desktop-file-utils
x11-misc/shared-mime-info
 "
 
-case "${EAPI}" in
-   5|6|7)
+case ${EAPI} in
+   6|7)
+   # src_prepare is only exported in EAPI < 8.
+   # @FUNCTION: xdg_src_prepare
+   # @DESCRIPTION:
+   # Prepare sources to work with XDG standards.
+   # Note that this function is only defined and exported in EAPIs 
< 8.
+   xdg_src_prepare() {
+   xdg_environment_reset
+   default
+   }
+
+   EXPORT_FUNCTIONS src_prepare
+
DEPEND="${_XDG_DEPEND}"
;;
*)
+   xdg_src_prepare() {
+   die "Called xdg_src_prepare in EAPI >= 8"
+   }
+
IDEPEND="${_XDG_DEPEND}"
;;
 esac
-fi
-
-if ${_DEFINE_XDG_SRC_PREPARE}; then
-# @FUNCTION: xdg_src_prepare
-# @DESCRIPTION:
-# Prepare sources to work with XDG standards.
-# Note that this function is only defined and exported in EAPIs < 8.
-xdg_src_prepare() {
-   xdg_environment_reset
-
-   [[ ${EAPI} != 5 ]] && default
-}
-fi
+unset _XDG_DEPEND
 
 # @FUNCTION: xdg_pkg_preinst
 # @DESCRIPTION:
@@ -127,3 +125,6 @@ xdg_pkg_postrm() {
fi
 }
 
+fi
+
+EXPORT_FUNCTIONS pkg_preinst pkg_postinst pkg_postrm
-- 
2.40.0




[gentoo-dev] [PATCH 20/22] webapp.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/webapp.eclass | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/eclass/webapp.eclass b/eclass/webapp.eclass
index 3bc177dc3e78..9fb646613426 100644
--- a/eclass/webapp.eclass
+++ b/eclass/webapp.eclass
@@ -1,22 +1,20 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: webapp.eclass
 # @MAINTAINER:
 # web-a...@gentoo.org
-# @SUPPORTED_EAPIS: 5 6 7 8
+# @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: functions for installing applications to run under a web server
 # @DESCRIPTION:
 # The webapp eclass contains functions to handle web applications with
 # webapp-config. Part of the implementation of GLEP #11
 
-case ${EAPI:-0} in
-   [5678]) ;;
+case ${EAPI} in
+   6|7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-EXPORT_FUNCTIONS pkg_postinst pkg_setup src_install pkg_prerm
-
 if [[ -z ${_WEBAPP_ECLASS} ]]; then
 _WEBAPP_ECLASS=1
 
@@ -588,3 +586,5 @@ webapp_pkg_prerm() {
 }
 
 fi
+
+EXPORT_FUNCTIONS pkg_postinst pkg_setup src_install pkg_prerm
-- 
2.40.0




[gentoo-dev] [PATCH 19/22] vdr-plugin-2.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/vdr-plugin-2.eclass | 69 ++
 1 file changed, 26 insertions(+), 43 deletions(-)

diff --git a/eclass/vdr-plugin-2.eclass b/eclass/vdr-plugin-2.eclass
index 546dbb803bf1..a56b1d41c882 100644
--- a/eclass/vdr-plugin-2.eclass
+++ b/eclass/vdr-plugin-2.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: vdr-plugin-2.eclass
@@ -9,7 +9,7 @@
 # Joerg Bornkessel 
 # Christian Ruppert 
 # (undisclosed contributors)
-# @SUPPORTED_EAPIS: 5 6 7 8
+# @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: common vdr plugin ebuild functions
 # @DESCRIPTION:
 # Eclass for easing maintenance of vdr plugin ebuilds
@@ -60,29 +60,16 @@
 # PO_SUBDIR="bla foo/bla"
 # @CODE
 
-# Applying your own local/user patches:
-# This is done by using the
-# (EAPI = 5) epatch_user() function of the eutils.eclass,
-# (EAPI = 6,7) eapply_user function integrated in EAPI = 6.
-# Simply add your patches into one of these directories:
-# /etc/portage/patches///
-# Quote: where the first of these three directories to exist will be the one to
-# use, ignoring any more general directories which might exist as well.
-#
-# For more details about it please take a look at the eutils.class.
-
-[[ ${EAPI} == [5] ]] && inherit multilib
-[[ ${EAPI} == [56] ]] && inherit eutils
-inherit flag-o-matic strip-linguas toolchain-funcs unpacker
-
 case ${EAPI} in
-   5|6|7|8)
-   ;;
-   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported"
-   ;;
+   6|7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_compile src_install 
pkg_postinst pkg_postrm pkg_config
+if [[ -z ${_VDR_PLUGIN_2_ECLASS} ]]; then
+_VDR_PLUGIN_2_ECLASS=1
+
+[[ ${EAPI} == 6 ]] && inherit eutils
+inherit flag-o-matic strip-linguas toolchain-funcs unpacker
 
 # Name of the plugin stripped from all vdrplugin-, vdr- and -cvs pre- and 
postfixes
 VDRPLUGIN="${PN/#vdrplugin-/}"
@@ -96,12 +83,16 @@ S="${WORKDIR}/${VDRPLUGIN}-${PV}"
 
 # depend on headers for DVB-driver and vdr-scripts
 case ${EAPI} in
-   5|6)DEPEND="media-tv/gentoo-vdr-scripts
-   virtual/linuxtv-dvb-headers
-   virtual/pkgconfig" ;;
-   *)  BDEPEND="virtual/pkgconfig"
-   DEPEND="media-tv/gentoo-vdr-scripts
-   virtual/linuxtv-dvb-headers" ;;
+   6)
+   DEPEND="media-tv/gentoo-vdr-scripts
+   virtual/linuxtv-dvb-headers
+   virtual/pkgconfig"
+   ;;
+   *)
+   BDEPEND="virtual/pkgconfig"
+   DEPEND="media-tv/gentoo-vdr-scripts
+   virtual/linuxtv-dvb-headers"
+   ;;
 esac
 RDEPEND="media-tv/gentoo-vdr-scripts
app-eselect/eselect-vdr"
@@ -467,11 +458,7 @@ vdr-plugin-2_src_util() {
;;
add_local_patch)
cd "${S}" || die "Could not change to 
plugin-source-directory (src_util)"
-   if [[ ${EAPI} != [5] ]]; then
-   eapply_user
-   else
-   epatch_user
-   fi
+   eapply_user
;;
patchmakefile)
cd "${S}" || die "Could not change to 
plugin-source-directory (src_util)"
@@ -514,8 +501,7 @@ vdr-plugin-2_src_prepare() {
die "vdr-plugin-2_src_prepare not called!"
fi
 
-   [[ ${EAPI} == [5] ]] && [[ ${PATCHES[@]} ]] && epatch "${PATCHES[@]}"
-   [[ ${EAPI} != [5] ]] && [[ ${PATCHES[@]} ]] && eapply "${PATCHES[@]}"
+   [[ -n ${PATCHES[@]} ]] && eapply "${PATCHES[@]}"
 
debug-print "$FUNCNAME: applying user patches"
 
@@ -626,14 +612,7 @@ vdr-plugin-2_src_install() {
vdr_create_header_checksum_file ${vdr_plugin_list}
vdr_create_plugindb_file ${vdr_plugin_list}
 
-   if [[ ${EAPI} != [45] ]]; then
-   einstalldocs
-   else
-   local docfile
-   for docfile in README* HISTORY CHANGELOG; do
-   [[ -f ${docfile} ]] && dodoc ${docfile}
-   done
-   fi
+   einstalldocs
 
# if VDR_CONFD_FILE is empty and ${FILESDIR}/confd exists take it
[[ -z ${VDR_CONFD_FILE} ]] && [[ -e ${FILESDIR}/confd ]] && 
VDR_CONFD_FILE=${FILESDIR}/confd
@@ -668,3 +647,7 @@ vdr-plugin-2_pkg_postrm() {
 vdr-plugin-2_pkg_config() {
 :
 }
+
+fi
+
+EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_compile src_install 
pkg_postinst pkg_postrm pkg_config
-- 
2.40.0




[gentoo-dev] [PATCH 18/22] sword-module.eclass: last-rite

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/sword-module.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/sword-module.eclass b/eclass/sword-module.eclass
index 565110d2dd0b..be3725a6ec55 100644
--- a/eclass/sword-module.eclass
+++ b/eclass/sword-module.eclass
@@ -1,6 +1,7 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
+# @DEAD
 # @ECLASS: sword-module.eclass
 # @MAINTAINER:
 # Marek Szuba 
-- 
2.40.0




[gentoo-dev] [PATCH 17/22] subversion.eclass: remove EAPI 6

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/subversion.eclass | 44 
 1 file changed, 22 insertions(+), 22 deletions(-)

diff --git a/eclass/subversion.eclass b/eclass/subversion.eclass
index 349878618427..48ee15105adc 100644
--- a/eclass/subversion.eclass
+++ b/eclass/subversion.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: subversion.eclass
@@ -6,28 +6,26 @@
 # Akinori Hattori 
 # @AUTHOR:
 # Original Author: Akinori Hattori 
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Fetch software sources from subversion repositories
 # @DESCRIPTION:
 # The subversion eclass provides functions to fetch software sources
 # from subversion repositories.
 
 case ${EAPI} in
-   6|7|8) inherit estack ;;
-   *) die "${ECLASS}: EAPI ${EAPI:-0} is not supported" ;;
+   7|8) inherit estack ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
+if [[ -z ${_SUBVERSION_ECLASS} ]]; then
+_SUBVERSION_ECLASS=1
+
 PROPERTIES+=" live"
 
-DEPEND="
+BDEPEND="
dev-vcs/subversion[http(+)]
net-misc/rsync"
 
-case ${EAPI} in
-   6) ;;
-   *) BDEPEND="${DEPEND}"; DEPEND="" ;;
-esac
-
 # @ECLASS_VARIABLE: ESVN_STORE_DIR
 # @USER_VARIABLE
 # @DESCRIPTION:
@@ -177,7 +175,7 @@ subversion_fetch() {
die "${ECLASS}: ESVN_REPO_URI (or specified URI) is empty."
fi
 
-   [[ -n "${ESVN_REVISION}" ]] && revision="${ESVN_REVISION}"
+   [[ -n ${ESVN_REVISION} ]] && revision="${ESVN_REVISION}"
 
# check for the scheme
local scheme="${repo_uri%%:*}"
@@ -196,7 +194,7 @@ subversion_fetch() {
addread "/etc/subversion"
addwrite "${ESVN_STORE_DIR}"
 
-   if [[ -n "${ESVN_UMASK}" ]]; then
+   if [[ -n ${ESVN_UMASK} ]]; then
eumask_push "${ESVN_UMASK}"
fi
 
@@ -210,9 +208,9 @@ subversion_fetch() {
local wc_path="$(subversion__get_wc_path "${repo_uri}")"
local options="${ESVN_OPTIONS} --config-dir 
${ESVN_STORE_DIR}/.subversion"
 
-   [[ -n "${revision}" ]] && options="${options} -r ${revision}"
+   [[ -n ${revision} ]] && options="${options} -r ${revision}"
 
-   if [[ "${ESVN_OPTIONS}" = *-r* ]]; then
+   if [[ ${ESVN_OPTIONS} == *-r* ]]; then
ewarn "\${ESVN_OPTIONS} contains -r, this usage is unsupported. 
Please"
ewarn "see \${ESVN_REPO_URI}"
fi
@@ -237,7 +235,7 @@ subversion_fetch() {
 
mkdir -m 775 -p "${ESVN_PROJECT}" || die "${ECLASS}: can't 
mkdir ${ESVN_PROJECT}."
cd "${ESVN_PROJECT}" || die "${ECLASS}: can't chdir to 
${ESVN_PROJECT}"
-   if [[ -n "${ESVN_USER}" ]]; then
+   if [[ -n ${ESVN_USER} ]]; then
${ESVN_FETCH_CMD} ${options} --username "${ESVN_USER}" 
--password "${ESVN_PASSWORD}" "${repo_uri}" || die "${ECLASS}: can't fetch to 
${wc_path} from ${repo_uri}."
else
${ESVN_FETCH_CMD} ${options} "${repo_uri}" || die 
"${ECLASS}: can't fetch to ${wc_path} from ${repo_uri}."
@@ -276,13 +274,13 @@ subversion_fetch() {
einfo " new UUID: $(subversion__svn_info 
"${repo_uri}" "Repository UUID")"
einfo " repository: 
${repo_uri}${revision:+@}${revision}"
 
-   rm -fr "${ESVN_PROJECT}" || die
+   rm -rf "${ESVN_PROJECT}" || die
 
debug-print "${FUNCNAME}: ${ESVN_FETCH_CMD} 
${options} ${repo_uri}"
 
mkdir -m 775 -p "${ESVN_PROJECT}" || die 
"${ECLASS}: can't mkdir ${ESVN_PROJECT}."
cd "${ESVN_PROJECT}" || die "${ECLASS}: can't 
chdir to ${ESVN_PROJECT}"
-   if [[ -n "${ESVN_USER}" ]]; then
+   if [[ -n ${ESVN_USER} ]]; then
${ESVN_FETCH_CMD} ${options} --username 
"${ESVN_USER}" --password "${ESVN_PASSWORD}" "${repo_uri}" || die "${ECLASS}: 
can't fetch to ${wc_path} from ${repo_uri}."
else
${ESVN_FETCH_CMD} ${options} 
"${repo_uri}" || die "${ECLASS}: can't fetch to ${wc_path} from ${repo_

[gentoo-dev] [PATCH 16/22] qmail.eclass: remove EAPI 6

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/qmail.eclass | 59 -
 1 file changed, 31 insertions(+), 28 deletions(-)

diff --git a/eclass/qmail.eclass b/eclass/qmail.eclass
index b647ac5d8e3a..149bfa0c25f3 100644
--- a/eclass/qmail.eclass
+++ b/eclass/qmail.eclass
@@ -1,18 +1,18 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: qmail.eclass
 # @MAINTAINER:
 # Rolf Eike Beer 
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: common qmail functions
 
-case ${EAPI:-0} in
-   [678]) ;;
+case ${EAPI} in
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_QMAIL_ECLASS} ]] ; then
+if [[ -z ${_QMAIL_ECLASS} ]]; then
 _QMAIL_ECLASS=1
 
 inherit flag-o-matic toolchain-funcs fixheadtails
@@ -58,7 +58,7 @@ is_prime() {
 
 dospp() {
exeinto "${QMAIL_HOME}"/plugins/
-   newexe ${1} ${2:-$(basename ${1})}
+   newexe ${1} ${2:-${1##*/}}
 }
 
 # @FUNCTION: dosupervise
@@ -68,7 +68,7 @@ dospp() {
 dosupervise() {
local service=$1
local runfile=${2:-${service}} logfile=${3:-${service}-log}
-   [[ -z "${service}" ]] && die "no service given"
+   [[ -z ${service} ]] && die "no service given"
 
dodir ${SUPERVISE_DIR}/${service}{,/log}
fperms +t ${SUPERVISE_DIR}/${service}{,/log}
@@ -92,16 +92,16 @@ qmail_set_cc() {
 
echo "${cc} ${CFLAGS} ${CPPFLAGS}"  > ./conf-cc || die 'Patching 
conf-cc failed.'
echo "${ld} ${LDFLAGS}" > ./conf-ld || die 'Patching conf-ld failed.'
-   sed -e "s#'ar #'$(tc-getAR) #" -e "s#'ranlib #'$(tc-getRANLIB) #" -i 
make-makelib.sh
+   sed -e "s#'ar #'$(tc-getAR) #" -e "s#'ranlib #'$(tc-getRANLIB) #" -i 
make-makelib.sh || die
 }
 
 genqmail_src_unpack() {
-   cd "${WORKDIR}"
+   cd "${WORKDIR}" || die
[[ -n ${GENQMAIL_PV} ]] && unpack "${GENQMAIL_F}"
 }
 
 qmail_spp_src_unpack() {
-   cd "${WORKDIR}"
+   cd "${WORKDIR}" || die
[[ -n ${QMAIL_SPP_PV} ]] && unpack "${QMAIL_SPP_F}"
 }
 
@@ -109,23 +109,23 @@ qmail_spp_src_unpack() {
 # @DESCRIPTION:
 # Unpack common config files, and set built configuration (CFLAGS, LDFLAGS, 
etc)
 qmail_src_postunpack() {
-   cd "${S}"
+   cd "${S}" || die
 
qmail_set_cc
 
mysplit=${QMAIL_CONF_SPLIT:-23}
is_prime ${mysplit} || die "QMAIL_CONF_SPLIT is not a prime number."
einfo "Using conf-split value of ${mysplit}."
-   echo -n ${mysplit} > "${S}"/conf-split
+   echo -n ${mysplit} > "${S}"/conf-split || die
 }
 
 qmail_src_compile() {
-   cd "${S}"
+   cd "${S}" || die
emake it man "$@"
 }
 
 qmail_spp_src_compile() {
-   cd "${GENQMAIL_S}"/spp/
+   cd "${GENQMAIL_S}"/spp/ || die
emake
 }
 
@@ -152,6 +152,7 @@ qmail_base_install() {
qreceipt sendmail tcp-env
 
# obsolete tools, install if they are still present
+   local i
for i in elq maildirwatch pinq qail qsmhook; do
[[ -x ${i} ]] && doexe ${i}
done
@@ -167,7 +168,6 @@ qmail_base_install() {
 
exeopts -o qmailq -g qmail -m 4711
doexe qmail-queue
-
)
 }
 
@@ -189,7 +189,7 @@ qmail_man_install() {
dodoc BLURB* INSTALL* PIC* README* REMOVE* \
SENDMAIL* TEST* THANKS* VERSION*
# notqmail converted the files to markdown
-   if [ -f CHANGES ]; then
+   if [[ -f CHANGES ]]; then
dodoc CHANGES FAQ SECURITY THOUGHTS UPGRADE
else
dodoc CHANGES.md FAQ.md SECURITY.md THOUGHTS.md UPGRADE.md
@@ -225,13 +225,13 @@ qmail_maildir_install() {
"${MAILDIRMAKE}" "${D}${QMAIL_HOME}"/alias/.maildir
keepdir "${QMAIL_HOME}"/alias/.maildir/{cur,new,tmp}
 
+   local i
for i in "${QMAIL_HOME}"/alias/.qmail-{mailer-daemon,postmaster,root}; 
do
-   if [[ ! -f "${ROOT}${i}" ]]; then
+   if [[ ! -f ${ROOT}${i} ]]; then
touch "${D}${i}"
fowners alias:qmail "${i}"
fi
done
-
)
 }
 
@@ -240,7 +240,7 @@ qmail_tcprules_install() {
insinto "${TCPRULES_DIR}"
doins "${GENQMAIL_S}"/tcprules/Makefile.qmail
doins "${GENQMAIL_S}"/tcprules/tcp.qmail-*
-   rm -f "${D}${TCPRULES_DIR}"/tcp.qmail-pop3sd
+   rm -f "${D}${TCPRULES_DIR}"/tcp.qmail-pop3sd || die
 }
 
 qmail_supervise_install_one() {
@@ -255

[gentoo-dev] [PATCH 15/22] office-ext-r1.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/office-ext-r1.eclass | 22 +-
 1 file changed, 13 insertions(+), 9 deletions(-)

diff --git a/eclass/office-ext-r1.eclass b/eclass/office-ext-r1.eclass
index 8cf472fe5bcc..abc0cabaa310 100644
--- a/eclass/office-ext-r1.eclass
+++ b/eclass/office-ext-r1.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: office-ext-r1.eclass
@@ -6,18 +6,18 @@
 # The office team 
 # @AUTHOR:
 # Tomáš Chvátal 
-# @SUPPORTED_EAPIS: 5 7
+# @SUPPORTED_EAPIS: 7
 # @BLURB: Eclass for installing libreoffice extensions
 # @DESCRIPTION:
 # Eclass for easing maintenance of libreoffice extensions.
 
-case "${EAPI:-0}" in
-   5) inherit eutils multilib ;;
-   7) inherit eutils ;;
-   *) die "EAPI=${EAPI} is not supported" ;;
+case ${EAPI} in
+   7) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-EXPORT_FUNCTIONS src_unpack src_install
+if [[ -z ${_OFFICE_EXT_R1_ECLASS} ]]; then
+_OFFICE_EXT_R1_ECLASS=1
 
 # @ECLASS_VARIABLE: OFFICE_REQ_USE
 # @PRE_INHERIT
@@ -112,7 +112,7 @@ office-ext-r1_src_unpack() {
for i in ${OFFICE_EXTENSIONS[@]}; do
# Unpack the extensions where required and add case for oxt
# which should be most common case for the extensions.
-   if [[ -f "${OFFICE_EXTENSIONS_LOCATION}/${i}" ]] ; then
+   if [[ -f ${OFFICE_EXTENSIONS_LOCATION}/${i} ]] ; then
case ${i} in
*.oxt)
mkdir -p "${WORKDIR}/${i}/" || die
@@ -142,9 +142,13 @@ office-ext-r1_src_install() {
for j in ${OFFICE_EXTENSIONS[@]}; do
pushd "${WORKDIR}/${j}/" > /dev/null || die
insinto 
/usr/$(get_libdir)/${i}/share/extensions/${j/.oxt/}
-   doins -r *
+   doins -r .
popd > /dev/null || die
done
fi
done
 }
+
+fi
+
+EXPORT_FUNCTIONS src_unpack src_install
-- 
2.40.0




[gentoo-dev] [PATCH 14/22] mono-env.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/mono-env.eclass | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/eclass/mono-env.eclass b/eclass/mono-env.eclass
index 8cec214e615f..48712587ff3e 100644
--- a/eclass/mono-env.eclass
+++ b/eclass/mono-env.eclass
@@ -1,21 +1,19 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: mono-env.eclass
 # @MAINTAINER:
 # maintainer-nee...@gentoo.org
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: Set environment variables commonly used by dotnet packages.
 # @DESCRIPTION:
 # Set environment variables commonly used by dotnet packages.
 
-case ${EAPI:-0} in
-   [567]) ;;
+case ${EAPI} in
+   6|7) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-EXPORT_FUNCTIONS pkg_setup
-
 if [[ -z ${_MONO_ENV_ECLASS} ]] ; then
 _MONO_ENV_ECLASS=1
 
@@ -48,3 +46,5 @@ mono-env_pkg_setup() {
 }
 
 fi
+
+EXPORT_FUNCTIONS pkg_setup
-- 
2.40.0




[gentoo-dev] [PATCH 13/22] linux-info.eclass: remove EAPI 0-5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/linux-info.eclass | 20 +++-
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass
index a65d0c441ba2..ce04a0dc66a7 100644
--- a/eclass/linux-info.eclass
+++ b/eclass/linux-info.eclass
@@ -1,9 +1,10 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: linux-info.eclass
 # @MAINTAINER:
 # ker...@gentoo.org
+# @SUPPORTED_EAPIS: 6 7 8
 # @AUTHOR:
 # Original author: John Mylchreest 
 # @BLURB: eclass used for accessing kernel related information
@@ -26,6 +27,14 @@
 # get_version
 # get_running_version
 
+case ${EAPI} in
+   6|7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+if [[ -z ${_LINUX_INFO_ECLASS} ]]; then
+_LINUX_INFO_ECLASS=1
+
 # A Couple of env vars are available to effect usage of this eclass
 # These are as follows:
 
@@ -151,9 +160,7 @@ KERNEL_DIR="${KERNEL_DIR:-${ROOT%/}/usr/src/linux}"
 
 # And to ensure all the weirdness with crosscompile
 inherit toolchain-funcs
-[[ ${EAPI:-0} == [0123456] ]] && inherit eapi7-ver
-
-EXPORT_FUNCTIONS pkg_setup
+[[ ${EAPI} == 6 ]] && inherit eapi7-ver
 
 # bug #75034
 case ${ARCH} in
@@ -231,7 +238,6 @@ getfilevar() {
# We use nonfatal because we want the caller to take care of 
things #373151
# Pass need-config= to make to avoid config check in kernel 
Makefile.
# Pass dot-config=0 to avoid the config check in kernels prior 
to 5.4.
-   [[ ${EAPI:-0} == [0123] ]] && nonfatal() { "$@"; }
echo -e "e:\\n\\t@echo \$(${1})\\ninclude ${basefname}" | \
nonfatal emake -C "${basedname}" --no-print-directory 
M="${T}" \
dot-config=0 need-config= need-compiler= \
@@ -1009,3 +1015,7 @@ kernel_get_makefile() {
[[ -s ${KV_DIR}/Makefile ]] && KERNEL_MAKEFILE="${KV_DIR}/Makefile" && 
return
 
 }
+
+fi
+
+EXPORT_FUNCTIONS pkg_setup
-- 
2.40.0




[gentoo-dev] [PATCH 12/22] libtool.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/libtool.eclass | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/libtool.eclass b/eclass/libtool.eclass
index a38f41588289..9797b22aabff 100644
--- a/eclass/libtool.eclass
+++ b/eclass/libtool.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: libtool.eclass
@@ -17,10 +17,10 @@
 if [[ -z ${_LIBTOOL_ECLASS} ]]; then
 _LIBTOOL_ECLASS=1
 
-case ${EAPI:-0} in
-   5|6) DEPEND=">=app-portage/elt-patches-20170815" ;;
+case ${EAPI} in
+   6) DEPEND=">=app-portage/elt-patches-20170815" ;;
7|8) BDEPEND=">=app-portage/elt-patches-20170815" ;;
-   *) die "${ECLASS}: EAPI ${EAPI} not supported" ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
 inherit toolchain-funcs
-- 
2.40.0




[gentoo-dev] [PATCH 11/22] golang-vcs.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/golang-vcs.eclass | 24 ++--
 1 file changed, 10 insertions(+), 14 deletions(-)

diff --git a/eclass/golang-vcs.eclass b/eclass/golang-vcs.eclass
index 595412ea0c88..7eb60e5f2453 100644
--- a/eclass/golang-vcs.eclass
+++ b/eclass/golang-vcs.eclass
@@ -1,10 +1,10 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: golang-vcs.eclass
 # @MAINTAINER:
 # William Hubbs 
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @PROVIDES: golang-base
 # @BLURB: Eclass for fetching and unpacking go repositories.
 # @DEPRECATED: go-module.eclass
@@ -12,21 +12,15 @@
 # This eclass is written to ease the maintenance of live ebuilds
 # of software written in the Go programming language.
 
-inherit estack eutils golang-base
-
-case "${EAPI:-0}" in
-   5|6|7)
-   ;;
-   *)
-   die "${ECLASS}: Unsupported eapi (EAPI=${EAPI})"
-   ;;
+case ${EAPI} in
+   6|7) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-EXPORT_FUNCTIONS src_unpack
-
-if [[ -z ${_GOLANG_VCS} ]]; then
+if [[ -z ${_GOLANG_VCS_ECLASS} ]]; then
+_GOLANG_VCS_ECLASS=1
 
-_GOLANG_VCS=1
+inherit estack eutils golang-base
 
 PROPERTIES+=" live"
 
@@ -139,3 +133,5 @@ golang-vcs_src_unpack() {
 }
 
 fi
+
+EXPORT_FUNCTIONS src_unpack
-- 
2.40.0




[gentoo-dev] [PATCH 10/22] golang-vcs-snapshot.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/golang-vcs-snapshot.eclass | 23 ++-
 1 file changed, 14 insertions(+), 9 deletions(-)

diff --git a/eclass/golang-vcs-snapshot.eclass 
b/eclass/golang-vcs-snapshot.eclass
index 5140064a651e..9c199bbbd8c5 100644
--- a/eclass/golang-vcs-snapshot.eclass
+++ b/eclass/golang-vcs-snapshot.eclass
@@ -1,10 +1,10 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: golang-vcs-snapshot.eclass
 # @MAINTAINER:
 # William Hubbs 
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @PROVIDES: golang-base
 # @BLURB: eclass to unpack VCS snapshot tarballs for Go software
 # @DEPRECATED: go-module.eclass
@@ -44,14 +44,15 @@
 # ${WORKDIR}/${P}/src/github.com/user/package
 # and add the vendored tarballs to ${WORKDIR}/src/${EGO_PN}/vendor
 
-inherit golang-base
-
-case ${EAPI:-0} in
-   5|6|7) ;;
-   *) die "${ECLASS} API in EAPI ${EAPI} not yet established."
+case ${EAPI} in
+   6|7) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-EXPORT_FUNCTIONS src_unpack
+if [[ -z ${_GOLANG_VCS_SNAPSHOT_ECLASS} ]]; then
+_GOLANG_VCS_SNAPSHOT_ECLASS=1
+
+inherit golang-base
 
 # @ECLASS_VARIABLE: EGO_VENDOR
 # @DESCRIPTION:
@@ -82,7 +83,7 @@ unset -f _golang-vcs-snapshot_set_vendor_uri
 
 _golang-vcs-snapshot_dovendor() {
local VENDOR_PATH=$1 VENDORPN=$2 TARBALL=$3
-   rm -fr "${VENDOR_PATH}/${VENDORPN}" || die
+   rm -rf "${VENDOR_PATH}/${VENDORPN}" || die
mkdir -p "${VENDOR_PATH}/${VENDORPN}" || die
tar -C "${VENDOR_PATH}/${VENDORPN}" -x --strip-components 1\
-f "${DISTDIR}"/${TARBALL} || die
@@ -117,3 +118,7 @@ golang-vcs-snapshot_src_unpack() {
done
fi
 }
+
+fi
+
+EXPORT_FUNCTIONS src_unpack
-- 
2.40.0




[gentoo-dev] [PATCH 09/22] golang-build.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/golang-build.eclass | 24 ++--
 1 file changed, 10 insertions(+), 14 deletions(-)

diff --git a/eclass/golang-build.eclass b/eclass/golang-build.eclass
index f24029a1a9fd..235313bd70f5 100644
--- a/eclass/golang-build.eclass
+++ b/eclass/golang-build.eclass
@@ -1,10 +1,10 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: golang-build.eclass
 # @MAINTAINER:
 # William Hubbs 
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @PROVIDES: golang-base
 # @BLURB: Eclass for compiling go packages.
 # @DEPRECATED: go-module.eclass
@@ -12,21 +12,15 @@
 # This eclass provides default  src_compile, src_test and src_install
 # functions for software written in the Go programming language.
 
-inherit golang-base
-
-case "${EAPI:-0}" in
-   5|6|7)
-   ;;
-   *)
-   die "${ECLASS}: Unsupported eapi (EAPI=${EAPI})"
-   ;;
+case ${EAPI} in
+   6|7) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-EXPORT_FUNCTIONS src_compile src_install src_test
-
-if [[ -z ${_GOLANG_BUILD} ]]; then
+if [[ -z ${_GOLANG_BUILD_ECLASS} ]]; then
+_GOLANG_BUILD_ECLASS=1
 
-_GOLANG_BUILD=1
+inherit golang-base
 
 # @ECLASS_VARIABLE: EGO_BUILD_FLAGS
 # @DEFAULT_UNSET
@@ -85,3 +79,5 @@ golang-build_src_test() {
 }
 
 fi
+
+EXPORT_FUNCTIONS src_compile src_install src_test
-- 
2.40.0




[gentoo-dev] [PATCH 08/22] gnome2.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/gnome2.eclass | 154 +--
 1 file changed, 31 insertions(+), 123 deletions(-)

diff --git a/eclass/gnome2.eclass b/eclass/gnome2.eclass
index a701b58fd9e7..37fbb94e55cd 100644
--- a/eclass/gnome2.eclass
+++ b/eclass/gnome2.eclass
@@ -1,35 +1,34 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: gnome2.eclass
 # @MAINTAINER:
 # gn...@gentoo.org
-# @SUPPORTED_EAPIS: 5 6 7 8
+# @SUPPORTED_EAPIS: 6 7 8
 # @PROVIDES: gnome2-utils
 # @BLURB: Provides phases for Gnome/Gtk+ based packages.
 # @DESCRIPTION:
 # Exports portage base functions used by ebuilds written for packages using the
 # GNOME framework. For additional functions, see gnome2-utils.eclass.
 
+case ${EAPI} in
+   6|7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
+
+if [[ -z ${_GNOME2_ECLASS} ]]; then
+_GNOME2_ECLASS=1
+
 # @ECLASS_VARIABLE: GNOME2_EAUTORECONF
 # @DEFAULT_UNSET
 # @DESCRIPTION:
 # Run eautoreconf instead of only elibtoolize
 GNOME2_EAUTORECONF=${GNOME2_EAUTORECONF:-""}
 
-[[ ${GNOME2_EAUTORECONF} == 'yes' ]] && inherit autotools
-[[ ${EAPI} == [56] ]] && inherit eutils ltprune
-inherit libtool gnome.org gnome2-utils xdg
+[[ ${GNOME2_EAUTORECONF} == yes ]] && inherit autotools
+[[ ${EAPI} == 6 ]] && inherit ltprune
 
-case ${EAPI} in
-   5)
-   EXPORT_FUNCTIONS src_unpack src_prepare src_configure 
src_compile src_install pkg_preinst pkg_postinst pkg_postrm
-   ;;
-   6|7|8)
-   EXPORT_FUNCTIONS src_prepare src_configure src_compile 
src_install pkg_preinst pkg_postinst pkg_postrm
-   ;;
-   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
-esac
+inherit libtool gnome.org gnome2-utils xdg
 
 # @ECLASS_VARIABLE: ELTCONF
 # @DEFAULT_UNSET
@@ -37,34 +36,6 @@ esac
 # Extra options passed to elibtoolize
 ELTCONF=${ELTCONF:-""}
 
-# @ECLASS_VARIABLE: G2CONF
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Extra configure opts passed to econf.
-# Deprecated, pass extra arguments to gnome2_src_configure.
-# Banned in eapi6 and newer.
-if has ${EAPI} 5; then
-   G2CONF=${G2CONF:-""}
-fi
-
-# @ECLASS_VARIABLE: GCONF_DEBUG
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Whether to handle debug or not.
-# Some gnome applications support various levels of debugging (yes, no, 
minimum,
-# etc), but using --disable-debug also removes g_assert which makes debugging
-# harder. This variable should be set to yes for such packages for the eclass
-# to handle it properly. It will enable minimal debug with USE=-debug.
-# Note that this is most commonly found in configure.ac as GNOME_DEBUG_CHECK.
-#
-# Banned since eapi6 as upstream is moving away from this obsolete macro in 
favor
-# of autoconf-archive macros, that do not expose this issue (bug #270919)
-if has ${EAPI} 5; then
-   if [[ ${GCONF_DEBUG} != "no" ]]; then
-   IUSE="debug"
-   fi
-fi
-
 # @ECLASS_VARIABLE: GNOME2_ECLASS_GIO_MODULES
 # @INTERNAL
 # @DESCRIPTION:
@@ -72,47 +43,29 @@ fi
 
 # @ECLASS_VARIABLE: GNOME2_LA_PUNT
 # @DESCRIPTION:
-# In EAPIs 5 and 6, it relies on prune_libtool_files (from ltprune.eclass) for
+# In EAPI 6, it relies on prune_libtool_files (from ltprune.eclass) for
 # this. Later EAPIs use find ... -delete. Available values for GNOME2_LA_PUNT:
 # - "no": will not clean any .la files
 # - "yes": will run prune_libtool_files --modules
 # - If it is not set, it will run prune_libtool_files
 GNOME2_LA_PUNT=${GNOME2_LA_PUNT:-""}
 
-# @FUNCTION: gnome2_src_unpack
-# @DESCRIPTION:
-# Stub function for old EAPI.
-gnome2_src_unpack() {
-   if has ${EAPI} 5; then
-   unpack ${A}
-   cd "${S}"
-   else
-   die "gnome2_src_unpack is banned since eapi6"
-   fi
-}
-
 # @FUNCTION: gnome2_src_prepare
 # @DESCRIPTION:
 # Prepare environment for build, fix build of scrollkeeper documentation,
 # run elibtoolize.
 gnome2_src_prepare() {
-   [[ ${EAPI} != 5 ]] && default
+   default
 
# Prevent assorted access violations and test failures
gnome2_environment_reset
 
-   # Prevent scrollkeeper access violations
-   # We stop to run it from eapi6 as scrollkeeper helpers from
-   # rarian are not running anything and, then, access violations
-   # shouldn't occur.
-   has ${EAPI} 5 && gnome2_omf_fix
-
# Disable all deprecation warnings
gnome2_disable_deprecation_warning
 
# Run libtoolize or eautoreconf, bug #591584
# https://bugzilla.gnome.org/show_bug.cgi?id=655517
-   if [[ ${GNOME2_EAUTORECONF} == 'yes' ]]; then
+   if [[ ${GNOME2_EAUTORECONF} == yes ]]; then
eautoreconf
  

[gentoo-dev] [PATCH 07/22] git-r3.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/git-r3.eclass | 97 +---
 1 file changed, 47 insertions(+), 50 deletions(-)

diff --git a/eclass/git-r3.eclass b/eclass/git-r3.eclass
index bdb28565e2f9..5c7dc29627cb 100644
--- a/eclass/git-r3.eclass
+++ b/eclass/git-r3.eclass
@@ -1,27 +1,26 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: git-r3.eclass
 # @MAINTAINER:
 # Michał Górny 
-# @SUPPORTED_EAPIS: 5 6 7 8
+# @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: Eclass for fetching and unpacking git repositories.
 # @DESCRIPTION:
 # Third generation eclass for easing maintenance of live ebuilds using
 # git as remote repository.
 
-case ${EAPI:-0} in
-   5|6|7|8) ;;
+case ${EAPI} in
+   6|7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-EXPORT_FUNCTIONS src_unpack
-
-if [[ ! ${_GIT_R3} ]]; then
+if [[ -z ${_GIT_R3_ECLASS} ]]; then
+_GIT_R3_ECLASS=1
 
 PROPERTIES+=" live"
 
-if [[ ${EAPI} != [56] ]]; then
+if [[ ${EAPI} != 6 ]]; then
BDEPEND=">=dev-vcs/git-1.8.2.1[curl]"
 else
DEPEND=">=dev-vcs/git-1.8.2.1[curl]"
@@ -559,49 +558,46 @@ git-r3_fetch() {
local commit_id=${2:-${EGIT_COMMIT}}
local commit_date=${4:-${EGIT_COMMIT_DATE}}
 
-   # support new override API for EAPI 6+
-   if [[ ${EAPI} != 5 ]]; then
-   # get the name and do some more processing:
-   # 1) kill .git suffix,
-   # 2) underscore (remaining) non-variable characters,
-   # 3) add preceding underscore if it starts with a digit,
-   # 4) uppercase.
-   local override_name=${GIT_DIR##*/}
-   override_name=${override_name%.git}
-   override_name=${override_name//[^a-zA-Z0-9_]/_}
-   override_name=${override_name^^}
-
-   local varmap=(
-   REPO:repos
-   BRANCH:branch_name
-   COMMIT:commit_id
-   COMMIT_DATE:commit_date
-   )
-
-   local localvar livevar live_warn= override_vars=()
-   for localvar in "${varmap[@]}"; do
-   livevar=EGIT_OVERRIDE_${localvar%:*}_${override_name}
-   localvar=${localvar#*:}
-   override_vars+=( "${livevar}" )
-
-   if [[ -n ${!livevar} ]]; then
-   [[ ${localvar} == repos ]] && repos=()
-   live_warn=1
-   ewarn "Using ${livevar}=${!livevar}"
-   declare "${localvar}=${!livevar}"
-   fi
-   done
+   # get the name and do some more processing:
+   # 1) kill .git suffix,
+   # 2) underscore (remaining) non-variable characters,
+   # 3) add preceding underscore if it starts with a digit,
+   # 4) uppercase.
+   local override_name=${GIT_DIR##*/}
+   override_name=${override_name%.git}
+   override_name=${override_name//[^a-zA-Z0-9_]/_}
+   override_name=${override_name^^}
+
+   local varmap=(
+   REPO:repos
+   BRANCH:branch_name
+   COMMIT:commit_id
+   COMMIT_DATE:commit_date
+   )
 
-   if [[ ${live_warn} ]]; then
-   ewarn "No support will be provided."
-   else
-   einfo "To override fetched repository properties, use:"
-   local x
-   for x in "${override_vars[@]}"; do
-   einfo "  ${x}"
-   done
-   einfo
+   local localvar livevar live_warn= override_vars=()
+   for localvar in "${varmap[@]}"; do
+   livevar=EGIT_OVERRIDE_${localvar%:*}_${override_name}
+   localvar=${localvar#*:}
+   override_vars+=( "${livevar}" )
+
+   if [[ -n ${!livevar} ]]; then
+   [[ ${localvar} == repos ]] && repos=()
+   live_warn=1
+   ewarn "Using ${livevar}=${!livevar}"
+   declare "${localvar}=${!livevar}"
fi
+   done
+
+   if [[ ${live_warn} ]]; then
+   ewarn "No support will be provided."
+   else
+   einfo "To override fetched repository properties, use:"
+   local x
+   for x in "${override_vars[@]}"; do
+   einfo "  ${x}"
+   done
+   einfo
fi
 
# set final variables after applying overrides
@@ -1079,5 +1075,6 @@ git-r3_pkg_needrebuild() {
 # 'export' locally until this gets into EAPI
 pkg_needrebuild() { git-r3_pkg_needrebuild; }
 
-_GIT_R3=1
 fi
+
+EXPORT_FUNCTIONS src_unpack
-- 
2.40.0




[gentoo-dev] [PATCH 06/22] findlib.eclass: remove EAPI 6

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/findlib.eclass | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/eclass/findlib.eclass b/eclass/findlib.eclass
index 52e3655b3e84..fdcaa0c1b77c 100644
--- a/eclass/findlib.eclass
+++ b/eclass/findlib.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: findlib.eclass
@@ -6,13 +6,13 @@
 # ML 
 # @AUTHOR:
 # Original author: Matthieu Sozeau  (retired)
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: ocamlfind (a.k.a. findlib) eclass
 # @DESCRIPTION:
 # ocamlfind (a.k.a. findlib) eclass
 
-case ${EAPI:-0} in
-   [678]) ;;
+case ${EAPI} in
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
@@ -35,7 +35,7 @@ RDEPEND="dev-lang/ocaml:=[ocamlopt?]"
 # @DESCRIPTION:
 # Die if ocamlfind is not found
 check_ocamlfind() {
-   if [ ! -x "${EPREFIX}"/usr/bin/ocamlfind ] ; then
+   if [[ ! -x ${EPREFIX}/usr/bin/ocamlfind ]] ; then
eerror "In ${ECLASS}: could not find the ocamlfind executable"
eerror "Please report this bug on Gentoo's Bugzilla, assigning 
to m...@gentoo.org"
die "ocamlfind executable not found"
@@ -51,16 +51,16 @@ findlib_src_preinst() {
check_ocamlfind
 
# destdir is the ocaml sitelib
-   local destdir=`ocamlfind printconf destdir`
+   local destdir=$(ocamlfind printconf destdir)
 
# strip off prefix
destdir=${destdir#${EPREFIX}}
 
-   dodir ${destdir} || die "dodir failed"
+   dodir "${destdir}"
export OCAMLFIND_DESTDIR=${ED}${destdir}
 
# stublibs style
-   dodir ${destdir}/stublibs || die "dodir failed"
+   dodir "${destdir}"/stublibs
export OCAMLFIND_LDCONF=ignore
 }
 
-- 
2.40.0




[gentoo-dev] [PATCH 05/22] eapi8-dosym.eclass: remove EAPI 5, 6

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/eapi8-dosym.eclass | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/eapi8-dosym.eclass b/eclass/eapi8-dosym.eclass
index 52f0ffe3e62b..4e3977ef54cf 100644
--- a/eclass/eapi8-dosym.eclass
+++ b/eclass/eapi8-dosym.eclass
@@ -1,4 +1,4 @@
-# Copyright 2020 Gentoo Authors
+# Copyright 2020-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: eapi8-dosym.eclass
@@ -6,7 +6,7 @@
 # PMS team 
 # @AUTHOR:
 # Ulrich Müller 
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 7
 # @BLURB: Testing implementation of EAPI 8 dosym -r option
 # @DESCRIPTION:
 # A stand-alone implementation of the dosym command aimed for EAPI 8.
@@ -17,8 +17,8 @@
 # https://bugs.gentoo.org/708360
 
 case ${EAPI} in
-   5|6|7) ;;
-   *) die "${ECLASS}: EAPI=${EAPI:-0} not supported" ;;
+   7) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
 # @FUNCTION: _dosym8_canonicalize
-- 
2.40.0




[gentoo-dev] [PATCH 04/22] db.eclass: add EAPI allowlist

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/db.eclass | 132 ++-
 1 file changed, 61 insertions(+), 71 deletions(-)

diff --git a/eclass/db.eclass b/eclass/db.eclass
index 96669c6d8938..ac1e73e03bc4 100644
--- a/eclass/db.eclass
+++ b/eclass/db.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: db.eclass
@@ -6,19 +6,23 @@
 # base-sys...@gentoo.org
 # @BLURB: Internal eclass used by sys-libs/db ebuilds
 
-inherit eutils multilib multiprocessing
+case ${EAPI} in
+   7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
+esac
 
-IUSE="doc test examples"
+if [[ -z ${_DB_ECLASS} ]]; then
+_DB_ECLASS=1
 
-EXPORT_FUNCTIONS src_test
+inherit multilib multiprocessing
 
-DEPEND="test? ( >=dev-lang/tcl-8.4 )"
+IUSE="doc tcl test examples"
+REQUIRED_USE="test? ( tcl )"
 
-RDEPEND=""
+BDEPEND="test? ( >=dev-lang/tcl-8.4 )"
 
 db_fix_so() {
-   has "${EAPI:-0}" 0 1 2 && ! use prefix && EROOT="${ROOT}"
-   LIB="${EROOT}/usr/$(get_libdir)"
+   local LIB="${EROOT}"/usr/$(get_libdir)
 
cd "${LIB}" || die
 
@@ -32,71 +36,55 @@ db_fix_so() {
# now rebuild all the correct ones
local ext
for ext in so dylib a; do
+   local name
for name in libdb libdb_{cxx,tcl,java,sql,stl}; do
-   target="$(find . -maxdepth 1 -type f -name 
"${name}-*.${ext}" |sort -V |tail -n 1)"
-   [[ -n "${target}" ]] && ln -sf ${target//.\//} 
${name}.${ext}
-   done;
-   done;
-
-   # db[23] gets some extra-special stuff
-   if [[ -f libdb1$(get_libname 2) ]]; then
-   ln -sf libdb1$(get_libname 2) libdb$(get_libname 2)
-   ln -sf libdb1$(get_libname 2) libdb1$(get_libname)
-   ln -sf libdb1$(get_libname 2) libdb-1$(get_libname)
-   fi
-   # what do we do if we ever get 3.3 ?
-   local i
-   for i in libdb libdb_{cxx,tcl,java,sql,stl}; do
-   if [[ -f $i-3.2$(get_libname) ]]; then
-   ln -sf $i-3.2$(get_libname) $i-3$(get_libname)
-   ln -sf $i-3.2$(get_libname) $i$(get_libname 3)
-   fi
+   target="$(find . -maxdepth 1 -type f -name 
"${name}-*.${ext}" | sort -V | tail -n 1)"
+   if [[ -n ${target} ]]; then
+   ln -sf ${target//.\//} ${name}.${ext} || die
+   fi
+   done
done
 
# do the same for headers now
# but since there are only two of them, just overwrite them
-   cd "${EROOT}"/usr/include
-   target="$(find . -maxdepth 1 -type d -name 'db[0-9]*' | sort -V |cut 
-d/ -f2- | tail -n1)"
-   if [[ -n "${target}" ]] && [[ -e "${target}/db.h" ]] && ( ! [[ -e db.h 
]] || [[ -h db.h ]] ); then
+   cd "${EROOT}"/usr/include || die
+   target="$(find . -maxdepth 1 -type d -name 'db[0-9]*' | sort -V | cut 
-d/ -f2- | tail -n1)"
+   if [[ -n ${target} && -e ${target}/db.h ]] && ( ! [[ -e db.h ]] || [[ 
-h db.h ]] ); then
einfo "Creating db.h symlinks to ${target}"
-   ln -sf "${target}"/db.h .
-   ln -sf "${target}"/db_185.h .
-   elif [[ ! -e "${target}/db.h" ]]; then
-   if [[ -n "${target}" ]]; then
+   ln -sf "${target}"/db.h . || die
+   ln -sf "${target}"/db_185.h . || die
+   elif [[ ! -e ${target}/db.h ]]; then
+   if [[ -n ${target} ]]; then
ewarn "Could not find ${target}/db.h"
elif [[ -h db.h ]]; then
einfo "Apparently you just removed the last instance of 
$PN. Removing the symlinks"
-   rm -f db.h db_185.h
+   rm -f db.h db_185.h || die
fi
fi
 }
 
 db_src_install_doc() {
-   has "${EAPI:-0}" 0 1 2 && ! use prefix && ED="${D}"
# not everybody wants this wad of documentation as it is primarily API 
docs
if use doc; then
dodir /usr/share/doc/${PF}/html
mv "${ED}"/usr/docs/* "${ED}"/usr/share/doc/${PF}/html/ || die
-   rm -rf "${ED}"/usr/docs
+   rm -rf "${ED}"/usr/docs || die
else
-   rm -rf "${ED}"/usr/docs
+   rm -rf "${ED}"/usr/docs || die
fi
 
d

[gentoo-dev] [PATCH 03/22] cron.eclass: remove EAPI 6

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/cron.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/cron.eclass b/eclass/cron.eclass
index ebf8ea1e824a..c185c0eaa032 100644
--- a/eclass/cron.eclass
+++ b/eclass/cron.eclass
@@ -6,7 +6,7 @@
 # maintainer-nee...@gentoo.org
 # @AUTHOR:
 # Original Author: Aaron Walker 
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Some functions for cron
 # @DESCRIPTION:
 # Purpose: The main motivation for this eclass was to simplify
@@ -18,7 +18,7 @@
 # chosen based on the most common setting among cron ebuilds.
 
 case ${EAPI} in
-   6|7|8) ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-- 
2.40.0




[gentoo-dev] [PATCH 02/22] cron.eclass: add EAPI 8

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/cron.eclass | 85 ++
 1 file changed, 41 insertions(+), 44 deletions(-)

diff --git a/eclass/cron.eclass b/eclass/cron.eclass
index 3198c181f21b..ebf8ea1e824a 100644
--- a/eclass/cron.eclass
+++ b/eclass/cron.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: cron.eclass
@@ -6,11 +6,11 @@
 # maintainer-nee...@gentoo.org
 # @AUTHOR:
 # Original Author: Aaron Walker 
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: Some functions for cron
 # @DESCRIPTION:
 # Purpose: The main motivation for this eclass was to simplify
-# the jungle known as src_install() in cron ebuilds. Using these
+# the jungle known as src_install() in cron ebuilds.  Using these
 # functions also ensures that permissions are *always* reset,
 # preventing the accidental installation of files with wrong perms.
 #
@@ -18,26 +18,23 @@
 # chosen based on the most common setting among cron ebuilds.
 
 case ${EAPI} in
-   [67]) inherit eutils ;;
-   *) die "EAPI=${EAPI:-0} is not supported" ;;
+   6|7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-inherit flag-o-matic
-
-EXPORT_FUNCTIONS pkg_postinst
-
 if [[ -z ${_CRON_ECLASS} ]]; then
 _CRON_ECLASS=1
 
-SLOT="0"
+inherit flag-o-matic
 
 RDEPEND=">=sys-process/cronbase-0.3.2"
-for pn in vixie-cron bcron cronie dcron fcron; do
-   [[ ${pn} == "${PN}" ]] || RDEPEND="${RDEPEND} !sys-process/${pn}"
+for pn in bcron cronie dcron fcron; do
+   [[ ${pn} == "${PN}" ]] || RDEPEND+=" !sys-process/${pn}"
 done
+unset pn
 
 # @FUNCTION: docrondir
-# @USAGE: [ dir ] [ perms ]
+# @USAGE: [dir] [perms]
 # @DESCRIPTION:
 # Creates crontab directory
 #
@@ -49,12 +46,13 @@ done
 # docrondir -m0700 (uses default dir)
 docrondir() {
# defaults
-   local perms="-m0750 -o 0 -g cron" dir="/var/spool/cron/crontabs"
+   local perms="-m0750 -o 0 -g cron"
+   local dir="/var/spool/cron/crontabs"
 
if [[ -n $1 ]] ; then
-   case "$1" in
+   case $1 in
*/*)
-   dir=$1
+   dir="$1"
shift
[[ -n $1 ]] && perms="$@"
;;
@@ -64,15 +62,14 @@ docrondir() {
esac
fi
 
-   diropts ${perms}
-   keepdir ${dir}
-
-   # reset perms to default
-   diropts -m0755
+   (
+   diropts ${perms}
+   keepdir ${dir}
+   )
 }
 
 # @FUNCTION: docron
-# @USAGE: [ exe ] [ perms ]
+# @USAGE: [exe] [perms]
 # @DESCRIPTION:
 # Install cron executable
 #
@@ -81,40 +78,41 @@ docrondir() {
 # ex: docron -m 0700 -o 0 -g root ('exe' defaults to "cron")
 # docron crond -m 0110
 docron() {
-   local cron="cron" perms="-m 0750 -o 0 -g wheel"
+   local cron="cron"
+   local perms="-m 0750 -o 0 -g wheel"
 
if [[ -n $1 ]] ; then
-   case "$1" in
+   case $1 in
-*)
perms="$@"
;;
 *)
-   cron=$1
+   cron="$1"
shift
[[ -n $1 ]] && perms="$@"
;;
esac
fi
 
-   exeopts ${perms}
-   exeinto /usr/sbin
-   doexe ${cron} || die "failed to install ${cron}"
-
-   # reset perms to default
-   exeopts -m0755
+   (
+   exeopts ${perms}
+   exeinto /usr/sbin
+   doexe ${cron}
+   )
 }
 
 # @FUNCTION: docrontab
-# @USAGE: [ exe ] [ perms ]
+# @USAGE: [exe] [perms]
 # @DESCRIPTION:
 # Install crontab executable
 #
 #   Uses same semantics as docron.
 docrontab() {
-   local crontab="crontab" perms="-m 4750 -o 0 -g cron"
+   local crontab="crontab"
+   local perms="-m 4750 -o 0 -g cron"
 
if [[ -n $1 ]] ; then
-   case "$1" in
+   case $1 in
-*)
perms="$@"
;;
@@ -126,15 +124,14 @@ docrontab() {
esac
fi
 
-   exeopts ${perms}
-   exeinto /usr/bin
-   doexe ${crontab} || die "failed to install ${crontab}"
-
-   # reset perms to default
-   exeopts -m0755
+   (
+   exeopts ${perms}
+   

[gentoo-dev] [PATCH 01/22] apache-module.eclass: remove EAPI 5

2023-03-14 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/apache-module.eclass | 11 +--
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/eclass/apache-module.eclass b/eclass/apache-module.eclass
index 60631171ed91..8074aff5ddcb 100644
--- a/eclass/apache-module.eclass
+++ b/eclass/apache-module.eclass
@@ -1,18 +1,17 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: apache-module.eclass
 # @MAINTAINER:
 # apache-b...@gentoo.org
-# @SUPPORTED_EAPIS: 5 6 7
+# @SUPPORTED_EAPIS: 6 7
 # @BLURB: Provides a common set of functions for apache modules
 # @DESCRIPTION:
 # This eclass handles apache modules in a sane way.
 #
 # To make use of this eclass simply call one of the need/want_apache functions
 # described in depend.apache.eclass. Make sure you use the need/want_apache 
call
-# after you have defined DEPEND and RDEPEND. Also note that you can not rely on
-# the automatic RDEPEND=DEPEND that portage does if you use this eclass.
+# after you have defined DEPEND and RDEPEND.
 #
 # See Bug 107127 for more information.
 #
@@ -46,8 +45,8 @@
 # @CODE
 
 case ${EAPI} in
-   [5-7]) ;;
-   *) die "EAPI=${EAPI:-0} is not supported" ;;
+   6|7) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
 if [[ -z ${_APACHE_MODULE_ECLASS} ]]; then
-- 
2.40.0




[gentoo-dev] Last rites: app-crypt/yubioath-desktop

2023-03-12 Thread David Seifert
# David Seifert  (2023-03-12)
# Qt-based application is EOL, Yubico has switched to a Flutter-based
# Googleware framework. Switch to app-crypt/yubioath-flutter-bin or use
# your phone for TOTP. Blocks app-crypt/yubikey-manager-4 cleanups.
# Removal on 2023-04-11.
app-crypt/yubioath-desktop



signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] Re: [gentoo-dev-announce] Last rites:

2023-01-23 Thread David Seifert
On Mon, 2023-01-23 at 18:22 +0100, Tomas Mozes wrote:
> 
> 
> On Monday, January 23, 2023, David Seifert  wrote:
> > # David Seifert  (2023-01-23)
> > # EOL branch, switch to mariadb-10.4/galera-26.4, removal on 2023-
> > 02-22.
> >  >  > 
> > 
> 
> Mariadb 10.3 will be supported until May 2023, any reason to drop it
> now?

Yes, it prevents dev-cpp/asio-1.10.8 cleanup and infra doesn't need it
anymore.



[gentoo-dev] Last rites:

2023-01-23 Thread David Seifert
# David Seifert  (2023-01-23)
# EOL branch, switch to mariadb-10.4/galera-26.4, removal on 2023-02-22.


signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: dev-cpp/pngpp

2023-01-02 Thread David Seifert
# David Seifert  (2023-01-02)
# EAPI 6, pretty much no upstream activity, outdated, last upstream
# release over 3 years ago, no revdeps. Removal on 2023-02-01.
dev-cpp/pngpp



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] [PATCH 2/2] s6.eclass: consistent style

2023-01-01 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/s6.eclass | 42 --
 1 file changed, 20 insertions(+), 22 deletions(-)

diff --git a/eclass/s6.eclass b/eclass/s6.eclass
index f4d7ebf2c31..56b321f178f 100644
--- a/eclass/s6.eclass
+++ b/eclass/s6.eclass
@@ -42,7 +42,7 @@ _s6_get_servicedir() {
 # @DESCRIPTION:
 # Output the path for the s6 service directory (not including ${D}).
 s6_get_servicedir() {
-   debug-print-function ${FUNCNAME} "${@}"
+   debug-print-function ${FUNCNAME} "$@"
 
echo "${EPREFIX}$(_s6_get_servicedir)"
 }
@@ -55,22 +55,22 @@ s6_get_servicedir() {
 # run is the run script for the service.
 # finish is the optional finish script for the service.
 s6_install_service() {
-   debug-print-function ${FUNCNAME} "${@}"
+   debug-print-function ${FUNCNAME} "$@"
 
local name="$1"
local run="$2"
local finish="$3"
 
-   [[ $name ]] ||
+   [[ -z ${name} ]] &&
die "${ECLASS}.eclass: you must specify the s6 service name"
-   [[ $run ]] ||
+   [[ -z ${run} ]] &&
die "${ECLASS}.eclass: you must specify the s6 service run 
script"
 
(
-   local servicepath="$(_s6_get_servicedir)/$name"
-   exeinto "$servicepath"
-   newexe "$run" run
-   [[ $finish ]] && newexe "$finish" finish
+   local servicepath="$(_s6_get_servicedir)/${name}"
+   exeinto "${servicepath}"
+   newexe "${run}" run
+   [[ -n ${finish} ]] && newexe "${finish}" finish
)
 }
 
@@ -81,18 +81,17 @@ s6_install_service() {
 # default.
 # servicename is the name of the service.
 s6_service_down() {
-   debug-print-function ${FUNCNAME} "${@}"
+   debug-print-function ${FUNCNAME} "$@"
 
local name="$1"
-
-   [[ $name ]] ||
+   [[ -z ${name} ]] &&
die "${ECLASS}.eclass: you must specify the s6 service name"
 
(
-   touch "$T"/down || die
-   local servicepath="$(_s6_get_servicedir)/$name"
-   insinto "$servicepath"
-   doins "$T"/down
+   touch "${T}"/down || die
+   local servicepath="$(_s6_get_servicedir)/${name}"
+   insinto "${servicepath}"
+   doins "${T}"/down
)
 }
 
@@ -103,17 +102,16 @@ s6_service_down() {
 # leader.
 # servicename is the name of the service.
 s6_service_nosetsid() {
-   debug-print-function ${FUNCNAME} "${@}"
+   debug-print-function ${FUNCNAME} "$@"
 
local name="$1"
-
-   [[ $name ]] ||
+   [[ -z ${name} ]] &&
die "${ECLASS}.eclass: you must specify the s6 service name"
 
(
-   touch "$T"/nosetsid || die
-   local servicepath="$(_s6_get_servicedir)/$name"
-   insinto "$servicepath"
-   doins "$T"/nosetsid
+   touch "${T}"/nosetsid || die
+   local servicepath="$(_s6_get_servicedir)/${name}"
+   insinto "${servicepath}"
+   doins "${T}"/nosetsid
)
 }
-- 
2.39.0




[gentoo-dev] [PATCH 1/2] s6.eclass: drop EAPI 5, 6 and 7 support

2023-01-01 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/s6.eclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/eclass/s6.eclass b/eclass/s6.eclass
index 25960ba4a1d..f4d7ebf2c31 100644
--- a/eclass/s6.eclass
+++ b/eclass/s6.eclass
@@ -1,10 +1,10 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: s6.eclass
 # @MAINTAINER:
 # William Hubbs 
-# @SUPPORTED_EAPIS: 5 6 7 8
+# @SUPPORTED_EAPIS: 8
 # @BLURB: helper functions to install s6 services
 # @DESCRIPTION:
 # This eclass provides helpers to install s6 services.
@@ -26,7 +26,7 @@
 # @CODE
 
 case ${EAPI} in
-   5|6|7|8) ;;
+   8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-- 
2.39.0




[gentoo-dev] [PATCH 2/2] vala.eclass: drop eutils/multilib inherit

2023-01-01 Thread David Seifert
* Both eclasses are not used by vala.eclass.
* Any ebuilds relying on the transitive inherit should be fixed instead.

Signed-off-by: David Seifert 
---
 eclass/vala.eclass | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/eclass/vala.eclass b/eclass/vala.eclass
index 22407197042..20bf00ebd8b 100644
--- a/eclass/vala.eclass
+++ b/eclass/vala.eclass
@@ -15,8 +15,7 @@
 # executables, pkgconfig files, etc., which Gentoo does not provide.
 
 case ${EAPI} in
-   7) inherit eutils multilib ;;
-   8) ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-- 
2.39.0




[gentoo-dev] [PATCH 1/2] vala.eclass: drop EAPI 6 support

2023-01-01 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/vala.eclass | 18 +++---
 1 file changed, 7 insertions(+), 11 deletions(-)

diff --git a/eclass/vala.eclass b/eclass/vala.eclass
index acdf958191e..22407197042 100644
--- a/eclass/vala.eclass
+++ b/eclass/vala.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: vala.eclass
@@ -6,7 +6,7 @@
 # gn...@gentoo.org
 # @AUTHOR:
 # Alexandre Rostovtsev 
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Sets up the environment for using a specific version of vala.
 # @DESCRIPTION:
 # This eclass sets up commonly used environment variables for using a specific
@@ -15,7 +15,7 @@
 # executables, pkgconfig files, etc., which Gentoo does not provide.
 
 case ${EAPI} in
-   6|7) inherit eutils multilib ;;
+   7) inherit eutils multilib ;;
8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
@@ -99,13 +99,11 @@ vala_depend() {
 # VALA_MAX_API_VERSION, VALA_MIN_API_VERSION, and VALA_USE_DEPEND.
 vala_best_api_version() {
local u v
-   local hv_opt="-b"
-   [[ ${EAPI} == 6 ]] && hv_opt=""
 
u=$(_vala_use_depend)
 
for v in $(vala_api_versions); do
-   has_version ${hv_opt} "dev-lang/vala:${v}${u}" && echo "${v}" 
&& return
+   has_version -b "dev-lang/vala:${v}${u}" && echo "${v}" && return
done
 }
 
@@ -121,8 +119,6 @@ vala_best_api_version() {
 # version is not available.
 vala_setup() {
local p d valafoo version ignore_use
-   local hv_opt="-b"
-   [[ ${EAPI} == 6 ]] && hv_opt=""
 
while [[ $1 ]]; do
case $1 in
@@ -141,7 +137,7 @@ vala_setup() {
fi
 
if [[ ${version} ]]; then
-   has_version ${hv_opt} "dev-lang/vala:${version}" || die "No 
installed vala:${version}"
+   has_version -b "dev-lang/vala:${version}" || die "No installed 
vala:${version}"
else
version=$(vala_best_api_version)
[[ ${version} ]] || die "No installed vala in $(vala_depend)"
@@ -178,8 +174,8 @@ vala_setup() {
 
 # @FUNCTION: vala_src_prepare
 # @DESCRIPTION:
-# For backwards compatibility in EAPIs 6 and 7.  Calls vala_setup.
-if [[ ${EAPI} == [67] ]]; then
+# For backwards compatibility in EAPI 7.  Calls vala_setup.
+if [[ ${EAPI} == 7 ]]; then
vala_src_prepare() { vala_setup "$@"; }
 fi
 
-- 
2.39.0




[gentoo-dev] Last rites: sci-biology/consed, sci-biology/phrap, sci-biology/phred

2022-12-26 Thread David Seifert
# David Seifert  (2022-12-26)
# Lots of K C, hidden behind an annoying authwall, fails with modern
# GCC and Clang (-fcommon), license prohibits distributing, EAPI 6,
# last release 8 years ago. Removal on 2023-01-25.
sci-biology/consed
sci-biology/phrap
sci-biology/phred



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Last rites: sci-misc/flashdot

2022-12-26 Thread David Seifert
# David Seifert  (2022-12-26)
# EAPI 6, cheesy build system, last release over 13 years ago, no other
# distro packages this. Removal on 2023-01-25.
sci-misc/flashdot



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] [PATCH 41/41] xorg-3.eclass: remove useless || die on emake

2022-12-25 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/xorg-3.eclass | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/xorg-3.eclass b/eclass/xorg-3.eclass
index 0d35c0a8ebf..a63655e10ec 100644
--- a/eclass/xorg-3.eclass
+++ b/eclass/xorg-3.eclass
@@ -415,7 +415,7 @@ xorg-3_src_configure() {
 }
 
 multilib_src_compile() {
-   emake "$@" || die 'emake failed'
+   emake "$@"
 }
 
 # @FUNCTION: xorg-3_src_compile
@@ -427,12 +427,12 @@ xorg-3_src_compile() {
if [[ ${XORG_MULTILIB} == yes ]]; then
multilib-minimal_src_compile "$@"
else
-   emake "$@" || die 'emake failed'
+   emake "$@"
fi
 }
 
 multilib_src_install() {
-   emake DESTDIR="${D}" "${install_args[@]}" "$@" install || die "emake 
install failed"
+   emake DESTDIR="${D}" "${install_args[@]}" "$@" install
 }
 
 # @FUNCTION: xorg-3_src_install
@@ -446,7 +446,7 @@ xorg-3_src_install() {
if [[ ${XORG_MULTILIB} == yes ]]; then
multilib-minimal_src_install "$@"
else
-   emake DESTDIR="${D}" "${install_args[@]}" "$@" install || die 
"emake install failed"
+   emake DESTDIR="${D}" "${install_args[@]}" "$@" install
einstalldocs
fi
 
-- 
2.39.0




[gentoo-dev] [PATCH 40/41] qmail.eclass: remove useless || die on emake

2022-12-25 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/qmail.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/qmail.eclass b/eclass/qmail.eclass
index ed53bca56fa..67069087376 100644
--- a/eclass/qmail.eclass
+++ b/eclass/qmail.eclass
@@ -121,12 +121,12 @@ qmail_src_postunpack() {
 
 qmail_src_compile() {
cd "${S}"
-   emake it man "$@" || die "make failed"
+   emake it man "$@"
 }
 
 qmail_spp_src_compile() {
cd "${GENQMAIL_S}"/spp/
-   emake || die "make spp failed"
+   emake
 }
 
 qmail_base_install() {
-- 
2.39.0




[gentoo-dev] [PATCH 39/41] gnustep-base.eclass: remove useless || die on emake

2022-12-25 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/gnustep-base.eclass | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/gnustep-base.eclass b/eclass/gnustep-base.eclass
index 5e839bd0702..f967a527282 100644
--- a/eclass/gnustep-base.eclass
+++ b/eclass/gnustep-base.eclass
@@ -172,7 +172,7 @@ egnustep_env() {
 # Make utilizing GNUstep Makefiles
 egnustep_make() {
if [[ -f ./Makefile || -f ./makefile || -f ./GNUmakefile ]] ; then
-   emake ${*} "${GS_ENV[@]}" all || die "package make failed"
+   emake ${*} "${GS_ENV[@]}" all
return 0
fi
die "no Makefile found"
@@ -185,7 +185,7 @@ egnustep_install() {
mkdir -p "${D}"${GNUSTEP_SYSTEM_TOOLS}
fi
if [[ -f ./[mM]akefile || -f ./GNUmakefile ]] ; then
-   emake ${*} "${GS_ENV[@]}" install || die "package install 
failed"
+   emake ${*} "${GS_ENV[@]}" install
return 0
fi
die "no Makefile found"
@@ -197,8 +197,8 @@ egnustep_doc() {
# Check documentation presence
pushd "${S}"/Documentation || die
if [[ -f ./[mM]akefile || -f ./GNUmakefile ]] ; then
-   emake "${GS_ENV[@]}" all || die "doc make failed"
-   emake "${GS_ENV[@]}" install || die "doc install failed"
+   emake "${GS_ENV[@]}" all
+   emake "${GS_ENV[@]}" install
fi
popd || die
fi
-- 
2.39.0




[gentoo-dev] [PATCH 38/41] gnome2.eclass: remove useless || die on emake

2022-12-25 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/gnome2.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/gnome2.eclass b/eclass/gnome2.eclass
index e80a517ee0d..a701b58fd9e 100644
--- a/eclass/gnome2.eclass
+++ b/eclass/gnome2.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: gnome2.eclass
@@ -235,7 +235,7 @@ gnome2_src_install() {
# create bogus directories in /var/lib/
if has ${EAPI} 5; then
dodir "${sk_tmp_dir}" || die "dodir failed"
-   emake DESTDIR="${D}" 
"scrollkeeper_localstate_dir=${ED}${sk_tmp_dir} " "$@" install || die "install 
failed"
+   emake DESTDIR="${D}" 
"scrollkeeper_localstate_dir=${ED}${sk_tmp_dir} " "$@" install
else
default
fi
-- 
2.39.0




[gentoo-dev] [PATCH 37/41] xemacs-packages.eclass: drop EAPI 6, 7 support

2022-12-25 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/xemacs-packages.eclass | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/xemacs-packages.eclass b/eclass/xemacs-packages.eclass
index 91621f5f52d..648f5146f47 100644
--- a/eclass/xemacs-packages.eclass
+++ b/eclass/xemacs-packages.eclass
@@ -4,7 +4,7 @@
 # @ECLASS: xemacs-packages.eclass
 # @MAINTAINER:
 # xem...@gentoo.org
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 8
 # @BLURB: Eclass to support elisp packages distributed by XEmacs.
 # @DESCRIPTION:
 # This eclass supports ebuilds for packages distributed by XEmacs.
@@ -25,12 +25,10 @@
 # they may not be well-tested.
 
 case ${EAPI} in
-   6|7|8) ;;
+   8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-EXPORT_FUNCTIONS src_unpack src_install
-
 if [[ -z ${_XEMACS_PACKAGES_ECLASS} ]] ; then
 _XEMACS_PACKAGES_ECLASS=1
 
@@ -65,3 +63,5 @@ xemacs-packages_src_install() {
 }
 
 fi
+
+EXPORT_FUNCTIONS src_unpack src_install
-- 
2.39.0




[gentoo-dev] [PATCH 36/41] waf-utils.eclass: drop EAPI 6 support

2022-12-25 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/waf-utils.eclass | 19 +--
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/eclass/waf-utils.eclass b/eclass/waf-utils.eclass
index 2f4a20cd457..1be02bbea3c 100644
--- a/eclass/waf-utils.eclass
+++ b/eclass/waf-utils.eclass
@@ -8,20 +8,23 @@
 # Original Author: Gilles Dartiguelongue 
 # Various improvements based on cmake-utils.eclass: Tomáš Chvátal 

 # Proper prefix support: Jonathan Callen 
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: common ebuild functions for waf-based packages
 # @DESCRIPTION:
 # The waf-utils eclass contains functions that make creating ebuild for
 # waf-based packages much easier.
 # Its main features are support of common portage default settings.
 
-inherit multilib toolchain-funcs multiprocessing
-
-case ${EAPI:-0} in
-   6|7|8) EXPORT_FUNCTIONS src_configure src_compile src_install ;;
-   *) die "EAPI=${EAPI} is not supported" ;;
+case ${EAPI} in
+   7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
+if [[ ! ${_WAF_UTILS_ECLASS} ]]; then
+_WAF_UTILS_ECLASS=1
+
+inherit multilib toolchain-funcs multiprocessing
+
 # @ECLASS_VARIABLE: WAF_VERBOSE
 # @USER_VARIABLE
 # @DESCRIPTION:
@@ -141,3 +144,7 @@ waf-utils_src_install() {
# Manual document installation
einstalldocs
 }
+
+fi
+
+EXPORT_FUNCTIONS src_configure src_compile src_install
-- 
2.39.0




[gentoo-dev] [PATCH 35/41] usr-ldscript.eclass: drop EAPI 6 support

2022-12-25 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/usr-ldscript.eclass | 38 --
 1 file changed, 20 insertions(+), 18 deletions(-)

diff --git a/eclass/usr-ldscript.eclass b/eclass/usr-ldscript.eclass
index c821abd6084..b73d538ae5b 100644
--- a/eclass/usr-ldscript.eclass
+++ b/eclass/usr-ldscript.eclass
@@ -4,11 +4,11 @@
 # @ECLASS: usr-ldscript.eclass
 # @MAINTAINER:
 # Toolchain Ninjas 
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Defines the gen_usr_ldscript function.
 
 case ${EAPI} in
-   6|7|8) ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
@@ -84,27 +84,27 @@ gen_usr_ldscript() {
# Ensure /lib/${lib} exists to avoid dangling 
scripts/symlinks.
# This especially is for AIX where $(get_libname) can 
return ".a",
# so /lib/${lib} might be moved to /usr/lib/${lib} (by 
accident).
-   [[ -r ${ED%/}/${libdir}/${lib} ]] || continue
+   [[ -r ${ED}/${libdir}/${lib} ]] || continue
#TODO: better die here?
fi
 
case ${CTARGET:-${CHOST}} in
*-darwin*)
if ${auto} ; then
-   tlib=$(scanmacho -qF'%S#F' 
"${ED%/}"/usr/${libdir}/${lib})
+   tlib=$(scanmacho -qF'%S#F' 
"${ED}"/usr/${libdir}/${lib})
else
-   tlib=$(scanmacho -qF'%S#F' 
"${ED%/}"/${libdir}/${lib})
+   tlib=$(scanmacho -qF'%S#F' 
"${ED}"/${libdir}/${lib})
fi
[[ -z ${tlib} ]] && die "unable to read install_name 
from ${lib}"
tlib=${tlib##*/}
 
if ${auto} ; then
-   mv 
"${ED%/}"/usr/${libdir}/${lib%${suffix}}.*${suffix#.} "${ED%/}"/${libdir}/ || 
die
+   mv 
"${ED}"/usr/${libdir}/${lib%${suffix}}.*${suffix#.} "${ED}"/${libdir}/ || die
# some install_names are funky: they encode a 
version
if [[ ${tlib} != ${lib%${suffix}}.*${suffix#.} 
]] ; then
-   mv 
"${ED%/}"/usr/${libdir}/${tlib%${suffix}}.*${suffix#.} "${ED%/}"/${libdir}/ || 
die
+   mv 
"${ED}"/usr/${libdir}/${tlib%${suffix}}.*${suffix#.} "${ED}"/${libdir}/ || die
fi
-   rm -f "${ED%/}"/${libdir}/${lib}
+   rm -f "${ED}"/${libdir}/${lib}
fi
 
# Mach-O files have an id, which is like a soname, it 
tells how
@@ -114,34 +114,36 @@ gen_usr_ldscript() {
# libdir=/lib because that messes up libtool files.
# Make sure we don't lose the specific version, so just 
modify the
# existing install_name
-   if [[ ! -w "${ED%/}/${libdir}/${tlib}" ]] ; then
-   chmod u+w "${ED%/}/${libdir}/${tlib}" # needed 
to write to it
+   if [[ ! -w "${ED}/${libdir}/${tlib}" ]] ; then
+   chmod u+w "${ED}/${libdir}/${tlib}" || die # 
needed to write to it
local nowrite=yes
fi
install_name_tool \
-id "${EPREFIX}"/${libdir}/${tlib} \
-   "${ED%/}"/${libdir}/${tlib} || die 
"install_name_tool failed"
-   [[ -n ${nowrite} ]] && chmod u-w 
"${ED%/}/${libdir}/${tlib}"
+   "${ED}"/${libdir}/${tlib} || die 
"install_name_tool failed"
+   if [[ -n ${nowrite} ]] ; then
+   chmod u-w "${ED}/${libdir}/${tlib}" || die
+   fi
# Now as we don't use GNU binutils and our linker 
doesn't
# understand linker scripts, just create a symlink.
-   pushd "${ED%/}/usr/${libdir}" > /dev/null
+   pushd "${ED}/usr/${libdir}" > /dev/null
ln -snf "../../${libdir}/${tlib}" "${lib}"
popd > /dev/null
;;
*)
if ${auto} ; then
-   tlib=$(scanelf -qF'%S#F' 
"${ED%/}"/usr/${libdir}/${lib})
+

[gentoo-dev] [PATCH 34/41] user-info.eclass: drop EAPI 6 support

2022-12-25 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/user-info.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/user-info.eclass b/eclass/user-info.eclass
index 5550e4f08ee..b18f280c102 100644
--- a/eclass/user-info.eclass
+++ b/eclass/user-info.eclass
@@ -5,11 +5,11 @@
 # @MAINTAINER:
 # base-sys...@gentoo.org (Linux)
 # Michał Górny  (NetBSD)
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Read-only access to user and group information
 
 case ${EAPI} in
-   6|7|8) ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-- 
2.39.0




[gentoo-dev] [PATCH 33/41] toolchain-autoconf.eclass: drop EAPI 6, add EAPI 8 support

2022-12-25 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/toolchain-autoconf.eclass | 22 --
 1 file changed, 8 insertions(+), 14 deletions(-)

diff --git a/eclass/toolchain-autoconf.eclass b/eclass/toolchain-autoconf.eclass
index 2c8184f894c..2ba27638468 100644
--- a/eclass/toolchain-autoconf.eclass
+++ b/eclass/toolchain-autoconf.eclass
@@ -1,29 +1,22 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: toolchain-autoconf.eclass
 # @MAINTAINER:
 # 
-# @SUPPORTED_EAPIS: 6 7
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Common code for sys-devel/autoconf ebuilds
 # @DESCRIPTION:
 # This eclass contains the common phase functions migrated from
 # sys-devel/autoconf eblits.
 
-case ${EAPI:-0} in
-   [0-5])
-   die "${ECLASS} is banned in EAPI ${EAPI:-0}"
-   ;;
-   [6-7])
-   ;;
-   *)
-   die "Unknown EAPI ${EAPI:-0}"
-   ;;
+case ${EAPI} in
+   7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
 if [[ -z ${_TOOLCHAIN_AUTOCONF_ECLASS} ]]; then
-
-EXPORT_FUNCTIONS src_prepare src_configure src_install
+_TOOLCHAIN_AUTOCONF_ECLASS=1
 
 toolchain-autoconf_src_prepare() {
find -name Makefile.in -exec sed -i '/^pkgdatadir/s:$:-@VERSION@:' {} + 
|| die
@@ -75,5 +68,6 @@ toolchain-autoconf_src_install() {
slot_info_pages
 }
 
-_TOOLCHAIN_AUTOCONF_ECLASS=1
 fi
+
+EXPORT_FUNCTIONS src_prepare src_configure src_install
-- 
2.39.0




  1   2   3   4   5   6   >