aboutsummaryrefslogtreecommitdiffstats
path: root/src/fix.c
Commit message (Collapse)AuthorAgeFilesLines
* apk: usage: cleanup help text when no applet is selectedWilliam Pitcock2018-01-091-0/+1
|
* db: fix triggers to report deleted directoriesTimo Teräs2018-01-031-0/+1
| | | | | | | | | This change just changes to keep deleted directory items in the hash with ref count zero and modified flag set. Those entries are reused when needed. The side effect is that fire_triggers() will now see those removed direcotries and reports them. Other enumerators of the directories hash are protected to skip removed directories when appropriate.
* make file install errors non-fatal, and xattr errors hiddenTimo Teräs2015-04-171-1/+7
| | | | | | | | | user xattrs on tmpfs are not supported no non-grsec kernels, and many times root fs is mounted without user_xattr. Thus to allow things to go smoothly on non-grsec kernels xattr unsupported errors are now hidden. xattrs can be fixed still now with "apk fix --xattrs"
* make del, fetch, fix and info return errorsTimo Teräs2014-12-081-2/+11
| | | | | | In case all applet arguments are packages names (that is are not including wildcards), return error if they do not match to some package.
* rework option parsing to have a group structureTimo Teräs2014-10-081-13/+17
| | | | | Add also a new 'commit' group that is the common options for all applets that can commit package changes.
* db: rework directory permission handlingTimo Teräs2014-10-071-1/+1
| | | | | | | | | | | | | | | | | | 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
* fix: improve usageDubiousjim2013-06-281-2/+2
| | | | Acked-by: Natanael Copa <ncopa@alpinelinux.org>
* commit, db: make file conflicts and script errors non-fatalTimo Teräs2013-06-201-4/+14
| | | | fixes #1482
* applets: unify help message by removing final dotsTimo Teräs2013-06-191-1/+1
|
* fix, info, ver: perform wildcard matchingTimo Teräs2013-06-181-34/+9
| | | | ref #511
* apk: use string array in applet mains, separate apk_name_foreach_matchingTimo Teräs2013-06-181-7/+8
|
* solver: rewrite as deductive solver -- core featuresTimo Teräs2013-06-131-2/+0
| | | | | Implementing basic dependency handling, install_if and awareness of pinning.
* all: introduce apk_provides and use it in apk_nameTimo Teräs2012-02-241-7/+2
| | | | | | | in preparation for provides support. implements also some dependency satisfaction helper routines. ref #574.
* audit, db: add etc/apk/protected_files.d and new audit featuresTimo Teräs2012-02-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | fixes #607. audit is now mostly rewritten for the new functionality. And has new features like --check-permissions, --recursive and --packages. $ROOT/etc/apk/protected_files.d/*.list can now contain additional protected paths, one path per line: +etc @etc/init.d -tmp + will include the directory as protected configuration directory. @ considers the directory protected, but will backup only symlinks. - removes any protection lbu should be modified to put include and exclude paths in etc/apk/protected_files.d/lbu.list. Additionally, some packages might provide their own listings. E.g. ssh might want to provide ssh.list with something like: +root/.ssh +home/*/.ssh
* db, fix: more secure way to choose effective directory permissionsTimo Teräs2012-02-101-0/+15
| | | | | And implement --directory-permissions for fix-applet to reset all directory uid, gid and modes.
* solver: inheritable solver flagsTimo Teräs2011-09-161-1/+9
| | | | | | allow per-name solver flags to be inheritable, and use them in self-upgrade, add -u and the fix applet. this gives more familiar behaviour for the upgrades.
* all: update copyright year statementTimo Teräs2011-09-131-1/+1
|
* solver: add per-name specific flags, and fix the fix appletTimo Teräs2011-09-131-28/+10
|
* applets: start using solver codeTimo Teräs2011-09-091-0/+2
| | | | | | | | | still todo: - 'fix' is missing - 'del -R' does not work - 'upgrade' does not do self-upgrade first ... and a lot of testing.
* state: use db in own struc when committingNatanael Copa2011-03-301-1/+1
| | | | The db parameter to apk_state_commit is not needed so we remove it.
* First steps for libapkNatanael Copa2010-06-111-0/+1
|
* all: rework how arrays workTimo Teräs2010-06-051-1/+1
| | | | | | | | | | Instead of having a null pointer, use a dummy array which just says the array is empty. This helps in multiple places of the code which would otherwise need explicitly need to check first if the array exists. This has been cause of multiple seg.faults in the past as the array check is easily omitted. This also removes (or fixes) all existing checks accordingly.
* state: improve error messages from dependency failuresTimo Teräs2010-06-011-8/+7
| | | | | Print more information why installation changeset calculation failed. Fixes #187.
* fix: upgrade also mentioned package (fixes #136)Timo Teras2009-08-171-7/+9
|
* fix: parse pkgfile properly (fixes #132)Timo Teras2009-08-131-16/+27
| | | | | accept also pkgfile in addition to pkgname. make also the signature verification stuff work properly again with non-repository files.
* db, pkg: separate structure for fields of installed packagesTimo Teras2009-08-121-1/+1
| | | | | | | this makes the database package entry smaller, and we propbably get more fields to installed_package later too. this cleans up the way scripts are stored and is a preparation for supporting triggers. some parsing for trigger meta-data. ref #45.
* all: implement database open optionsTimo Teras2009-08-061-14/+10
| | | | so user can override trusted keys directory and repositories file.
* fix: new applet to reinstall and fix packageTimo Teras2009-08-041-0/+113
also makes it possibly to upgrade package without adding it to top-level deps. fixes #69.