aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Colorize packages in user sets (bug 577720)Adam Mills2016-04-251-0/+1
| | | | | | | | | | | | | | Three new settings were added to /etc/portage/color.map: PKG_MERGE_USER_SET, PKG_BINARY_MERGE_USER_SET, and PKG_NOMERGE_USER_SET. These colors are applied when the package is selected from a set in /etc/portage/sets/ X-Gentoo-bug: 577720 X-Gentoo-bug-url: https://bugs.gentoo.org/show_bug.cgi?id=577720 Signed-off-by: Alexander Berntsen <bernalex@gentoo.org> Acked-by: Zac Medico <zmedico@gentoo.org> Reviewed-by: Alexander Berntsen <bernalex@gentoo.org>
* Add sync-git-clone-extra-opts and sync-git-pull-extra-optsBrian Dolbec2016-03-101-0/+6
| | | | | | | | | | | | From f3ae0003f8cb0c5f4fc8728254ee05bda38d7304 Mon Sep 17 00:00:00 2001 From: Ross Konsolebox <konsolebox@gmail.com> Date: Sun, 24 Jan 2016 16:27:36 +0800 Subject: [PATCH] Add sync-git-clone-extra-opts and sync-git-pull-extra-opts This allows a user more flexibility when using overlays. Such as forcing or rebasing the pull due to local changes. It then allows any possible git options to be passed as needed for clone or pull operations. This is not something that would be commonly used or supported for the gentoo tree.
* Revert "Support environmental variables overriding parts (...)."Michał Górny2015-12-131-15/+4
| | | | | | This reverts commit 10cccf7e0a1423f77a0962bcd7bf9658d2a15343. The commit was unreviewed, the design is controversial and lacked proper discussion.
* Revert unreviewed and breaking changes done by ArfreverMichał Górny2015-12-091-1/+0
| | | | | | Reverts: e7d95cb ("Support location with trailing whitespace [...]") Reverts: 7853950 ("Delete support for PORTDIR and PORTDIR_OVERLAY [...]") Reverts: 31923f4 ("Skip some warnings for Portage Python [...]")
* portage.repository.config.RepoConfig: Support location with trailing ↵Arfrever Frehtes Taifersar Arahesis2015-12-091-0/+1
| | | | | | whitespace by using quoting. configparser.ConfigParser strips initial and trailing whitespace.
* Support environmental variables overriding parts of configuration of ↵Arfrever Frehtes Taifersar Arahesis2015-12-011-4/+15
| | | | | | | | repositories. PORTAGE_REPOSITORY:${repository_name}:${attribute} overrides value of given attribute. PORTAGE_ADDED_REPOSITORIES specifies names of repositories added to configuration. PORTAGE_DELETED_REPOSITORIES specifies names of repositories deleted from configuration.
* repos.conf: support sync-hooks-only-on-change attribute (bug 565172)Zac Medico2015-11-101-1/+6
| | | | | | | | | | | | | | If sync-hooks-only-on-change is set to true, do not trigger postsync hooks unless hooks would have executed for a master repository or the repository has changed since the previous sync operation. If the user has not explicitly enabled sync-hooks-only-on-change in repos.conf, then execute all hooks regardless of whether or not anything has changed (for backward compatibility). X-Gentoo-Bug: 565172 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=565172 Acked-by: Brian Dolbec <dolsen@gentoo.org>
* RsyncSync: add sync-rsync-vcs-ignore option (bug 296085)Zac Medico2015-08-301-0/+6
| | | | | | | | | | If "sync-rsync-vcs-ignore = true" is set in repos.conf, then ignore any vcs directories that may be present. It is the user's responsibility to set sync-rsync-extra-opts to protect vcs directories if appropriate. X-Gentoo-Bug: 296085 X-Gentoo-Bug-url: https://bugs.gentoo.org/show_bug.cgi?id=296085 Acked-by: Brian Dolbec <dolsen@gentoo.org>
* sync: Enable to set rsync extra opts per repositoryÉtienne Buira2015-07-141-0/+5
|
* binpkg-multi-instance 7 of 7Zac Medico2015-03-041-2/+6
| | | | | | | | | | | | | | | | | | | | | | Support "profile-formats = build-id" setting for layout.conf. When this is enabled in layout.conf of the containing repository, a dependency atom in the profile can refer to a specific build, using the build-id that is assigned when FEATURES=binpkg-multi-instance is enabled. A build-id atom is identical to a version-specific atom, except that the version is followed by a hyphen and an integer build-id. With the build-id profile format, it is possible to assemble a system using specific builds of binary packages, as users of "binary" distros might be accustomed to. For example, an atom in the "packages" file can pull a specific build of a package into the @system set, and an atom in the "package.keywords" file can be used to modify the effective KEYWORDS of a specific build of a package. Refering to specific builds can be useful for a number of reasons. For example, if a particular build needs to undergo a large amount of testing in a complex environment in order to verify reliability, then it can be useful to lock a profile to a specific build that has been thoroughly tested.
* man: fix bold style with man page sectionsMike Frysinger2015-02-261-1/+1
| | | | The section number should not be bolded like the main page.
* man/portage.5: document sets.conf (bug 541188)Zac Medico2015-02-231-1/+48
| | | | | | | | | | This documents /etc/portage/sets.conf, /usr/portage/sets.conf, and /usr/share/portage/config/sets. It refers to "Package Set Configuration" section of the html documentation for more information. X-Gentoo-Bug: 541188 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=541188 Acked-by: Brian Dolbec <dolsen@gentoo.org>
* depgraph: soname dependency resolution (bug 282639)Zac Medico2015-02-131-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Soname dependency resolution is disabled by default, since it will not work correctly unless all available installed and binary packages have been built by a version of portage which generates REQUIRES and PROVIDES metadata. Soname dependency resolution is enabled when --ignore-soname-deps=n is specified, and one of the following is true: * --usepkgonly option is enabled * removal actions (--depclean and --prune) Soname dependencies are automatically ignored for dependency calculations that can pull unbuilt ebuilds into the dependency graph, since unbuilt ebuilds do not have any soname dependency metadata, making it impossible to determine whether an unresolved soname dependency can be satisfied. Therefore, --usepkgonly must be used in order to enable soname depedency resolution when installing packages. A new soname.provided file is supported for profiles, making it possible to selectively ignore soname dependencies (see the portage(5) man page). When soname dependency resolution is enabled, the soname dependencies are represented as SonameAtom instances which expose an interface that is minimally compatible with Atom instances. This allows both types of atoms to be satisfied using mostly the same mechanisms, with minimal use of conditional logic to handle the differences. Both atom classes have "soname" and "package" attributes that make it convenient for conditional code to distinguish package atoms and soname atoms. Both classes also implement a match method, so that it is possible to match a Package instance using identical syntax for both types of atoms. Since soname dependencies and slot-operator := dependencies share many properties, the slot-operator rebuild code has been generalized to handle both types of dependencies. Many of the existing unit tests involving slot-operator dependencies have been copied and adapted to test soname dependencies (the new tests are located in the pym/portage/tests/resolver/soname/ directory). X-Gentoo-Bug: 282639 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=282639 Acked-by: Brian Dolbec <dolsen@gentoo.org>
* Generate soname dependency metadata (bug 282639)Zac Medico2015-02-131-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Generate soname dependency metadata for binary and installed packages, in the form of PROVIDES and REQUIRES metadata. It is useful to generate PROVIDES and REQUIRES metadata now, so that it will be available when dependency resolver support is added in the future. Note that slot-operator dependencies will not be able to serve as a substitute for soname dependencies for the forseeable future, because system dependencies are frequently unspecified (according to Gentoo policy). The PROVIDES/REQUIRES system is very similar to the automatic Requires and Provides system which is supported by RPM. The PROVIDES/REQUIRES metadata is generated automatically from the ELF files that are installed by a package. The PROVIDES/REQUIRES syntax is described in the /var/db/pkg section of the portage(5) man page. REQUIRES_EXCLUDE and PROVIDES_EXCLUDE ebuild variables allow for filtering of the sonames that are saved in REQUIRES and PROVIDES (see the ebuild(5) man page for details). The /var/db/pkg NEEDED.ELF.2 format now includes an additional field which indicates the multilib category, as discussed in bug #534206. The multilib category is used to categorize the sonames that are listed in PROVIDES/REQUIRES metadata, since sonames need to be resolved separately for each multilib category. The complete list of supported multilib categories is documented in the comments of the portage.dep.soname.multilib_category module. X-Gentoo-Bug: 282639 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=282639 Acked-by: Brian Dolbec <dolsen@gentoo.org>
* man/portage.5: Add missing valid sync-type'sBrian Dolbec2015-02-051-4/+4
| | | Fix some missed - escapes.
* man/portage.5 Final updates for sync changesBrian Dolbec2015-02-041-1/+31
|
* Support USE_EXPAND prefixes in package.use and relevant filesMichał Górny2015-01-311-0/+6
| | | | | | | | | | | | | Support prefixing groups of USE_EXPAND flags with 'USE_EXPAND:' in user configuration package.use and similar files. This provides a convenient way of declaring specifying multiple USE_EXPAND flags and matches the syntax supported by Paludis. Example: dev-util/netbeans NETBEANS_MODULES: php webcommon extide media-libs/mesa osmesa VIDEO_CARDS: intel nouveau X-Gentoo-Bug: 471776 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=471776
* Fix typo breaking the portage(5) manpageMichał Górny2015-01-241-1/+1
|
* sync: support sync-depth for DVCS-es (git --depth)Michał Górny2015-01-181-1/+5
| | | | | | Support sync-depth with the default set to 1. This allows the user to reduce the number of historical commits fetched along with the repository (git --depth).
* Allow virtuals in package.providedMichał Górny2015-01-121-7/+0
| | | | | | | | | With new-style virtuals, there is no reason to enforce special rules to virtuals in package.provided. If user wishes to implicitly provide the virual package, we should not forbid him. Of course, he knows the implications. Reviewed-By: Zac Medico <zmedico@gentoo.org>
* man pages: note that make.conf can be a directory (463266)Zac Medico2015-01-051-2/+3
| | | | | | | | | | | | Commit 86e75790954e766beba75443d967b2c25055c5b0 added support for make.conf to be a directory, but the feature was undocumented. Therefore, update the man pages, as suggested in bug #465164, comment #9. Fixes 86e75790954e ("make.conf: recurse directories, bug #463266") X-Gentoo-Bug: 463266 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=463266 Acked-by: Alexander Berntsen <bernalex@gentoo.org>
* Support override of default profile EAPI (532670)Zac Medico2014-12-301-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for a profile-default-eapi flag in the metadata/layout.conf profile-formats field. When this flag is enabled, it enables support for a profile_eapi_when_unspecified attribute which can be used to specify the default EAPI to use for profile directories that do not contain an eapi file. For example, the following settings will cause all profiles that do not contain an eapi file to default to EAPI 5 instead of EAPI 0: profile-formats = profile-default-eapi profile_eapi_when_unspecified = 5 This is convenient for organizations that maintain their own profiles in separate repositories from Gentoo, since they typically want to use EAPI 5 for all of their profiles, and this allows them to avoid having separate eapi files in each directory of their profiles. The name of the profile_eapi_when_unspecified attribute is inherited from Paludis, which has supported this attribute in exheres repositories for many years. The implementation may seem a bit messy because it needs to account for 3 different types of profile nodes: * Regular profile nodes * User profile override directory in /etc/portage/profile * The root "profiles" directory, which is not really a profile node, but is used for repository-level configurations (package.mask being the most common example used by Gentoo) The default EAPI setting is stored in the RepoConfig.eapi attribute, which is used as the "default" parameter for all read_corresponding_eapi_file calls. Each profile node in LocationsManager.profiles_complex now has an eapi attribute which serves to cache the computed EAPI for that node, allowing redundant read_corresponding_eapi_file calls to be eliminated. As a result, functions such as grabfile_package now have eapi and eapi_default parameters, where eapi is used to pass in a cached EAPI, and eapi_default is used to pass in a default for read_corresponding_eapi_file to use when a cached EAPI is not available. For /etc/portage/profile, the EAPI is considered to have a default value of None, which means that atoms from any supported EAPI are allowed. X-Gentoo-Bug: 532670 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=532670 Acked-by: Alexander Berntsen <bernalex@gentoo.org>
* Support @profile package set for bug #532224Zac Medico2014-12-111-9/+24
| | | | | | | | | | | | | | | | | | | | | | Add support for a new @profile set which allows the profile to pull in additional packages that do not belong to the @system set. The motivation to have @profile separate from @system is that @system packages may have incomplete dependency specifications (due to long-standing Gentoo policy), and incomplete dependency specifications have deleterious effects on the ability of emerge --jobs to parallelize builds. So, unlike @system, packages added to @profile do not hurt emerge --jobs parallelization. Packages are added to the @profile set in the same way that they are added to the @system set, except that atoms in the @profile set are not preceded with a '*' character. Also, the @profile package set is only supported when 'profile-set' is listed in the layout.conf profile-formats field of the containing repository. X-Gentoo-Bug: 532224 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=532224 Acked-by: Alexander Berntsen <bernalex@gentoo.org>
* Add egencache --update-pkg-desc-index action.Zac Medico2014-12-071-0/+12
| | | | | | | | | | This adds an egencache --update-pkg-desc-index action which generates a plain-text index of package names, versions, and descriptions. The index can then be used to optimize emerge --search / --searchdesc actions. X-Gentoo-Bug: 525718 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=525718
* sync: allow overriding sync-user for the repositoryMichał Górny2014-12-071-0/+12
|
* sync: allow overriding sync-umask for the repositoryMichał Górny2014-12-071-0/+5
|
* man: Update man pages with new sync infoBrian Dolbec2014-12-041-0/+10
| | | | | | man/portage.5: Add the new auto-sync variable. man/emaint.1: Add the new sync module. man/emerge.1: Update the --sync action.
* package.bashrc: per profile, per-package bashrc mechanismBertrand SIMONNET2014-10-241-1/+29
| | | | | | Profiles can define per-package bashrc files to be sourced before emerging. Each line in package.bashrc must be an atom name then a list of space-delimited bashrc files (stored in $profile/bashrc/).
* Update dates in recently changed files.Arfrever Frehtes Taifersar Arahesis2014-02-281-1/+1
|
* Revert "Add support for the following attributes in layout.conf to allow more"Brian Dolbec2014-02-091-64/+12
| | | | | This reverts commit 4c409a049c394389b1de398db511380e2fed0437. This needs to be submitted for review and approval.
* Add support for the following attributes in layout.conf to allow moreArfrever Frehtes Taifersar Arahesis2014-01-181-12/+64
| | | | | | | | | precise configuration of inheritance of settings from repositories: eclass-masters package.mask-masters use.aliases-masters use.force-masters use.mask-masters
* Document PORTAGE_REPOSITORIES.Arfrever Frehtes Taifersar Arahesis2014-01-081-0/+3
|
* Delete some references to deprecated PORTDIR and PORTDIR_OVERLAY variables ↵Arfrever Frehtes Taifersar Arahesis2014-01-061-18/+17
| | | | in documentation.
* portage(5): layout.conf: clarify profile-formats keyMike Frysinger2014-01-051-2/+3
| | | | Reported-by: Sebastian Luther <SebastianLuther@gmx.de>
* portage(5): layout.conf: add a proper format/attributes sectionMike Frysinger2014-01-051-13/+70
| | | | URL: https://bugs.gentoo.org/395359
* Bug #489544: Document empty value of sync-type and sync-uri attributes in ↵Arfrever Frehtes Taifersar Arahesis2013-12-031-2/+8
| | | | repos.conf.
* portage.5: Fix location of note about repos.conf directory.Arfrever Frehtes Taifersar Arahesis2013-12-021-9/+8
|
* man-portage.5 Further document repos.conf fixes bug #491426Alexander Berntsen2013-12-011-3/+4
|
* man/portage.5: fix environment spellingZac Medico2013-08-121-2/+2
|
* man/portage.5: clarify package.env moreZac Medico2013-08-121-2/+5
|
* man/portage.5: Add notes about order, bug #388781Alexander Berntsen2013-08-111-2/+6
|
* man: Remove trailing spacesAlexander Berntsen2013-07-301-76/+76
|
* man: Cap lines at 80 charsAlexander Berntsen2013-07-301-16/+23
|
* Bug #477452: Support force attribute in repos.conf.Arfrever Frehtes Taifersar Arahesis2013-07-241-6/+30
|
* Add anoncvs gentoo-x86 example in documentation of repos.conf.Arfrever Frehtes Taifersar Arahesis2013-07-241-0/+7
|
* Use consistent e-mail address in manuals.Arfrever Frehtes Taifersar Arahesis2013-07-231-1/+1
|
* Add support for multiple repositories in `emerge --sync`.Arfrever Frehtes Taifersar Arahesis2013-07-231-0/+34
| | | | | | | | | Configuration of synchronization is specified by new attributes supported in repos.conf: sync-cvs-repo, sync-type, sync-uri. SYNC variable is no longer supported, since it could not override gentoo.sync-uri attribute now set in default configuration of repositories (/usr/share/portage/config/repos.conf).
* Improve documentation of repos.conf.Arfrever Frehtes Taifersar Arahesis2013-07-221-10/+62
|
* Move default configuration of repositories from ↵Arfrever Frehtes Taifersar Arahesis2013-07-131-3/+9
| | | | | | /usr/share/portage/config/make.globals to /usr/share/portage/config/repos.conf.
* man/portage.5: clarify package.provided virtualsZac Medico2013-07-061-2/+4
|