Timo Teräs
9089edcc44
db: prepare database writing for layers
2022-02-21 10:24:05 +02:00
Timo Teräs
9e4dd29f54
db: prepare database reading for layers
2022-02-21 10:24:05 +02:00
Paul Spooren
be4ce40797
support new index format without attaching arch
...
By default the package architecture is attached to the repository url.
With this commit it is possible to define new indexes ending on `.adb`.
If such index file is detected the packages must be in the same folder
as the index.
Signed-off-by: Paul Spooren <mail@aparcar.org>
2022-02-14 17:21:51 +00:00
Daniel Golle
aa4880bc04
fs_uvol: take down volume before removal
...
Make sure volume is in 'down' state before attempting to remove it.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-02-14 17:18:54 +00:00
Daniel Golle
4c568416e3
context: fix 'uvol' default path
...
'uvol' is installed to /usr/sbin by default. Assume that path if not
set by APK_UVOL environment variable.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2022-02-13 09:50:50 +01:00
Ariadne Conill
6315575af1
database: fix apk_db_cache_active returning true when cache not configured
...
this regression was caused by refactoring of the options handling into the
apk_ctx struct in 354713d2
, presumably a little too much innovation with sed
fixes #10799
2022-02-03 22:26:57 +00:00
Timo Teräs
6df225eac3
mkpkg, adb: validate version and dependency format
...
Fail if the package or dependency version format is not valid.
fixes #10807
2022-02-01 14:47:27 +02:00
Thiago Perrotta
bd13e774de
fix typo on apk-add.8.scd
2022-01-24 00:46:43 -05:00
Timo Teräs
b7e3ca22f7
genhelp: fix upper case substition
2022-01-21 14:47:54 +02:00
Timo Teräs
10d0043063
cache: allow various flags, and addition of dependencies
...
Allow controlling 'cache download' more closely to 'upgrade' so
it can be used to pre-download packages for ugprade.
2022-01-21 14:36:31 +02:00
Timo Teräs
a2cd188039
package: fail on invalid control data
...
Handle meta data error to produce hard failure.
fixes #10806
2022-01-17 10:55:37 +02:00
Ariadne Conill
e8650d4d44
support building with uncompressed help databases
2022-01-13 14:13:53 +00:00
Ariadne Conill
3d41d1c90a
package: factor out /dev initialization to linux-specific helper function
2021-12-29 20:38:40 +02:00
Ariadne Conill
10b26851a4
database: refactor mounting and unmounting /proc
2021-12-29 20:37:28 +02:00
Ariadne Conill
dfe2e141ca
database: relocate find_mountpoint()
2021-12-29 20:37:28 +02:00
Ariadne Conill
ae4008c4f2
database: refactor cache remounting
2021-12-29 20:37:28 +02:00
Ariadne Conill
4fa6a9fd73
database: refactor tmpfs root detection and cache setup
2021-12-29 20:37:25 +02:00
Ariadne Conill
dd1908f2fc
portability: add sys/sysmacros.h wrapper for makedev/major/minor
2021-12-29 20:14:41 +02:00
Ariadne Conill
837d2fd915
portability: include environ in overlaid unistd.h
2021-12-29 20:14:41 +02:00
Ariadne Conill
e6b1b29028
portability: implement pipe2 and mknodat
2021-12-29 20:14:41 +02:00
Ariadne Conill
fade8b1ef2
ci: use meson on debian, not legacy build system
2021-12-29 20:14:41 +02:00
Ariadne Conill
2c3cef8787
portability: take over strlcpy
2021-12-29 20:14:41 +02:00
Ariadne Conill
03a5e6d9b9
io: use opendirectory for UID/GID lookups on macOS
...
macOS has no concept of a chroot-specific UID/GID database, as the database is actually
LDAP.
ref #10794
2021-12-29 20:14:41 +02:00
Ariadne Conill
9d07d07fe4
abstract differences between GNU and Apple xattr functions
2021-12-29 20:14:41 +02:00
Ariadne Conill
6344a0eedb
database: isolate linux-specific mountpoint headers
2021-12-29 20:14:41 +02:00
Ariadne Conill
de15d4adbb
legacy build system: include libportability headers
2021-12-29 20:14:41 +02:00
Ariadne Conill
cbdc4e9f25
portability: add endian.h wrapper
2021-12-29 20:14:38 +02:00
Ariadne Conill
a7a0c0a6ca
portability: implement skeleton with memrchr function
2021-12-29 20:11:17 +02:00
Timo Teräs
9ed4785f1c
apk_adb: add missing compare functions
...
fixes #10803
2021-12-29 19:36:34 +02:00
Ariadne Conill
8d5784aaf5
database: use SA_RESETHAND instead of SA_ONESHOT when registering a SIGALRM handler
...
SA_ONESHOT is a GNU-specific alias for POSIX SA_RESETHAND.
2021-12-29 10:36:59 +02:00
Paul Spooren
0b1b090f02
gitignore: add build/
...
The folder is commonly used for meson, ignore it.
Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-12-29 07:53:17 +00:00
Ariadne Conill
2a9c0277c0
use fstatat, not fstatat64
...
the stat64 family of functions were provided as transitional functions,
but when building on glibc with _GNU_SOURCE, or any other supported system,
the stat functions are equivalent to their stat64 counterparts
2021-12-29 07:52:48 +00:00
Ariadne Conill
336a133b76
meson: define _FILE_OFFSET_BITS=64 for glibc
2021-12-29 07:52:48 +00:00
Paul Spooren
f2a5959139
apk: add --preserve-env option
...
This options is useful for (post)install scripts to run with the same
environment variables as apk is executed.
[TT: minor stylistic changes]
Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-12-29 09:50:50 +02:00
Paul Spooren
2da3f347d8
apk: add --force-no-chroot option
...
[TT: reoder changes to alphabetically sorted locations]
Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-12-29 09:43:13 +02:00
Timo Teräs
70fe7b121a
make stderr line buffered
2021-12-27 14:37:10 +02:00
Timo Teräs
a662047e2c
print: improve indented printing api
...
- make sure all commit errors go to stderr
- make it a bit more api like
2021-12-27 14:34:01 +02:00
Timo Teräs
6117de6eae
list: sort options alphabetically
2021-12-27 10:34:17 +02:00
Paul Spooren
f3fc0105f8
list --manifest
...
print installed packages in `<name> <version>` format. The format is
currently used in OpenWrt and allows downstream tools to compare what's
installed in the firmware.
Signed-off-by: Paul Spooren <mail@aparcar.org>
2021-12-27 10:29:10 +02:00
Timo Teräs
0baf59627b
io: fix tee error handling path
...
Make sure the from is not dereferenced/used on error path, and
cancel the ostream.
fixes #10800
2021-12-27 10:20:03 +02:00
Daniel Golle
4ccf038a9f
add option --no-logfile
2021-12-23 08:07:42 +00:00
Paul Spooren
af489f3b6f
io.c: add missing limits.h
...
Fixes compilation on MacOS X
2021-12-20 12:01:41 +00:00
Kevin Daudt
e3b499fb2b
ci: strip static binary
...
To reduce the file size, strip the static binary.
2021-12-18 20:19:38 +01:00
Kevin Daudt
f49600d38b
ci: use arch-tagged images for static build
...
For 32-bits arches, we use 64-bit arches in 32-bit mode. Docker by
default wants to pull the image for the native arch, so unless we take
care, the binaries will be built for the wrong arch.
Use the arch tagged images we build to make sure we get the correct image.
2021-12-18 20:10:12 +01:00
Jan Hendrik Farr
0f50f9ff29
libfetch: Allow special characters in http basic auth
...
Currently, special characters in the username or password are not
handled correctly (when set in $http_proxy and $https_proxy). They
should be percent encoded in the environment variables then decoded
by libfetch and reencoded using base64. This implementation is mainly
taken from the current FreeBSD source and adapted to the apk-tools
version of libfetch.
fixes #10775
2021-12-17 10:11:11 +02:00
Ariadne Conill
6941f8bd61
adb: use sys/uio.h for iovec operations
...
readv/writev and struct iovec are declared in sys/uio.h per POSIX.
using it without sys/uio.h is a GNU extension.
ref #10794
2021-12-14 13:06:26 -06:00
Ariadne Conill
36fcbeed1a
applet: suppress is_error warning on clang
...
clang does not ignore inline functions when checking for unused functions
ref #10794
2021-12-14 18:54:16 +00:00
Ariadne Conill
5bd3b1e3fc
uvol: cast size data to intmax_t
...
this ensures the %ju format parameter is always passed an integer that is
appropriately sized, e.g. on mac where off_t is normally 32-bit.
ref #10794
2021-12-14 18:49:11 +00:00
Ariadne Conill
6df9f0ed59
defines: provide APKE_REMOTE_IO as portable alternative to EREMOTEIO
2021-12-14 18:48:18 +00:00
Ariadne Conill
46a2049d46
meson: fix underlinking issue with lua module
2021-12-14 18:46:18 +00:00