Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
This modifies apk cache for indexes to be automatically refreshed
periodically without explicit 'update' or '--update-cache' usage.
The default is to do if-modified-since request if the local copy
is older than 4 hours. This age can be changed with --cache-max-age.
Using --update-cache will change this age to 60 seconds to make
sure the cached copy is relatively new. The small age is in order
to try to avoid downloading indexes second time when apk-tools is
upgraded and apk re-execs after self-upgrade.
Accordingly using explicitly 'apk update' will now enforce
--force-refresh and request the very latest index by requesting
any potential http proxy to do refresh too.
|
|
Also if --purge is specified delete all uninstalled packages.
Fixes #2889
|
|
|
|
- let the apk_print functions deal with the forced print itself. We
avoid that the callbacks need to deal with the force flag. We can
also get rid of the APK_PRINT_PROGRESS_* defines.
- let the reader of --progress-fd decide how often things are updated
rather than having a fixed granularity off 1/100 (percent)
- avoid detect screen size and percent/bar calculations in case the
--no-progress was given
- track satistics for both the ascii bar and percent info and update bar
only if either percent or bar changes. This makes the bar go smoother
when width is wider than 100 chars and it makes the percent counter
go smooth when screen width is less thann 100 chars. It also
simplifies the callbacks as they no longer need to deal with update
granularity.
|
|
|
|
|
|
instead use prefix for temporary files.
|
|
Fixes also 'fetch' applet to prefer copying/linking to files from
cache if possible.
|
|
Implementing basic dependency handling, install_if and awareness
of pinning.
|
|
|
|
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.
|
|
Load additional repositories from $ROOT/etc/apk/repositories.d/*.list
unless --repositories-file is given as parameter.
|
|
It is faster to just scan the cache directory for existing packages
at startup than trying to faccessat() them on demand. It also makes
quite a few parts of the code more readable and simpler.
|
|
|
|
|
|
still todo:
- 'fix' is missing
- 'del -R' does not work
- 'upgrade' does not do self-upgrade first
... and a lot of testing.
|
|
fixes #666
|
|
.. and back to read-only after finishing with modifications.
fixes #512
|
|
if package arch is not set, do not append anything to repository.
if arch is set, it is appended to repository.
|
|
Unsigned indexes should not be needed anymore anyway.
|
|
|
|
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.
|
|
wget:ing local files results in error and is useless.
|
|
this helps boots sequence when network is not available.
|
|
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.
|
|
- 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.
|
|
|
|
this also convers scripts file to a tar archive.
|
|
snprintf is dog slow. make the blob stuff have some helper functions
so we can use them in code paths that are executed often.
|
|
This will update the repository cache upon db_open.
|
|
check for the full filename to match an expected pattern or
delete it (so we delete files with .new, .new.backup, etc.).
final part of remote package caching: fixes #49.
|
|
that way we get the same result as the 'apk add world' at boot
time; it might differ from currently installed set (ref #49).
|
|
more fine grained control what to load, and rename some of the
flags to be shorter.
|
|
Administrative tool to download or delete files to/from the cache.
|