Zac Medico [Tue, 18 Jun 2013 21:20:35 +0000 (14:20 -0700)]
RepoConfigLoader: main-repo priority before sort
Ruud Koolen [Mon, 17 Jun 2013 07:21:41 +0000 (09:21 +0200)]
Add cross-prefix support
This patch series adds support for using a portage installed in one prefix
to build packages with a different prefix.
The current portage has a single EPREFIX variable specifying both the prefix
of the portage installation, and the prefix of the packages portage is
building. This patch series splits it into two parts: the
portage.const.EPREFIX variable specifying the prefix of the portage
installation, used for constructing the PATH as well as the paths to files
belonging to a portage installation itself rather than a target root; and the
EPREFIX setting in config instances, specifying the prefix of the
to-be-built packages and being used for almost everything else.
The EPREFIX config setting defaults to const.EPREFIX, but can be overridden
by the EPREFIX environment variable, as well as the emerge --prefix option.
This allows one to install systems with different prefixes using
`EPREFIX=/foo emerge @system`, though some unrelated changes need to happen
elsewhere first in order to make that a reality.
Ruud Koolen (3):
Distinguish between portage prefix and package prefix
Based GLOBAL_CONFIG_PATH and DEPCACHE_PATH on portage prefix
Pick up EPREFIX environment variable
Zac Medico [Tue, 18 Jun 2013 17:57:20 +0000 (10:57 -0700)]
portage.5: repos.conf: document priority
Zac Medico [Tue, 18 Jun 2013 17:46:59 +0000 (10:46 -0700)]
RepoConfigLoader: fix main-repo priority default
This ensures that the main-repo default priority is set to -1000
in all cases where it's appropriate.
Zac Medico [Tue, 18 Jun 2013 16:35:23 +0000 (09:35 -0700)]
portage.5: repos.conf: document main-repo
Zac Medico [Tue, 18 Jun 2013 16:13:43 +0000 (09:13 -0700)]
RepoConfigLoader: delete repo if location missing
Zac Medico [Tue, 18 Jun 2013 15:48:16 +0000 (08:48 -0700)]
RootConfig.update: call delattr when appropriate
Zac Medico [Tue, 18 Jun 2013 14:58:52 +0000 (07:58 -0700)]
RootConfig: mtimedb AttributeError, bug #473710
Zac Medico [Mon, 17 Jun 2013 05:59:02 +0000 (22:59 -0700)]
action_build: remove useless --ask autoclean
This autoclean invocation would should have no effect anyway, unless
the vdb happens to be in an inconsistent state due to a previously
interrupted emerge (relatively rare).
Zac Medico [Sun, 16 Jun 2013 01:22:31 +0000 (18:22 -0700)]
Show blocker parents for non slot-conflict pkgs.
Show parents for packages involved in blocker conflicts but not
directly involved in slot conflicts, since this information may be
helpful for troubleshooting blocker conflicts. This information had
been hidded when there were unrelated simultaneous slot conflicts,
since commit
77b651300731ec007cd535a83b8ee9a898602783.
Zac Medico [Sat, 15 Jun 2013 23:33:36 +0000 (16:33 -0700)]
run_action: use emerge_config attrs, not locals
Zac Medico [Sat, 15 Jun 2013 00:11:50 +0000 (17:11 -0700)]
Show unevaluated atom in blocker parent display.
Zac Medico [Thu, 13 Jun 2013 18:53:57 +0000 (11:53 -0700)]
emerge --autounmask-write: chk_updated_cfg_files
Instead of suggesting to call dispatch-conf, call chk_updated_cfg_files
in order to display a config update message when appropriate.
Zac Medico [Thu, 13 Jun 2013 00:14:37 +0000 (17:14 -0700)]
man/make.conf.5: mention RSYNC_PROXY
Zac Medico [Mon, 10 Jun 2013 04:01:26 +0000 (21:01 -0700)]
_emerge_config: simplify __getitem__
Zac Medico [Mon, 10 Jun 2013 03:50:16 +0000 (20:50 -0700)]
_emerge_config: implement __iter__
Zac Medico [Mon, 10 Jun 2013 00:50:07 +0000 (17:50 -0700)]
dep_check: remove redundant list copy
There's no need to copy the list before calling dep_wordreduce, since
dep_wordreduce copies the list internally.
Zac Medico [Sun, 9 Jun 2013 23:29:09 +0000 (16:29 -0700)]
man/portage.5: remove /etc/make.conf references
Since /etc/portage/make.conf supersedes /etc/make.conf, there's no need
to mention /etc/make.conf here anymore (it's still mentioned in
make.conf(5) though).
Zac Medico [Sun, 9 Jun 2013 01:17:34 +0000 (18:17 -0700)]
emerge_main: call portdbapi destructors
Zac Medico [Sun, 9 Jun 2013 00:22:50 +0000 (17:22 -0700)]
match_from_list: =* op with revision, bug #467826
Zac Medico [Sat, 8 Jun 2013 20:45:25 +0000 (13:45 -0700)]
emerge_main: hold large objects in emerge_config
This allows emerge_main to avoid having direct local references to
large local objects (like "settings" and "trees"), making it easier to
ensure that stale objects can be garbage collected when other functions
refresh the config with calls to load_emerge_config(). This will be
much more flexible than the "gc_locals" approach that was introduce in
commit
e9fd283aedf54e2effc73f4157524fe9a26993c0.
Zac Medico [Sat, 8 Jun 2013 11:47:01 +0000 (04:47 -0700)]
emerge --metadata/regen: flush portdbapi cache
Zac Medico [Sat, 8 Jun 2013 11:08:47 +0000 (04:08 -0700)]
close_portdbapi_caches: portage.db atexit hook
The python interpreter does _not_ guarantee that destructors are
called for objects that remain when the interpreter exits, so we
use an atexit hook to call destructors for any global portdbapi
instances that may have been constructed.
Zac Medico [Sat, 8 Jun 2013 05:47:48 +0000 (22:47 -0700)]
porttree._dummy_list: fix infinite recursion
Zac Medico [Sat, 8 Jun 2013 02:48:51 +0000 (19:48 -0700)]
_iter_match_use: construct _pkg_str instances
Now _match_use does not have to construct them itself.
Zac Medico [Sat, 8 Jun 2013 01:32:01 +0000 (18:32 -0700)]
cache/template.py: call self.sync() from __del__
This allows portdbapi.portdbapi_instances to be eliminated, which is
nice because we no longer has to be so careful to avoid memory leaks
involving this variable. It was not just annoying for portage
internals, but also for any API consumers that needed to create/destroy
many portdbapi instances.
Arfrever Frehtes Taifersar Arahesis [Fri, 7 Jun 2013 20:41:28 +0000 (22:41 +0200)]
portage.dbapi.dbapi._match_use(): Use _emerge.Package.Package._iuse.get_real_flag().
It fixes support for USE aliases in:
best_version
has_version
emerge --keep-going
emerge --resume
Arfrever Frehtes Taifersar Arahesis [Fri, 7 Jun 2013 20:31:59 +0000 (22:31 +0200)]
portage.package.ebuild._config.UseManager.UseManager.getUseAliases(): Accept pkg argument of type str.
Zac Medico [Sun, 2 Jun 2013 22:42:38 +0000 (15:42 -0700)]
treewalk: skip CHOST warning for binary packages
The CHOST of a binary package does not necessarily match the make.conf
setting, especially if ACCEPT_CHOSTS is configured to match other CHOST
values.
Zac Medico [Sat, 1 Jun 2013 00:16:34 +0000 (17:16 -0700)]
depgraph.display(): handle reverse for --tree
This factors --tree logic out of the calling code, and allows
optimization of _show_merge_list to use reference comparison instead
of == comparison. Also, deprecate the unused depgraph.altlist()
"reversed" parameter, due to builtin name collision.
Zac Medico [Fri, 31 May 2013 23:24:32 +0000 (16:24 -0700)]
depgraph: tuple display list, avoid copies
TODO: Optimize _show_merge_list to use reference comparison more
instead of == comparison.
Zac Medico [Fri, 31 May 2013 22:43:07 +0000 (15:43 -0700)]
depgraph: buidpkgonly error earlier, bug #471910
Zac Medico [Fri, 24 May 2013 19:00:00 +0000 (12:00 -0700)]
repoman: deprecate mono.eclass, bug #471184
Zac Medico [Fri, 24 May 2013 18:12:23 +0000 (11:12 -0700)]
_find_bad_atoms: use insert_category_into_atom
This shares/aligns logic with is_valid_package_atom.
Zac Medico [Fri, 24 May 2013 18:02:22 +0000 (11:02 -0700)]
Atom: handle invalid */foo-version wildcard
Before, a wildcard atom could be treated as valid even though it
specified a version without an operator, as reported at here:
https://forums.gentoo.org/viewtopic-p-
7314746.html#
7314746
Zac Medico [Fri, 24 May 2013 04:43:11 +0000 (21:43 -0700)]
repoman: check for deprecated EAPIs, bug #470670
This adds support for repo.eapi.banned (fatal) and repo.eapi.deprecated
(warning) checks which are controlled by eapis-banned and
eapis-deprecated settings in a repository's metadata/layout.conf.
Zac Medico [Fri, 24 May 2013 02:23:17 +0000 (19:23 -0700)]
man/emerge.1: --resume uses mtimedb
Zac Medico [Fri, 24 May 2013 00:06:32 +0000 (17:06 -0700)]
fetch: correctly handle file name without scheme
Before, the file name would be passed directly to FETCHCOMMAND as
though it were a valid URI. Now, FETCHCOMMAND will only be called when
there is a valid URI or a mirror to try.
Zac Medico [Tue, 21 May 2013 21:37:13 +0000 (14:37 -0700)]
ecompressdir: indirect symlinks, bug #470916
Zac Medico [Mon, 20 May 2013 15:30:13 +0000 (08:30 -0700)]
*_DEFAULT_OPTS: shlex for embedded quotes
Zac Medico [Sun, 19 May 2013 17:25:21 +0000 (10:25 -0700)]
EMERGE_DEFAULT_OPTS: shlex for embedded quotes
Zac Medico [Sat, 18 May 2013 23:53:01 +0000 (16:53 -0700)]
test_getconfig: sync FETCHCOMMAND_SFTP/SSH
Zac Medico [Sat, 18 May 2013 23:24:58 +0000 (16:24 -0700)]
Fix RESTRICT=test message for bug #469332.
Zac Medico [Sat, 18 May 2013 22:24:05 +0000 (15:24 -0700)]
Support PORTAGE_SSH_OPTS, bug #470002.
Additional ssh options to be used when portage executes ssh or sftp.
This variable supports use of embedded quote characters to quote
whitespace or special shell characters within arguments (embedded
quotes must be escaped in make.conf settings).
Zac Medico [Sat, 18 May 2013 19:21:38 +0000 (12:21 -0700)]
RELEASE-NOTES: ACCEPT_RESTRICT in 2.1.12
Ryan Hill [Sat, 18 May 2013 18:57:28 +0000 (11:57 -0700)]
Flag -Wsizeof-pointer-memaccess warnings.
This will fix bug #470224.
Zac Medico [Sat, 18 May 2013 18:47:03 +0000 (11:47 -0700)]
docs: metadata/cache is now md5-cache bug #470154
Zac Medico [Sat, 18 May 2013 18:16:14 +0000 (11:16 -0700)]
JobStatusDisplay: fix tigetstr for pypy-2.0_beta2
This will fix bug #470258.
Zac Medico [Sat, 18 May 2013 12:29:20 +0000 (05:29 -0700)]
EbuildBuild: don't digest if fetch failed
Zac Medico [Sat, 18 May 2013 12:20:23 +0000 (05:20 -0700)]
Fix emerge --fetch --digest for bug #470238.
Zac Medico [Sat, 18 May 2013 11:34:01 +0000 (04:34 -0700)]
doebuild: fix emerge --fetchonly FEATURES=digest
This removes obsolete parallel-fetch code which is no longer needed,
since EbuildFetcher no longer calls doebuild.
tomboy64 [Fri, 17 May 2013 16:06:40 +0000 (09:06 -0700)]
man/make.conf.5: SYNC ssh examples, bug #470152
Zac Medico [Fri, 17 May 2013 02:06:41 +0000 (19:06 -0700)]
PORTAGE_BINHOST: sftp with FETCHCOMMAND_SFTP
Do not generate the sftp command for downloading the Packages file, and
simply use the FETCHCOMMAND_SFTP setting.
Zac Medico [Wed, 15 May 2013 22:27:38 +0000 (15:27 -0700)]
repoman: use FETCHCOMMAND for metadata.dtd
Zac Medico [Wed, 15 May 2013 21:23:09 +0000 (14:23 -0700)]
man/ebuild.5: note that PROVIDE is deprecated
Vladimir Romanov [Wed, 15 May 2013 20:21:16 +0000 (13:21 -0700)]
dispatch-conf: fix python2-style print call
Vladimir Romanov [Wed, 15 May 2013 20:16:21 +0000 (13:16 -0700)]
archive-conf: rename vars to avoid builtin names
Vladimir Romanov [Wed, 15 May 2013 18:01:05 +0000 (11:01 -0700)]
Remove unused imports, bug #469022
Zac Medico [Wed, 15 May 2013 17:31:31 +0000 (10:31 -0700)]
Default FEATURES=preserve-libs for portage-2.1.12
Zac Medico [Wed, 15 May 2013 07:39:47 +0000 (00:39 -0700)]
PORTAGE_BINHOST: https FETCHCOMMAND, bug #469888
Don't use urlopen for https, since it doesn't support
certificate/hostname verification (bug #469888).
Zac Medico [Tue, 14 May 2013 00:30:05 +0000 (17:30 -0700)]
env_update: ensure_dirs, encode filename
Mike Frysinger [Sat, 11 May 2013 19:31:48 +0000 (15:31 -0400)]
env-update: change prelink to use /etc/prelink.conf.d/portage.conf
Newer prelinks can support /etc/prelink.conf.d/ files. So that prelink
can install /etc/prelink.conf and manage it itself, have env-update only
write /etc/prelink.conf.d/portage.conf instead of clobbering the main
/etc/prelink.conf file.
This should be backwards compatible as portage will conditionally change
/etc/prelink.conf to use the new /etc/prelink.conf.d/ too.
URL: http://bugs.gentoo.org/266855
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Zac Medico [Sun, 12 May 2013 20:52:06 +0000 (13:52 -0700)]
dohtml: restore cwd for __helpers_die
Zac Medico [Sun, 12 May 2013 20:47:42 +0000 (13:47 -0700)]
dohtml: safe cwd, bug #469338
Zac Medico [Sun, 12 May 2013 20:21:38 +0000 (13:21 -0700)]
check-implicit-pointer-usage: safe cwd bug 469338
Zac Medico [Sun, 12 May 2013 20:11:50 +0000 (13:11 -0700)]
filter_readonly_variables: safe cwd, bug #469338
Zac Medico [Sun, 12 May 2013 19:47:46 +0000 (12:47 -0700)]
ebuild.sh: use PORTAGE_PYM_PATH as default cwd
Zac Medico [Sun, 12 May 2013 11:09:14 +0000 (04:09 -0700)]
ebuild-ipc: use safe cwd for import, bug #469338
Zac Medico [Fri, 10 May 2013 04:09:04 +0000 (21:09 -0700)]
metadata.dtd: update to latest
Zac Medico [Tue, 7 May 2013 03:49:12 +0000 (20:49 -0700)]
binarytree: evaluate RESTRICT conditionals
Zac Medico [Mon, 6 May 2013 08:18:06 +0000 (01:18 -0700)]
binarytree: index RESTRICT, for ACCEPT_RESTRICT
Zac Medico [Fri, 3 May 2013 03:45:39 +0000 (20:45 -0700)]
Support ACCEPT_RESTRICT for bug #467622.
Zac Medico [Fri, 3 May 2013 02:21:16 +0000 (19:21 -0700)]
_getMissingProperties: remove || support
PROPERTIES is not allowed to contain ||, according to PMS.
Zac Medico [Fri, 3 May 2013 01:52:23 +0000 (18:52 -0700)]
Silence embedded profile warning for bug #467142.
Zac Medico [Wed, 1 May 2013 23:44:18 +0000 (16:44 -0700)]
Support RESTRICT=preserve-libs, bug #364427
Note than when a package is merged, RESTRICT=preserve-libs applies if
*either* the new instance or the old instance sets
RESTRICT=preserve-libs.
Also note that when the user has preserve-libs enabled, the
--depclean-lib-check option may now kick in if one of the packages
selected for unmerge sets RESTRICT=preserve-libs.
Zac Medico [Wed, 1 May 2013 21:05:15 +0000 (14:05 -0700)]
man/emerge: clarify --rebuild-if-new-slot #467924
Zac Medico [Wed, 1 May 2013 04:00:52 +0000 (21:00 -0700)]
Use non-greedy findConsumers for bug #467896.
This fixes the preserve-libs display and @preserved-rebuild to omit
library consumers that are satisfied by alternative providers.
Zac Medico [Tue, 30 Apr 2013 05:06:40 +0000 (22:06 -0700)]
bin/misc-functions.sh: use pipe for find ${D}${D}
Zac Medico [Tue, 30 Apr 2013 04:53:49 +0000 (21:53 -0700)]
bin/misc-functions.sh: normalize ${D%/}${D} slash
This will fix bug #467886.
Zac Medico [Mon, 29 Apr 2013 04:26:45 +0000 (21:26 -0700)]
repoman: report --ignore/include-arches commits
Mike Frysinger [Mon, 29 Apr 2013 00:08:33 +0000 (20:08 -0400)]
tests: clean up style a bit (mostly poor/inconsistent spacing)
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Zac Medico [Sun, 28 Apr 2013 22:39:24 +0000 (15:39 -0700)]
get_open_fds: use /dev/fd or /proc/self/fd
Since /dev/fd is supposed to be a fairly standard unix feature, try
that first.
Zac Medico [Sun, 28 Apr 2013 22:05:44 +0000 (15:05 -0700)]
repoman: add --include-arches, bug #466116
Vladimir Romanov [Wed, 24 Apr 2013 03:51:00 +0000 (20:51 -0700)]
Add man/ru/dispatch-conf.1
Vladimir Romanov [Wed, 24 Apr 2013 03:46:59 +0000 (20:46 -0700)]
man/dispatch-conf.1: reflow text
Zac Medico [Tue, 23 Apr 2013 03:19:08 +0000 (20:19 -0700)]
man/make.conf.5: document DCO_SIGNED_OFF_BY
Signed-off-by: Zac Medico <zmedico@gentoo.org>
Robin H. Johnson [Mon, 22 Apr 2013 23:08:51 +0000 (23:08 +0000)]
Add preliminary DCO_SIGNED_OFF_BY support for DCO Signed-off-by footer.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
Robin H. Johnson [Mon, 22 Apr 2013 23:08:50 +0000 (23:08 +0000)]
Refactor PORTAGE_GPG_KEY.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
Michał Górny [Sat, 20 Apr 2013 17:22:48 +0000 (19:22 +0200)]
Deprecate python.eclass & distutils.eclass.
Zac Medico [Mon, 22 Apr 2013 21:02:13 +0000 (14:02 -0700)]
Don't filter SHELL from bash env, bug #466844.
Zac Medico [Mon, 22 Apr 2013 16:35:27 +0000 (09:35 -0700)]
search: fix RuntimeError: No active exception
Zac Medico [Tue, 16 Apr 2013 19:26:02 +0000 (12:26 -0700)]
bin/ebuild: tweak FEATURES=digest logic
Zac Medico [Tue, 16 Apr 2013 18:15:56 +0000 (11:15 -0700)]
bin/ebuild: only digest once for FEATURES=digest
Zac Medico [Tue, 16 Apr 2013 14:00:45 +0000 (07:00 -0700)]
movefile: remove source symlink/hardlink after mv
Aviv Keshet [Fri, 12 Apr 2013 00:51:34 +0000 (17:51 -0700)]
refactor contents file writing to its own function
This CL refactors out the functionality of writing a contents dicionary
to file. That functionality is required by a change in the chromeos
chromite repository.
BUG=chromium:229234
TEST=None
Change-Id: I851724408b1d10827eee2ea8d67bdca9ad90c455
Zac Medico [Fri, 12 Apr 2013 07:20:35 +0000 (00:20 -0700)]
repoman: fix random package.use.stable.* failure
It failed to work randomly, since setcpv did not always use the correct
value for the effective ACCEPT_KEYWORDS of the current profile.
Zac Medico [Thu, 11 Apr 2013 23:13:49 +0000 (16:13 -0700)]
depgraph: don't _skip_restart for blockers
This prevents blockers from interfering with backtracking, as reported
in bug #465356, comment #15.
Zac Medico [Thu, 11 Apr 2013 17:51:08 +0000 (10:51 -0700)]
Revert "Add a QA check for systemd unit file install."
This reverts commit
dd2d661078771a41d4fd554c2bc3b1188ce7b53e.
Forcing use of a specific eclass is too restrictive. It would be better
to use a variable to control a warning like this. See bug #465562.
Zac Medico [Mon, 8 Apr 2013 00:32:11 +0000 (17:32 -0700)]
man/make.conf.5: noauto sources ebuild each phase
Zac Medico [Thu, 4 Apr 2013 16:47:49 +0000 (09:47 -0700)]
man/emerge.1: move --digest to option section