summaryrefslogtreecommitdiff
path: root/src/fix.c
AgeCommit message (Collapse)AuthorFilesLines
2018-01-09apk: usage: cleanup help text when no applet is selectedWilliam Pitcock1-0/+1
2018-01-03db: fix triggers to report deleted directoriesTimo Teräs1-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.
2015-04-17make file install errors non-fatal, and xattr errors hiddenTimo Teräs1-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"
2014-12-08make del, fetch, fix and info return errorsTimo Teräs1-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.
2014-10-08rework option parsing to have a group structureTimo Teräs1-13/+17
Add also a new 'commit' group that is the common options for all applets that can commit package changes.
2014-10-07db: rework directory permission handlingTimo Teräs1-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
2013-06-28fix: improve usageDubiousjim1-2/+2
Acked-by: Natanael Copa <ncopa@alpinelinux.org>
2013-06-20commit, db: make file conflicts and script errors non-fatalTimo Teräs1-4/+14
fixes #1482
2013-06-19applets: unify help message by removing final dotsTimo Teräs1-1/+1
2013-06-18fix, info, ver: perform wildcard matchingTimo Teräs1-34/+9
ref #511
2013-06-18apk: use string array in applet mains, separate apk_name_foreach_matchingTimo Teräs1-7/+8
2013-06-13solver: rewrite as deductive solver -- core featuresTimo Teräs1-2/+0
Implementing basic dependency handling, install_if and awareness of pinning.
2012-02-24all: introduce apk_provides and use it in apk_nameTimo Teräs1-7/+2
in preparation for provides support. implements also some dependency satisfaction helper routines. ref #574.
2012-02-23audit, db: add etc/apk/protected_files.d and new audit featuresTimo Teräs1-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
2012-02-10db, fix: more secure way to choose effective directory permissionsTimo Teräs1-0/+15
And implement --directory-permissions for fix-applet to reset all directory uid, gid and modes.
2011-09-16solver: inheritable solver flagsTimo Teräs1-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.
2011-09-13all: update copyright year statementTimo Teräs1-1/+1
2011-09-13solver: add per-name specific flags, and fix the fix appletTimo Teräs1-28/+10
2011-09-09applets: start using solver codeTimo Teräs1-0/+2
still todo: - 'fix' is missing - 'del -R' does not work - 'upgrade' does not do self-upgrade first ... and a lot of testing.
2011-03-30state: use db in own struc when committingNatanael Copa1-1/+1
The db parameter to apk_state_commit is not needed so we remove it.
2010-06-11First steps for libapkNatanael Copa1-0/+1
2010-06-05all: rework how arrays workTimo Teräs1-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.
2010-06-01state: improve error messages from dependency failuresTimo Teräs1-8/+7
Print more information why installation changeset calculation failed. Fixes #187.
2009-08-17fix: upgrade also mentioned package (fixes #136)Timo Teras1-7/+9
2009-08-13fix: parse pkgfile properly (fixes #132)Timo Teras1-16/+27
accept also pkgfile in addition to pkgname. make also the signature verification stuff work properly again with non-repository files.
2009-08-12db, pkg: separate structure for fields of installed packagesTimo Teras1-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.
2009-08-06all: implement database open optionsTimo Teras1-14/+10
so user can override trusted keys directory and repositories file.
2009-08-04fix: new applet to reinstall and fix packageTimo Teras1-0/+113
also makes it possibly to upgrade package without adding it to top-level deps. fixes #69.