[gentoo-dev] [PATCH] profiles/targets/desktop: disable USE=xvid by default

2022-01-11 Thread Georgy Yakovlev
it's an ancient codec that is barely used nowadays
so let's disable it by default.
Users are free to re-enable if required.

Bug: https://bugs.gentoo.org/831044
Signed-off-by: Georgy Yakovlev 
---
 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 d7eab4cd0587..34470e021ca0 100644
--- a/profiles/targets/desktop/make.defaults
+++ b/profiles/targets/desktop/make.defaults
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 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 emboss 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 spell 
startup-notification svg tiff truetype vorbis udev udisks unicode upower usb 
wxwidgets X xcb x264 xml xv xvid"
+USE="a52 aac acpi alsa bluetooth branding cairo cdda cdr cups dbus dri dts dvd 
dvdr elogind emboss 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 spell 
startup-notification svg tiff truetype vorbis udev udisks unicode upower usb 
wxwidgets X xcb x264 xml xv"
-- 
2.34.1




[gentoo-dev] [PATCH v2 5/5] multibuild.eclass: remove EAPI 4 and 5

2022-01-11 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/multibuild.eclass | 42 +++-
 1 file changed, 7 insertions(+), 35 deletions(-)

diff --git a/eclass/multibuild.eclass b/eclass/multibuild.eclass
index 4699ebc43fb..039041af694 100644
--- a/eclass/multibuild.eclass
+++ b/eclass/multibuild.eclass
@@ -6,25 +6,20 @@
 # Michał Górny 
 # @AUTHOR:
 # Author: Michał Górny 
-# @SUPPORTED_EAPIS: 4 5 6 7 8
+# @SUPPORTED_EAPIS: 6 7 8
 # @BLURB: A generic eclass for building multiple variants of packages.
 # @DESCRIPTION:
 # The multibuild eclass aims to provide a generic framework for building
 # multiple 'variants' of a package (e.g. multilib, Python
 # implementations).
 
-case "${EAPI:-0}" in
-   [0-3])
-   die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}"
-   ;;
-   [4-8])
-   ;;
-   *)
-   die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
-   ;;
+case ${EAPI:-0} in
+   6|7|8) ;;
+   *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ ! ${_MULTIBUILD} ]]; then
+if [[ ! ${_MULTIBUILD_ECLASS} ]]; then
+_MULTIBUILD_ECLASS=1
 
 # @ECLASS-VARIABLE: MULTIBUILD_VARIANTS
 # @REQUIRED
@@ -137,25 +132,6 @@ multibuild_foreach_variant() {
return ${ret}
 }
 
-# @FUNCTION: multibuild_parallel_foreach_variant
-# @USAGE: [...]
-# @DESCRIPTION:
-# Run the passed command repeatedly for each of the enabled package
-# variants. This used to run the commands in parallel but now it's
-# just a deprecated alias to multibuild_foreach_variant.
-#
-# The function returns 0 if all commands return 0, or the first non-zero
-# exit status otherwise. However, it performs all the invocations
-# nevertheless. It is preferred to call 'die' inside of the passed
-# function.
-multibuild_parallel_foreach_variant() {
-   debug-print-function ${FUNCNAME} "${@}"
-
-   [[ ${EAPI} == [45] ]] || die "${FUNCNAME} is banned in EAPI ${EAPI}"
-
-   multibuild_foreach_variant "${@}"
-}
-
 # @FUNCTION: multibuild_for_best_variant
 # @USAGE: [...]
 # @DESCRIPTION:
@@ -172,10 +148,7 @@ multibuild_for_best_variant() {
[[ ${MULTIBUILD_VARIANTS} ]] \
|| die "MULTIBUILD_VARIANTS need to be set"
 
-   # bash-4.1 can't handle negative subscripts
-   local MULTIBUILD_VARIANTS=(
-   "${MULTIBUILD_VARIANTS[$(( ${#MULTIBUILD_VARIANTS[@]} - 1 ))]}"
-   )
+   local MULTIBUILD_VARIANTS=( "${MULTIBUILD_VARIANTS[-1]}" )
multibuild_foreach_variant "${@}"
 }
 
@@ -239,5 +212,4 @@ multibuild_merge_root() {
rm -rf "${src}" || die
 }
 
-_MULTIBUILD=1
 fi
-- 
2.34.1




[gentoo-dev] [PATCH v2 4/5] multibuild.eclass: inline cp_args

2022-01-11 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/multibuild.eclass | 36 +++-
 1 file changed, 7 insertions(+), 29 deletions(-)

diff --git a/eclass/multibuild.eclass b/eclass/multibuild.eclass
index cbd48b1eeb6..4699ebc43fb 100644
--- a/eclass/multibuild.eclass
+++ b/eclass/multibuild.eclass
@@ -192,15 +192,10 @@ multibuild_copy_sources() {
 
einfo "Will copy sources from ${_MULTIBUILD_INITIAL_BUILD_DIR}"
 
-   local cp_args=()
-   if cp --reflink=auto --version &>/dev/null; then
-   # enable reflinking if possible to make this faster
-   cp_args+=( --reflink=auto )
-   fi
-
_multibuild_create_source_copy() {
einfo "${MULTIBUILD_VARIANT}: copying to ${BUILD_DIR}"
-   cp -p -R "${cp_args[@]}" \
+   # enable reflinking if possible to make this faster
+   cp -p -R --reflink=auto \
"${_MULTIBUILD_INITIAL_BUILD_DIR}" "${BUILD_DIR}" || die
}
 
@@ -234,31 +229,14 @@ run_in_build_dir() {
 # (the real root). Both directories have to be real, absolute paths
 # (i.e. including ${D}). Source root will be removed.
 multibuild_merge_root() {
+   debug-print-function ${FUNCNAME} "${@}"
+
local src=${1}
local dest=${2}
 
-   local ret
-   local cp_args=()
-
-   if cp -a --version &>/dev/null; then
-   cp_args+=( -a )
-   else
-   cp_args+=( -P -R -p )
-   fi
-
-   if cp --reflink=auto --version &>/dev/null; then
-   # enable reflinking if possible to make this faster
-   cp_args+=( --reflink=auto )
-   fi
-
-   cp "${cp_args[@]}" "${src}"/. "${dest}"/
-   ret=${?}
-
-   if [[ ${ret} -ne 0 ]]; then
-   die "${MULTIBUILD_VARIANT:-(unknown)}: merging image failed."
-   fi
-
-   rm -rf "${src}"
+   # enable reflinking if possible to make this faster
+   cp -a --reflink=auto "${src}"/. "${dest}"/ || die 
"${MULTIBUILD_VARIANT:-(unknown)}: merging image failed"
+   rm -rf "${src}" || die
 }
 
 _MULTIBUILD=1
-- 
2.34.1




[gentoo-dev] [PATCH v2 3/5] multibuild.eclass: remove dead userland_BSD

2022-01-11 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/multibuild.eclass | 35 ---
 1 file changed, 12 insertions(+), 23 deletions(-)

diff --git a/eclass/multibuild.eclass b/eclass/multibuild.eclass
index 37568ebf87c..cbd48b1eeb6 100644
--- a/eclass/multibuild.eclass
+++ b/eclass/multibuild.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: multibuild.eclass
@@ -238,33 +238,22 @@ multibuild_merge_root() {
local dest=${2}
 
local ret
+   local cp_args=()
 
-   if use userland_BSD; then
-   # Most of BSD variants fail to copy broken symlinks, #447370
-   # also, they do not support --version
-
-   tar -C "${src}" -f - -c . \
-   | tar -x -f - -C "${dest}"
-   [[ ${PIPESTATUS[*]} == '0 0' ]]
-   ret=${?}
+   if cp -a --version &>/dev/null; then
+   cp_args+=( -a )
else
-   local cp_args=()
-
-   if cp -a --version &>/dev/null; then
-   cp_args+=( -a )
-   else
-   cp_args+=( -P -R -p )
-   fi
-
-   if cp --reflink=auto --version &>/dev/null; then
-   # enable reflinking if possible to make this faster
-   cp_args+=( --reflink=auto )
-   fi
+   cp_args+=( -P -R -p )
+   fi
 
-   cp "${cp_args[@]}" "${src}"/. "${dest}"/
-   ret=${?}
+   if cp --reflink=auto --version &>/dev/null; then
+   # enable reflinking if possible to make this faster
+   cp_args+=( --reflink=auto )
fi
 
+   cp "${cp_args[@]}" "${src}"/. "${dest}"/
+   ret=${?}
+
if [[ ${ret} -ne 0 ]]; then
die "${MULTIBUILD_VARIANT:-(unknown)}: merging image failed."
fi
-- 
2.34.1




[gentoo-dev] [PATCH v2 2/5] multilib-build.eclass: remove EAPI 5

2022-01-11 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/multilib-build.eclass | 44 +---
 1 file changed, 6 insertions(+), 38 deletions(-)

diff --git a/eclass/multilib-build.eclass b/eclass/multilib-build.eclass
index 17cd7da0d18..a4121ad42f1 100644
--- a/eclass/multilib-build.eclass
+++ b/eclass/multilib-build.eclass
@@ -1,4 +1,4 @@
-# Copyright 2013-2021 Gentoo Authors
+# Copyright 2013-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: multilib-build.eclass
@@ -6,7 +6,7 @@
 # Michał Górny 
 # @AUTHOR:
 # Author: Michał Górny 
-# @SUPPORTED_EAPIS: 5 6 7 8
+# @SUPPORTED_EAPIS: 6 7 8
 # @PROVIDES: multibuild
 # @BLURB: flags and utility functions for building multilib packages
 # @DESCRIPTION:
@@ -18,15 +18,14 @@
 # dependencies shall use the USE dependency string in ${MULTILIB_USEDEP}
 # to properly request multilib enabled.
 
-case ${EAPI} in
-   5|6|7|8) ;;
+case ${EAPI:-0} in
+   6|7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-if [[ -z ${_MULTILIB_BUILD} ]]; then
-_MULTILIB_BUILD=1
+if [[ -z ${_MULTILIB_BUILD_ECLASS} ]]; then
+_MULTILIB_BUILD_ECLASS=1
 
-[[ ${EAPI} == 5 ]] && inherit eutils
 inherit multibuild multilib
 
 # @ECLASS-VARIABLE: _MULTILIB_FLAGS
@@ -244,23 +243,6 @@ multilib_parallel_foreach_abi() {
multibuild_foreach_variant _multilib_multibuild_wrapper "${@}"
 }
 
-# @FUNCTION: multilib_for_best_abi
-# @USAGE: ...
-# @DESCRIPTION:
-# Runs the given command with setup for the 'best' (usually native) ABI.
-multilib_for_best_abi() {
-   debug-print-function ${FUNCNAME} "${@}"
-
-   [[ ${EAPI} == 5 ]] || die "${FUNCNAME} is banned in EAPI ${EAPI}, use 
multilib_is_native_abi() instead"
-
-   eqawarn "QA warning: multilib_for_best_abi() function is deprecated and 
should"
-   eqawarn "not be used. The multilib_is_native_abi() check may be used 
instead."
-
-   local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abi_pairs) )
-
-   multibuild_for_best_variant _multilib_multibuild_wrapper "${@}"
-}
-
 # @FUNCTION: multilib_check_headers
 # @DESCRIPTION:
 # Check whether the header files are consistent between ABIs.
@@ -583,20 +565,6 @@ multilib_is_native_abi() {
[[ ${COMPLETE_MULTILIB} == yes || ${ABI} == ${DEFAULT_ABI} ]]
 }
 
-# @FUNCTION: multilib_build_binaries
-# @DESCRIPTION:
-# Deprecated synonym for multilib_is_native_abi
-multilib_build_binaries() {
-   debug-print-function ${FUNCNAME} "${@}"
-
-   [[ ${EAPI} == 5 ]] || die "${FUNCNAME} is banned in EAPI ${EAPI}, use 
multilib_is_native_abi() instead"
-
-   eqawarn "QA warning: multilib_build_binaries is deprecated. Please use 
the equivalent"
-   eqawarn "multilib_is_native_abi function instead."
-
-   multilib_is_native_abi "${@}"
-}
-
 # @FUNCTION: multilib_native_use_with
 # @USAGE:  [ []]
 # @DESCRIPTION:
-- 
2.34.1




[gentoo-dev] [PATCH v2 1/5] multilib-minimal.eclass: remove EAPI 5

2022-01-11 Thread David Seifert
Signed-off-by: David Seifert 
---
 eclass/multilib-minimal.eclass | 19 ++-
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/eclass/multilib-minimal.eclass b/eclass/multilib-minimal.eclass
index 9a1efe2cc46..97c8d618c42 100644
--- a/eclass/multilib-minimal.eclass
+++ b/eclass/multilib-minimal.eclass
@@ -1,10 +1,10 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: multilib-minimal.eclass
 # @MAINTAINER:
 # Michał Górny 
-# @SUPPORTED_EAPIS: 5 6 7 8
+# @SUPPORTED_EAPIS: 6 7 8
 # @PROVIDES: multilib-build
 # @BLURB: wrapper for multilib builds providing convenient multilib_src_* 
functions
 # @DESCRIPTION:
@@ -23,18 +23,15 @@
 #
 # If you need generic install rules, use multilib_src_install_all function.
 
-
-case ${EAPI} in
-   5|6|7|8) ;;
+case ${EAPI:-0} in
+   6|7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
-
-[[ ${EAPI} == 5 ]] && inherit eutils
 inherit multilib-build
 
-EXPORT_FUNCTIONS src_configure src_compile src_test src_install
-
+if [[ ! ${_MULTILIB_MINIMAL_ECLASS} ]]; then
+_MULTILIB_MINIMAL_ECLASS=1
 
 multilib-minimal_src_configure() {
debug-print-function ${FUNCNAME} "$@"
@@ -123,3 +120,7 @@ multilib-minimal_src_install() {
einstalldocs
fi
 }
+
+fi
+
+EXPORT_FUNCTIONS src_configure src_compile src_test src_install
-- 
2.34.1




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

2022-01-11 Thread Jakov Smolić
# Jakov Smolić  (2022-01-11)
# Outdated java package, uses EAPI 5, no other distro
# is packaging this.
# Removal on 2022-02-10. Bug #826810.
net-analyzer/jmx2munin
-- 
Jakov



OpenPGP_signature
Description: OpenPGP digital signature


Re: [gentoo-dev] Looking for a solution to the distutils/setuptools .egg-info mess

2022-01-11 Thread Michał Górny
On Tue, 2022-01-11 at 19:23 +0100, Andreas K. Huettel wrote:
> > 
> > TL;DR: how to deal with setuptools (and newer distutils vendored by
> > setuptools) replacing .egg-info files with directories?
> 
> > I should probably emphasize here that the .egg-info path contains
> > the package version, so this is a problem only if the same upstream
> > version is being reinstalled.
> > 
> > You can easily reproduce the problem by playing with:
> > 
> >   SETUPTOOLS_USE_DISTUTILS=stdlib
> >   SETUPTOOLS_USE_DISTUTILS=local  # vendored
> 
> > 2. We could control the distutils version in ebuilds directly,
> > i.e. force "stdlib" for the current versions and have developers
> > switch
> > to "local" on version bumps.  Combined with 1., this will probably
> > increase the coverage a bit but dead packages will remain in the
> > way. 
> > It also relies on all devs understanding the problem.
> 
> How about switching it with a new Python version?
> (since that is also in the path...)
> 

I'm afraid upstream is likely to drop support for stdlib distutils
before we manage to deprecate all the old versions... or even before
3.11 comes out.

-- 
Best regards,
Michał Górny




Re: [gentoo-dev] Looking for a solution to the distutils/setuptools .egg-info mess

2022-01-11 Thread Andreas K. Huettel
> 
> TL;DR: how to deal with setuptools (and newer distutils vendored by
> setuptools) replacing .egg-info files with directories?

> I should probably emphasize here that the .egg-info path contains
> the package version, so this is a problem only if the same upstream
> version is being reinstalled.
> 
> You can easily reproduce the problem by playing with:
> 
>   SETUPTOOLS_USE_DISTUTILS=stdlib
>   SETUPTOOLS_USE_DISTUTILS=local  # vendored

> 2. We could control the distutils version in ebuilds directly,
> i.e. force "stdlib" for the current versions and have developers switch
> to "local" on version bumps.  Combined with 1., this will probably
> increase the coverage a bit but dead packages will remain in the way. 
> It also relies on all devs understanding the problem.

How about switching it with a new Python version?
(since that is also in the path...)

-- 
Andreas K. Hüttel
dilfri...@gentoo.org
Gentoo Linux developer
(council, toolchain, base-system, perl, libreoffice)

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