Commit message (Collapse)AuthorAgeFilesLines
* portage/repository/config.py: Remove _manifest_cachegkeysBrian Dolbec2015-04-031-4/+1
* repository/config: Add a sigcheck keyword to load_manifestBrian Dolbec2015-04-031-1/+3
| | | | Add sigcheck keyword check to disable the validateSignature() call for the ManifestProcess which creates a manifest.
* portage/repository/config.py: Add loglevel setting to the gkeys instantiationBrian Dolbec2015-04-031-1/+1
* repository/config.py: Update the manifest importBrian Dolbec2015-04-031-1/+1
* Initial refactor moving gkeys to repository/config RepoConfig classBrian Dolbec2015-04-031-7/+29
| | | | | | Move digestcheck to the Manifest class Create portage/package/ebuild/manifest.py: getManifest() to replace digestcheck.py Cache the digestcheck result. Cache the Manifest instances at the repo level.
* portage/repository/config.py: Add missed sign_manifest kwd to kwds passed to ↵Brian Dolbec2015-04-031-0/+1
| | | | Manifest
* binpkg-multi-instance 7 of 7Zac Medico2015-03-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | 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.
* portage/repository/config.py: Tweak deprecation message as recommendedBrian Dolbec2015-02-091-2/+2
| | | | tw04l124 recommended the full filepath be output. http://forums.gentoo.org/viewtopic-t-1010190.html?sid=20fa79230ace312c4ec31a43bbcb0cf3
* portage/repositoy/config.py: Create an auto-sync default of 'yes'Brian Dolbec2015-02-031-1/+1
| | | | | From the news item review comments, the numerous 'sky is falling' type outcries due to the possibility of emerge --sync not actually syncing anything. Although, this new default will likely cause some grief to eix-sync users whom have to re-edit eix's config to disable it from syncing overlays.
* portage/repository/config.py: Update copyrightBrian Dolbec2015-02-021-1/+1
* portage/repository/config.py: typo s/depercated/deprecatedBrian Dolbec2015-02-021-2/+2
* portage/repository/config.py: Deprecate make.conf SYNC variable bug 538512Brian Dolbec2015-02-021-4/+10
| | | | Newer mirrorselect modifies repos.conf, no need for this anymore.
* sync: support sync-depth for DVCS-es (git --depth)Michał Górny2015-01-181-0/+4
| | | | | | 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).
* Support override of default profile EAPI (532670)Zac Medico2014-12-301-4/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-1/+1
| | | | | | | | | | | | | | | | | | | | | | 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>
* sync: allow overriding sync-user for the repositoryMichał Górny2014-12-071-3/+10
* sync: allow overriding sync-umask for the repositoryMichał Górny2014-12-071-4/+12
* RepoConfigLoader.config_string: include auto-syncZac Medico2014-12-041-1/+3
* repository/config.py: Add auto_sync to the override-able variablesBrian Dolbec2014-12-041-2/+4
* portage/repository/config.py: Add auto_sync attributeBrian Dolbec2014-12-041-3/+8
| | | | | Make the auto_sync variable lowercase cnf/repos.conf: Add new auto-sync variable
* repository/config: Changes for plugin-syncBrian Dolbec2014-12-041-19/+3
| | | | Use the new validate_config system
* repository/config.py: Use the sync.module_names for the sync-type checkBrian Dolbec2014-12-041-1/+1
* package.bashrc: per profile, per-package bashrc mechanismBertrand SIMONNET2014-10-241-1/+1
| | | | | | 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/).
* Revert "Add support for the following attributes in layout.conf to allow more"Brian Dolbec2014-02-091-73/+57
| | | | | This reverts commit 4c409a049c394389b1de398db511380e2fed0437. This needs to be submitted for review and approval.
* portage.repository.config.RepoConfigLoader.config_string(): Always include ↵Arfrever Frehtes Taifersar Arahesis2014-02-091-1/+1
| | | | | | DEFAULT section at the beginning of returned string for better readability.
* Check presence of .portage_not_installed file instead of .git directoryArfrever Frehtes Taifersar Arahesis2014-02-051-1/+1
| | | | to allow using local files also when using Portage from unpacked tarball.
* various pylint clean upsMike Frysinger2014-02-031-0/+1
| | | | Hopefully should be no functional changes here.
* Rename portage._sync_disabled_warnings to portage._sync_mode.Arfrever Frehtes Taifersar Arahesis2014-01-191-7/+7
* Add support for the following attributes in layout.conf to allow moreArfrever Frehtes Taifersar Arahesis2014-01-181-57/+73
| | | | | | | | | precise configuration of inheritance of settings from repositories: eclass-masters package.mask-masters use.aliases-masters use.force-masters use.mask-masters
* Use empty value of masters attribute in test suite when possible.Arfrever Frehtes Taifersar Arahesis2014-01-071-1/+2
* RepoConfigLoader: Fix indentv2.2.7Zac Medico2013-09-231-5/+5
| | | | Indent was wrong in commit 923f912d7c5ade8b5b18f23f1cd12add08f73c21.
* emerge-webrsync: handle missing dir, bug #484950Zac Medico2013-09-231-1/+8
* RepoConfig: fix bug #485006v2.2.6Zac Medico2013-09-151-1/+2
* emerge-webrsync: fix bug #484950v2.2.5Zac Medico2013-09-151-2/+7
* Bug #484730: In sync mode, use repos.conf section name when repo_name file ↵Arfrever Frehtes Taifersar Arahesis2013-09-131-5/+5
| | | | is missing.
* Skip main-repo warn if PORTDIR unset, bug #470006Zac Medico2013-08-221-1/+1
* RepoConfigLoader: handle main_repo in __delitem__Zac Medico2013-08-081-0/+2
| | | | This will fix bug #480254.
* Suppress duplicate repo warning for bug #478544.Zac Medico2013-07-291-2/+4
* Fix alias handling in missing masters warning.Zac Medico2013-07-251-2/+2
* RepoConfig: backward compat SYNC for mirrorselectZac Medico2013-07-251-0/+8
| | | | | This restores SYNC support which was removed in commit 47e8d22dabf2197193c8f133698fb967afa560f4.
* Disable an error for entries from PORTDIR_OVERLAY.Arfrever Frehtes Taifersar Arahesis2013-07-251-2/+4
* Print more consistent error messages for entries in repos.conf.Arfrever Frehtes Taifersar Arahesis2013-07-251-14/+23
* Avoid redundant parse_layout_conf() calls.Zac Medico2013-07-241-2/+4
* Bug #477452: Support force attribute in repos.conf.Arfrever Frehtes Taifersar Arahesis2013-07-241-9/+15
* Add warning for missing masters attribute in layout.conf.Arfrever Frehtes Taifersar Arahesis2013-07-231-1/+11
* Delay validation of repos.conf locations/names.Zac Medico2013-07-221-38/+26
| | | | | | For backward compatibility with locations set via PORTDIR and PORTDIR_OVERLAY, delay validation of the location and repo.name until after PORTDIR and PORTDIR_OVERLAY have been processed.
* Remove stray print from last commit.Zac Medico2013-07-221-1/+0
* RepoConfigLoader: PORTDIR/repos.conf interactionZac Medico2013-07-221-3/+14
* Add support for multiple repositories in `emerge --sync`.Arfrever Frehtes Taifersar Arahesis2013-07-231-23/+59
| | | | | | | | | 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).
* portage.repository.config.RepoConfigLoader.config_string(): Rename a variable.Arfrever Frehtes Taifersar Arahesis2013-07-141-3/+3