Juan RP
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
Juan RP
66b07bb795
xbps_array_foreach_cb_multi: fix previous.
2019-12-27 16:22:40 +01:00
Juan RP
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
Juan RP
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
Juan RP
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
Juan RP
0e1482917a
Fix maybe-uninitialized warnings detected by LTO.
2019-12-27 10:53:10 +01:00
Piotr Wójcik
26d853751e
lib/util.c: relax revision check to match existing data
2019-12-14 12:07:12 +01:00
Juan RP
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
Juan RP
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
Piotr Wójcik
a1481cb285
Verify index-meta for in-memory sync
2019-11-02 11:53:14 +01:00
Piotr Wójcik
61ef5c3f8a
Read also unsigned index-meta
2019-11-02 11:53:14 +01:00
Piotr Wójcik
09125769bd
Verify index-meta
2019-11-02 11:53:14 +01:00
Piotr Wójcik
4e3d4d2287
Don't assume repodata is signed when has index-meta.plist
2019-11-02 11:53:14 +01:00
Piotr Wójcik
381b7b7600
Sign index-meta
2019-11-02 11:53:14 +01:00
Piotr Wójcik
b4e93a95bf
Turn off repodata signing
2019-11-02 11:53:14 +01:00
Piotr Wójcik
ce4873a1f1
Use predefined constant in place of magic string
2019-11-02 11:53:14 +01:00
Piotr Wójcik
a7830cf780
Verify repodata signature
2019-11-02 11:53:14 +01:00
Piotr Wójcik
04194f44c8
Sign repodata
2019-11-02 11:53:14 +01:00
Juan RP
6886a73288
Bump to 0.57.1 and libxbps micro.
2019-10-27 09:50:11 +01:00
Juan RP
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
Enno Boland
bc59d0b407
lib/package_script.c: try to find a usable shell instead of using /bin/sh
2019-10-27 09:38:50 +01:00
Juan RP
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
Duncaen
3854bd103f
lib/transaction_fetch.c: fix memory leak
2019-10-25 23:38:01 +02:00
Duncaen
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
Duncaen
6ed0c8c5c5
lib/verifysig.c: add xbps_verify_signature to verify signature against digest
2019-10-25 23:38:01 +02:00
Duncaen
62c1102cc4
lib/util.c: xbps_remote_binpkg_exists to check if signature and binpkg are cached
2019-10-25 23:38:01 +02:00
Duncaen
d2bdd9574e
lib/download.c: add xbps_fetch_file{_dest,}_digest
2019-10-25 23:38:01 +02:00
Piotr Wójcik
699b2bdd3b
lib/util.c: verify revision in xbps_pkg_{version,revision,name}
2019-10-25 23:37:23 +02:00
Duncan Overbruck
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
Duncan Overbruck
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
Duncan Overbruck
fa23602561
lib/transaction_files.c: rename remove to removepkg to not shadow remove(3)
2019-08-05 15:56:04 +02:00
Duncan Overbruck
df22b0384d
lib/package_remove.c: fix uninitialized xbps_array_t
2019-08-05 15:48:11 +02:00
Duncan Overbruck
c815d3d5f5
lib/package_remove.c: fix check_remove_pkg_files if euid is 0
...
True means the check failed, false means success
2019-08-05 15:41:23 +02:00
Duncan Overbruck
e59ded73ae
lib/conf.c: don't stop after the first error and print error
...
This fixes void-linux/xbps#153 .
2019-08-05 15:28:24 +02:00
Duncan Overbruck
745ba32641
lib/package_remove.c: use obsolete_files from transaction
2019-08-05 14:56:21 +02:00
Duncan Overbruck
f0d90d3fec
lib/transaction_files.c: prepare to use obsolete files detection on package removal
2019-08-05 14:55:21 +02:00
Duncan Overbruck
f103b91663
Revert "lib/transaction_{revdeps,prepare}.c: try to update packages if necessary"
...
This reverts commit 0e950156fc
.
2019-08-05 11:48:15 +02:00
Duncan Overbruck
cb28e7959a
Revert "lib/transaction_ops.c: remove updating all reverse dependencies"
...
This reverts commit 5e4d33a58f
.
2019-08-05 11:48:11 +02:00
Duncaen
0e950156fc
lib/transaction_{revdeps,prepare}.c: try to update packages if necessary
...
`xbps_transaction_revdeps` will now try to add updates for packages to the
transaction if the dependency is not satisified anymore due to a package
install/update.
`xbps_transaction_prepare` will now check the return value of
`xbps_transaction_revdeps` and repeat the dependency resolution,
until `xbps_transaction_revdeps` returns 0, which means that it didn't
add any new packages to the transaction.
2019-07-03 00:48:57 +02:00
Duncaen
5e4d33a58f
lib/transaction_ops.c: remove updating all reverse dependencies
2019-07-03 00:48:57 +02:00
Duncaen
041eed8255
lib/package_fulldeptree.c: also use the initial item from the hashtable
2019-07-02 09:48:05 +02:00
Duncaen
7c3029589c
lib/package_fulldeptree.c: don't add the package itself to the fulldeptree result
...
This was noticed a few days ago by @leah2.
2019-07-02 09:48:05 +02:00
Duncaen
57256c2328
lib/package_fulldeptree.c: add items to result if they are found in the hashtable
2019-07-02 09:48:05 +02:00
Duncaen
b60054267b
lib/package_orphans.c: the argument is not UNUSED
2019-07-02 09:48:05 +02:00
Juan RP
0677678387
Added LTO support and fix warnings (maybe-uninitialized).
2019-06-27 18:09:26 +02:00
Juan RP
d6aebd45f0
fetch/http.c: fix tcc build failure.
...
fetch/http.c:1475: warning: function might return no value: 'parse_index'
The code uses abort() before returning anything; return a proper
return value instead.
2019-06-26 14:57:39 +02:00
Duncaen
d72091a206
lib/transaction_files.c: fix returning error on hash mismatch
2019-06-26 13:07:16 +02:00
Duncaen
b39e341426
libxbps: don't check revdeps on removal of ignored packages
2019-06-23 12:23:17 +02:00
Johannes Brechtmann
11e5190a36
lib/fetch: happy_eyeballs_connect check for waiting connections before
...
decrementing them, remove dead code
2019-06-23 12:14:21 +02:00