[gentoo-commits] proj/portage:master commit in: man/, lib/portage/package/ebuild/_config/, lib/portage/package/ebuild/
commit: 14d9c755f7534e23f10719d0fe6c04b18534e854 Author: Matt Turner gentoo org> AuthorDate: Mon Feb 21 21:04:10 2022 + Commit: Matt Turner gentoo org> CommitDate: Mon May 2 18:44:51 2022 + URL:https://gitweb.gentoo.org/proj/portage.git/commit/?id=14d9c755 Remove remnants of SIGNED_OFF_BY Was only used by repoman. Closes: https://github.com/gentoo/portage/pull/819 Signed-off-by: Matt Turner gentoo.org> lib/portage/package/ebuild/_config/special_env_vars.py | 1 - lib/portage/package/ebuild/config.py | 1 - man/make.conf.5| 11 --- 3 files changed, 13 deletions(-) diff --git a/lib/portage/package/ebuild/_config/special_env_vars.py b/lib/portage/package/ebuild/_config/special_env_vars.py index 9b2d77aea..04e4c5b9b 100644 --- a/lib/portage/package/ebuild/_config/special_env_vars.py +++ b/lib/portage/package/ebuild/_config/special_env_vars.py @@ -340,7 +340,6 @@ environ_filter += [ "RESUMECOMMAND_HTTPS", "RESUMECOMMAND_RSYNC", "RESUMECOMMAND_SFTP", -"SIGNED_OFF_BY", "UNINSTALL_IGNORE", "USE_EXPAND_HIDDEN", "USE_ORDER", diff --git a/lib/portage/package/ebuild/config.py b/lib/portage/package/ebuild/config.py index 5d9d5ce48..f35fcdf65 100644 --- a/lib/portage/package/ebuild/config.py +++ b/lib/portage/package/ebuild/config.py @@ -200,7 +200,6 @@ class config: _deprecated_keys = { "PORTAGE_LOGDIR": "PORT_LOGDIR", "PORTAGE_LOGDIR_CLEAN": "PORT_LOGDIR_CLEAN", -"SIGNED_OFF_BY": "DCO_SIGNED_OFF_BY", } _setcpv_aux_keys = ( diff --git a/man/make.conf.5 b/man/make.conf.5 index 8c77eda2e..bde92af1a 100644 --- a/man/make.conf.5 +++ b/man/make.conf.5 @@ -255,9 +255,6 @@ of \fBemerge\fR(1) for more information. This variable is passed by the \fIebuild scripts\fR to the \fIconfigure\fR as \fI\-\-target=${CTARGET}\fR only if it is defined. .TP -.B DCO_SIGNED_OFF_BY -See \fISIGNED_OFF_BY\fR below. Deprecated. -.TP \fBDISTDIR\fR = \fI[path]\fR Defines the location of your local source file repository. After packages are built, it is safe to remove any and all files from this directory since @@ -1280,14 +1277,6 @@ Defines the location where created RPM packages will be stored. .br Defaults to /var/cache/rpm. .TP -.B SIGNED_OFF_BY -This variable may contain a name and email address which will be used by -\fBrepoman\fR(1) to add a Signed\-off\-by line to each commit message. -The meaning of a signoff depends on the project. Typically, it certifies -that the committer has the rights to submit the work under a free license -and agrees to a Certificate of Origin. (For example, see GLEP 76 for the -Gentoo Linux policy: \fIhttps://www.gentoo.org/glep/glep-0076.html\fR.) -.TP \fBSYNC\fR = \fI[RSYNC]\fR Insert your preferred rsync mirror here. This rsync server is used to sync the local ebuild repository when `emerge \-\-sync` is run.
[gentoo-commits] proj/portage:master commit in: man/, lib/portage/package/ebuild/
commit: f04dae7728b558ba10b99d1b4979054825fbb0d6 Author: Daniel M. Weeks danweeks net> AuthorDate: Wed Jan 6 18:35:37 2021 + Commit: Zac Medico gentoo org> CommitDate: Sun Jan 10 03:22:43 2021 + URL:https://gitweb.gentoo.org/proj/portage.git/commit/?id=f04dae77 Make digests available to fetch command This makes it possible for the fetch command to utilize a protocol/service that identifies files by their hash. Closes: https://github.com/gentoo/portage/pull/655 Signed-off-by: Daniel M. Weeks danweeks.net> Signed-off-by: Zac Medico gentoo.org> lib/portage/package/ebuild/fetch.py | 6 ++ man/make.conf.5 | 14 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/lib/portage/package/ebuild/fetch.py b/lib/portage/package/ebuild/fetch.py index 7be9d0239..e0fecaf23 100644 --- a/lib/portage/package/ebuild/fetch.py +++ b/lib/portage/package/ebuild/fetch.py @@ -1291,6 +1291,12 @@ def fetch(myuris, mysettings, listonly=0, fetchonly=0, "FILE": os.path.basename(download_path) } + try: + variables['DIGESTS'] = " ".join(["%s:%s" % (k.lower(), v) + for k, v in mydigests[myfile].items() if k != 'size']) + except KeyError: + pass + for k in ("DISTDIR", "PORTAGE_SSH_OPTS"): v = mysettings.get(k) if v is not None: diff --git a/man/make.conf.5 b/man/make.conf.5 index 494d5a212..f6eae6f60 100644 --- a/man/make.conf.5 +++ b/man/make.conf.5 @@ -1,4 +1,4 @@ -.TH "MAKE.CONF" "5" "Sep 2020" "Portage VERSION" "Portage" +.TH "MAKE.CONF" "5" "Jan 2021" "Portage VERSION" "Portage" .SH "NAME" make.conf \- custom settings for Portage .SH "SYNOPSIS" @@ -746,6 +746,18 @@ the internet. It must contain the full path to the executable as well as the place\-holders \\${DISTDIR}, \\${FILE} and \\${URI}. The command should be written to place the fetched file at \\${DISTDIR}/\\${FILE}. Also see \fBRESUMECOMMAND\fR. +.RS +.TP +.B Optional FETCHCOMMAND Placeholders +.TS +l l l +___ +l l l. +PlaceholderMeaning Example + +\\${DIGESTS} Space separated list of file digestsblake2b sha512 +.TE +.RE .TP .B FFLAGS FCFLAGS Use these variables to set the desired optimization/CPU instruction settings
[gentoo-commits] proj/portage:master commit in: man/, lib/portage/package/ebuild/
commit: 16262dc8ab9ab6cc03565bcefc444726b4dfb32f Author: Arfrever Frehtes Taifersar Arahesis Apache Org> AuthorDate: Sat Sep 5 22:37:05 2020 + Commit: Zac Medico gentoo org> CommitDate: Tue Sep 8 00:47:14 2020 + URL:https://gitweb.gentoo.org/proj/portage.git/commit/?id=16262dc8 make.conf: Treat __* variables as local and do not propagate them. Bug: https://bugs.gentoo.org/740588 Signed-off-by: Arfrever Frehtes Taifersar Arahesis Apache.Org> Signed-off-by: Zac Medico gentoo.org> lib/portage/package/ebuild/config.py | 6 ++ man/make.conf.5 | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/portage/package/ebuild/config.py b/lib/portage/package/ebuild/config.py index b62ad3069..a09fdbced 100644 --- a/lib/portage/package/ebuild/config.py +++ b/lib/portage/package/ebuild/config.py @@ -370,6 +370,9 @@ class config: _("Found 2 make.conf files, using both '%s' and '%s'") % tuple(make_conf_paths), noiselevel=-1) + # __* variables set in make.conf are local and are not be propagated. + make_conf = {k: v for k, v in make_conf.items() if not k.startswith("__")} + # Allow ROOT setting to come from make.conf if it's not overridden # by the constructor argument (from the calling environment). locations_manager.set_root_override(make_conf.get("ROOT")) @@ -621,6 +624,9 @@ class config: tolerant=tolerant, allow_sourcing=True, expand=expand_map, recursive=True) or {}) + # __* variables set in make.conf are local and are not be propagated. + mygcfg = {k: v for k, v in mygcfg.items() if not k.startswith("__")} + # Don't allow the user to override certain variables in make.conf profile_only_variables = self.configdict["defaults"].get( "PROFILE_ONLY_VARIABLES", "").split() diff --git a/man/make.conf.5 b/man/make.conf.5 index 1b997ad37..8a1ea0603 100644 --- a/man/make.conf.5 +++ b/man/make.conf.5 @@ -1,4 +1,4 @@ -.TH "MAKE.CONF" "5" "Jun 2020" "Portage VERSION" "Portage" +.TH "MAKE.CONF" "5" "Sep 2020" "Portage VERSION" "Portage" .SH "NAME" make.conf \- custom settings for Portage .SH "SYNOPSIS" @@ -36,6 +36,8 @@ make.defaults to make.globals to make.conf to the environment settings. Clearing these variables requires a clear\-all as in: export USE="\-*" .br +__* variables set in make.conf are local and are not be propagated. +.br In order to create per\-package environment settings, refer to \fBpackage.env\fR in \fBportage\fR(5). .SH "VARIABLES"
[gentoo-commits] proj/portage:master commit in: man/, lib/portage/package/ebuild/_config/, lib/portage/dbapi/, ...
commit: 2f657c642ff292fd44ed9cb253ab6d13da84303f Author: Zac Medico gentoo org> AuthorDate: Mon Jun 15 19:46:03 2020 + Commit: Zac Medico gentoo org> CommitDate: Mon Jun 15 19:47:05 2020 + URL:https://gitweb.gentoo.org/proj/portage.git/commit/?id=2f657c64 Revert "Support PORTAGE_LOG_FILTER_FILE_CMD (bug 709746)" This reverts commit ab7556a5c0df418d61148a05347f4c73115e5747. We've had reports of emerge hangs, so reverting this for now. Bug: https://bugs.gentoo.org/709746 Signed-off-by: Zac Medico gentoo.org> lib/_emerge/AbstractEbuildProcess.py | 3 +- lib/_emerge/BinpkgFetcher.py | 3 +- lib/_emerge/EbuildFetcher.py | 3 +- lib/_emerge/EbuildPhase.py | 47 ++--- lib/_emerge/SpawnProcess.py| 58 +++ lib/portage/dbapi/_MergeProcess.py | 3 +- .../package/ebuild/_config/special_env_vars.py | 8 +- lib/portage/util/_async/BuildLogger.py | 109 - lib/portage/util/_async/SchedulerInterface.py | 32 +- man/make.conf.5| 7 +- 10 files changed, 30 insertions(+), 243 deletions(-) diff --git a/lib/_emerge/AbstractEbuildProcess.py b/lib/_emerge/AbstractEbuildProcess.py index ae1aae55f..1c1955cfe 100644 --- a/lib/_emerge/AbstractEbuildProcess.py +++ b/lib/_emerge/AbstractEbuildProcess.py @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 import errno @@ -196,7 +196,6 @@ class AbstractEbuildProcess(SpawnProcess): null_fd = os.open('/dev/null', os.O_RDONLY) self.fd_pipes[0] = null_fd - self.log_filter_file = self.settings.get('PORTAGE_LOG_FILTER_FILE_CMD') try: SpawnProcess._start(self) finally: diff --git a/lib/_emerge/BinpkgFetcher.py b/lib/_emerge/BinpkgFetcher.py index 2e5861cc1..36d027de3 100644 --- a/lib/_emerge/BinpkgFetcher.py +++ b/lib/_emerge/BinpkgFetcher.py @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 import functools @@ -158,7 +158,6 @@ class _BinpkgFetcherProcess(SpawnProcess): self.env = fetch_env if settings.selinux_enabled(): self._selinux_type = settings["PORTAGE_FETCH_T"] - self.log_filter_file = settings.get('PORTAGE_LOG_FILTER_FILE_CMD') SpawnProcess._start(self) def _pipe(self, fd_pipes): diff --git a/lib/_emerge/EbuildFetcher.py b/lib/_emerge/EbuildFetcher.py index 55349c33c..1e40994fb 100644 --- a/lib/_emerge/EbuildFetcher.py +++ b/lib/_emerge/EbuildFetcher.py @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 import copy @@ -225,7 +225,6 @@ class _EbuildFetcherProcess(ForkProcess): settings["NOCOLOR"] = nocolor self._settings = settings - self.log_filter_file = settings.get('PORTAGE_LOG_FILTER_FILE_CMD') ForkProcess._start(self) # Free settings now since it's no longer needed in diff --git a/lib/_emerge/EbuildPhase.py b/lib/_emerge/EbuildPhase.py index ddb3dc719..477e0ba97 100644 --- a/lib/_emerge/EbuildPhase.py +++ b/lib/_emerge/EbuildPhase.py @@ -26,8 +26,6 @@ from portage.package.ebuild.prepare_build_dirs import (_prepare_workdir, from portage.util.futures.compat_coroutine import coroutine from portage.util import writemsg from portage.util._async.AsyncTaskFuture import AsyncTaskFuture -from portage.util._async.BuildLogger import BuildLogger -from portage.util.futures import asyncio from portage.util.futures.executor.fork import ForkExecutor try: @@ -71,11 +69,6 @@ class EbuildPhase(CompositeTask): _locked_phases = ("setup", "preinst", "postinst", "prerm", "postrm") def _start(self): - future = asyncio.ensure_future(self._async_start(), loop=self.scheduler) - self._start_task(AsyncTaskFuture(future=future), self._async_start_exit) - - @coroutine - def _async_start(self): need_builddir = self.phase not in EbuildProcess._phases_without_builddir @@ -133,7 +126,7 @@ class EbuildPhase(CompositeTask): # Force background=True for this header since it's intended # for the log and it doesn't necessarily need to be visible # elsewhere. - yield self._elog('einfo', msg, background=True) + self._elog('einfo', msg, background=True) if self.phase == 'package':
[gentoo-commits] proj/portage:master commit in: man/, lib/portage/package/ebuild/, lib/portage/sync/modules/webrsync/, cnf/, ...
commit: 829623eadbeda97d37c0ea50dc5f08f19bf4561b Author: Zac Medico gentoo org> AuthorDate: Tue Jul 9 05:57:33 2019 + Commit: Zac Medico gentoo org> CommitDate: Wed Jul 10 20:28:39 2019 + URL:https://gitweb.gentoo.org/proj/portage.git/commit/?id=829623ea repos.conf: default sync-webrsync-verify-signature Enable sync-webrsync-verify-signature by default in repos.conf (due to dependencies the ebuild will make this conditional on USE=rsync-verify in the same way as the default sync-rsync-verify-metamanifest value). Use a new PORTAGE_TEMP_GPG_DIR variable to distinguish indirect emerge-webrsync calls that use gemato for secure key refresh, and disable direct emerge-webrsync calls. Deprecate FEATURES=webrsync-gpg and use it to trigger a backward-compatibility mode where direct emerge-webrsync calls are allowed (but trigger a warning message). Since direct emerge-webrsync calls do not use gemato for secure key refresh, this behavior will not be supported in a future release. Bug: https://bugs.gentoo.org/689506 Signed-off-by: Zac Medico gentoo.org> bin/emerge-webrsync | 19 --- cnf/repos.conf| 1 + lib/portage/package/ebuild/config.py | 4 lib/portage/sync/modules/webrsync/webrsync.py | 1 + man/make.conf.5 | 6 -- misc/emerge-delta-webrsync| 19 --- 6 files changed, 42 insertions(+), 8 deletions(-) diff --git a/bin/emerge-webrsync b/bin/emerge-webrsync index f622dde3e..25daaf8eb 100755 --- a/bin/emerge-webrsync +++ b/bin/emerge-webrsync @@ -50,7 +50,7 @@ eval "$("${portageq}" envvar -v DISTDIR EPREFIX FEATURES \ FETCHCOMMAND GENTOO_MIRRORS \ PORTAGE_BIN_PATH PORTAGE_CONFIGROOT PORTAGE_GPG_DIR \ PORTAGE_NICENESS PORTAGE_REPOSITORIES PORTAGE_RSYNC_EXTRA_OPTS \ - PORTAGE_RSYNC_OPTS PORTAGE_TMPDIR \ + PORTAGE_RSYNC_OPTS PORTAGE_TEMP_GPG_DIR PORTAGE_TMPDIR \ USERLAND http_proxy ftp_proxy)" export http_proxy ftp_proxy @@ -74,9 +74,21 @@ do_verbose=0 do_debug=0 keep=false -if has $(__repo_attr "${repo_name}" sync-webrsync-verify-signature | \ +has webrsync-gpg ${FEATURES} && webrsync_gpg=1 || webrsync_gpg=0 + +if [[ ${webrsync_gpg} -eq 1 ]]; then + wecho "FEATURES=webrsync-gpg is deprecated, see the make.conf(5) man page." +fi + +if [[ -n ${PORTAGE_TEMP_GPG_DIR} ]] || + has $(__repo_attr "${repo_name}" sync-webrsync-verify-signature | LC_ALL=C tr '[:upper:]' '[:lower:]') true yes; then - if [[ ! -d ${PORTAGE_GPG_DIR} ]]; then + # If FEATURES=webrsync-gpg is enabled then allow direct emerge-webrsync + # calls for backward compatibility (this triggers a deprecation warning + # above). Since direct emerge-webrsync calls do not use gemato for secure + # key refresh, this behavior will not be supported in a future release. + if [[ ! ( -d ${PORTAGE_GPG_DIR} && ${webrsync_gpg} -eq 1 ) && + -z ${PORTAGE_TEMP_GPG_DIR} ]]; then eecho "Do not call ${argv0##*/} directly, instead call emerge --sync or emaint sync." exit 1 fi @@ -86,6 +98,7 @@ elif has webrsync-gpg ${FEATURES}; then else WEBSYNC_VERIFY_SIGNATURE=0 fi +[[ -n ${PORTAGE_TEMP_GPG_DIR} ]] && PORTAGE_GPG_DIR=${PORTAGE_TEMP_GPG_DIR} if [ ${WEBSYNC_VERIFY_SIGNATURE} != 0 -a -z "${PORTAGE_GPG_DIR}" ]; then eecho "please set PORTAGE_GPG_DIR in make.conf" exit 1 diff --git a/cnf/repos.conf b/cnf/repos.conf index 2d73b3e35..e71b704db 100644 --- a/cnf/repos.conf +++ b/cnf/repos.conf @@ -16,6 +16,7 @@ sync-openpgp-key-refresh-retry-overall-timeout = 1200 sync-openpgp-key-refresh-retry-delay-exp-base = 2 sync-openpgp-key-refresh-retry-delay-max = 60 sync-openpgp-key-refresh-retry-delay-mult = 4 +sync-webrsync-verify-signature = yes # for daily squashfs snapshots #sync-type = squashdelta diff --git a/lib/portage/package/ebuild/config.py b/lib/portage/package/ebuild/config.py index 780013bca..83a15b370 100644 --- a/lib/portage/package/ebuild/config.py +++ b/lib/portage/package/ebuild/config.py @@ -1205,6 +1205,10 @@ class config(object): writemsg(_("!!! FEATURES=fakeroot is enabled, but the " "fakeroot binary is not installed.\n"), noiselevel=-1) + if "webrsync-gpg" in self.features: + writemsg(_("!!! FEATURES=webrsync-gpg is deprecated, see the make.conf(5) man page.\n"), + noiselevel=-1) + if os.getuid() == 0 and not hasattr(os, "setgroups"): warning_shown = False diff --git a/lib/portage/sync/modules/webrsync/webrsync.py b/lib/portage/sync/modules/webrsync/webrsync.py index 609ba0be2..70f65cfcd 100644 --- a/lib/portage/sync/modules/webrsync/webrsync.py +++ b/lib/portage/sync/modules/webrsync/webrsync.py @@ -88,6