Commit Graph

3400 Commits

Author SHA1 Message Date
73e0668840 libxbps: fix issue found by the recent glvnd switch.
See the new test case for details, but this simulates
the recent glvnd switch, with mesa, nvidia and libglvnd.

Thanks @st3r4g for the fix! this indeed fixes the new test case.

Close #186
2019-12-27 20:25:05 +01:00
34a1ab51d0 xbps-checkvers: version cache file.
We do not want obsolete files from previous versions, so that
we version the filename of that working version.
2019-12-27 18:23:46 +01:00
64aeabf3f6 xbps-checkvers: restore previous behaviour after 7a220b37db.
The '%n' pkgname fmt option still needs to be the sourcepkg
for xbps-src to work with no additional changes.

This restores previous behaviour, and uses binpkg's pkgname
while checking for pkgdb/repo.
2019-12-27 18:04:53 +01:00
90c040f37f configure: bump version to 0.58.
not yet released but 0.58 will be next version.
2019-12-27 16:35:03 +01:00
2f51b4c0bc xbps_init: fix warning on glibc. 2019-12-27 16:23:56 +01:00
7f75fd840a xbps_init: autodetect musl libc variant at compile time.
This way we don't need to set the 'architecture' xbps.d
setting when the binaries are compiled for musl.

Close #195
2019-12-27 16:23:56 +01:00
66b07bb795 xbps_array_foreach_cb_multi: fix previous. 2019-12-27 16:22:40 +01:00
f5d93caf15 xbps_array_foreach_cb_multi: improve previous (v2).
As suggested by @CasperVector reuse the 'i' var to
wait for threads that were created successfully.
2019-12-27 15:47:43 +01:00
a3a1c372cb xbps_array_foreach_cb_multi: improve previous.
Do not wait for the other threads to finish, just exit early.
2019-12-27 15:19:22 +01:00
08a1c61a4d xbps_array_foreach_cb_multi: error out if pthread_create(3) fails.
We do not want to continue processing more threads
if pthread_create(3) fails, rather return an error.

This is for #182 but not yet fixed, there might be a
memleak somewhere.
2019-12-27 14:27:51 +01:00
7a220b37db xbps-checkvers: use binpkg's pkgname rather than srcpkgs.
Up until now `xbps-checkvers` would only check for the
real sourcepkg, this broke detection of binary packages
that are subpkgs.

Added a new test case.

Close #192
2019-12-27 12:24:16 +01:00
0e1482917a Fix maybe-uninitialized warnings detected by LTO. 2019-12-27 10:53:10 +01:00
9775a20dbc configure: use pkg-config found via PATH.
We only care if the `pkg-config` bin is there, don't override
it with the result from _which(). In the xbps-src world,
pkg-config is a wrapper, that makes it cross compile easily.
2019-12-26 15:29:03 +01:00
66b856fa77 xbps-install: don't prompt when all pkgs on hold. 2019-12-14 13:23:31 +01:00
26d853751e lib/util.c: relax revision check to match existing data 2019-12-14 12:07:12 +01:00
be05118aa8 libxbps: verify repodata signatures even if rootdir is unset.
xbps-rindex(1) has a -r option that sets the remove mode,
due to the changes added to sign repodata we need to access
to the correct directory where repository public keys are
stored. This makes the code use `$PWD/keys` before falling
back to `metadir`.

Fixes the test suite to run with unprivileged users (non root).
2019-11-24 12:52:50 +01:00
36a7ddd4ae xbps-uchroot: document end of options argument
Signed-off-by: Doan Tran Cong Danh <congdanhqx@gmail.com>
2019-11-24 12:28:45 +01:00
be06a3b578 xbps-uunshare: document end of options argument
Signed-off-by: Doan Tran Cong Danh <congdanhqx@gmail.com>
2019-11-24 12:28:45 +01:00
f723edbca1 trans/revdeps: ignore pkgs on hold.
shlib checking is still performed later on...
2019-11-24 11:44:21 +01:00
q66
85b8b3bbb7 lib/package_alternatives.c: prune obsolete alternatives groups
In the edge case when an updated package has different (or no)
alternatives groups, make sure to prune those that are in pkgdb
but not in the newly installed package.

A potentially common case of this is when a package that formerly
had alternatives gets removed and a transitional metapackage
takes its place (which has no alternatives).

When the new package has no dependencies, oldest next possible
alternatives group will be used. This is because that indicates
a removed package. When there are dependencies, the newest one
will be used; as this indicates a transitional package.
2019-11-17 13:22:15 +01:00
5c9be1eefd travis: update xbps and system and then install deps.
code is too strict (or stupid) to allow unmatched versions.
2019-11-17 12:18:44 +01:00
d785e7e483 Tests for signing metadata 2019-11-02 11:53:14 +01:00
a1481cb285 Verify index-meta for in-memory sync 2019-11-02 11:53:14 +01:00
61ef5c3f8a Read also unsigned index-meta 2019-11-02 11:53:14 +01:00
09125769bd Verify index-meta 2019-11-02 11:53:14 +01:00
ae26a83ad2 Preserve meta-index data on change of signing key 2019-11-02 11:53:14 +01:00
4e3d4d2287 Don't assume repodata is signed when has index-meta.plist 2019-11-02 11:53:14 +01:00
381b7b7600 Sign index-meta 2019-11-02 11:53:14 +01:00
b4e93a95bf Turn off repodata signing 2019-11-02 11:53:14 +01:00
ce4873a1f1 Use predefined constant in place of magic string 2019-11-02 11:53:14 +01:00
a7830cf780 Verify repodata signature 2019-11-02 11:53:14 +01:00
04194f44c8 Sign repodata 2019-11-02 11:53:14 +01:00
6886a73288 Bump to 0.57.1 and libxbps micro. 2019-10-27 09:50:11 +01:00
b9b6f43300 package_script.c: fix runtime with tcc
Making `shells` a global declaration does not seem to make tcc happy, so make this a local variable in `xbps_pkg_exec_buffer` instead.
2019-10-27 09:38:50 +01:00
bc59d0b407 lib/package_script.c: try to find a usable shell instead of using /bin/sh 2019-10-27 09:38:50 +01:00
9ebe82fdc3 xbps-checkvers: fix a warning with glibc.
found by @q66

main.c:195:8: error: ignoring return value of 'fread', declared with attribute warn_unused_result [-Werror=unused-result]
2019-10-27 09:13:46 +01:00
c3a64f60e9 configure: bump to 0.58 2019-10-27 08:57:40 +01:00
98e09e01e1 lib/package_alternatives.c: check if alternative is a symlink before removing it
Original commit by @duncaen ... but couldn't find this anywhere.
2019-10-27 08:44:37 +01:00
3854bd103f lib/transaction_fetch.c: fix memory leak 2019-10-25 23:38:01 +02:00
143b13f9e6 lib/transaction_fetch.c: move fetch and verify binpkgs and make use of xbps_fetch_file_digest 2019-10-25 23:38:01 +02:00
6ed0c8c5c5 lib/verifysig.c: add xbps_verify_signature to verify signature against digest 2019-10-25 23:38:01 +02:00
62c1102cc4 lib/util.c: xbps_remote_binpkg_exists to check if signature and binpkg are cached 2019-10-25 23:38:01 +02:00
d2bdd9574e lib/download.c: add xbps_fetch_file{_dest,}_digest 2019-10-25 23:38:01 +02:00
699b2bdd3b lib/util.c: verify revision in xbps_pkg_{version,revision,name} 2019-10-25 23:37:23 +02:00
7b4a925302 bin/xbps-rindex: better error handling for writing repodata archives
This fixes issues when writes fail (as example if the disk is full),
where xbps would create empty repodata or stagedata archives.
2019-10-25 23:36:44 +02:00
04d5554ed2 bin/xbps-create: better error handling for writing archives
This fixes issues where if xbps-create creates a new archive on a full
disk, it will write an incomplete archive and then later fails to be
read by xbps-rindex.
2019-10-25 23:36:44 +02:00
7b66a2885b tests: add two more tests for preserving and force removal of conf files 2019-08-06 13:49:51 +02:00
f0d62b9a80 lib/transaction_files.c: fix conf handling
This only changes the debug messages, because modified files and conf
files are handled the same on removal and unless a conf file changes
the file type it is never deleted.
2019-08-06 13:49:42 +02:00
79467079b2 NEWS: mention pcc 2019-08-05 16:02:53 +02:00
fa23602561 lib/transaction_files.c: rename remove to removepkg to not shadow remove(3) 2019-08-05 15:56:04 +02:00