Commit Graph

1006 Commits

Author SHA1 Message Date
Juan RP
e60677116d Fix #43 (xbps-install: unhelpful message for invalid dependency)
If a package that is going to be installed or updated contains invalid
dependencies return ENXIO and XBPS_STATE_INVALID_DEP xbps state to clients.

This improves the error messages returned to the clients when such
condition happens.
2014-07-02 10:59:25 +02:00
Juan RP
6bb61adb0e Enable syslog logging by default; updated API to use xbps_handle::flags. 2014-06-04 09:39:02 +02:00
Juan RP
a3c253d03c xbps-query: check regcomp() return value. 2014-06-03 12:50:34 +02:00
Juan RP
b9e44009d9 xbps-create(8): new option -t, --tags to store tags/categories metadata. 2014-05-29 11:36:39 +02:00
Juan RP
9e1132c950 xbps-query.8: explain modes and accepted options a bit more detailed. 2014-05-27 12:01:48 +02:00
Juan RP
61a1d33995 xbps-install(8): implemented single pkg updates without -u, --update.
The -u, --update is now only necessary to perform full system updates.

Close #35 (https://github.com/voidlinux/xbps/issues/35)
2014-05-27 11:33:45 +02:00
Juan RP
91344451a3 xbps-query: another argc fixup. 2014-05-27 08:19:08 +02:00
Juan RP
ca8619dd57 xbps-query: fix fallout due to no_argument -> required_argument changes. 2014-05-26 18:05:30 +02:00
Juan RP
0ffc536b48 xbps-query: initialize some modes correctly; remove obsolete -D option. 2014-05-26 17:59:58 +02:00
Juan RP
f1cb7f43dc xbps-query: fix arg[cv] logic added in previous. 2014-05-26 17:52:41 +02:00
Juan RP
0eadaab19d xbps-query: added --regex to use EREs in ownedby and search modes.
This replaces previous -S, --search-regex option. The regex option
can now be used in the ownedby and search modes.

Also added -S, --show option which is the default mode if no other
mode set, and defaults to it to preserve compatibility.
2014-05-26 17:30:44 +02:00
Juan RP
0fbab93383 xbps-query/search.c: simplify regex matching code. 2014-05-26 08:36:33 +02:00
Juan RP
1f0605810c xbps-query: added -S, --search-regex to match EREs against pkg props in repos. 2014-05-25 11:03:31 +02:00
Juan RP
6b83ec7039 xbps-create: initialize two vars to make gcc-4.9 with -fstack-protector-strong happy. 2014-05-16 09:47:35 +02:00
Juan RP
ae70e2c7f4 xbps-uchroot: fixed clang warnings. 2014-05-15 17:05:11 +02:00
Juan RP
ccc5a29a27 xbps-pkgdb/check_pkg_symlinks: avoid many small allocations and fix a small memleak. 2014-05-13 22:54:43 +02:00
Juan RP
26c1e80933 xbps-remove(8): -n,--dry-run option does not need pkgdb write perms anymore. 2014-05-06 16:25:52 +02:00
Juan RP
bbae14f187 xbps-remove(8): -O,--clean-cache is now multithreaded. 2014-05-06 12:17:18 +02:00
Juan RP
35de44fcbd xbps-query(8): fix a segfault with -Rf if pkg is in repodata but not its binpkg. 2014-05-02 17:23:53 +02:00
Juan RP
bbc737a3ee xbps-uhelper: apply some indentation to usage(). 2014-04-21 11:03:18 +02:00
Juan RP
43090cef2a Xref xbps-uchroot(8) 2014-04-21 10:58:09 +02:00
Juan RP
bb491e2667 libxbps: detect and ignore incorrect deps of a pkg if those are virtual pkgs. 2014-04-20 16:54:50 +02:00
Juan RP
119d059c9b bin/xbps-rindex/index-add.c: fix a mistake in previous cleanups. 2014-04-20 10:36:17 +02:00
Juan RP
dacbb2f22f Fixed some warnings reported by clang. 2014-04-20 10:02:54 +02:00
Juan RP
5c3c192d16 xbps-uchroot(8): now with a manual page. 2014-04-18 09:45:25 +02:00
Juan RP
1d74c1c144 xbps-install(8): -n,--dry-run option does not need pkgdb write perms anymore. 2014-04-18 09:06:53 +02:00
Juan RP
1fb3c501ed xbps-{install,query}.8: clarify package expression matching. 2014-04-18 08:53:14 +02:00
Juan RP
20fcf3ad0a xbps-install: sync usage() with reality. 2014-04-17 11:39:47 +02:00
Juan RP
f3274fd13a xbps-query: sync usage() with reality. 2014-04-17 11:39:36 +02:00
Juan RP
5d0ffd8f03 xbps-checkvers: added -d,--debug and -R,--repository=url options.
- -d, --debug new option to enable xbps debug output.
- --distdir short option has been changed to -D.
- -R, --repository=url new option to append repos to the xbps list.
2014-04-17 10:31:00 +02:00
Juan RP
c2c149bd29 xbps-checkvers: use --longopt=FOO in usage(). 2014-04-17 10:03:33 +02:00
Juan RP
ed70fe5009 xbps-query(8): fix a segfault with '-vL' for local unsigned repositories. 2014-04-13 12:24:26 +02:00
Juan RP
b71bda2ba4 xbps-create(8): new option (--compression) to set compression format. 2014-04-11 14:16:58 +02:00
Juan RP
0c3638231c xbps-checkvers: use --distdir option as it is in the original implementation. 2014-04-07 14:11:47 +02:00
Juan RP
8244f57320 bin/*: update manpages with Xref xbps-checkvers(8). 2014-04-07 12:22:55 +02:00
Juan RP
1800aa3434 xbps-checkvers: added a manpage. 2014-04-07 12:20:09 +02:00
Juan RP
e559b9ef9e xbps-checkvers: added -V --version flag; update copyright. 2014-04-07 12:18:20 +02:00
Juan RP
806bcdfe54 xbps-checkvers: make usage() follow xbps style. 2014-04-07 10:53:32 +02:00
Juan RP
1ff1fc90cb Renamed xbps-repo-checkvers -> xbps-checkvers. 2014-04-07 10:45:25 +02:00
Juan RP
f270e6a025 xbps-repo-checkvers: added support to check for outdated pkgs in a rootdir.
New options:
	-i, --installed [to check for outdated pkgs in a rootdir]
	-r, --rootdir [to set the root directory]

The utility name does not make sense anymore and will be renamed in an
upcoming commit.
2014-04-07 10:39:12 +02:00
Juan RP
eb1f1d197d Merge xbps-repo-checkvers from https://github.com/xdave/xbps-src-utils
This is the 2-clause BSD implementation that does not use any external
dependency (other than libxbps).

Written by xdave.

Made some minor changes to build cleanly.
2014-04-06 12:21:24 +02:00
Juan RP
9ace61225d xbps-uchroot: new utility merged from xbps-src, must have appropiate permissions to work. 2014-04-01 10:26:22 +02:00
Juan RP
ee9479cc57 xbps-rindex: --sign bugfix to avoid garbage in the PEM RSA public key buffer. 2014-03-31 12:00:08 +02:00
Juan RP
981bff38cf xbps-query.8: sync with reality. 2014-03-21 14:15:25 +01:00
Juan RP
cb66092fbc xbps-query: added support for -p/--property argument in search mode.
See the NEWS file for more information.
2014-03-21 13:19:40 +01:00
Juan RP
f2868856ee xbps-query: in local mode print all objs from pkgdb. 2014-03-21 11:14:16 +01:00
Juan RP
9eebead5d7 xbps-query: print the 'hold' object on installed packages. 2014-03-21 09:33:18 +01:00
Juan RP
878d2bf7e2 xbps-dgraph: only set rootdir it was set (fix #33). 2014-03-10 10:20:04 +01:00
Juan RP
2bb915c9d5 xbps-uhelper: update usage() for fetch and add Gottox to copyright. 2014-03-04 15:08:14 +01:00
Juan RP
0416b067d0 Use a POSIX lock for pkgdb and only issue pkgdb writes in exact points.
- Rather than using a POSIX named semaphore use a POSIX lock (lockf(3))
for pkgdb for writers. Writers that cannot acquire the pkgdb lock will
get EAGAIN rather then being blocked.

- Due to using a file lock we cannot write the pkgdb every time a package
is being unpacked, configured or removed. Instead pkgdb is only written
at the end of a specific point in the transaction (unpack, configure, remove)
or via xbps_pkgdb_unlock().
2014-03-04 14:37:10 +01:00
Enno Boland
8cdd242f85 xbps-uhelper fetch supports user defined output file
xbps-uhelper now supports downloading files with a defined destination.

The syntax of fetch is "URI>FILENAME". So if you call

	xbps-uhelper fetch "http://foobar.com/foo.tar.gz>bar.tar.gz"

the output file will be named "bar.tar.gz"
2014-03-04 14:22:02 +01:00
Juan RP
f74bf1c1c8 New custom configuration file format that does not need confuse. 2014-02-25 16:42:52 +01:00
Juan RP
73764a90fe xbps-remove: missed an error path where pkgdb lock must be released. 2014-02-23 10:31:36 +01:00
Juan RP
4d1cdcac0c Fix concurrency issues in pkgdb: only allow 1 write transaction at the same time.
This implementation relies on a POSIX named semaphore, which is also
required by xbps-rindex(8).
2014-02-23 08:23:14 +01:00
Juan RP
f97ea2b915 xbps-remove: make -O also remove signature files and skip pkgs with unmatched arch. 2014-02-07 03:50:30 +01:00
Juan RP
9fe6b363d6 Revert "xbps-rindex: [sign] free pubkey data obj after externalizing index-meta."
This reverts commit 11e04685ef.
2014-02-06 16:34:59 +01:00
Juan RP
06b0f86ef4 Revert "xbps-rindex: [sign] pubkey buffer must be kept until index-meta is externalized too."
This reverts commit cbe05bd0f4.
2014-02-06 16:34:45 +01:00
Juan RP
cbe05bd0f4 xbps-rindex: [sign] pubkey buffer must be kept until index-meta is externalized too. 2014-02-06 12:26:17 +01:00
Juan RP
11e04685ef xbps-rindex: [sign] free pubkey data obj after externalizing index-meta.
Otherwise the externalization process might give unexpected results.
2014-02-06 11:52:36 +01:00
Juan RP
306fe4968e xbps-rindex: clear file permission bits before creating our named semaphore.
Due to the file permission bits (umask(3)) the semaphore wasn't created
with correct permissions.
2014-02-05 15:27:35 +01:00
Juan RP
4f7385e4a6 xbps-rindex: switch named semaphore only for the target architecture. 2014-01-31 18:44:24 +01:00
Juan RP
f5e1fff93a xbps-rindex: use a POSIX named semaphore to avoid concurrency issues. 2014-01-31 11:35:31 +01:00
Juan RP
915b8b2557 bin/xbps-rindex/sign.c: fix a stupid typo. 2014-01-30 19:46:46 +01:00
Juan RP
ea26fb3d3f bin/xbps-rindex/sign.c: initialize var for strcmp(). 2014-01-30 19:33:14 +01:00
Juan RP
d08e76a386 Keep repo metadata if possible when updating repodata (xbps-rindex -a/-c).
API/ABI incompat changes, you've been warned.
2014-01-30 13:07:34 +01:00
Juan RP
b21f4c9a59 xbps-rindex: clean mode: fixed random false positives with multiple threads. 2014-01-29 16:58:38 +01:00
Juan RP
c03505b13e Fix #30 (segment fault in xbps-rindex) 2014-01-22 11:53:08 +01:00
Juan RP
7f5bd2f8a3 bin/xbps-rindex/sign.c: add 0.27 compat again. 2014-01-21 16:36:44 +01:00
Juan RP
72f37de770 Fix #29 (xbps-rindex does not sign repodata if no pkg has been signed) 2014-01-21 11:06:02 +01:00
Juan RP
5eea259c13 Remove the config.h kludge and override vasprintf detection via HAVE_VASPRINTF. 2014-01-20 18:50:33 +01:00
Juan RP
804a39c63b Added XBPS_ARCH environment var to override uname(2) machine result. 2014-01-09 11:41:25 +01:00
Juan RP
6537004532 xbps-create: do not use FTW_MOUNT with nftw(3).
There's not much point in using FTW_MOUNT anyway because we don't care
if files are in another filesystem. This makes it work with musl
(which uses a different behaviour when FTW_MOUNT is set).
2014-01-08 20:16:02 +01:00
Juan RP
23650f1c66 bin/xbps-rindex/sign.c: add 0.27 compat glue. 2014-01-03 10:53:55 +01:00
Juan RP
3ca442eb3d xbps-rindex: [add] re-add all package objects to the index. 2013-12-30 10:27:54 +01:00
Juan RP
0a9522210a bin/xbps-rindex/sign.c: use access(2) to check if pkg signature exists. 2013-12-26 07:59:11 +01:00
Juan RP
3730f9f5a4 bin/xbps-install/state_cb.c: use pkgver obj from pkgdb. 2013-12-25 11:12:03 +01:00
Juan RP
98748bdcd1 bin/xbps-rindex/remove-obsoletes.c: also remove pkg signature files. 2013-12-24 12:02:33 +01:00
Juan RP
0a5fa442f2 bin/xbps-query/list.c: remove extra newline. 2013-12-24 11:08:48 +01:00
Juan RP
e4b2193786 bin/xbps-rindex/sign.c: fix a -Wsign-compare warning. 2013-12-24 10:58:55 +01:00
Juan RP
ec0d38c469 Implement per pkg RSA signatures and on-demand repository access. 2013-12-24 10:43:55 +01:00
Juan RP
0744b76946 xbps-xxx.8: update issues url. 2013-12-17 15:38:56 +01:00
Juan RP
2e45e7c5f7 xbps-remove.8: explain how to show the pkg remove script. 2013-12-17 15:36:07 +01:00
Juan RP
77b41d7696 xbps-reconfigure.8: explain how to show the pkg install script. 2013-12-17 15:28:22 +01:00
Juan RP
2a21354a1c Make some reorganization in struct xbps_handle.
The variables to set cachedir, rootdir and metadir have been
changed to "array of chars", this way there are no extra allocations.

Update clients accordingly and bump API version.
2013-12-16 11:46:39 +01:00
Juan RP
cc19818680 Improve stats in the transaction dictionary. 2013-12-16 07:24:17 +01:00
Juan RP
e8c454f3d2 xbps-query: do not print pkg dirs in local ownedby mode, it's unnecessary. 2013-12-12 15:34:37 +01:00
Juan RP
711f2ea7f5 bin/xbps-rindex/sign.c: fix a double free in error path found by clang-analyzer. 2013-12-11 12:39:15 +01:00
Juan RP
4403caa434 Add repos set in xbps_handle::repositories to the top of the list.
That means that now xbps-install(8) and xbps-query(8) --repository
option does not override the repository list of a configuration file.
2013-12-04 16:59:15 +01:00
Juan RP
d98468515a Fix #25 correctly: compare against repo->signature. 2013-11-30 08:30:25 +01:00
Juan RP
e86f9def03 xbps-rindex: fix #25 (--sign unnecessarily regenerates <arch>-repodata). 2013-11-30 08:04:37 +01:00
Juan RP
7c57918950 xbps-rindex(8): fix #24 and added an ATF test case. 2013-11-29 17:30:45 +01:00
Juan RP
30a500b5b3 xbps-rindex: clean: fix a regression introduced yesterday (use-after-free). 2013-11-28 11:29:48 +01:00
Juan RP
5d63f6f442 xbps-rindex: clean: avoid printing obj key after removal (dangling pointer) v2. 2013-11-27 15:00:37 +01:00
Juan RP
a8dc0dbdec xbps-rindex: clean: avoid printing obj key after removal (dangling pointer). 2013-11-27 14:54:21 +01:00
Juan RP
ef67b56054 xbps-rindex: clean: ignore invalid entries from index-files. 2013-11-25 11:27:11 +01:00
Juan RP
20213deb10 xbps-rindex: clean: use the correct key from index-files. 2013-11-25 11:05:06 +01:00
Juan RP
ae8925d907 xbps-rindex: in add mode also remove old entry from index-files. 2013-11-25 11:03:51 +01:00
Juan RP
d2f2796c85 xbps-rindex: redo the clean mode in two passes as it was intended in previous commit. 2013-11-25 10:45:05 +01:00
Juan RP
172c84040c xbps-rindex: fix clean mode while removing obsolete entries on index-files with updates. 2013-11-25 10:16:38 +01:00
Juan RP
17228eb12b xbps-query(8): do not print useless stuff with -vL. 2013-11-18 16:52:12 +01:00
Juan RP
8882b0215f Redo how the repository keys are stored.
- Repository keys are now stored in a new directory on metadir (/var/db/xbps):

	<metadir>/key>

- Repository keys are stored with the hex fingerprint of its RSA
  public key in a plist dictionary:

	<metadir>/keys/xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.plist

- Drop xbps-rkeys(8) and merge its functionality into xbps-install(8) and
  xbps-query(8).

- xbps-query(8) -vL now shows some more details of remote repositories:

 3134 http://localhost:8000 (RSA signed, verified)
      Signed-by: Void Linux
      4096 60:ae:0c:d6:f0:95:17:80:bc:93:46:7a:89:af:a3:2d
   16 http://localhost:8000/nonfree (RSA signed, verified)
      Signed-by: Void Linux
      4096 60:ae:0c:d6:f0:95:17:80:bc:93:46:7a:89:af:a3:2d

Bump XBPS_API_VERSION.
2013-11-18 16:05:46 +01:00
Juan RP
e03d49f6bf xbps-install: size required on disk == dlsize+instsize. 2013-11-15 10:29:07 +01:00
Juan RP
53ecaf9819 Remove xbps_print_hexfp() from API and move it xbps-rindex, where it belongs. 2013-11-08 09:12:29 +01:00
Juan RP
89c62c626c xbps-rindex: [clean] the filesclean test now passes successfully. 2013-11-03 11:15:56 +01:00
Juan RP
3602774bc3 xbps-rindex: [clean] make sure to pass a valid repository url. 2013-11-03 10:16:58 +01:00
Juan RP
616d4420d2 xbps-rindex(8): fix #19. An ATF test-case will be imported later. 2013-11-02 11:34:55 +01:00
Juan RP
f39f7ff2fa xbps-rkeys: print the error if pubkey cannot be imported. 2013-10-28 12:46:23 +01:00
Juan RP
7b0e9967b1 xbps-uhelper: added 'real-version' action.
- This prints to stdout the version of an installed "real" package,
  not virtual. The 'version' action can be used to match any "real" and
  "virtual" package instead.
- Drop strcasecmp() to check actions and use strcmp() instead.
2013-10-22 09:56:55 +02:00
Juan RP
ab5b356b5b xbps-rindex: initialize idxfiles in repo to access to it. 2013-10-18 09:36:25 +02:00
Juan RP
70047586ee Xref xbps-rkeys(8) 2013-10-12 10:13:32 +02:00
Juan RP
43b9be6046 xbps-rindex(8): added support for XBPS_PASSPHRASE env var.
- XBPS_PASSPHRASE (if set) will be supplied as passphrase when signing repos.
- Use the default OpenSSL passphrase cb when loading the private key.
2013-10-12 09:55:03 +02:00
Juan RP
c91050fc35 xbps-rindex(8): added -v --verbose option (mainly for -r mode). 2013-10-10 10:43:01 +02:00
Juan RP
a5ecaa493f New utility: xbps-rkeys(8) to manage RSA public keys. 2013-10-09 10:13:07 +02:00
Juan RP
250916fa6a xbps-query: use the _multi version to find out largest pkgver string. 2013-10-08 10:39:20 +02:00
Juan RP
f3b0b19258 xbps-rindex: remove -c --clean mode and adapt to the new libxbps API.
- Removed -c --clean mode. It's not too useful and adds a considerable
  amount of gratuitous code. It takes almost the same time than
  adding all pkgs from scratch.

- When creating the repository data always add the meta plist at the
  2nd position in the archive, to optimize its access.

- Misc improvements.
2013-10-07 10:23:14 +02:00
Juan RP
1f270e3a1a xbps-query: adapt to the new libxbps API. 2013-10-07 10:22:45 +02:00
Juan RP
8d5c48b861 Added support for the long awaited feature: RSA signed repositories. 2013-10-05 11:38:04 +02:00
Juan RP
27db8e89c4 xbps-query: replace -D --defrepo' option with -R' and `--repository=url'.
The argument in `--repository' is optional, therefore must be specified
with `=' to work. If no argument is specified, repository mode is enabled
preserving the repository list of configuration file.
2013-09-18 17:13:43 +02:00
Juan RP
5e1432f418 Added support to specify multiple repositories via cmdline (close #17). 2013-09-18 16:45:05 +02:00
Juan RP
c514894152 xbps-{install,remove}: remove the stupid rw checks on rootdir/metadir. 2013-09-18 15:43:55 +02:00
Juan RP
023484ca0b Introduce xbps_{array,pkgdb}_foreach_cb_multi() and use it where appropiate.
In some tasks the single threaded implementation outperms the multithreaded
one. Use it where it really makes a difference. The _multi() routines do not
spawn any thread if _SC_NPROCESSORS_ONLN == 1.

Bump XBPS_API_VERSION.
2013-09-17 16:30:13 +02:00
Juan RP
af4e90aae8 xbps-rindex: register pkgs in index-files by pkgname and use xbps_array_foreach_cb().
This simplifies accessing/removing pkgs in this dictionary.
2013-09-16 10:41:42 +02:00
Juan RP
98e1687ef5 Re-add all pkg metadata objects to the repository index. 2013-09-16 09:09:56 +02:00
Juan RP
c5acbc7953 mk/prog.mk: set MAN to $(BIN).8 by default. 2013-09-16 08:57:24 +02:00
Juan RP
0a48738634 bin/xbps-remove/main.c: fix a memleak in the clean-cache code. 2013-09-15 10:25:47 +02:00
Juan RP
4057e4961c Use C99 for loop initializers.
That means that a C99 compiler is now mandatory.
2013-09-15 10:06:49 +02:00
Juan RP
9a9c816552 xbps-query.8: remove dup block. 2013-09-13 09:17:00 +02:00
Juan RP
24ff0472dd Use fs blksize from stat(2)ed file when reading archives. 2013-08-29 14:30:14 +02:00
Juan RP
a039330f3c Misc cleanups: use __attribute__((__unused__)); remove dead code. 2013-08-29 10:45:30 +02:00
Juan RP
add4484ad8 bin/xbps-query/xbps-query.8: document -H --list-hold-pkgs. 2013-08-18 11:06:45 +02:00
Juan RP
22ae6295f5 manpages: use github url for bugreports. 2013-08-18 10:17:45 +02:00
Juan RP
1999fbd771 Relax libarchive version requirement to 2.8.0. 2013-08-16 10:26:36 +02:00
Juan RP
84d14286a8 More libarchive-2.x compat. 2013-08-15 11:55:20 +02:00
Juan RP
776b94e6bc Remove PackagesOnHold from xbps.conf; use xbps-pkgdb -m hold|unhold instead.
To put a package on hold mode:
	$ xbps-pkgdb -m hold foo

To unhold the package:
	$ xbps-pkgdb -m unhold foo

To list packages on hold mode:
	$ xbps-query -H

This also close #12 from github.
2013-08-12 14:46:54 +02:00
Juan RP
9c9d5b58dd Assume 80 columns if TIOCGWINSZ ws.col is bogus (0). 2013-08-10 12:59:59 +02:00
Juan RP
2f9bd4f9a2 bin/xbps-rindex/remove-obsoletes.c: fix use-after-free. 2013-08-07 16:01:59 +02:00
Juan RP
4428cac154 xbps-query: ignore non working repos; misc fixes. 2013-07-27 20:02:07 +02:00
Juan RP
0c7701f2bc Introduce xbps_array_foreach_cb() and use it in random code.
This routine will spawn a thread per core to process N items stored
in the specified array, the last thread gets the remainder of items left.

Results have shown that xbps benefits if there is a considerable amount
of items and number of threads being spawned.

Use it in xbps_pkgdb_foreach_cb(), xbps-pkgdb(8), xbps-query(8)
and xbps-rindex(8).

On UP systems there's no overhead because pthread(3) is not used at all.

WIP! investigate if it can be used in libxbps (xbps_rpool_foreach()),
and finish conversion of xbps-rindex(8) -c.
2013-07-27 09:47:16 +02:00
Juan RP
84d0e429ab bin/xbps-query/list.c: simplify list_orphans(). 2013-07-27 06:11:48 +02:00
Juan RP
20f2d10527 xbps-query(8): -L now prints all repos, including non working repos (close #11). 2013-07-26 11:42:52 +02:00
Juan RP
e0643acbb0 xbps-query(8): fixed some memleaks in local/remote ownedby mode. 2013-07-21 10:49:30 +02:00
Juan RP
6358cf43fc xbps-query: fix regression in -R, also print repository string object. 2013-07-07 09:59:25 +02:00
Juan RP
6d87bf04d0 Revert "xbps-rindex: [add] add index-files.plist the first in the repo archive."
This reverts commit e76874f513.

This slows down some ops that were much faster before; will use another approach.
2013-07-04 11:05:42 +02:00
Juan RP
e76874f513 xbps-rindex: [add] add index-files.plist the first in the repo archive.
By having index.plist the 2nd entry in archive there are more chances
to skip identical bytes in the archive via rsync.
2013-07-04 03:33:42 +02:00
Juan RP
505a933097 Added support to verify reverse dependencies in a transaction.
See https://plus.google.com/106812073015308749022/posts/ZXMHimd8iKd
2013-06-27 16:52:31 +02:00
Juan RP
09e116b7f0 xbps_api.h -> xbps.h 2013-06-20 12:31:02 +02:00
Juan RP
42c0766c00 Get rid of libfetch and proplib external dependencies.
The list of required external deps is now confuse, libarchive and openssl.

libxbps now includes a wrapper for proplib prefixed with xbps_ rather than prop_.
2013-06-20 10:26:12 +02:00
Juan RP
55af300e65 xbps-create: needs stdarg.h. 2013-06-19 11:28:51 +02:00
Juan RP
02a11ed08c xbps-rindex: add: remove unused headers; prop_array_count checks for NULL pointers. 2013-06-19 09:20:44 +02:00
Juan RP
03575cecd0 xbps-create: s/size_t/unsigned int/ to iter in prop_arrays. 2013-06-15 10:29:43 +02:00
Juan RP
3abe48b68a Introduce xbps_repo_get_pkg_plist() and use it in xbps-query -R. 2013-06-14 10:22:10 +02:00
Juan RP
5c3985ddf1 xbps-query: search: simplify and use xbps_match_virtual_pkg_in_dict(). 2013-06-14 09:40:10 +02:00
Juan RP
89ded69bed xbps-query: use get_maxcols() from xbps-install. 2013-06-14 09:33:27 +02:00
Juan RP
5f2bba7f4e Move functionality to resolve revdeps from repos to libxbps. 2013-06-14 08:13:51 +02:00
Juan RP
8a05bc5f24 xbps-dgraph: installed_size obj is in bytes; fix a comment. 2013-06-14 05:12:15 +02:00
Juan RP
7b2942e789 xbps-dgraph: only add revdeps when it's necessary. 2013-06-13 17:44:44 +02:00
Juan RP
6b397198bf xbps-dgraph: completely updated and working as before. 2013-06-13 17:41:16 +02:00
Juan RP
f868dd7816 xbps-dgraph: make this work again; needs more changes yet. 2013-06-12 10:34:01 +02:00
Juan RP
db1efb3aa6 Relax memory requirements on 64bit platforms; fix two memleaks. 2013-06-12 10:04:10 +02:00
Juan RP
6a9e394a60 xbps-query(8): extend 734a2c3 to also match with pkgpatterns. 2013-06-12 04:48:36 +02:00
Juan RP
5f02790ac7 xbps-query(8): fix regression introduced in 734a2c3. 2013-06-11 16:41:36 +02:00
Juan RP
b646554aea xbps-query: formatting tweaks for PROP_TYPE_ARRAY objects. 2013-06-11 16:26:27 +02:00
Juan RP
734a2c3c2b xbps-query(8): added support to find revdeps for virtual pkgs in repository mode. 2013-06-11 16:18:40 +02:00
Juan RP
99be698979 Use a single file to store repository data.
This is just the starting point to extend repositories with PGP signatures.
2013-06-10 10:28:39 +02:00
Juan RP
fa9d3471d9 xbps-create: improve d6605e1b97 (sanitize destdir to resolve target files in symlinks).
Previously in d6605e1b97 if destdir had trailing '/' the behavior
of detecting target files in symlinks was changed slightly.
2013-05-27 13:03:40 +02:00
Juan RP
d6605e1b97 xbps-create(8): calculate correctly target file for relative symlinks. 2013-05-27 10:27:55 +02:00
Juan RP
15b2258b77 xbps-pkgdb: fix issue #9 (remove old code that broke pkgdb mem vs disk comparisions). 2013-05-16 17:16:39 +02:00
Juan RP
91c08bfe75 bin/xbps-query/ownedby.c: simply match patterns with fnmatch(3). 2013-05-13 15:10:47 +02:00
Juan RP
53217fd51b xbps-rindex: added -f --force flag to forcefully register a pkg with -a --add. 2013-05-02 10:46:30 +02:00
Juan RP
111184ea84 xbps-pkgdb: change symlink checks to warning messages not errors. 2013-04-19 10:15:44 +02:00
Juan RP
5fd7565e6c xbps-install(8): -R now overrides the repository list set in a configuration file.
Now -R can be used independently if a configuration file exists or not.
2013-04-18 18:17:14 +02:00
Juan RP
3a5d6b1376 xbps-rindex: fixed writing repo index-files (regression added in e29f221). 2013-04-17 14:20:48 +02:00
Juan RP
a0d50f542a xbps-install: revert fa40928026.
If a package is already installed and it's being installed without -f (force),
xbps-install must return EEXIST.

xbps-src really expects this to ignore duplicated build dependencies.
2013-04-15 21:02:33 +02:00
Juan RP
68770053e9 xbps-rindex: fixed cleaning obsolete entries from index-files in clean mode (-c). 2013-04-06 21:30:31 +02:00
Juan RP
1f5bb03daf bin/xbps-pkgdb/check_pkg_files.c: remove bogus assignment. 2013-04-04 10:17:00 +02:00
Juan RP
074a2f0747 bin/xbps-rindex/index-add.c: remove completely unused var. 2013-04-04 10:09:52 +02:00
Juan RP
ab445ec307 bin/xbps-pkgdb/check_pkg_files.c: no need to initialize rv. 2013-04-04 10:09:36 +02:00
Juan RP
6ac76f68ed bin/xbps-rindex/index-add.c: remove unused variable. 2013-04-04 10:04:45 +02:00
Juan RP
e29f2216e2 xbps-rindex: fix memleaks in error paths. 2013-04-04 09:55:12 +02:00
Juan RP
d536ad39ff xbps-pkgdb: fix two meamleaks in error paths. 2013-04-04 09:54:53 +02:00
Juan RP
ae254e9b06 bin/xbps-query/list.c: return error if pkgver or short_desc are NULL. 2013-04-04 09:11:37 +02:00
Juan RP
8736ef6c5a xbps-create: fix issue #5 from github: initialize setlocale. 2013-04-01 10:49:25 +02:00
Juan RP
ab8cb56c24 fetch_cb.c: fixed casts when computing ETA. 2013-03-27 16:14:23 +01:00
Juan RP
e25216822b xbps-uhelper: make the 'version' target also match virtual pkgs. 2013-03-25 21:11:30 +01:00
Juan RP
59006fe86c xbps-create: added --build-options option, mainly for xbps-src.
This expects a string with the list of used build options.
2013-03-23 08:18:06 +01:00
Juan RP
70b89a88cc xbps-query: make -o (ownedby) follow symlinks; close issue #4 from github. 2013-03-17 10:59:40 +01:00
Juan RP
a6c26f6c12 xbps-create: also set st_{uid,gid} to 0:0 in archived files. 2013-03-15 13:14:57 +01:00
Juan RP
7491c0e584 xbps-create: set root:root if e[gu]id == st.st_e[gu]id in package files.
The rational is that packages should have proper perms to be installed
globally in a system as root, and fakeroot is useless when generating
packages with xbps-create when it's statically build.
2013-03-15 09:31:15 +01:00
Juan RP
dd9cf9737b xbps-query: fix segfault when listing unexistent package files. 2013-03-13 23:15:42 +01:00
Juan RP
4d7c51c368 bin/xbps-install/transaction.c: fix -n (dry-run) output for removed pkgs. 2013-03-11 12:12:03 +01:00
Juan RP
3e2aac74d2 xbps-query: print filename-{sha256,size} objs from index in repo mode. 2013-03-08 21:06:55 +01:00
Juan RP
dfe42ce7e3 xbps-query: -p expects an argument; show usage() otherwise. 2013-03-08 20:23:13 +01:00
Juan RP
f13d0cdb33 bin/xbps-install/transaction.c: remove extra newlines. 2013-03-08 10:01:19 +01:00
Juan RP
50ea03df2a Revert code to update xbps independently; I'll use another way to implement this. 2013-03-08 09:44:57 +01:00
Juan RP
59105ab995 xbps-remove: make XBPS_STATE_REMOVE_FILE_OBSOLETE state silent, only show errors. 2013-03-07 11:32:22 +01:00
Juan RP
bb17958212 xbps-install: remove dead code. 2013-03-07 11:31:55 +01:00
Juan RP
0a1859987a Respect automatic-install mode from pkgdb in transaction updates.
Also simplify register/unregister and remove useless state definitions.
2013-03-07 10:03:59 +01:00
Juan RP
90b6803825 Introduce XBPS_STATE_CONFIGURE_DONE and use it in xbps-reconfigure(8). 2013-03-07 09:24:04 +01:00
Juan RP
5f71d1e40d xbps-reconfigure: also syslog XBPS_STATE_CONFIGURE state. 2013-03-06 12:02:04 +01:00
Juan RP
6d2497d8d8 xbps-install/state_cb.c: do not print anything if XBPS_STATE_XBPS_UPDATE is recvd. 2013-03-06 09:21:09 +01:00
Juan RP
a81316a248 xbps-query: ownedby.c: ignore unexistent files in pkg metadata. 2013-03-05 08:52:40 +01:00
Juan RP
5cb74b7ec9 xbps-rindex: fixed -c --clean mode (missing args wtf). 2013-03-05 05:03:15 +01:00
Juan RP
0e50b09cbe xbps-uhelper: fix 'version' target. 2013-03-05 04:45:32 +01:00
Juan RP
7c1a0ac3e8 New pkgdb (0.21) and repo index (1.7) format, see NEWS for info. 2013-03-05 04:08:42 +01:00
Juan RP
c50cbf03c7 xbps-query: added support to query virtual packages in repository mode. 2013-03-02 19:10:13 +01:00
Juan RP
7e171b67cf xbps-query: in search mode also count blanks for the output string. 2013-02-28 16:07:11 +01:00
Juan RP
30d9f6ae4d xbps-query: pretty print "source-revision" pkg metadata obj. 2013-02-20 16:59:28 +01:00
Juan RP
da11e55847 xbps-pkgdb.8: explain exactly what checks are executed currently. 2013-02-20 16:32:53 +01:00
Juan RP
1f324a76a2 xbps-{install,query,rindex}.8: document environment var: XBPS_TARGET_ARCH. 2013-02-20 11:42:06 +01:00
Juan RP
0c50c0bb2d xbps-pkgdb: new option -m --mode <auto|manual> to change pkg install mode. 2013-02-20 10:35:55 +01:00
Juan RP
9ab97aa2cf xbps-install: don't exec a transaction if only sync mode is requested. 2013-02-20 09:58:31 +01:00
Juan RP
3cc8f66f64 xbps-query: in -s do not print "[virtual]" on vpkg matches. 2013-02-18 14:25:15 +01:00
Juan RP
be1086f8fb xbps-query: -s, --search is able to find pkgs by matching virtual pkgnames. 2013-02-15 08:30:11 +01:00
Juan RP
3bb41a2662 xbps-query: changed -M (--list-orphans) shortopt to -O. 2013-02-13 15:47:46 +01:00
Juan RP
da957433cb xbps-query: align -s output based in collected results not globally. 2013-02-11 16:18:43 +01:00
Juan RP
9c3cb200d4 xbps-query: align correctly -l results (state wasn't taken into account). 2013-02-11 11:04:25 +01:00
Juan RP
178a6b58ae Remove another transaction obj from pkgdb and make xbps-pkgdb catch it. 2013-02-07 17:49:28 +01:00
Juan RP
dcff876533 xbps-query: explicitly use -R for repository mode; otherwise local.
This closes #3 by radare.
2013-02-02 12:02:10 +01:00
Juan RP
5c1688944d xbps-install: make -f preserve conf files; use it twice to overwrite all files. 2013-02-02 11:30:42 +01:00
Juan RP
303df5fc46 xbps-install: new flag -S,--sync and remove -s,--skip-sync.
-S: to explicitly synchronize remote repository index files.
-s: removed because it is now redundant and useless.
2013-01-31 10:44:33 +01:00
Juan RP
cc068b2b39 xbps-query: do not sync repo index-files; use xbps-install -S instead. 2013-01-31 10:44:27 +01:00
Juan RP
a92d6e73e5 xbps-create.8: mention --shlib-{provides,requires}. 2013-01-31 09:49:11 +01:00
Juan RP
7360a6fca3 Fix previous; only use arg0 in client cb. 2013-01-31 09:41:43 +01:00
Juan RP
130649bad9 xbps-query/list.c: remove obsolete code. 2013-01-24 09:37:58 +01:00
Juan RP
82a8263f37 xbps-rindex(8): fix crash in -r when a pkg cannot be removed. 2013-01-16 16:25:29 +01:00
Juan RP
fa40928026 xbps-install: don't treat EEXIST as an error when installing pkgs.
Thanks to pancake for the bug hunting.
2013-01-16 11:47:52 +01:00
Juan RP
ea2f2c7297 Silence -Wformat-nonliteral warning with clang. 2013-01-04 10:35:00 +01:00
Juan RP
492bfeb560 xbps-create: ignore 'shlib-{provides,requires}' files generated by xbps-src. 2012-12-24 11:39:10 +01:00
Juan RP
1fa3601893 xbps-create: added support for --shlib-{provides,requires} options. 2012-12-24 10:55:17 +01:00
Juan RP
cf1c42a109 xbps-query.8: improve desc for -o and -s. 2012-12-20 07:17:16 +01:00
Juan RP
a12b1b671b xbps-query.8: explain pkg states for the -l option. 2012-12-20 07:11:05 +01:00
Juan RP
b77a6df950 xbps-{install,query}.8: add PACKAGE EXPRESSION section. 2012-12-20 07:02:28 +01:00
Juan RP
faf0fd6a08 xbps-query: print pkg state in -l, --list-packages mode. 2012-12-20 06:15:56 +01:00
Juan RP
2a7700bc94 xbps-query: also print pkg state in local mode. 2012-12-20 06:15:18 +01:00
Juan RP
23e7f317f8 xbps-query: ownedby: simplify and avoid xbps_pkgpattern_match, fnmatch is enough. 2012-12-15 19:19:42 +01:00
Juan RP
bb877b0db7 xbps-rindex: -a does not remove outdated binpkgs anymore; use -r instead. 2012-12-15 11:13:32 +01:00
Juan RP
e2176ec4b6 bin: no point in cleaning up resources when it's exiting... 2012-12-14 11:58:30 +01:00
Juan RP
647aa0727f xbps-pkgdb/Makefile: remove redundant assignment. 2012-12-14 09:56:12 +01:00
Juan RP
41f753248f xbps-rindex(8): remove obsoletes mode (-r) is now multithreaded. 2012-12-14 09:47:47 +01:00
Juan RP
338c0d549f xbps-pkgdb: fixed some memleaks. 2012-12-14 06:04:58 +01:00
Juan RP
a0443fc4ce xbps-rindex(8): clean mode (-c) is now multithreaded. 2012-12-14 04:59:47 +01:00
Juan RP
33a8150a98 xbps-pkgdb: checking all pkgs with -a/--all is now multithreaded. 2012-12-14 03:31:24 +01:00
Juan RP
db5da575a4 xbps-create: added support to add hardlinks. 2012-12-12 03:48:27 +01:00
Juan RP
f2d2b2fde9 xbps-install: fetch_cb.c: if stdout is a tty use stderr. 2012-12-10 11:20:59 +01:00
Juan RP
ca5aeebdc9 xbps-install: fetch_cb.c: do not print ANSI escape codes if stdout isn't a tty. 2012-12-10 11:09:18 +01:00
Juan RP
849191a5de xbps-rindex: [clean] if pkg cannot be read don't check for hash mismatch. 2012-12-07 09:57:41 +01:00
Juan RP
942db86eb5 xbps-query/search.c: add missing assert.h. 2012-12-06 10:58:11 +01:00
Juan RP
924ef35a07 xbps-query: fixed some issues found by pancake and valgrind. 2012-12-05 08:47:53 +01:00
Juan RP
298072ced3 xbps-rindex(8): in clean mode (-c) also remove entries with unmatched hash. 2012-12-03 11:05:37 +01:00
Juan RP
f45352dbf8 Added support for dynamic generation of revdeps for installed packages. 2012-11-30 17:40:52 +01:00