Commit Graph

3185 Commits

Author SHA1 Message Date
Duncaen
5bed1a775c xbps-checkvers: make usage look more like all tools 2019-06-13 20:12:05 +02:00
Duncaen
597c0119dd xbps-checkvers: simplify print logic 2019-06-13 20:12:05 +02:00
Duncaen
abdd1047eb xbps-checkvers: use xbps_repo_store 2019-06-13 20:12:05 +02:00
Duncaen
260d21877f tests/xbps-checkvers: add --manual mode test 2019-06-13 20:12:05 +02:00
Duncaen
a99283bcdb xbps-checkvers: add --manual flag to only process listed templates 2019-06-13 20:12:05 +02:00
Juan RP
7a104fa911 xbps-checkvers.1: update for -s,--show-all.
Signed-off-by: Juan RP <xtraeme@gmail.com>
Closes: #108 [via git-merge-pr]
2019-06-13 20:12:05 +02:00
Juan RP
b69a399b52 tests/xbps-checkvers: update tests for new output format.
Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-13 20:12:05 +02:00
Juan RP
79bffac877 xbps-checkvers: implement -s,--show-all.
This replaces -s,--show-missing. This now prints all processed packages
and outputs in the following format:

pkgname repover srcver

if `repover` or `srcver` can't be known, '?' is print.

Will be used in xbps-src soon. Thanks to @duncaen for ideas.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-13 20:12:05 +02:00
Juan RP
f6116fc2ac xbps_pkgdb_lock(): check if rootfs is writable.
As shown in https://github.com/void-linux/xbps/issues/110
/var might be rw, while / might be ro.

Check this via xbps_pkgdb_lock() for both things.

Close #110

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-13 17:41:01 +02:00
Juan RP
c3b2d7ca53 libxbps: fix xbps autoupdate when its revdeps are up-to-date.
The current code was failing because while checking for updates
on its reverse dependencies, up-to-date versions were treated
as an error.

Added a new test case to verify that it works as expected.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-13 14:18:31 +02:00
m3tav3rse
f63d1ffe27 .gitignore: add xbps-fetch bin 2019-06-12 21:19:26 +02:00
Juan RP
5d186053dd configure: remove --enable-debug.
Why? because the code intentionally uses assert(), and we want the code
to always run as was designed.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-12 21:18:53 +02:00
Juan RP
fc98779ad1 xbps-checkvers: forgot to set correct short opt in long opts. 2019-06-12 20:04:28 +02:00
Juan RP
d53f3243ce xbps-checkvers: added ability to ignore conf repos via -i.
-i,--ignore-conf-repos has been added.
The previous -i,--installed flag has been renamed to -I.

This breaks compat but we'll need to change buildbot anyway.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-12 20:04:28 +02:00
Juan RP
8cea3e351b xbps-fetch(1): new utility that replaces 'xbps-uhelper fetch'.
xbps-install(1): document all libfetch env vars.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-12 18:07:24 +02:00
Juan RP
9cda7ef72a xbps-digest(1): new utility that replaces "xbps-uhelper digest".
See the manual page:

XBPS-DIGEST(1)              General Commands Manual             XBPS-DIGEST(1)

NAME
     xbps-digest - XBPS utility to generate message digests

SYNOPSIS
     xbps-digest [OPTIONS] [FILE] [FILE+N]

DESCRIPTION
     The xbps-digest utility generates message digests for specified FILE or
     stdin if unset.

OPTIONS
     -m, --mode mode
         Sets the message digest mode. Supported: sha256.  If unset, defaults
         to sha256.

     -h, --help
         Show the help message.

     -V, --version
         Show the version information.

SEE ALSO
     xbps.d(5), xbps-checkvers(1), xbps-create(1), xbps-dgraph(1),
     xbps-fbulk(1), xbps-install(1), xbps-pkgdb(1), xbps-query(1),
     xbps-reconfigure(1), xbps-remove(1), xbps-rindex(1), xbps-uchroot(1),
     xbps-uunshare(1)

AUTHORS
     Juan Romero Pardines <xtraeme@gmail.com>

BUGS
     Probably, but I try to make this not happen. Use it under your own
     responsibility and enjoy your life.

     Report bugs at https://github.com/void-linux/xbps/issues

                                 June 12, 2019

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-12 16:15:18 +02:00
Juan RP
cf4f0f4aa0 xbps_alternatives_register: fix a memleak.
Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
bcd80f2936 xbps_alternatives_register: update pkgdb alternatives dictionary.
... otherwise the entry might not be added to our array and won't
hit pkgdb.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
1c85083a94 lib/package_alternatives.c: update copyright.
Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
f06edd8850 xbps_alternatives_register: no need to check for 'alloc'.
Found by @huglovefan. Thanks.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
5913205dcf tests/xbps-alternatives: indent "more_entries_update" test case.
Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
639ff2d642 xbps_alternatives_register: get rid of an unnecessary change.
Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
d189921818 xbps_alternatives_register: fix test case "more_entries_update".
Even if the alternatives group is already registered, we need
to create the symlinks from current pkg dictionary (repo).

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
d021698365 tests/xbps-alternatives: new test case that fails.
Contributed by @duncaen.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
62f986cf4a configure: bump to 0.54.
Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
f4f9bef6e5 xbps_alternatives_register: find and remove obsolete symlinks.
This fixes the new test case "less_entries_update" contributed
by @duncaen.

If "alternatives" dict from pkgdb differs from the one from repos,
find obsoletes and remove them.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
72c66530c7 tests/xbps-alternatives: new test case, fixes for others.
New test case from @duncaen, fails currently.

Fixes for other test cases.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
04f899c80f xbps_alternatives_unregister: fix removal of current provider.
Fix logic as found by @duncaen in #101.

Also set "first" when the entry is removed from the array.

Fixes #102

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Juan RP
6204bc25f6 tests/xbps-alternatives: rename test to "remove_current_provider".
Also use -r in xbps-alternatives, by @duncaen.
2019-06-11 19:53:19 +02:00
Juan RP
5af8067973 tests/xbps-alternatives: add a new test.
This new test case checks that provider fallbacks to the first one
when the current provider is removed.

The test fails currently.
2019-06-11 19:53:19 +02:00
Juan RP
c29efcd13b xbps_alternatives_unregister: fix xbps_set_cb_state().
In the !current branch, "first" wasn't initialized so it displayed garbage:

Removing `pinentry-tty-1.1.0_5' ...
Removing 'pinentry' alternatives group symlink: pinentry
pinentry-tty-1.1.0_5: unregistered 'pinentry' alternatives group
Switched 'pinentry' alternatives group to 'p
o@�'
Creating 'pinentry' alternatives group symlink: pinentry -> /usr/bin/pinentry-tty
Removed file `/usr/bin/pinentry-tty'
Removed `pinentry-tty-1.1.0_5' successfully.

With my fix:

Removing `pinentry-tty-1.1.0_5' ...
Removing 'pinentry' alternatives group symlink: pinentry
pinentry-tty-1.1.0_5: unregistered 'pinentry' alternatives group
Switched 'pinentry' alternatives group to 'pinentry'
Creating 'pinentry' alternatives group symlink: pinentry -> /usr/bin/pinentry-tty
Removed file `/usr/bin/pinentry-tty'
Removed `pinentry-tty-1.1.0_5' successfully.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-11 19:53:19 +02:00
Johannes Brechtmann
77b90951ea test: fix typo in remove_directoy and move to right place 2019-06-07 20:13:39 +02:00
Juan RP
dc65f62ad7 tests/remove_symlinks_dangling: fix test, noticed by @jnbr.
Somehow I confused the test case name.
2019-06-07 20:13:24 +02:00
Juan RP
dd3dc2ddec xbps_symlink_target: always canonicalize rootdir.
... otherwise we might end up with a relative rootdir that will
give unexpected results.

dtrt when rootdir != /
2019-06-07 20:13:24 +02:00
Juan RP
9e2c00ee8b libxbps: remove dangling symlinks properly.
This fixes removal of packages that contain multiple levels
of dangling symlinks, i.e faenza-icon-theme and probably others.

Close #23
2019-06-07 20:13:24 +02:00
human
56aa77d51b xbps-install: make question() read the whole input line
reading only the first character would answer the next question()
with the next character (unless you just pressed enter)
2019-06-07 19:38:51 +02:00
Juan RP
cfc8e0a580 xbps-fbulk/main.c: update my email address.
Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-06 13:11:33 +02:00
Johannes Brechtmann
f4f88705d6 data: update repo urls to voidlinux.org
remove alternative debug mirrors
2019-06-06 13:11:24 +02:00
Juan RP
371be9703e Sync with portableproplib-0.6.8. 2019-06-04 21:43:52 +02:00
Duncaen
121d0fbb64 tests: add test for removing package with ignored dependency 2019-06-02 18:24:03 +02:00
Duncaen
33fbe8a5ef fulldeptree: ignore missing local runtime dependencies
They most likely come from `ignorepkg` and without this patch
operations xbps-remove -R aborts if a dependency was ignored
at install time.
2019-05-27 12:41:39 +02:00
Duncaen
67badf983b lib/conf.c: ignore glob errors 2019-05-22 15:05:45 +02:00
Duncaen
79317563e9 lib/conf.c: fix including absolute paths 2019-05-22 15:05:45 +02:00
Duncaen
3533af846f tests: add tests for absolute configuration include 2019-05-22 15:05:45 +02:00
Duncaen
85bf13f138 lib: move conf parsing to lib/conf.c and refactor to not rely on getcwd/chdir
This fixes https://github.com/voidlinux/xbps/issues/158
2019-05-22 13:22:10 +02:00
Johannes Brechtmann
fa5911bb00 tests: test for removal of nested directories 2019-05-16 11:04:48 +02:00
Johannes Brechtmann
949d2d90e7 package_remove: fix length comparison 2019-05-16 11:04:48 +02:00
Juan RP
3eb064af2c COPYING: update for 2019. 2019-05-14 23:34:53 +02:00
Juan RP
208573d368 tests: install_and_update_revdeps: improve to catch more cases. 2019-05-14 23:34:53 +02:00
Juan RP
108a165534 libxbps: try to update revdeps when installing or updating pkgs.
This fixes the cases where a pkg installation or update
could break its revdeps due to not satisfying dependencies.

When performing an install or update, xbps now always checks if
there are updates for its revdeps and get added to the transaction.

See the two new test cases for more information.
2019-05-14 23:34:53 +02:00