Re: [gentoo-dev] [News item review] V2 Chromium access to Google services
On 3/8/21 5:19 PM, Thomas Deutschmann wrote: Hi, On 2021-03-08 20:01, Stephan Hartmann wrote: 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. Maybe outline that this will only affect browser functions. You can still log in into your Google Account when accessing https://accounts.google.com/. 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. My first reaction was: WTF?! Why remove... maybe add a reference to [2] already or quote As explained in section above, signing in to Google web is rate limited if the developer has configured a client ID and client secret. To avoid hitting this limit in Chromium Derivatives, please remove the OAuth 2.0 client ID and client secret from your build configuration. directly in the news item. As quantitative feedback helps, I second this! I had the exact same reaction. Aisha That said, I wonder if there's a use case to allow users to bake-in custom credentials. I know at least one large Gentoo setup distributing Firefox to its users with custom keys. This is possible via environment variables set at build time, see https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/firefox/firefox-86.0.ebuild?id=dfe26277ee7441d00d88da14691cfc48db85ac8a#n453 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]. Should be www-client/google-chrome{,-beta,-unstable} ^^^ However, the latter is only intended for development. Documentation on how to generate and use own keys can be found in [2]. I wouldn't mention that at all. Either there is suitable way to keep status quo or there isn't. My suggestion: announcement> client_id or client_secret as explained in last paragraph of [2].> environment variable at runtime (and or build-time if you are going to support that) or add reference to [2] again.>
Re: [gentoo-dev] [News item review] V2 Chromium access to Google services
> On 8 Mar 2021, at 19:01, Stephan Hartmann wrote: > > Hi, Hi! Review from mobile so please excuse non-ideal formatting. > > 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 From March 15th 2021, Google’s Chrome team will be restricting access to... > Google APIs and services that are reserved for Google use only. This > means that users are no longer able to login into users of? > their Google Accounts > which disables access to for example Chrome Sync. > Access to e.g Chrome Sync and ... will be affected. > As a consequence we have to remove Client ID and secret from all > www-client/chromium ebuilds. As a consequence, we must remove both the Client ID and secret(s) from the www-client/chromium ebuilds in Gentoo. > This change has already been done for > =www-client/chromium-89.0.4389.82. This change has already been made for... > Other versions will be updated > shortly. > > If you need one of the Google use only APIs, then you either have to If you need to use one of these Google-only APIs. then you either have to... 1) ... > switch to www-client/google-chrome{-beta,-unstable} Or 2) > 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 >
Re: [gentoo-dev] [News item review] V2 Chromium access to Google services
Hi, On 2021-03-08 20:01, Stephan Hartmann wrote: 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. Maybe outline that this will only affect browser functions. You can still log in into your Google Account when accessing https://accounts.google.com/. 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. My first reaction was: WTF?! Why remove... maybe add a reference to [2] already or quote As explained in section above, signing in to Google web is rate limited if the developer has configured a client ID and client secret. To avoid hitting this limit in Chromium Derivatives, please remove the OAuth 2.0 client ID and client secret from your build configuration. directly in the news item. That said, I wonder if there's a use case to allow users to bake-in custom credentials. I know at least one large Gentoo setup distributing Firefox to its users with custom keys. This is possible via environment variables set at build time, see https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/firefox/firefox-86.0.ebuild?id=dfe26277ee7441d00d88da14691cfc48db85ac8a#n453 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]. Should be www-client/google-chrome{,-beta,-unstable} ^^^ However, the latter is only intended for development. Documentation on how to generate and use own keys can be found in [2]. I wouldn't mention that at all. Either there is suitable way to keep status quo or there isn't. My suggestion: announcement> client_id or client_secret as explained in last paragraph of [2].> environment variable at runtime (and or build-time if you are going to support that) or add reference to [2] again.> -- Regards, Thomas Deutschmann / Gentoo Linux Developer fpr: C4DD 695F A713 8F24 2AA1 5638 5849 7EE5 1D5D 74A5 OpenPGP_signature Description: OpenPGP digital signature
Re: [gentoo-dev] [PATCH] tmpfiles.eclass: introduce TMPFILES_OPTIONAL variable
On Mon, 2021-03-08 at 14:38 -0500, Mike Gilbert wrote: > This allows the automatic dependency on virtual/tmpfiles to be > disabled. > > Bug: https://bugs.gentoo.org/774855 > Signed-off-by: Mike Gilbert > --- > eclass/tmpfiles.eclass | 10 +- > 1 file changed, 9 insertions(+), 1 deletion(-) > > diff --git a/eclass/tmpfiles.eclass b/eclass/tmpfiles.eclass > index 360c5e3b816f..632343821648 100644 > --- a/eclass/tmpfiles.eclass > +++ b/eclass/tmpfiles.eclass > @@ -60,7 +60,15 @@ case "${EAPI}" in > *) die "API is undefined for EAPI ${EAPI}" ;; > esac > > -RDEPEND="virtual/tmpfiles" > +# @ECLASS-VARIABLE: TMPFILES_OPTIONAL > +# @DEFAULT_UNSET > +# @DESCRIPTION: > +# When not empty, disables the dependency on virtual/tmpfiles. > +# Ebuilds that call tmpfiles_process conditionally should declare a > +# conditional dependency themselves. > +if [[ -z ${TMPFILES_OPTIONAL} ]]; then > + RDEPEND="virtual/tmpfiles" > +fi > > # @FUNCTION: dotmpfiles > # @USAGE: ... ACK, and please merge ASAP.
Re: [gentoo-dev] [News item review] V2 Chromium access to Google services
Hi, Russian translation follows. Title: Доступ браузера Chromium к сервисам Google Author: Stephan Hartmann Translator: Alexey Sokolov Posted: 2021-03-09 Revision: 1 News-Item-Format: 2.0 Display-If-Installed: www-client/chromium С 15 марта 2021 команда Google Chrome ограничит доступ к Google API и службам, зарезервированным для использования самим Google. Это означает, что пользователи больше не смогут войти в учётную запись Google и потому у них не будет доступа к, например, Chrome Sync. Поэтому нам приходится удалить из www-client/chromium Client ID и ключи. Мы уже удалили их из =www-client/chromium-89.0.4389.82, остальные версии будут обновлены в ближайшем будущем. Если вам нужен доступ к этим API, вам нужно либо перейти на www-client/google-chrome{-beta,-unstable}, либо установить ваши собственные ключи [1], что, однако, предназначено только для разработки. Инструкцию по созданию и использованию собственных ключей можно найти здесь [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 пн, 8 мар. 2021 г. в 19:01, Stephan Hartmann : > > 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] [PATCH] tmpfiles.eclass: introduce TMPFILES_OPTIONAL variable
This allows the automatic dependency on virtual/tmpfiles to be disabled. Bug: https://bugs.gentoo.org/774855 Signed-off-by: Mike Gilbert --- eclass/tmpfiles.eclass | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/eclass/tmpfiles.eclass b/eclass/tmpfiles.eclass index 360c5e3b816f..632343821648 100644 --- a/eclass/tmpfiles.eclass +++ b/eclass/tmpfiles.eclass @@ -60,7 +60,15 @@ case "${EAPI}" in *) die "API is undefined for EAPI ${EAPI}" ;; esac -RDEPEND="virtual/tmpfiles" +# @ECLASS-VARIABLE: TMPFILES_OPTIONAL +# @DEFAULT_UNSET +# @DESCRIPTION: +# When not empty, disables the dependency on virtual/tmpfiles. +# Ebuilds that call tmpfiles_process conditionally should declare a +# conditional dependency themselves. +if [[ -z ${TMPFILES_OPTIONAL} ]]; then + RDEPEND="virtual/tmpfiles" +fi # @FUNCTION: dotmpfiles # @USAGE: ... -- 2.31.0.rc1
[gentoo-dev] [PATCH] distutils-r1.eclass: Use underscores in .pydistutils.cfg keys
Switch to using underscore instead of hyphens in .pydistutils.cfg keys. The latter form is now deprecated by setuptools, while both seem to work fine with plain distutils. Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index f5b151d4b8e2..e384b6d43d4e 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -714,7 +714,7 @@ distutils-r1_python_configure() { _distutils-r1_create_setup_cfg() { cat > "${HOME}"/.pydistutils.cfg <<-_EOF_ || die [build] - build-base = ${BUILD_DIR} + build_base = ${BUILD_DIR} # using a single directory for them helps us export # ${PYTHONPATH} and ebuilds find the sources independently @@ -723,16 +723,16 @@ _distutils-r1_create_setup_cfg() { # note: due to some packages (wxpython) relying on separate # platlib & purelib dirs, we do not set --build-lib (which # can not be overridden with --build-*lib) - build-platlib = %(build-base)s/lib - build-purelib = %(build-base)s/lib + build_platlib = %(build_base)s/lib + build_purelib = %(build_base)s/lib # make the ebuild writer lives easier - build-scripts = %(build-base)s/scripts + build_scripts = %(build_base)s/scripts # this is needed by distutils_install_for_testing since # setuptools like to create .egg files for install --home. [bdist_egg] - dist-dir = ${BUILD_DIR}/dist + dist_dir = ${BUILD_DIR}/dist _EOF_ # we can't refer to ${D} before src_install() @@ -749,7 +749,7 @@ _distutils-r1_create_setup_cfg() { if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then cat >> "${HOME}"/.pydistutils.cfg <<-_EOF_ || die - install-scripts = $(python_get_scriptdir) + install_scripts = $(python_get_scriptdir) _EOF_ fi fi -- 2.30.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
Re: [gentoo-dev] [News item review] Chromium access to Google services
On Mon, 2021-03-08 at 17:36 +0100, Stephan Hartmann wrote: > 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. It would be nice to explain a bit more what this entitles and how to make it work, or link to a nice guide. > [1] https://bit.ly/3bsxX8A Please don't make news items depend on third party URL shorteners. This just obfuscates what you're linking here and making them less reliable. -- Best regards, Michał Górny
[gentoo-dev] Last-rites: dev-php/PEAR-Config
# Brian Evans (2021-03-08) # No longer consistently maintained, severely broken with PHP 8 # No reverse dependencies, fails tests # Removal in 30 days. dev-php/PEAR-Config OpenPGP_signature Description: OpenPGP digital signature
[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] [PATCH] python-r1.eclass: Fix any-r1-style python_setup without USE flags
Fix python_setup() not to fail if no USE flags are set while any-r1 API is being used. Reported by Arfrever. Signed-off-by: Michał Górny --- eclass/python-r1.eclass | 11 +++ 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/eclass/python-r1.eclass b/eclass/python-r1.eclass index 74e3fb38a1cc..5457b515a839 100644 --- a/eclass/python-r1.eclass +++ b/eclass/python-r1.eclass @@ -771,15 +771,18 @@ python_foreach_impl() { python_setup() { debug-print-function ${FUNCNAME} "${@}" - _python_validate_useflags + local has_check_deps + declare -f python_check_deps >/dev/null && has_check_deps=1 + + if [[ ! ${has_check_deps} ]]; then + _python_validate_useflags + fi + local pycompat=( "${PYTHON_COMPAT[@]}" ) if [[ ${PYTHON_COMPAT_OVERRIDE} ]]; then pycompat=( ${PYTHON_COMPAT_OVERRIDE} ) fi - local has_check_deps - declare -f python_check_deps >/dev/null && has_check_deps=1 - # (reverse iteration -- newest impl first) local found _python_verify_patterns "${@}" -- 2.30.1
[gentoo-dev] Last rites: ruby25-only packages
# Hans de Graaff (2021-03-08) # Last litc upstream release in 2010, no reverse dependencies, # ruby25-only. Includes fakeweb test dependency which is also # ruby25-only and has no other reverse dependencies. # Masked for removal in 30 days. dev-ruby/litc dev-ruby/fakeweb # Hans de Graaff (2021-03-08) # Last upstream release in 2009, no reverse dependencies, # no test suite. # Masked for removal in 30 days. dev-ruby/metaid # Hans de Graaff (2021-03-08) # Last upstream release in 2018, no reverse dependencies, # stuck on ruby25. # Masked for removal in 30 days. dev-ruby/nexpose # Hans de Graaff (2021-03-08) # No longer maintained upstream, last release in 2014. # ruby25-only. # Masked for removal in 30 days. dev-ruby/session # Hans de Graaff (2021-03-08) # gitsh is maintainer-needed and stuck on ruby25. # parslet is only needed for gitsh and also ruby25-only. # Masked for removal in 30 days. dev-vcs/gitsh dev-ruby/parslet # Hans de Graaff (2021-03-08) # Old ruby25-only slots. Use the newer slot instead. # Masked for removal in 30 days. dev-ruby/i18n:0.7 dev-ruby/pcaprub:0.12 dev-ruby/pg:0 signature.asc Description: This is a digitally signed message part
[gentoo-dev] [PATCH] distutils-r1.eclass: Use a common distutils-r1_python_test
Use a common distutils-r1_python_test function to simplify handling different test scenarios. This avoids code duplication due to defining a lot of python_test() variants, as well as it makes it possible for overriden python_test() to call the base implementation provided by distutils_enable_tests. Signed-off-by: Michał Górny --- eclass/distutils-r1.eclass | 93 +++--- 1 file changed, 47 insertions(+), 46 deletions(-) diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index f5b151d4b8e2..0e543412f645 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -406,10 +406,10 @@ distutils_enable_sphinx() { distutils_enable_tests() { debug-print-function ${FUNCNAME} "${@}" - local do_install= + _DISTUTILS_TEST_INSTALL= case ${1} in --install) - do_install=1 + _DISTUTILS_TEST_INSTALL=1 shift ;; esac @@ -419,62 +419,21 @@ distutils_enable_tests() { case ${1} in nose) test_pkg=">=dev-python/nose-1.3.7-r4" - if [[ ${do_install} ]]; then - python_test() { - distutils_install_for_testing --via-root - nosetests -v || die "Tests fail with ${EPYTHON}" - } - else - python_test() { - nosetests -v || die "Tests fail with ${EPYTHON}" - } - fi ;; pytest) test_pkg=">=dev-python/pytest-4.5.0" - if [[ ${do_install} ]]; then - python_test() { - distutils_install_for_testing --via-root - epytest - } - else - python_test() { - epytest - } - fi ;; setup.py) - if [[ ${do_install} ]]; then - python_test() { - distutils_install_for_testing --via-root - nonfatal esetup.py test --verbose || - die "Tests fail with ${EPYTHON}" - } - else - python_test() { - nonfatal esetup.py test --verbose || - die "Tests fail with ${EPYTHON}" - } - fi ;; unittest) - if [[ ${do_install} ]]; then - python_test() { - distutils_install_for_testing --via-root - "${EPYTHON}" -m unittest discover -v || - die "Tests fail with ${EPYTHON}" - } - else - python_test() { - "${EPYTHON}" -m unittest discover -v || - die "Tests fail with ${EPYTHON}" - } - fi ;; *) die "${FUNCNAME}: unsupported argument: ${1}" esac + _DISTUTILS_TEST_RUNNER=${1} + python_test() { distutils-r1_python_test; } + local test_deps=${RDEPEND} if [[ -n ${test_pkg} ]]; then if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then @@ -841,6 +800,48 @@ _distutils-r1_wrap_scripts() { fi } +# @FUNCTION: distutils-r1_python_test +# @USAGE: [additional-args...] +# @DESCRIPTION: +# The python_test() implementation used by distutils_enable_tests. +# Runs tests using the specified test runner, possibly installing them +# first. +# +# This function is used only if distutils_enable_tests is called. +distutils-r1_python_test() { + debug-print-function ${FUNCNAME} "${@}" + + if [[ -z ${_DISTUTILS_TEST_RUNNER} ]]; then + die "${FUNCNAME} can be only used after calling distutils_enable_tests" + fi + + if [[ ${_DISTUTILS_TEST_INSTALL} ]]; then + distutils_install_for_testing + fi + + case ${_DISTUTILS_TEST_RUNNER} in + nose) + nosetests -v "${@}" + ;; + pytest) + epytest +