| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Calculate changesets directly by stabilizating the package graph instead of
recalculating the whole graph and then diffing (similar approach as seen
in 'smart' package manager). The algorithm is not complete: defferred
search space forking is missing. So you don't always get a solution on
complex graphs.
Benefits:
- usually the search state tree is smaller (less memory used)
- speed relational to changeset size, not database size (usually faster)
- touch only packages related to users request (can work on partitially
broken state; upgrades only necessary packages, fixes #7)
Also implemented:
- command prompt to confirm operation if packages are deleted or downgraded
- requesting deletion of package suggests removal of all packages depending
on the package being removed (you'll get list of packages that also get
removed if you want package X removed)
- option --simulate to see what would have been done (mainly for testing)
- an untested implementation of versioned dependencies and conflicts
A lot has changed, so expect new bugs too.
|
|
|
|
|
|
| |
This will be used later by the commit change calculator (for improved
changeset calculation, ref #7). Will be also used by "apk info" to show
reverse dependencies or "required by" information.
|
|
|
|
|
| |
So we don't get artificial limits on the amount of dependencies
(fixes #8).
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
So you will not get .apk-new files of the new configuration files.
|
| |
|
| |
|
|
|
|
|
| |
we let bb use /bin and /sbin, all packages overriding busybox must
install the bins in /usr/bin and /usr/sbin
|
|
|
|
|
|
| |
apk_hash_delete() actually deletes the file entry, so unlinking
from other lists need to happen before that. Also free the diri
instead of leaking it.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We dont care if a directory have references or not, we care if directory
is relly there.
Only the creator of the direcotry will set the permissions.
This fixes the situation where you install a package owning a dir then
you remove this dir manually and try install a second package also owning
the dir.
For example:
apk add e2fsprogs-dev
rm -rf /usr/lib/pkgconfig
apk add zlib-dev
|
| |
|
|
|
|
|
| |
Otherwise creating rootfs from scratch with --initdb cannot be locked
due to the lock file path missing.
|
|
|
|
|
|
|
| |
Protect files in protected dirs even if the file is not previously
registered in the database. We do so by always extracting to a
.apk-new file name, compare the checksums afterwards and rename if
file was identical.
|
|
|
|
|
| |
Add flags field to db open call. Also make error reporting quite a bit
more detailed.
|
| |
|
|
|
|
|
| |
Otherwise installed db load fails due to internal reasons. This would
cause a lot of other funny stuff happen.
|
| |
|
|
|
|
|
|
| |
Ignore /etc/apk/repositories, so additional repositories that depend
on other repositories need to have explicit --repository reference on
command line when generating the index (to avoid warnings).
|
|
|
|
|
| |
This was broke on --initdb addition to add applet since apk_db_create
changes the working directory.
|
|
|
|
| |
this allows non-root users to query the database.
|
| |
|
|
|
|
| |
But we dont bother try create all subdirs (i.e mkdir -p ...)
|
| |
|
|
|
|
|
|
|
| |
Currently only implement --backup to get list of (config) files in
protected directories to backup.
This also fixes a database corruption bug in database.c.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
In quiet mode e.g. "apk info -q -W <file list>" a list of dependencies
suitable for .PKGINFO is output in one line.
|
| |
|
|
|
|
|
|
| |
dependencies are separated with single space rather than ', '.
makes db file slightly easier to parse from a shell script which
might be handy.
|
| |
|
| |
|
|
|
|
|
| |
Defaults to /etc/apk/repositories, absolute path and not relative
the install root.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Make the db of installed packages more similar to index file and
reuse the code. Also rename the database file.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Checksum of installed is computed on the fly when extracting them
and it'll be saved to fdb. When installing config files those are
diverted with suffix .apk-new if earlier version of same file with
local changes exist.
|