apk-tools issueshttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues2019-07-14T07:30:38Zhttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1790apk info -t doesn't display the triggers2019-07-14T07:30:38ZPierre Carrierapk info -t doesn't display the triggersThe zsh triggers run fine:
alpine64:~$ cat /etc/shells
# valid login shells
/bin/sh
/bin/ash
/bin/dash
#/bin/bash
#/bin/lash
#/bin/msh
/bin/zsh
However they don’t show up in apk info:
$ apk inf...The zsh triggers run fine:
alpine64:~$ cat /etc/shells
# valid login shells
/bin/sh
/bin/ash
/bin/dash
#/bin/bash
#/bin/lash
#/bin/msh
/bin/zsh
However they don’t show up in apk info:
$ apk info -dt zsh
zsh-5.0.0-r0 description:
A very advanced and programmable command interpreter (shell) for UNIX
zsh-5.0.0-r0 triggers:
alpine64:~$ apk --version
apk-tools 2.3.4, compiled for x86_64.
And what’s more, apk seems to only show a few directories for a few
packages, not sure where from:
$ for f in $(apk info); do apk info -t $f; done|grep -v triggers:|sed '/^$/d'
/bin
/usr/bin
/sbin
/usr/sbin
/lib/modules/*
/lib
/usr/lib
/usr/share/kernel/*
/boot
*(from redmine: issue id 1790, created on 2013-04-18, closed on 2013-04-18)*https://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1714LXC: after creating a new container /dev/null is a file2019-07-14T07:30:28ZNathan AngelacosLXC: after creating a new container /dev/null is a fileWhen creating a new container, /dev/null in the container is a regular
file, rather than a device
*(from redmine: issue id 1714, created on 2013-03-23, closed on 2013-10-02)*
* Changesets:
* Revision 6a761c72e203cbc58a4963df9c1c12a2...When creating a new container, /dev/null in the container is a regular
file, rather than a device
*(from redmine: issue id 1714, created on 2013-03-23, closed on 2013-10-02)*
* Changesets:
* Revision 6a761c72e203cbc58a4963df9c1c12a233cf5b0a by Timo Teräs on 2013-05-29T12:44:42Z:
```
db: make dev/null a character device with --initdb
fixes #1714
```Timo TeräsTimo Teräshttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1617apk add --repositories /dev/null --virtual .foo fails2019-07-14T07:30:15ZNatanael Copaapk add --repositories /dev/null --virtual .foo failsabuild fails to bootstrap a new repo. Problem occur when either
`apk add --virtual .foo` is called with no dependencies or when the
dependencies given does not exist in any repo, but are installed.
This command fails:
sudo src/apk ...abuild fails to bootstrap a new repo. Problem occur when either
`apk add --virtual .foo` is called with no dependencies or when the
dependencies given does not exist in any repo, but are installed.
This command fails:
sudo src/apk --repositories /dev/null --root /tmp/apk --initdb add --virtual .foo
To test install a package that not exist in repository but is installed:
sudo src/apk --repositories /dev/null \
--repository http://nl.alpinelinux.org/alpine/v2.4/main \
--keys-dir /etc/apk/keys \
--root /tmp/apk --initdb add -U busybox \
&& \
sudo src/apk --repositories /dev/null \
--root /tmp/apk \
add --virtual .foo busybox
I bisected it to:
c7bd973367ee5acfda7875ae4ab65ea5f1789900 is the first bad commit
commit c7bd973367ee5acfda7875ae4ab65ea5f1789900
Author: Timo Teräs <timo.teras@iki.fi>
Date: Tue Feb 28 11:27:56 2012 +0200
solver: do not consider non-allowed packages in main loop
Instead cache the allowed pinning decision, and use it. Update
install decision heuristic to also use this cached information.
Would be nice to add a testcase in the testsuite for this.
*(from redmine: issue id 1617, created on 2013-02-15, closed on 2013-10-12)*
* Changesets:
* Revision aec93ee730f7a2e0196ae05fdd45e866d2510e41 by Timo Teräs on 2013-05-30T07:48:32Z:
```
db: unify handling of special packages
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.
```Timo TeräsTimo Teräshttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1578Cannot create symlink in root direcotry2019-07-14T07:30:10ZCarlo LandmeterCannot create symlink in root direcotryWhen creating eglibc package which needed to symlink /lib to /lib64 the
resulting link is not created on install.
*(from redmine: issue id 1578, created on 2013-01-18, closed on 2013-06-04)*
* Changesets:
* Revision 035da870362494bc...When creating eglibc package which needed to symlink /lib to /lib64 the
resulting link is not created on install.
*(from redmine: issue id 1578, created on 2013-01-18, closed on 2013-06-04)*
* Changesets:
* Revision 035da870362494bcb4ed092e27278c290b204410 by Timo Teräs on 2013-05-29T13:37:42Z:
```
db, info: allow packages to install files/symlinks to root
fixes #1578
```
* Revision 7a31043aae78141b8e44a9d3e54dfb485c91d7ce by Natanael Copa on 2013-06-04T16:35:15Z:
```
main/apk-tools: upgrade to 2.3.5
fixes #1578
(cherry picked from commit 0d259bc43cda35fc7d64c6de9bff0c679183657e)
Conflicts:
main/apk-tools/APKBUILD
```Timo TeräsTimo Teräshttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1476apk index will fail if pkgdesc is insanely long2019-07-14T07:29:55ZNatanael Copaapk index will fail if pkgdesc is insanely longTo reproude: create a package with an insanely long pkgdesc (more than
300 chars?) and run apk index thepackage.apk.
It will trigger an error:
ERROR: Index generation failed: Success
*(from redmine: issue id 1476, created on 2012...To reproude: create a package with an insanely long pkgdesc (more than
300 chars?) and run apk index thepackage.apk.
It will trigger an error:
ERROR: Index generation failed: Success
*(from redmine: issue id 1476, created on 2012-11-22, closed on 2013-10-02)*
* Relations:
* relates #1477
* Changesets:
* Revision 447b194b26eb741ebb7fca942ef79d3a2ba3c91d by Timo Teräs on 2013-05-30T09:22:35Z:
```
index: add sensible error message if metadata is too long
fixes #1476
Instead of:
ERROR: Index generation failed: Success
The following is now printed:
ERROR: Metadata for package timo-1.0-r0 is too long.
ERROR: Index generation failed: No buffer space available
```https://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1396apk info --provides does not work2019-07-14T07:29:45ZNatanael Copaapk info --provides does not workIt seems like the apk info *—provides* option is totally ignored.
$ apk info --provides openrc
openrc-0.10.5-r0 description:
OpenRC manages the services, startup and shutdown of a host
openrc-0.10.5-r0 webpage:
http...It seems like the apk info *—provides* option is totally ignored.
$ apk info --provides openrc
openrc-0.10.5-r0 description:
OpenRC manages the services, startup and shutdown of a host
openrc-0.10.5-r0 webpage:
http://git.overlays.gentoo.org/gitweb/?p=proj/openrc.git
openrc-0.10.5-r0 installed size:
712704
openrc-0.10.5-r0 description:
OpenRC manages the services, startup and shutdown of a host
openrc-0.10.5-r0 webpage:
http://git.overlays.gentoo.org/gitweb/?p=proj/openrc.git
openrc-0.10.5-r0 installed size:
712704
I think it has to do with the short -p option is gettin overridden by
the global —root/-p option.
This seems to fix it. Not sure what to use for id.
--- a/src/info.c
+++ b/src/info.c
@@ -427,7 +427,7 @@ static int info_parse(void *ctx, struct apk_db_options *dbop
case 'R':
ictx->subaction_mask |= APK_INFO_DEPENDS;
break;
- case 'p':
+ case 0x10001:
ictx->subaction_mask |= APK_INFO_PROVIDES;
break;
case 'r':
@@ -489,7 +489,7 @@ static struct apk_option info_options[] = {
{ 'e', "installed", "Check if PACKAGE is installed" },
{ 'W', "who-owns", "Print the package owning the specified file" },
{ 'R', "depends", "List packages that the PACKAGE depends on" },
- { 'p', "provides", "List virtual packages provided by PACKAGE" },
+ { 0x10001, "provides", "List virtual packages provided by PACKAGE" },
{ 'r', "rdepends", "List all packages depending on PACKAGE" },
{ 0x10000, "replaces", "List packages whom files PACKAGE might replace"
{ 'i', "install-if", "List the PACKAGE's install-if rule" },
*(from redmine: issue id 1396, created on 2012-09-19, closed on 2012-10-02)*
* Changesets:
* Revision 4b7b5d4668865b1026c7050c8872f256bc773605 by Natanael Copa on 2012-09-28T07:25:30Z:
```
info: --provides alias -p is reserved for --root, use -P
fixes #1396
```
* Revision 8d6945855c1fb5aa2871b33504c2a715c4d54e35 by Natanael Copa on 2012-10-01T19:06:31Z:
```
main/apk-tools: fix apk info --provides, add --progress-fd
ref #1396
```Timo TeräsTimo Teräshttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1350apk search --provides <soname1> <soname2> ... - find the package(s) that pro...2019-07-14T07:29:39ZNatanael Copaapk search --provides <soname1> <soname2> ... - find the package(s) that provides gives sonamesWe need a way to find out what package(s) provides the given names. For
example, what package provides libfoo.so.1? This is so we can migrate
from letting abuild detect and add the package name of the provider to
depends, to letting apk-...We need a way to find out what package(s) provides the given names. For
example, what package provides libfoo.so.1? This is so we can migrate
from letting abuild detect and add the package name of the provider to
depends, to letting apk-tools do this job using “provides”.
apk search —provides should return 0 (success) if all providers are
found and non-zero otherwise.
What abuild need to do to migrate is something like:
has_providers_list=$(apk search --quiet --provides $list_of_needed_so)
for soname in $list_of_needed_so; do
if is_in_list $soname $has_providers_list; then
# let apk-tools find provider of $soname
dep = $soname
else
# fallback to old behaviour. abuild finds the provider
dep = $(find_package_that_provides $soname)"
warn "Package $dep is missing 'provides = $soname'. Please rebuild it"
fi
add_to_pkginfo "depends = $dep"
done
*(from redmine: issue id 1350, created on 2012-09-05, closed on 2012-10-02)*Timo TeräsTimo Teräshttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1348ca-certificates: the /etc/ssl/certs is not created2019-07-14T07:29:39ZNatanael Copaca-certificates: the /etc/ssl/certs is not createdwhile debugging a gnutls issue I removed /etc/ssl/certs dir. When
reinstalling ca-certificates package I noticed that /etc/ssl/certs was
not recreated. I suspect it is related the fact that this dir is empty
in package.
To reproduce:
...while debugging a gnutls issue I removed /etc/ssl/certs dir. When
reinstalling ca-certificates package I noticed that /etc/ssl/certs was
not recreated. I suspect it is related the fact that this dir is empty
in package.
To reproduce:
rm -r /etc/ssl/certs
apk del ca-certificates
apk add -v -v ca-certificates
verify that /etc/ssl/certs is listed there
ls -l /etc/ssl
The /etc/ssl/certs is missing.
As a side effect, the trigger script will silently fail.
*(from redmine: issue id 1348, created on 2012-09-03, closed on 2012-09-07)*
* Changesets:
* Revision 8a4371ccd73e8f8672466881bd3b782de919cd93 by Timo Teräs on 2012-09-04T07:38:13Z:
```
db: remove AT_SYMLINK_NOFOLLOW for directory permissions
fchmodat does not support this flag - symlinks do not have permissions.
Sysadmin probably does not expect us to not follow symlinks either:
if /var -> /mnt/foo/var, we should be making sure the permissions
and ownership is correct on the target directory, not on the symlink.
Since fchmodat never returned ENOENT with AT_SYMLINK_NOFOLLOW, this
also fixes directory re-creation if it does not exist. fixes #1348.
```
* Revision 5014d53570be8a01ce17e9e2586765903b39a862 by Natanael Copa on 2012-09-04T09:31:50Z:
```
main/apk-tools: fix directory re-creation
ref #1348
```Timo TeräsTimo Teräshttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1241lbu does not store permissions on base directories that are entered with 'lbu...2021-04-14T21:32:03Zaa latchmlbu does not store permissions on base directories that are entered with 'lbu include'Since
http://git.alpinelinux.org/cgit/alpine-conf/commit/?id=4e857d18684667e7d9df3a0256e0b6e446284641,
lbu provides the included file list from
`apk audit --backup --quiet --recursive`, rather than a shell variable.
However, `apk audit ...Since
http://git.alpinelinux.org/cgit/alpine-conf/commit/?id=4e857d18684667e7d9df3a0256e0b6e446284641,
lbu provides the included file list from
`apk audit --backup --quiet --recursive`, rather than a shell variable.
However, `apk audit --backup --quiet --recursive` seems not to list the
base directories contained in lbu.list. In my case it only lists the
contents of those directories. As a result, lbu does not include the
base directory in the apkovl. This causes the boot procedure to apply
the apkovl and create the directory with the default owner and umask
(root:root mode 755 on this system) whereas the service requires
otherwise: (postgresql requires postgres:postgres mode 700).
I suggest that `apk audit --backup` output the base directories from
/etc/apk/protected\_paths/lbu.list and not just the contents, so that
the user can specify directories that need permissions stored. This will
match previous behavior of lbu.
*(from redmine: issue id 1241, created on 2012-07-04, closed on 2012-07-17)*
* Changesets:
* Revision 5aa69984595c8f63899a39cbeae8c86913bfb2d2 by Timo Teräs on 2012-07-09T11:59:40Z:
```
audit: get right protection mask for base directories in the lists
Use the paths' protection mask where available instead of the parent
paths'. ref #1241
```
* Revision ea5b08d1d574ae90ad6347a4d2f0a69bb656c7af by Timo Teräs on 2012-07-16T11:44:15Z:
```
audit: fix protection mask of non-db directories
If a directory has protection mask, but does not exist in db, we
do not handle it right unless we calculate the protection mask by
hand, or create temporary db dir entry for it. For simplicity create
always the db dir entry -- depending on audit type we likely need
to create it anyway. This commit also caches the db dir entry in the
audit tree context to avoid duplicate lookups. ref #1241.
```
* Revision 3882d7fb0dc347b5f9880b48fcd1b47175cc4260 by Natanael Copa on 2012-07-17T07:17:52Z:
```
main/apk-tools: upgrade to 2.3.2
ref #1241
```
* Revision 1e86290662203830e0c32ef673c230a2e82c8576 by Natanael Copa on 2012-07-17T11:03:00Z:
```
main/alpine-conf: check permissions when generating apkovl
ref #1241
```
* Revision 451f2026b9908506ff879bb5bae989ea1a699dcc by Natanael Copa on 2012-07-17T13:09:30Z:
```
main/alpine-conf: check permissions when generating apkovl
ref #1241
(cherry picked from commit 1e86290662203830e0c32ef673c230a2e82c8576)
```
* Revision f38fb0a22170382f18a44eb1520fcdb3b53d5ad0 by Natanael Copa on 2012-07-17T13:10:16Z:
```
main/apk-tools: upgrade to 2.3.2
fixes #1241
(cherry picked from commit 3882d7fb0dc347b5f9880b48fcd1b47175cc4260)
```Natanael CopaNatanael Copahttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1170progress bar2019-07-14T07:29:16ZAdelphe Rafanambinanaprogress barIt would be nice if there is a progress bar when running “apk cache
sync” and “apk fetch”.
Thanks,
*(from redmine: issue id 1170, created on 2012-05-17, closed on 2013-10-12)*
* Changesets:
* Revision ade8d0b4e9c206ab67dc8ef2006e8...It would be nice if there is a progress bar when running “apk cache
sync” and “apk fetch”.
Thanks,
*(from redmine: issue id 1170, created on 2012-05-17, closed on 2013-10-12)*
* Changesets:
* Revision ade8d0b4e9c206ab67dc8ef2006e8070011aae83 by Timo Teräs on 2013-06-17T16:13:14Z:
```
cache: implement progress bar (ref #1170)
```
* Revision 72139b82d3e6631c839745f3c34a5aca8c5c61e4 by Timo Teräs on 2013-06-17T16:51:41Z:
```
fetch: implement progress (fixes #1170)
```Timo TeräsTimo Teräshttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1116apk version <installedpkg> is broken2019-07-14T07:29:09ZNatanael Copaapk version <installedpkg> is brokenapk info squid should show installed version and available version.
Thats what previous release did at least.
With apk 2.3.0
ncopa-desktop:~$ apk --version
apk-tools 2.3.0, compiled for x86_64.
ncopa-desktop:~$ apk version ...apk info squid should show installed version and available version.
Thats what previous release did at least.
With apk 2.3.0
ncopa-desktop:~$ apk --version
apk-tools 2.3.0, compiled for x86_64.
ncopa-desktop:~$ apk version squid
Installed: Available:
ncopa-desktop:~$ sudo apk info -v | grep squid
squid-3.2.0.17-r0
*(from redmine: issue id 1116, created on 2012-04-26, closed on 2012-05-03)*
* Changesets:
* Revision 06323b3778418f923bd839850c5a10f2463c02b3 by Timo Teräs on 2012-04-27T05:39:33Z:
```
ver: show all versions if package name specified
fixes #1116
```Timo TeräsTimo Teräshttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1072apk add fails when not install via repository2021-03-29T07:38:34ZFrancesco Colistaapk add fails when not install via repositoryInstalling a new package with:
apk add /path/of/$package.apk —allow-untrusted
apk returns: ERROR: /path/of/$package.apk: BAD signature
*(from redmine: issue id 1072, created on 2012-04-03, closed on 2012-04-26)*
* Changesets:
* Re...Installing a new package with:
apk add /path/of/$package.apk —allow-untrusted
apk returns: ERROR: /path/of/$package.apk: BAD signature
*(from redmine: issue id 1072, created on 2012-04-03, closed on 2012-04-26)*
* Changesets:
* Revision a3280c30611c4db8a65a920850bfe0a8aeb09d23 by Timo Teräs on 2012-04-03T10:16:49Z:
```
pkg: honor --allow-untrusted when installing non-repository packages
fixes #1072
```https://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/1069apk info -e should exit with err when package is not installed2019-07-14T07:29:02ZNatanael Copaapk info -e should exit with err when package is not installedapk info -e says libiconv-dev is installed when it is not.
ncdev:~/aports/main/cryptsetup$ apk --version
apk-tools 2.3.0, compiled for x86.
ncdev:~/aports/main/cryptsetup$ abuild -r
>>> cryptsetup: Checking sanity of /ho...apk info -e says libiconv-dev is installed when it is not.
ncdev:~/aports/main/cryptsetup$ apk --version
apk-tools 2.3.0, compiled for x86.
ncdev:~/aports/main/cryptsetup$ abuild -r
>>> cryptsetup: Checking sanity of /home/ncopa/aports/main/cryptsetup/APKBUILD...
>>> cryptsetup: Analyzing dependencies...
>>> ERROR: cryptsetup: Conflicting package(s) installed: libiconv-dev
>>> ERROR: cryptsetup: all failed
ncdev:~/aports/main/cryptsetup$ sudo apk del libiconv-dev
OK: 428 MiB in 172 packages
ncdev:~/aports/main/cryptsetup$ apk info -e libiconv-dev; echo $?
0
ncdev:~/aports/main/cryptsetup$ grep libiconv-dev /lib/apk/db/installed
ncdev:~/aports/main/cryptsetup$
*(from redmine: issue id 1069, created on 2012-03-29, closed on 2012-04-26)*
* Changesets:
* Revision ebaf8305b5c9cc5bdc5d640f4cb25e058f7a2c26 by Timo Teräs on 2012-03-30T06:20:21Z:
```
info: fix exit code for -e
fixes #1069
```Timo TeräsTimo Teräs2012-04-30https://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/714implement apk search -r --origin ...2019-07-14T07:28:15ZNatanael Copaimplement apk search -r --origin ...Would be nice to have the origin printed instead of package names when
searching for reverse deps. This is useful when upgrading a lib which
breaks the ABI to know exactly what package that needs to be rebuilt.
Example usage could be:
...Would be nice to have the origin printed instead of package names when
searching for reverse deps. This is useful when upgrading a lib which
breaks the ABI to know exactly what package that needs to be rebuilt.
Example usage could be:
for p in $(apk search -r --origin $pkg); do
(cd $p; apkgrel -a APKBUILD && abuild -rk)|| break
done
*(from redmine: issue id 714, created on 2011-07-27, closed on 2011-11-22)*
* Changesets:
* Revision 3197d0f64a06403c2f8faa759ba219fc42ea57db by Timo Teräs on 2011-09-14T08:56:44Z:
```
search: implement --origin to print origin package name
fixes #714
```https://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/666apk cache sync does not exit with error if cache media gets full2019-07-14T07:28:08ZNatanael Copaapk cache sync does not exit with error if cache media gets fullTo reproduce:
create a loopbackdevice that is very small, mount it, and create the apk
cache symlink to there. then run apk cache sync.
You will not get any error messages and apk exists with success.
tested with apk-tools-2.1.0
*(f...To reproduce:
create a loopbackdevice that is very small, mount it, and create the apk
cache symlink to there. then run apk cache sync.
You will not get any error messages and apk exists with success.
tested with apk-tools-2.1.0
*(from redmine: issue id 666, created on 2011-05-27, closed on 2011-10-21)*
* Changesets:
* Revision 9cb0ce545aa900e6111df2f286e3664ed5bf4bc5 by Timo Teräs on 2011-07-11T08:22:26Z:
```
cache: return error if cache sync or download fails
fixes #666
```Timo TeräsTimo Teräshttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/663apk cache sync fails to remount back to read-only2019-07-14T07:28:08ZNatanael Copaapk cache sync fails to remount back to read-onlyWhen the cache is on read-only media apk cache sync will remount it rw.
It fails to remount it back to readonly due to some file handles are
still open at that time. Error message is something as “filesystem busy”
The remount to ro need...When the cache is on read-only media apk cache sync will remount it rw.
It fails to remount it back to readonly due to some file handles are
still open at that time. Error message is something as “filesystem busy”
The remount to ro needs to happen later or some file handles are not
closed properly.
*(from redmine: issue id 663, created on 2011-05-26, closed on 2011-06-03)*
* Changesets:
* Revision bae2bf4baba677c57de6f9bc086c2ce9693b349b on 2011-05-27T14:01:15Z:
```
main/apk-tools: misc fixes for apk cache and remount rw/ro
ref #663
ref #662
```
* Revision 70883a6b0caade71acd0fa3a8bfb934e2737cb17 on 2011-05-27T15:19:40Z:
```
main/apk-tools: misc fixes for apk cache and remount rw/ro
ref #663
ref #662
(cherry picked from commit bae2bf4baba677c57de6f9bc086c2ce9693b349b)
```Natanael CopaNatanael Copahttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/662apk update fails when boot from usb/cf and cache is enabled2019-07-14T07:28:07ZNatanael Copaapk update fails when boot from usb/cf and cache is enabledDue to usb/cf is readonly by default and apk does not remount it rw
early enough.
*(from redmine: issue id 662, created on 2011-05-26, closed on 2011-06-03)*
* Changesets:
* Revision bae2bf4baba677c57de6f9bc086c2ce9693b349b on 2011-...Due to usb/cf is readonly by default and apk does not remount it rw
early enough.
*(from redmine: issue id 662, created on 2011-05-26, closed on 2011-06-03)*
* Changesets:
* Revision bae2bf4baba677c57de6f9bc086c2ce9693b349b on 2011-05-27T14:01:15Z:
```
main/apk-tools: misc fixes for apk cache and remount rw/ro
ref #663
ref #662
```
* Revision 70883a6b0caade71acd0fa3a8bfb934e2737cb17 on 2011-05-27T15:19:40Z:
```
main/apk-tools: misc fixes for apk cache and remount rw/ro
ref #663
ref #662
(cherry picked from commit bae2bf4baba677c57de6f9bc086c2ce9693b349b)
```Natanael CopaNatanael Copahttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/607apk-tools should have "protected" files to be configurable2022-03-29T08:45:15Ziilluzion _apk-tools should have "protected" files to be configurableIt would be nice to configure what paths are protected, for example it
might be needed to save some changes in roundcubemail skin, which is
part of original package. It might be configuration parameter
PROTECTED\_PATH in apk.conf
*(fro...It would be nice to configure what paths are protected, for example it
might be needed to save some changes in roundcubemail skin, which is
part of original package. It might be configuration parameter
PROTECTED\_PATH in apk.conf
*(from redmine: issue id 607, created on 2011-04-28, closed on 2012-04-26)*
* Changesets:
* Revision ba3ee3f86396f05123f732da7c7879c8ed016c9d by Timo Teräs on 2012-02-23T13:05:06Z:
```
audit, db: add etc/apk/protected_files.d and new audit features
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
```Timo TeräsTimo Teräshttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/588apk update fails with cache on boot media2019-07-14T07:27:57ZNatanael Copaapk update fails with cache on boot mediaif you put apk cache on boot media, lets say a CF on sda1, then apk
update will fail since its read-only at boot.
*(from redmine: issue id 588, created on 2011-04-20, closed on 2011-04-27)*
* Relations:
* relates #512
* Changesets:
...if you put apk cache on boot media, lets say a CF on sda1, then apk
update will fail since its read-only at boot.
*(from redmine: issue id 588, created on 2011-04-20, closed on 2011-04-27)*
* Relations:
* relates #512
* Changesets:
* Revision 0bad4fb65b2655b7cd4aeba3213833081195b7a3 on 2011-04-27T08:28:36Z:
```
main/apk-tools: add patches from git
fixes #588
```Natanael CopaNatanael Copahttps://gitlab.alpinelinux.org/alpine/apk-tools/-/issues/575repository pinning2019-07-14T07:27:54ZTimo Teräsrepository pinningApk should be able to load both *main* and *testing* repositories, but
use packages from *testing* only if explicitly asked.
Possible syntax: “apk add mypackage@testing” would pin the package to
‘testing’ repository version, including a...Apk should be able to load both *main* and *testing* repositories, but
use packages from *testing* only if explicitly asked.
Possible syntax: “apk add mypackage@testing” would pin the package to
‘testing’ repository version, including all dependencies. The
dependencies should be permanent and stored in world.
*(from redmine: issue id 575, created on 2011-04-08, closed on 2011-11-03)*
* Changesets:
* Revision 500f8d4a7d7b17871647392e79e4c7a17c210534 by Timo Teräs on 2011-10-29T02:18:21Z:
```
solver, db: implement repository pinning
Improves /etc/apk/repositories format so you can say:
http://nl.alpinelinux.org/alpine/v2.3/main
@edge http://nl.alpinelinux.org/alpine/edge/main
@testing http://nl.alpinelinux.org/alpine/edge/testing
After which you can pin dependencies to these tags using:
apk add stableapp newapp@edge bleedingapp@testing
Apk will now by default only use the untagged repositories,
but adding a tag to specific dependency:
1. will prefer that tag for the name
2. allowing pulling in dependencies from that tag (though,
it prefers untagged packages to satisfy deps if possible)
fixes #575
```Timo TeräsTimo Teräs