Age | Commit message (Collapse) | Author | Files | Lines |
|
there's no nice syscall to manipulate xattrs with atfd and
or open the symlink without dereferencing it (and having fd
that we can do xattrs with)
|
|
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"
|
|
use ERR_PTR mechanism, and handle it at all places.
|
|
on arm char is by default unsigned, so this caused crashes
as the ERR_PTR mechanism did not work as expected with unsigned
types. extend the array type to be signed short explicitly.
|
|
fixes #4040
|
|
issue cought by fortify
|
|
|
|
|
|
apk in alpine 3.1 already supports this optimization, but kept
the database format. now is time to start using this feature.
|
|
ref #3027
|
|
fixes #4040
|
|
fixes #4019
|
|
ref #3027
|
|
|
|
ref #3027
|
|
|
|
|
|
Package pinning was first implemented with 'p' tag. However, it
was before any release renamed to 's', and 'p' was reserved for
package provides support for which is used now.
|
|
fixes #3840
|
|
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.
|
|
using space was for backwards compatibility with apk-tools 2.2.2
and earlier (from January 2012)
|
|
the location changed in apk-tools 2.1.0 (March 2011) which was
used in Alpine Linux 2.2.
|
|
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.
|
|
In case all applet arguments are packages names (that is are not
including wildcards), return error if they do not match to some
package.
|
|
|
|
Allows running apk as an unprivileged user, e.g. with fakeroot.
Opening the lock file fails without the write permission.
|
|
|
|
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.
|
|
|
|
|
|
|
|
Add also a new 'commit' group that is the common options
for all applets that can commit package changes.
|
|
|
|
|
|
|
|
fixes #3371
|
|
|
|
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
|
|
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.
|
|
Also if --purge is specified delete all uninstalled packages.
Fixes #2889
|
|
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.
|
|
busybox trigger creates symlinks to itself. This helps user
to see where these come from.
|
|
It's real only if there's a package with actual dependency
(conflicts and install_if dependencies do not count).
|
|
allow packages in the cache's installed to be selected for installation
by the solver. add test case for the issue.
|
|
|
|
this happens e.g. after tmpfs boot when not all packages where
available: the dependency is in world, but not installed.
|
|
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!
|
|
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.
|
|
most notable in error report from 'del' applet
|
|
|