Commit Graph

1234 Commits

Author SHA1 Message Date
Juan RP 0727d9a53a xbps-checkvers: implement --format %R (repository).
Close #128
2019-06-19 13:07:42 +02:00
Juan RP b12b72e151 xbps-install/state_cb.c: minor tweaks. 2019-06-18 21:17:44 +02:00
Duncaen a19c659616 bin/xbps-install: add the transaction_file states 2019-06-18 19:54:22 +02:00
Duncaen 91e428d54d bin/xbps-create: record file size in files.plist 2019-06-18 19:54:22 +02:00
Juan RP eddd2cd602 xbps-checkvers: stop abusing assert().
assert() must not change program behaviour.

It's unlikely that xbps_dictionary_set_cstring() fails, but even
so proplib will report it, so no need to run it via assert().
2019-06-18 18:49:29 +02:00
Juan RP 286193515c xbps-rindex/repoflush.c: pass correct filename to unlink(). 2019-06-18 18:49:29 +02:00
Juan RP 8018f53e0a xbps-rindex/repoflush.c: stop abusing assert().
assert() must not change the program behaviour.

Make sure fchmod() and rename() succeed properly and
fail gracefully otherwise.
2019-06-18 18:49:29 +02:00
Juan RP 042ab422b2 xbps-dgraph/main.c: simplify logic.
Thanks to clang-analyzer for reporting a dead assignment
that lead me to rework the logic.
2019-06-18 18:49:29 +02:00
Juan RP 5f68687cbb bin/xbps-install/main.c: fix dead assignment.
Found by clang-analyzer.

Bug Summary

File: bin/xbps-install/main.c
Warning: line 246, column 5
Value stored to 'rv' is never read
2019-06-18 18:49:29 +02:00
Juan RP daf65b0767 bin/xbps-install/main.c: fix dead assignment.
Found by clang-analyzer.

Bug Summary

File: bin/xbps-install/main.c
Warning: line 259, column 5
Value stored to 'rv' is never read
2019-06-18 18:49:29 +02:00
Juan RP 0ee0aaa395 xbps-pkgdb/check_pkg_alternatives.c: dead store.
Reported by clang-analyzer.
2019-06-18 18:49:29 +02:00
Juan RP b6a13945e0 xbps: restore default repodata compression format (gzip/zlib).
Any compression format from that list is supported without
additional changes: gzip, bzip2, lz4, xz, zstd.

This is for repository data and binary packages.

Close #122
2019-06-18 18:37:19 +02:00
Duncaen 3677986c7e bin/xbps-checkvers: store character returned by fgetc in int
The character has to be checked for EOF (-1), otherwise with
architectures that use unsigned char by default this breaks at
compile and runtime.

https://github.com/void-linux/xbps/issues/123
2019-06-18 15:04:47 +02:00
Juan RP f5f7f6b5a3 xbps-rindex: fix comment, zstd is set by default. 2019-06-17 08:22:43 +02:00
Juan RP 6c1759862e xbps-rindex: added --compression option and set zstd by default.
Multiple compression formats are now supported for repodata,
none, gzip, bzip2, xz, lz4 and zstd.
2019-06-17 07:24:05 +02:00
Juan RP ab9a587d34 xbps-create: added support for lz4 and zstd compression formats. 2019-06-17 07:12:18 +02:00
Duncaen 1037a77000 xbps-checkvers: grow buffer if necessary instead of free/malloc for every file 2019-06-15 23:50:50 +02:00
Duncaen 323ca2f95a xbps-checkvers: cleanup and check strdup errors 2019-06-15 23:50:50 +02:00
Duncaen 49cc70de9a xbps-checkvers: rewrite check_reverts without malloc 2019-06-15 23:50:50 +02:00
Duncaen e495f84954 xbps-checkvers: set rcv->fname when loading from cache 2019-06-15 23:50:50 +02:00
Duncaen 3805fd5297 xbps-checkvers: use proplib data structures and add cache file 2019-06-15 23:50:50 +02:00
Duncaen 26cc209225 xbps-checkvers: remove magic buffer and use fwrite for %t format 2019-06-15 23:50:50 +02:00
Duncaen dfa6e80d13 xbps-checkvers: add %t format to get requested template name from path (ie subpackage) 2019-06-15 23:50:50 +02:00
Duncaen db2eb29cbc xbps-checkvers: add --format 2019-06-15 23:50:50 +02:00
Duncaen 5dfaf5c075 xbps-checkvers: allow files argument to be paths or package name 2019-06-15 23:50:50 +02:00
Duncaen 8018833010 lib/fetch: add FORCE_IPV{4,6} environment variables 2019-06-15 19:19:40 +02:00
Juan RP a9a889c54d fulldeptree: return a proper error if deps can't be resolved.
xbps_get_pkg_fulldeptree() now returns NULL and sets errno to ENODEV
when there are missing dependencies, rather than assert()ing.

Added another test case to check returned error codes.

Signed-off-by: Juan RP <xtraeme@gmail.com>
2019-06-15 18:04:20 +02:00
Duncaen f18cf87e3a xbps-checkvers: fix bug noticed by fixing another bug 2019-06-13 23:32:58 +02:00
Duncaen 684d2a7187 xbps-checkvers: only allocate if $ is in the current line
Before this commit, it would have seen $ from following lines
and thinks it needs to substitute variables.
2019-06-13 23:32:58 +02:00
Duncaen 0691054a59 xbps-checkvers: try to not see something like ${var##foo} as comment 2019-06-13 23:32:58 +02:00
Duncaen 204b9b630a xbps-checkvers: rewrite shell substitution without buffer guessing 2019-06-13 23:32:58 +02:00
Duncaen 93c6825520 xbps-checkvers.1: mention --manual 2019-06-13 20:12:05 +02:00
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 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 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 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
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
Juan RP 77ae94e6a1 xbps-create: remove two debugging printfs.
Closes: #84 [via git-merge-pr]
2019-04-26 16:27:34 +02:00
parke ca5a88e462 xbps-uunshare: Fixed typo in error message: uidmap -> uid_map.
Thanks @parke #28
2019-04-22 14:54:29 +02:00
Juan RP 0c860d1db0 xbps-dgraph: fix regresion introduced by the fulldeptree changes.
This now works as expected again, see https://i.imgur.com/pr2XO70.png
for the full dependency graph of the sway pkg installed on my system.

Closes: #80 [via git-merge-pr]
2019-04-22 14:49:19 +02:00
Duncaen bd616aa901 xbps-pkgdb: add alternatives check
Closes #66
2019-04-20 11:07:00 +02:00
Duncaen d1667fd931 Add the ability to ignore packages
The previous idea was to use virtual packages in the users configuration
to satisfy dependencies by mapping them to existing installed packages.
Using virtual packages for it doesn't work as expected and trying to make
it work would break other functionalities of virtual packages, like the
version satisfaction checks for `provides` and the ability to replace
virtual packages with real packages. The virtual package functionality
should be used exclusively for virtual packages.

This allows users to specify packages packages that should be ignored.
Ignored packages in dependencies are always satisfied without installing
the package, while updating or installing a package that depends on an
ignored package.

This does NOT ignore the shlib checks, ignoring a package that provides
required shared libraries will abort the transaction as if there was no
package that provides the required shared library.
2019-04-19 23:07:59 +02:00
Duncaen a46be6867a xbps-create: reject unhandled files
A segfault in xbps-create(1) was found in:
https://github.com/void-linux/void-packages/pull/7524

xbps-create adds a file type string to the xentry for every file it
finds in `destdir`, files other than symlinks, regular files and
directories weren't handled and resulted in a segfault later when
when processing the xentry structures.

This commit adds checks for sockets and fifos and exits with an
appropriate error message or with a generic error message for every
other unhandled file.

Closes #66
2019-04-14 12:39:04 +02:00