Commit Graph

2361 Commits

Author SHA1 Message Date
Enno Boland
4689b07b85 lib/repo_sync.c: use xbps_fetch_file_dest() instead of xbps_fetch_delta().
Until the generation of deltas does not work reliably just download
the repo files instead of trying to get the delta.
2014-09-11 11:39:54 +02:00
Juan RP
30ea08e605 lib/transaction_ops.c: detect updates when an exact pkg version is set. 2014-09-11 11:13:20 +02:00
Juan RP
e4ff957e42 xbps_find_pkg_orphans: fix regression adding false positives. 2014-09-11 09:05:57 +02:00
Juan RP
dba767fb05 lib/pkgdb_conversion.c: remove metafile-sha256 obj if pkg contains no files. 2014-09-11 08:18:03 +02:00
Juan RP
e32f7f4909 xbps-pkgdb: unfix previous, pkg metafile must be internalized. 2014-09-11 08:04:51 +02:00
Juan RP
bd2bb98fa7 xbps-pkgdb: update for pkgdb-0.38. 2014-09-11 08:00:37 +02:00
Juan RP
fcce0a36aa AUTHORS: add Eivind Uggedal. 2014-09-11 07:46:15 +02:00
Juan RP
787f0e2751 NEWS: mention bash/zsh completions. 2014-09-11 07:45:33 +02:00
Juan RP
834023999e Merge pull request #54 from uggedal/bash-completion
Add bash completion for xbps-*
2014-09-11 07:42:46 +02:00
Juan RP
ed67cad564 xbps-query(8): added local search mode support (-s [-p]). 2014-09-11 01:15:51 +02:00
Juan RP
01dbb968dd Welcome pkgdb-0.38. 2014-09-11 00:12:12 +02:00
Eivind Uggedal
9f51036b3a Add bash completion for xbps-* 2014-09-09 13:30:47 +00:00
Juan RP
fb9c94fab9 Added support to use pkg shlib-{provides,requires} objects.
This effectively checks that all pkgs in a transaction to be installed
or updated, have not unmatched shared libraries, which might happen with
pkgs that had major soname bumps.

This implementation slow downs xbps_transaction_prepare() 2x, due to
the use of xbps_pkgdb_get_pkg_metadata(). A new pkgdb format is required
that adds the pkg shlib-provides objects to pkgdb, avoiding the need
to use xbps_pkgdb_get_pkg_metadata().
2014-09-09 11:08:54 +02:00
Juan RP
c61317e219 lib/external/fexec.c: fix build with glibc>=2.20 (needs _DEFAULT_SOURCE). 2014-09-08 18:46:12 +02:00
Juan RP
b67d4ec975 lib/download.c: debug: print url info only if it's available. 2014-09-07 09:45:47 +02:00
Juan RP
8ad8bca958 xbps_rpool_foreach: take into account xbps_repo_open returning NULL. 2014-09-07 09:35:38 +02:00
Juan RP
56ab438d3c xbps-install: indentation. 2014-09-07 09:34:33 +02:00
Juan RP
05e7a59f03 xbps_handle: constify xbps_xxx_cb_data argument. 2014-09-06 09:46:03 +02:00
Juan RP
57a7967f0d NEWS: mention recent performance improvements. 2014-09-06 08:10:23 +02:00
Juan RP
1a024773af xbps-remove: use xbps_binpkg_{arch,pkgver} for -O (clean-cache).
The new implementation is almost 1s faster than before on my system.
2014-09-05 21:09:27 +02:00
Juan RP
d7d749312d xbps-rindex: use xbps_binpkg_{arch,pkgver} for -r (remove-obsoletes).
This is magnituds faster than before; some results:

$ for f in 1 2 3; do time xbps-rindex -r /var/cache/xbps/ &>/dev/null; done

real 0m0.624s
user 0m2.163s
sys 0m0.032s

real 0m0.590s
user 0m2.159s
sys 0m0.023s

real 0m0.584s
user 0m2.144s
sys 0m0.039s

$ for f in 1 2 3; do time LD_PRELOAD=$PWD/lib/libxbps.so.2.0.0 ./bin/xbps-rindex/xbps-rindex -r /var/cache/xbps &>/dev/null; done

real 0m0.037s
user 0m0.030s
sys 0m0.010s

real 0m0.036s
user 0m0.032s
sys 0m0.007s

real 0m0.037s
user 0m0.035s
sys 0m0.006s
$
2014-09-05 21:07:07 +02:00
Juan RP
b73d40092c xbps-uhelper: new targets: binpkgarch and binpkgver.
- binpkgarch: returns the architecture component of a xbps filename.
- binpkgver: returns the pkgver component of a xbps filename.
2014-09-05 21:06:06 +02:00
Juan RP
5863ec17fe libxbps: two new functions to get the pkgver and arch components in a filename.
- xbps_binpkg_pkgver() returns a heap allocated string with the pkgver component.
- xbps_binpkg_arch() returns a heap allocated string with the architecture component.

A basename, full path or relative path is supported, i.e:

	/path/to/foo-1.0_1.x86_64.xbps
	../../foo/blah-0.1_1.x86_64.xbps
	baz-0.1_1.x86_64.xbps
2014-09-05 20:59:00 +02:00
Juan RP
e2470f8697 xbps_entry_install_conf_file: add more assertions. 2014-09-05 20:58:20 +02:00
Juan RP
685a85a466 xbps_find_pkg_orphans: also take into account virtual pkgs. 2014-09-05 13:10:50 +02:00
Juan RP
bf92d1f5a3 xbps_repo_open: open archive read-only if lock is not set. 2014-09-05 12:39:53 +02:00
Juan RP
013731c502 Acquire/release a POSIX file lock on repository archives.
- xbps_repo_open() accepts a third argument (bool) to acquire a POSIX file
lock on the repository archive.
- xbps_repo_close() accepts a second argument (bool) to release a POSIX file
lock on the repository archive.

This avoids the issue of multiple xbps-rindex(8) processes being blocked
even for different repositories on the same architecture, resulting in
unnecessary contention.
2014-09-05 12:26:42 +02:00
Juan RP
551555690d etc/xbps.conf: update repository mirrors (xbps.nopcode.org is dead). 2014-09-04 10:46:10 +02:00
Juan RP
472f622f6f Finally fixed vpkg02 test (vpkg provider in transaction).
Rather than collecting dependencies for a pkg that has been added to the
transaction dictionary, do this for all pkgs in transaction once all
packages are already there.
2014-09-04 10:13:02 +02:00
Juan RP
d0a4cc5b9d tests: install_with_vpkg_deps: fix order. 2014-09-04 10:11:46 +02:00
Juan RP
43a0245c49 configure: compile with -finline-functions by default. 2014-08-27 09:00:14 +02:00
Juan RP
035b8d8c73 xbps.h: sort struct members by type. 2014-08-27 08:25:31 +02:00
Juan RP
25e8002737 fetch: hardcode HTTPS port and fallback to /etc/services for other unknown ports. 2014-08-25 16:07:47 +02:00
Juan RP
bc92b387cb Really fix #53 this time: with or without -n. 2014-08-23 16:25:51 +02:00
Juan RP
5a1919e520 xbps_pkg_is_installed(): a pkg in "unpacked" state is now accepted as installed too.
The reason is that even if the pkg was not configured, it should still be accepted
as installed. If installing packages via XBPS_TARGET_ARCH, pkgs are never configured,
so this must be taken into account.

Will be cherry-picked to 0.37 meanwhile.
2014-08-23 15:54:24 +02:00
Juan RP
8939e8697d bin/*/*.8: add missing End-List macros (.El). 2014-08-23 09:26:02 +02:00
Juan RP
c8c331bd9a xbps-uchroot.8: document required kernel options. 2014-08-23 09:20:07 +02:00
Juan RP
74b3cb0e64 Only build/install xbps-uchroot(8) on linux. 2014-08-23 09:06:46 +02:00
Juan RP
1d2dabca09 xbps-query(8): fix --fulldeptree with pkgs that have multiple vpkgs. 2014-08-23 08:47:38 +02:00
Juan RP
4c14785480 Fix #53 (xbps-install with multiple arguments shouldn't fail if one is already installed). 2014-08-23 08:02:40 +02:00
Juan RP
7cef93ce07 Added support to replace vpkgs when the real pkgname matches any installed vpkg. 2014-08-22 12:44:18 +02:00
Juan RP
0e745c29e8 xbps-install.8: clarify -ff behaviour. 2014-08-21 19:05:07 +02:00
Juan RP
3f22aca00c xbps-query: fix an obvious tyop that broke -RX. 2014-08-19 16:59:25 +02:00
Juan RP
d7c7783ac2 xbps-query(8): added --fulldeptree to print a full dependency tree with -x.
This fixes the regression introduced in 0.37 with -xx; -xx is not supported
anymore, use `--fulldeptree -x`.
2014-08-19 13:14:37 +02:00
Juan RP
4257f0b914 NEWS: tyops 2014-08-19 10:55:35 +02:00
Juan RP
3cc8929ce1 xbps_get_pkg_plist_from_binpkg: fix a double free, found by Gottox.
xbps-query -Rf foo without network was enough to trigger it.
2014-08-19 10:45:46 +02:00
Juan RP
fbf4ed4d2a lib/download.c: unconstify to fix a warning. 2014-08-13 22:11:25 +02:00
Juan RP
b8d22c9091 NEWS: improve xdelta entry. 2014-08-13 21:52:37 +02:00
Juan RP
431674d733 lib/download.c: style twerks. 2014-08-13 21:49:44 +02:00
Juan RP
a6699be973 xbps.h: bump XBPS_API_VERSION. 2014-08-13 21:39:39 +02:00