aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* remove spurious audit message from missing files with --systemTimo Teräs2015-01-301-4/+2
| | | | fixes #3840
* sort world dependencies alphabeticallyTimo Teräs2015-01-301-0/+8
| | | | | | | this makes 'lbu diff' and aaudit diffs nice when a world dependency is added or removed. sorting also makes the ordering more deterministic as the world targets constraints are always applied in the same order. test suite updated accordingly.
* always save 'world' with line feedsTimo Teräs2015-01-302-4/+1
| | | | | using space was for backwards compatibility with apk-tools 2.2.2 and earlier (from January 2012)
* remove support for old database location in /varTimo Teräs2015-01-303-57/+0
| | | | | the location changed in apk-tools 2.1.0 (March 2011) which was used in Alpine Linux 2.2.
* remove reverse dependencies firstTimo Teräs2015-01-301-0/+6
| | | | | | when removing large sets of packets, the ordering of removal was not quaranteed to honor dependencies. this fixes the removal order to be in reverse dependency order as far as possible.
* make del, fetch, fix and info return errorsTimo Teräs2014-12-088-32/+63
| | | | | | In case all applet arguments are packages names (that is are not including wildcards), return error if they do not match to some package.
* fix test modeTimo Teräs2014-12-081-5/+7
|
* db: assign write permission to lock fileKaarle Ritvanen2014-11-031-2/+2
| | | | | Allows running apk as an unprivileged user, e.g. with fakeroot. Opening the lock file fails without the write permission.
* move --simulate to commit options group and alias -s for itTimo Teräs2014-11-011-5/+4
|
* make 'mode, uid, gid' triplet separate atomized structTimo Teräs2014-11-013-53/+68
| | | | | | | there are only few combinations for that triplet, and they occur multiple times reducing the struct sizes a bit. make sane defaults and prepare to not write defaults to disk to reduce on-disk installed db size.
* support extended pax header in tar extractorTimo Teräs2014-11-013-38/+93
|
* db: improve and unify fdb error messagesTimo Teräs2014-10-131-27/+13
|
* db: unconditionally refresh index with --forceTimo Teräs2014-10-091-1/+3
|
* rework option parsing to have a group structureTimo Teräs2014-10-0814-319/+390
| | | | | Add also a new 'commit' group that is the common options for all applets that can commit package changes.
* url: fix double free from late libfetch changesTimo Teräs2014-10-081-1/+0
|
* io,url,db: support for if-modified-sinceTimo Teräs2014-10-086-53/+81
|
* url: use libfetch to retrieve http/https/ftp filesTimo Teräs2014-10-083-56/+51
|
* db: fix crash if unable to download cache itemTimo Teräs2014-10-071-2/+3
| | | | fixes #3371
* io: fix few error path leaksTimo Teräs2014-10-072-6/+9
|
* db: rework directory permission handlingTimo Teräs2014-10-074-58/+88
| | | | | | | | | | | | | | | | | | Apk used to reset directory permissions always, but this is undesirable if user has modified the permissions - especially during tmpfs boot. Though, it is desirable to update the permissions when packaging has changed permissions, or a new package is installed and the merged permission mask / owner changes. Thus the new code updates the permissions only if: 1) We are booting and directory is not in apkovl 2) The directory is modified by a package install/remove/upgrade 3) The filesystem directory permission matched database Additionally "apk fix --directory-permissions" can be used to reset all directory permissions to the database defaults. Fixes #2966
* solver: enforce conflicts during upgrades and new pkg installsTimo Teräs2014-10-061-2/+11
| | | | | | | This makes sure any conflicted packages will be removed first. Useful if we know there are conflicting files, and want to avoid adding potentially harmful replaces line. Add a test case for this too.
* cache: delete more aggressively unneeded cached filesTimo Teräs2014-10-062-6/+12
| | | | | Also if --purge is specified delete all uninstalled packages. Fixes #2889
* db: use per-pkg architecture (if available) to form download urlTimo Teräs2014-10-061-2/+6
| | | | | | | Allows one arch index files to refer to other arch packages. Mostly useful with noarch packages, but could be used e.g. to ship build with some of packages optimized for specific cpu generation and share most packages with the standard build.
* info who-owns: print symlink target owner as a fallbackTimo Teräs2014-10-061-3/+15
| | | | | busybox trigger creates symlinks to itself. This helps user to see where these come from.
* index: fix warning about package names without providerTimo Teräs2014-10-063-9/+11
| | | | | It's real only if there's a package with actual dependency (conflicts and install_if dependencies do not count).
* solver: fix installation of non-repository packages during tmpfs bootTimo Teräs2014-05-194-3/+13
| | | | | allow packages in the cache's installed to be selected for installation by the solver. add test case for the issue.
* test: improve loading of repositories, fix broken install-if testTimo Teräs2014-05-191-3/+15
|
* del: allow deletion of world dependency when it is not installedTimo Teräs2014-05-191-0/+3
| | | | | this happens e.g. after tmpfs boot when not all packages where available: the dependency is in world, but not installed.
* finally fix building PIE binariesTimo Teräs2014-05-123-14/+37
| | | | | | | | the dynamic applet registration never worked with PIE, and as a temporary hack -nopie was added to default link flags in 2008. this commit reworks the applet registration mechanism to something that is compatible with PIE, and removes the hack. finally!
* db: allow replacing files of origin package is sameTimo Teräs2014-04-251-0/+3
| | | | | | basically this makes packager's life simpler as there is no need to list the subpkg names in replaces. this was also very error prone and tedious job to do properly.
* package: do not report duplicate reverse dependenciesTimo Teräs2014-04-101-1/+4
| | | | most notable in error report from 'del' applet
* url: double-fallback to static busyboxTimo Teräs2014-04-101-0/+1
|
* solver: purge install_if packages deleted from repositories on upgrade -aTimo Teräs2014-04-101-2/+9
|
* solver: fix cleaning of packages that got replaced by providesTimo Teräs2014-04-101-1/+4
|
* solver: fix inherited flags/pinning for install_if packagesTimo Teräs2014-04-041-56/+28
| | | | | | | noticeable fixes upgrading of packages which get pulled in only by install_if rule. this also simplifies the inheritance calculation for packages, as well as the place where it is done for install_if triggered packages.
* solver: do not consider packages in cache as 'available'Timo Teräs2014-04-041-5/+16
| | | | | | | 'available' really means 'available in one or more configured repository'. Cache is not a repository we track, so those are only available for installation, but not available as preferred to be installed from repository. fixes #2831.
* audit: report missing files in system modeTimo Teräs2014-03-121-21/+64
| | | | fixes #2113
* solver: additional improvements to install_if handlingTimo Teräs2014-03-122-4/+22
|
* audit: include all files in etc/apk in overlayTimo Teräs2014-03-123-40/+50
| | | | | | | | | This implements a new protected path flag '!' to include always matching entries in the backup mode (overlay). This is also turned on for etc/apk to include everything there in overlay, because the full list of repositories and signing keys need to be in overlay - just getting them from a package is not enough during bootstrap.
* solver: fixes to install_if handlingTimo Teräs2014-03-111-14/+21
|
* info: fix printing of 'replaces' fieldTimo Teräs2014-03-071-1/+1
|
* fetch: disable all progress/log output with --stdoutNatanael Copa2014-02-031-1/+3
|
* fetch: disable progress when outputting pkg to stdoutTimo Teräs2014-02-031-1/+4
|
* Revert "fetch: run quiet when --stdout"Natanael Copa2014-01-061-1/+0
| | | | This reverts commit a99bedba6fa66cc55b30575b32b1359e22cfefb5.
* apk: new option --print-archNatanael Copa2014-01-061-0/+10
| | | | | Simply print the default arch and exit. This is so scripts don't need to parse the output of -V.
* fetch: run quiet when --stdoutNatanael Copa2013-12-101-0/+1
| | | | Prevent the progressbar and status messages to mess up stdout.
* print: flush on apk_logNatanael Copa2013-12-051-0/+1
| | | | Makes it more useful whith pipes.
* print: use stdout instead of stderr for logging and progressTimo Teräs2013-10-112-11/+10
| | | | | | stdout is the proper place for it. this also fixes the progress bar in musl, which seems to not support using line buffering for stderr.
* db: allow using cached packages with --no-networkTimo Teräs2013-10-021-1/+1
|
* db, url: fix exec sentinelsTimo Teräs2013-10-012-3/+3
| | | | http://ewontfix.com/11/