Age | Commit message (Collapse) | Author | Files | Lines |
|
Acked-by: Natanael Copa <ncopa@alpinelinux.org>
|
|
Acked-by: Natanael Copa <ncopa@alpinelinux.org>
|
|
|
|
|
|
make cache a special kind of repository, and automatically cache
special packages (virtual packages, or ones installed from command
line). add test cases for handling virtual packages. fixes #1617.
|
|
Solver will now never report partial solution where a conflict
constraint is not satisfied. The is because with --force we might
install the partial solution; and if conflicted packages were to
be installed we might have extra trouble.
|
|
|
|
* solver internally calculates now using tags; not repository masks
* installeddb now contains the tag name where the package came from
-> we can now handle upgrades properly
* the pinning is still a preference, and not strictly enforced;
versioned dependencies may overrule preference
|
|
* upgrade needs explicit check so we don't try self-upgrade
(which would print additional messages on screen)
* add can fix problems, so check against the new world
* merge the code in few places
|
|
Previously we would not upgrade just by doing "apk add foo@tag" if
foo was already installed. It required explicit '-u'. This allows
'apk add' to explicitly prefer the newly specified pinning.
|
|
* default writing the world with spaces if a space is found
(for backwards compatibility) for now
|
|
|
|
|
|
"replaces" is now turned to a full dependency type list, so you can
make package overwrite files only certain versions of the package
(though, we should probably take this into account already at solution
calculation phase).
Also make 'info --replaces' print the "replaces" of the package.
This is in preparation for the policy package support, which still
requires "replacement priority" field to decide which packages' files
get the preference.
|
|
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.
|
|
|
|
|
|
still todo:
- 'fix' is missing
- 'del -R' does not work
- 'upgrade' does not do self-upgrade first
... and a lot of testing.
|
|
The db parameter to apk_state_commit is not needed so we remove it.
|
|
Packages without architecture should get the platforms default
architecture (so we are backwards compatible). Only the virtual
packages should get 'noarch' by default. Also print full path
to the index file which failed.
|
|
- implement a hash table for commonly shared fields such as
license, version and architecture
- use macroes to print blobs or pkgname-pkgver strings
- fix some old cruft
|
|
|
|
Print more information why installation changeset calculation failed.
Fixes #187.
|
|
We want see all packages that fails to install and not only the first
|
|
- make virtual packages work again
- make apk del (for non-empty packages) work again
|
|
allow also overriding old (possibly bad) world dependency.
hopefully it's more bullet proof now.
|
|
|
|
otherwise old world deps are used and unintended results will
happen.
|
|
|
|
so user can override trusted keys directory and repositories file.
|
|
previously they might have been skipped on certain situations.
this also fixes some other reverse dependency enforcements and
implements new "pending" state for locked name.
|
|
this way we never change cwd, and relative filenames are always
parsed consistently. this also helps filename construction in many
places. this patch also changes '--root' to override location of
all configuration to be in the new root. previously it depended
on the file which one was used.
|
|
|
|
use the package 'installed_size' == 0 as a test instead for
dependency only packages.
|
|
this enables virtual packages and files specified from command
line to work on non-harddisk installs.
|
|
fixes verification of non-repository packages while installing
them. this is final thing needed for full signing support
(fixes #46).
|
|
make sure cache is enabled on non-permanent rootfs setups.
some optimizations and fixes too.
|
|
|
|
- error codes for verification failure types
- fix some fdb corruption on file migration
- combine some dependency parsing code
- fix versioned dependencies
|
|
prefer index in the new format as signed .tar.gz.
|
|
an utility to check package signature and integrity.
|
|
change the index generation to do old index, or the new style index
where package identity is sha1 of control block and it's contained
within an .tar.gz to allow signing in future.
|
|
this also convers scripts file to a tar archive.
|
|
instead of having static md5 implemenation, use the openssl
library for digest functions.
|
|
and use this option in initramfs, so we are likely to get an usable
environment even if some packages from world are missing. fixes #50.
|
|
And use it in couple of places. Some whitespace fixes too.
|
|
And add some more verbosity to the help message.
|
|
apk --help will list the generic options only and give a list of commands
To get the details for a spefic command, 'apk command --help' should be used.
|
|
Support version numbers specified with packages. For example:
apk add 'busybox<1.14'
apk add 'squid=>3.0'
|
|
This reverts commit 0906a1c7de37ba54f29e9dbabbbd5ea069258cef.
Conflicts:
src/add.c
|