| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
(bug 781854)
If PORTAGE_LOG_FILTER_FILE_CMD fails after exec, then output
will be lost. Therefore, suggest to use bash as a supervisor,
with fallback to cat.
Bug: https://bugs.gentoo.org/781854
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
| |
cnf/sets/portage.conf: add exclude-files=/usr/src/linux* in module-rebuild set
Closes: https://github.com/gentoo/portage/pull/694
Signed-off-by: Dave Hughes <davidhughes205@gmail.com>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
| |
This commit removes the variable localtree, which is assigned once
to point to vartree and then never modified.
Closes: https://github.com/gentoo/portage/pull/705
Signed-off-by: Felix Bier <felix.bier@rohde-schwarz.com>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
| |
This commit reuses the already existing helper variable quiet
to avoid rechecking if --quiet is contained in myopts.
Signed-off-by: Felix Bier <felix.bier@rohde-schwarz.com>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
| |
This commit adds unit tests for verifying the unmerge order
that is calculated by unmerge_display().
Signed-off-by: Felix Bier <felix.bier@rohde-schwarz.com>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit changes the order in which packages are uninstalled
with --unmerge to be deterministic.
Before this commit, when an atom specified with --unmerge matches
multiple versions, these versions were uninstalled in a random order.
For example, when some-pkg-1.0.0 and some-pkg-2.0.0 are installed,
then running emerge --unmerge some-pkg will unmerge 1.0.0 and 2.0.0
in a random order.
With this commit, when an atom matches multiple versions,
they are uninstalled in a sorted order. So in the above example,
1.0.0 will be unmerged before 2.0.0.
This does not affect the order specified on the command-line,
for example when running:
emerge --unmerge =some-pkg-2.0.0 =some-pkg-1.0.0
that order is respected, as before this commit.
Similarly, when uninstalling multiple different packages, e.g.:
emerge --unmerge some-pkg some-other-pkg
the sorting only applies to the versions matching each atom,
so the versions matching some-pkg are sorted separately from
the versions matching some-other-pkg, and since some-pkg
is specified before some-other-pkg, its versions will be
uninstalled first.
Motivation: When a package has a custom pkg_postrm hook, uninstalling
multiple versions in a random order can leave the filesystem in a
different state depending on which version is uninstalled last.
When running emerge as part of a larger build system such as catalyst,
this is an obstacle towards reproducible builds.
Bug: https://bugs.gentoo.org/782724
Signed-off-by: Felix Bier <felix.bier@rohde-schwarz.com>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit changes the function _shell_quote to ensure more
special characters are quoted correctly.
Without this commit, the following error message occurs when attempting
to merge an ebuild that inherits from an eclass contained in a
repository located in a filesystem path containing special characters:
.../ebuild.sh: eval: line 604: syntax error near unexpected token `('
.../ebuild.sh: eval: line 604: `PORTAGE_ECLASS_LOCATIONS=(/var/db/repos/gentoo /home/user/test(v2)/test-overlay)'
The paths that are handled in that line were sanitized with _shell_quote
beforehand, but the list of special characters handled by _shell_quote
did not include (). For this reason, the list has been extended to
handle the following special characters that were not handled before:
;&|(){}[]#!~?
Closes: https://github.com/gentoo/portage/pull/719
Signed-off-by: Felix Bier <felix.bier@rohde-schwarz.com>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
| |
This commit adds unit tests that cover the existing functionality of
_shell_quote, by checking that various special characters are
escaped/quoted correctly.
Signed-off-by: Felix Bier <felix.bier@rohde-schwarz.com>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Having PATH in the systemd user environment created by env-update
makes it impossible to use "systemctl --user import-environment PATH"
to set PATH in systemd user units according to the current value of
PATH. Using "systemctl --user import-environment PATH" is a well known
idiom, and hence should work. Therefore, we skip the creation of the
PATH entry by env-update.
Closes: https://github.com/gentoo/portage/pull/701
Signed-off-by: Florian Schmaus <flo@geekplace.eu>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Closes: https://github.com/gentoo/portage/pull/718
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"dosym -r <target> <link>" will expand the (apparent) path of <target>
relative to the (apparent) path of the directory containing <link>.
The main aim of this is to allow for an absolute path to be specified
as the link target, and the function will count path components and
convert it into a relative path.
Since we're inside ED at this point but the image will finally be
installed in EROOT, we don't try to resolve any pre-existing symlinks
in <target> or <link>. In other words, path expansion only looks at
the specified apparent paths, without touching any actual files in ED
or EROOT.
Bug: https://bugs.gentoo.org/708360
Signed-off-by: Ulrich Müller <ulm@gentoo.org>
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
| |
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/371413
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
| |
Refactor the fetch() function so that fetch/mirror restrictions only
affect the code per-URI rather than globally. This will make it easier
to apply restrictions selectively in EAPI 8.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/657580
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/752486
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/692774
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/744868
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/636652
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/690968
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/199722
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
| |
Closes: https://github.com/gentoo/portage/pull/720
Bug: https://bugs.gentoo.org/520378
Signed-off-by: James Stevenson <james.al.stevenson@gmail.com>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The 'test_network' property can be used to indicate that the test phase
requires access to the Internet (but RESTRICT=test should still be
used). If present, network-sandbox will be disabled throughout the test
phase. This opens up the possibility of adding further 'test_*'
properties.
Additionally, ALLOW_TEST can be used to ignore RESTRICT=test in a subset
of packages. When the value includes 'network' token, tests using
'test_network' property are reenabled. When the value includes 'all'
token, all instances of RESTRICT=test are ignored.
Bug: https://bugs.gentoo.org/553696
Reviewed-by: Zac Medico <zmedico@gentoo.org>
Acked-by: Ulrich Müller <ulm@gentoo.org>
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
| |
Closes: https://github.com/gentoo/portage/pull/707
Bug: https://bugs.gentoo.org/285614
Signed-off-by: James Stevenson <james.al.stevenson@gmail.com>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Reviewed-by: Zac Medico <zmedico@gentoo.org>
Closes: https://github.com/gentoo/portage/pull/638
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
| |
Reviewed-by: Zac Medico <zmedico@gentoo.org>
Closes: https://github.com/gentoo/portage/pull/637
Signed-off-by: Michał Górny <mgorny@gentoo.org>
|
|
|
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/788967
Closes: https://github.com/gentoo/portage/pull/706
Reported-by: Christophe Lermytte <gentoo@lermytte.be>
Signed-off-by: Marco Sirabella <marco@sirabella.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/787542
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/787563
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
| |
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/787545
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/698244
Signed-off-by: Nekun <nekokun@firemail.cc>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/698244
Signed-off-by: Nekun <nekokun@firemail.cc>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
| |
Signed-off-by: Marco Sirabella <marco@sirabella.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is mostly just a POC
While we don't have tests for the testing harness, it does successfully
test all the tests
Used pathlib docs as a reference for translation:
https://docs.python.org/3/library/pathlib.html#correspondence-to-tools-in-the-os-module
Signed-off-by: Marco Sirabella <marco@sirabella.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
| |
Signed-off-by: Marco Sirabella <marco@sirabella.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
| |
The included unit test case previously failed with this error:
emerge: error: unrecognized arguments: dev-libs/A
Bug: https://bugs.gentoo.org/784566
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
| |
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
|
| |
Lazily evaluate cnf_* variables, allowing for mock portage.const
settings created by ResolverPlayground. In ResolverPlayground,
create symlinks for PORTAGE_BIN_PATH scripts inside the mock
EPREFIX, and restore portage.const.EPREFIX in the cleanup method.
Bug: https://bugs.gentoo.org/783957
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
|
|
| |
Update portage.const.EPREFIX in each RepomanRun fork, since
the portage.const PORTAGE_OVERRIDE_EPREFIX logic only executes
when the module is first loaded in the parent process.
Fixes: ba58bc1ae12a ("SimpleRepomanTestCase: collect results from subprocesses")
Bug: https://bugs.gentoo.org/779508
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
| |
Fixes: 3253686e9438 ("emerge: make --binpkg-respect-use=y imply --autounmask-use=n")
Bug: https://bugs.gentoo.org/773469
Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/779967
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
| |
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
| |
Bug: https://bugs.gentoo.org/779055
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
| |
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
| |
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
| |
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
| |
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|
|
|
|
|
|
|
|
| |
When PYTHON_TARGETS changed, the emerge --oneshot portage
suggestion a nuisance, therefore suppress it.
Bug: https://bugs.gentoo.org/722748
Signed-off-by: Zac Medico <zmedico@gentoo.org>
|