[gentoo-dev] dev-libs/re2 needs a new maintainer
Hi all, newer versions of dev-libs/re2 depend on dev-cpp/abseil-cpp. With that change re2 starts to change ABI with the C++ standard. Therefore, the chromium project switches to bundled re2 starting with chromium-116 and drops dev-libs/re2 to maintainer-needed. Thanks.
[gentoo-dev] [PATCH] llvm.eclass: enable EAPI 8
Signed-off-by: Stephan Hartmann --- eclass/llvm.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eclass/llvm.eclass b/eclass/llvm.eclass index 359f3a669d0..fbfd64b88be 100644 --- a/eclass/llvm.eclass +++ b/eclass/llvm.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: llvm.eclass @@ -6,7 +6,7 @@ # Michał Górny # @AUTHOR: # Michał Górny -# @SUPPORTED_EAPIS: 6 7 +# @SUPPORTED_EAPIS: 6 7 8 # @BLURB: Utility functions to build against slotted LLVM # @DESCRIPTION: # The llvm.eclass provides utility functions that can be used to build @@ -60,7 +60,7 @@ case "${EAPI:-0}" in 0|1|2|3|4|5) die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}" ;; - 6|7) + 6|7|8) ;; *) die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" -- 2.34.1
[gentoo-dev] [PATCH v2] unpacker.eclass: enable EAPI 8
Add support for 7z, RAR and LHA/LZH. Signed-off-by: Stephan Hartmann --- eclass/unpacker.eclass | 59 -- 1 file changed, 57 insertions(+), 2 deletions(-) diff --git a/eclass/unpacker.eclass b/eclass/unpacker.eclass index c9dab4345c9..74899fd77b7 100644 --- a/eclass/unpacker.eclass +++ b/eclass/unpacker.eclass @@ -4,7 +4,7 @@ # @ECLASS: unpacker.eclass # @MAINTAINER: # base-sys...@gentoo.org -# @SUPPORTED_EAPIS: 5 6 7 +# @SUPPORTED_EAPIS: 5 6 7 8 # @BLURB: helpers for extraneous file formats and consistent behavior across EAPIs # @DESCRIPTION: # Some extraneous file formats are not part of PMS, or are only in certain @@ -16,7 +16,7 @@ # - support partial unpacks? case ${EAPI:-0} in - [567]) ;; + [5678]) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac @@ -335,6 +335,47 @@ unpack_zip() { [[ $? -le 1 ]] || die "unpacking ${zip} failed (arch=unpack_zip)" } +# @FUNCTION: unpack_7z +# @USAGE: <7z file> +# @DESCRIPTION: +# Unpack 7z archives. +unpack_7z() { + [[ $# -eq 1 ]] || die "Usage: ${FUNCNAME} " + + local p7z=$(find_unpackable_file "$1") + unpack_banner "${p7z}" + local output="$(7z x -y "${p7z}")" + + if [ $? -ne 0 ]; then + echo "${output}" >&2 + die "unpacking ${p7z} failed (arch=unpack_7z)" + fi +} + +# @FUNCTION: unpack_rar +# @USAGE: +# @DESCRIPTION: +# Unpack RAR archives. +unpack_rar() { + [[ $# -eq 1 ]] || die "Usage: ${FUNCNAME} " + + local rar=$(find_unpackable_file "$1") + unpack_banner "${rar}" + unrar x -idq -o+ "${rar}" || die "unpacking ${rar} failed (arch=unpack_rar)" +} + +# @FUNCTION: unpack_lha +# @USAGE: +# @DESCRIPTION: +# Unpack LHA/LZH archives. +unpack_lha() { + [[ $# -eq 1 ]] || die "Usage: ${FUNCNAME} " + + local lha=$(find_unpackable_file "$1") + unpack_banner "${lha}" + lha xfq "${lha}" || die "unpacking ${lha} failed (arch=unpack_lha)" +} + # @FUNCTION: _unpacker # @USAGE: # @INTERNAL @@ -395,6 +436,18 @@ _unpacker() { arch="unpack_zip" ;; esac + # 7z, rar and lha/lzh are handled by package manager in EAPI < 8 + if [[ ${EAPI} != [567] ]]; then + case ${m} in + *.7z) + arch="unpack_7z" ;; + *.rar|*.RAR) + arch="unpack_rar" ;; + *.LHA|*.LHa|*.lha|*.lzh) + arch="unpack_lha" ;; + esac + fi + # finally do the unpack if [[ -z ${arch}${comp} ]] ; then unpack "$1" @@ -471,6 +524,8 @@ unpacker_src_uri_depends() { d="|| ( app-arch/plzip app-arch/pdlzip app-arch/lzip )" ;; *.zst) d="app-arch/zstd" ;; + *.LHA|*.LHa|*.lha|*.lzh) + d="app-arch/lha" ;; esac deps+=" ${d}" done -- 2.31.1
Re: [gentoo-dev] [PATCH] unpacker.eclass: enable EAPI 8
On 8/26/21 5:43 PM, Mike Gilbert wrote: On Thu, Aug 26, 2021 at 7:40 AM Ulrich Mueller wrote: On Thu, 26 Aug 2021, Stephan Hartmann wrote: --- a/eclass/unpacker.eclass +++ b/eclass/unpacker.eclass @@ -4,7 +4,7 @@ # @ECLASS: unpacker.eclass # @MAINTAINER: # base-sys...@gentoo.org -# @SUPPORTED_EAPIS: 5 6 7 +# @SUPPORTED_EAPIS: 5 6 7 8 # @BLURB: helpers for extraneous file formats and consistent behavior across EAPIs # @DESCRIPTION: # Some extraneous file formats are not part of PMS, or are only in certain @@ -16,7 +16,7 @@ # - support partial unpacks? case ${EAPI:-0} in - [567]) ;; + [5678]) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac I think for EAPI 8 you'll need additional cases in _unpacker() for 7z, .rar, and .lha/.lzh, because package manager support for these extensions has been dropped: https://projects.gentoo.org/pms/8/pms.html#x1-135002r24 That would be a nice enhancement for the eclass, but I don't think it needs to be implemented before EAPI 8 is allowed. It could wait until some EAPI 8 ebuild actually needs to unpack one of these obscure formats. Almost implemented, just need some runtime testing. Will sent an updated patch tomorrow.
[gentoo-dev] [PATCH] unpacker.eclass: enable EAPI 8
Signed-off-by: Stephan Hartmann --- eclass/unpacker.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eclass/unpacker.eclass b/eclass/unpacker.eclass index c9dab4345c9..424975ba8ba 100644 --- a/eclass/unpacker.eclass +++ b/eclass/unpacker.eclass @@ -4,7 +4,7 @@ # @ECLASS: unpacker.eclass # @MAINTAINER: # base-sys...@gentoo.org -# @SUPPORTED_EAPIS: 5 6 7 +# @SUPPORTED_EAPIS: 5 6 7 8 # @BLURB: helpers for extraneous file formats and consistent behavior across EAPIs # @DESCRIPTION: # Some extraneous file formats are not part of PMS, or are only in certain @@ -16,7 +16,7 @@ # - support partial unpacks? case ${EAPI:-0} in - [567]) ;; + [5678]) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -- 2.31.1
Re: [gentoo-dev] [PATCH 3/3] chromium-2.eclass: enable EAPI 8
On 8/12/21 1:16 PM, Ulrich Mueller wrote: case ${EAPI} in - 7) ;; + 7|8) ;; *) die "EAPI=${EAPI:-0} is not supported" ;; Nitpick: Add "${ECLASS}: " at the beginning of the die message. Thanks. Fixed locally. esac
[gentoo-dev] [PATCH 3/3] chromium-2.eclass: enable EAPI 8
Signed-off-by: Stephan Hartmann --- eclass/chromium-2.eclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eclass/chromium-2.eclass b/eclass/chromium-2.eclass index b97a31e614e..2800934537f 100644 --- a/eclass/chromium-2.eclass +++ b/eclass/chromium-2.eclass @@ -6,11 +6,11 @@ # Chromium Project # @AUTHOR: # Mike Gilbert -# @SUPPORTED_EAPIS: 7 +# @SUPPORTED_EAPIS: 7 8 # @BLURB: Shared functions for chromium and google-chrome case ${EAPI} in - 7) ;; + 7|8) ;; *) die "EAPI=${EAPI:-0} is not supported" ;; esac -- 2.31.1
[gentoo-dev] [PATCH 2/3] chromium-2.eclass: update documentation
Signed-off-by: Stephan Hartmann --- eclass/chromium-2.eclass | 13 - 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/eclass/chromium-2.eclass b/eclass/chromium-2.eclass index 2543078df79..b97a31e614e 100644 --- a/eclass/chromium-2.eclass +++ b/eclass/chromium-2.eclass @@ -26,7 +26,8 @@ fi # @FUNCTION: chromium_suid_sandbox_check_kernel_config # @USAGE: # @DESCRIPTION: -# Ensures the system kernel supports features needed for SUID sandbox to work. +# Ensures the system kernel supports features needed for SUID and User namespaces sandbox +# to work. chromium_suid_sandbox_check_kernel_config() { if [[ "${MERGE_TYPE}" == "source" || "${MERGE_TYPE}" == "binary" ]]; then # Warn if the kernel does not support features needed for sandboxing. @@ -50,6 +51,12 @@ chromium_suid_sandbox_check_kernel_config() { # @DESCRIPTION: # List of language packs available for this package. +# @FUNCTION: _chromium_set_l10n_IUSE +# @USAGE: +# @INTERNAL +# @DESCRIPTION: +# Converts and adds CHROMIUM_LANGS to IUSE. Called automatically if +# CHROMIUM_LANGS is defined. _chromium_set_l10n_IUSE() { local lang for lang in ${CHROMIUM_LANGS}; do @@ -105,6 +112,10 @@ chromium_remove_language_paks() { done } +# @FUNCTION: chromium_pkg_die +# @USAGE: +# @DESCRIPTION: +# EBUILD_DEATH_HOOK function to display some warnings/information about build environment. chromium_pkg_die() { if [[ "${EBUILD_PHASE}" != "compile" ]]; then return -- 2.31.1
[gentoo-dev] [PATCH 1/3] chromium-2.eclass: remove GYP support
Chromium project replaced GYP with GN in 2016 and nothing in ::gentoo is using GYP. Signed-off-by: Stephan Hartmann --- eclass/chromium-2.eclass | 36 1 file changed, 36 deletions(-) diff --git a/eclass/chromium-2.eclass b/eclass/chromium-2.eclass index 54df3b1394c..2543078df79 100644 --- a/eclass/chromium-2.eclass +++ b/eclass/chromium-2.eclass @@ -146,40 +146,4 @@ chromium_pkg_die() { einfo } -# @VARIABLE: EGYP_CHROMIUM_COMMAND -# @DESCRIPTION: -# Path to the gyp_chromium script. -: ${EGYP_CHROMIUM_COMMAND:=build/gyp_chromium} - -# @VARIABLE: EGYP_CHROMIUM_DEPTH -# @DESCRIPTION: -# Depth for egyp_chromium. -: ${EGYP_CHROMIUM_DEPTH:=.} - -# @FUNCTION: egyp_chromium -# @USAGE: [gyp arguments] -# @DESCRIPTION: -# Calls EGYP_CHROMIUM_COMMAND with depth EGYP_CHROMIUM_DEPTH and given -# arguments. The full command line is echoed for logging. -egyp_chromium() { - set -- "${EGYP_CHROMIUM_COMMAND}" --depth="${EGYP_CHROMIUM_DEPTH}" "$@" - echo "$@" - "$@" -} - -# @FUNCTION: gyp_use -# @USAGE: [GYP flag] [true suffix] [false suffix] -# @DESCRIPTION: -# If USE flag is set, echo -D[GYP flag]=[true suffix]. -# -# If USE flag is not set, echo -D[GYP flag]=[false suffix]. -# -# [GYP flag] defaults to use_[USE flag] with hyphens converted to underscores. -# -# [true suffix] defaults to 1. [false suffix] defaults to 0. -gyp_use() { - local gypflag="-D${2:-use_${1//-/_}}=" - usex "$1" "${gypflag}" "${gypflag}" "${3-1}" "${4-0}" -} - fi -- 2.31.1
[gentoo-dev] [PATCH 0/3] Updates for chromium-2.eclass
Small cleanup, small documentation improvements and EAPI 8 support. Stephan Hartmann (3): chromium-2.eclass: remove GYP support chromium-2.eclass: update documentation chromium-2.eclass: enable EAPI 8 eclass/chromium-2.eclass | 53 +++- 1 file changed, 14 insertions(+), 39 deletions(-) -- 2.31.1
[gentoo-dev] [News item review] V2 Chromium access to Google services
Hi, updated based on previous suggestions. ``` Title: Chromium access to Google services Author: Stephan Hartmann Content-Type: text/plain Posted: 2021-03-09 Revision: 1 News-Item-Format: 2.0 Display-If-Installed: www-client/chromium Starting March 15th, 2021 Google Chrome Team will restrict access to Google APIs and services that are reserved for Google use only. This means that users are no longer able to login into their Google Accounts which disables access to for example Chrome Sync. As a consequence we have to remove Client ID and secret from all www-client/chromium ebuilds. This change has already been done for =www-client/chromium-89.0.4389.82. Other versions will be updated shortly. If you need one of the Google use only APIs, then you either have to switch to www-client/google-chrome{-beta,-unstable} or setup your own keys [1]. However, the latter is only intended for development. Documentation on how to generate and use own keys can be found in [2]. [1] https://groups.google.com/a/chromium.org/g/chromium-dev/c/jgy5pcJ7np8/m/p3j_4b6vBQAJ [2] https://www.chromium.org/developers/how-tos/api-keys ``` Best regards, Stephan
[gentoo-dev] [News item review] Chromium access to Google services
Hi, please review the news item inlined below. I would like to publish it tomorrow. ``` Title: Chromium access to Google services Author: Stephan Hartmann Content-Type: text/plain Posted: 2021-03-09 Revision: 1 News-Item-Format: 2.0 Display-If-Installed: www-client/chromium Starting March 15th, 2021 Google Chrome Team will restrict access to Google APIs and services that are reserved for Google use only. This means that users are no longer able to login into their Google Accounts which disables access to for example Chrome Sync. As a consequence we have to remove Client ID and secret from all www-client/chromium ebuilds. This change has already been done for =www-client/chromium-89.0.4389.82. Other versions will be updated shortly. If you need one of the Google use only APIs, then you either have to switch to www-client/google-chrome{-beta,-unstable} or setup your own keys [1]. However, the latter is only intended for development. [1] https://bit.ly/3bsxX8A ``` Best regards, Stephan
[gentoo-dev] Last rites: app-benchmarks/contest
# Stephan Hartmann (2021-01-01) # Fails with -fno-common, homepage gone, source gone, # no maintainer. # Removal in 30 days. See bug #706824. app-benchmarks/contest