aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* preport: initial implementationpreportTim Harder2015-07-122-0/+166
| | | | | A broken mess for now which will slowly be turned into a report generating, semi-equivalent for emerge --info.
* pmerge: revert several changes for methods requiring tuplesTim Harder2015-07-121-3/+3
| | | | | This fixes doing updates that works the resolver such as `pmerge -uD` or similar.
* pmerge: various repo handling simplificationsTim Harder2015-07-126-36/+40
| | | | | | | The main benefit is that this gets rid of the 'repository_type' hack used by pmerge by adding some specific domain attrs for ebuild and binary repos along with a minor RepositoryGroup enhancement to handle adding repo groups together which allows us to prioritize repos.
* fallback on repos.conf names as IDs for new reposTim Harder2015-07-123-4/+6
| | | | | | Since new repos aren't synced yet, we can't ascertain if they have a repo name set in the metadata. Using the repos.conf name for them seems like a fair compromise until they're pulled down.
* portage_conf: use repos.conf names for keys instead of repo locationsTim Harder2015-07-122-8/+7
| | | | They must be unique and should generally match repo_ids anyway.
* portage_conf: various variable naming simplifying/clarifyingTim Harder2015-07-121-12/+12
|
* setup: assume all symlinks in the bin dir are scripts to installTim Harder2015-07-121-3/+5
| | | | | That way we can add other files in there or change the pwrapper* file names if needed without breaking things.
* portage_conf: drop 'domain' from domain config object nameTim Harder2015-07-111-2/+2
| | | | Seems a bit redundant and spaces are annoying as well.
* don't assume bash is at /bin/bash, inspect path to find itTim Harder2015-07-1015-20/+19
| | | | | | | This allows us to more easily override the bash version used with a custom, patched version if trying to debug something. Also, if we want to support other system types like BSDs in the future its useful as well since its likely to be found at /usr/local/bin there.
* minor naming consistency change for test scriptTim Harder2015-07-101-1/+1
|
* remove prelink references as it's not supported anymoreTim Harder2015-07-103-8/+5
|
* bash: return to generic EAPI function banning mechanismTim Harder2015-07-101-0/+8
| | | | | | | This is probably better than threading conditionals throughout various functions as they're banned in later EAPIs. The more messy case is generic deprecation, but the code injection function probably can be cleaned up more to make things more palatable.
* remove old, unused importTim Harder2015-07-101-2/+0
|
* dobin: do not force uid/gidMichał Górny2015-07-091-1/+1
| | | | | | Do not force uid/gid when installing binaries to PKGCORE_INST_UID/GID. Those variables are not set anywhere, and no other helper forces particular ownership of files (doexe included).
* Remove unused and unclear concept of secpassMichał Górny2015-07-091-11/+1
| | | | | | The secpass concept was inherited from Portage but the implementation disagrees with the current one in Portage. It is unclear and not used anywhere in pkgcore. Removing it seems the cleanest way forward.
* bash: move EAPI 0 to EAPI 5 src_test differences into separate libsTim Harder2015-07-093-6/+16
| | | | | | This leads to a bit of code duplication but it'll probably be cleaner and easier to read as time goes on in order to keep the number of conditional EAPI specific flags and testing for them at a minimum.
* bash: simplify EAPI function generation scriptTim Harder2015-07-091-21/+0
| | | | | | Since we don't use __inject_phase_funcs internally in EAPI specific libs anymore we don't have to track which functions are defined in external libs in order to remove them.
* bash: simplify EAPI phase injectionTim Harder2015-07-097-79/+87
| | | | | | | | | | | Now all EAPI specific phase functions should be defined in their related libs using the naming format __phase_$func (e.g. __phase_src_install). This allows later EAPI definitions to override previous ones and decreases the complexity for injecting default functions for later EAPIs. Also, all __phase_common and __phase_default internal function prefixes were dropped to just __phase.
* setup: minor cleanupsTim Harder2015-07-091-7/+11
|
* setup: directly execute generation scripts instead of bashTim Harder2015-07-091-3/+3
|
* setup: generate bash function lists at install timeTim Harder2015-07-091-22/+24
| | | | | | Instead of only during sdist creation. This fixes cases where installing from live ebuilds or installing via pip without creating an sdist first wouldn't generate the function lists.
* Revert "setup: generate bash function lists at install time"Tim Harder2015-07-091-26/+22
| | | | | | Accidentally pushed test code to master. This reverts commit 2e9bfdca7882a9fe8d0b45d23b18b55575493957.
* setup: generate bash function lists at install timeTim Harder2015-07-091-22/+26
| | | | | | Instead of only during sdist creation. This fixes cases where installing from live ebuilds or installing via pip without creating an sdist first wouldn't generate the function lists.
* test: drop global function list testTim Harder2015-07-091-39/+0
| | | | It's now generated on demand at sdist and install time.
* generate bash function lists for the dist tarballTim Harder2015-07-096-132/+42
| | | | | | | Also, remove global function list from git. The scripts to generate the lists will be run on demand when running tools within the git repo; otherwise, the generated files will be used if they exist in tarballs and installed instances.
* fix minor typoTim Harder2015-07-091-1/+1
|
* update newsTim Harder2015-07-091-0/+11
|
* bash: remove unused ORIG_FUNCS listTim Harder2015-07-081-2/+1
|
* bash: minor consistency changesTim Harder2015-07-082-8/+8
|
* bash: remove __var_push comment about declare usageTim Harder2015-07-081-4/+1
| | | | | | We could use declare statements but then we'd have to thread "-g" arguments into all of them to make them affect the global scope from within the __var_pop function.
* bash/helpers: use __var_(push|pop) to set a temp PATHTim Harder2015-07-081-3/+2
|
* bash: add initial var push/pop supportTim Harder2015-07-082-0/+66
| | | | Fixes #17.
* bash: generalize internal error messagesTim Harder2015-07-072-7/+7
| | | | Makes it easier to copy them around or change function names later.
* bash: speed up unpack() by only doing chmods when neededTim Harder2015-07-071-2/+2
| | | | Patch by Michael Haubenwallner for portage via bug #554084.
* commandline: simplify choices support for cli tool error outputTim Harder2015-07-051-11/+7
|
* commandline: fix repo config accesses repo.config_name isn't setTim Harder2015-07-051-1/+2
|
* portage_conf: remove extra repo config object creation for cache initTim Harder2015-07-051-9/+5
| | | | | This still should be fixed to be done lazily on access so we're not creating duplicate, throw away repo config objs per repo.
* repo: fix initial sync for new repos using repos.conf namesTim Harder2015-07-053-3/+8
| | | | | | Previously specifying a new repo section in repos.conf and syncing against its section name wouldn't work, only using its location would; now either should work fine.
* simplify requirements.txtTim Harder2015-07-041-1/+1
|
* fix pmaint regen testTim Harder2015-07-041-1/+1
| | | | | It was broken due to allowing multiple repos to be specified since regen now iterates through them.
* tox: simplify snakeoil/pkgcore install processTim Harder2015-07-041-5/+3
|
* pmaint: use iter_stable_unique() from snakeoilTim Harder2015-07-041-7/+3
| | | | | Instead of reimplementing basically the same thing in a list comprehension.
* pmaint: allow multiple repo arguments to regenTim Harder2015-07-041-34/+34
|
* whitespace consistencyTim Harder2015-07-045-64/+98
|
* commandline: add --override-config optionTim Harder2015-07-041-0/+3
| | | | | | | | | | This makes it easier to run all the command line tools under different configurations, e.g. maintaining separate configurations to target different binpkg repos. For portage compat, the path to the custom config directory should be passed, otherwise if the path to a file is used it will try to load it as a pkgcore config file.
* portage_conf: simplify config directory settingsTim Harder2015-07-041-28/+22
| | | | | | | | | | The location parameter for config_from_make_conf() is now the path to the portage directory (defaults to /etc/portage) instead of just the main config directory (/etc). Also, support for setting the system profile via the deprecated /etc/make.profile symlink has been removed, only /etc/portage/make.profile is checked.
* config: allow override of the pkgcore config file locationTim Harder2015-07-041-18/+9
| | | | | | If a path to a file is passed to load_config() we try to load it as a pkgcore config file otherwise it gets passed to config_from_make_conf() as the path to the portage config directory.
* setup.py: rename a few const path vars and add generic data pathTim Harder2015-07-041-12/+17
| | | | | | At some point we'll probably start storing things under /usr/share/pkgconfig so it would make sense to have easy access to the main path as well.
* minor whitespace fixTim Harder2015-07-041-1/+1
|
* portage_conf: simplify fetcher config objectTim Harder2015-07-041-12/+6
| | | | | Previously we were duplicating almost the entire make.conf dict into the fetcher object when it really only requires a few fields.