Commit Graph
100 Commits
Author SHA1 Message Date
Juan RP 60723ab851 Remove vim backup file (hi @Gottox) 2014-09-23 21:21:11 +02:00
Juan RP 202ab0d375 NEWS: mention recent changes. 2014-09-23 09:42:20 +02:00
Juan RP 1d8777b6f4 README: remove redundant word from previous. 2014-09-18 22:13:30 +02:00
Juan RP 0a0a41e4e9 README: update. 2014-09-18 22:10:14 +02:00
Juan RP 25832da045 Merge pull request #59 from uggedal/bash-completion-fixes
Bash completion fixes
2014-09-18 21:49:41 +02:00
Juan RP c51d0fcbd8 Post release bump. 2014-09-18 17:29:10 +02:00
Juan RP 15e416dc59 NEWS: prepare 0.40. 2014-09-18 17:25:56 +02:00
Juan RP f52eea34d4 xbps-install: abort transaction if there's insufficient disk space on rootdir.
The free disk space wasn't computed correctly and xbps-install(8) wasn't
handling ENOSPC rval in xbps_transaction_prepare().
2014-09-18 12:11:02 +02:00
Juan RP 20326738ed bin/xbps-install/fetch_cb.c: optimize: only call isatty() once. 2014-09-18 10:21:24 +02:00
Juan RP 2550d3d006 xbps-query: do not print ANSI escape codes if stdout is not a tty. 2014-09-18 10:14:42 +02:00
Juan RP 3b88cbb025 NEWS: mention zsh changes by @chneukirchen. 2014-09-17 18:57:01 +02:00
Juan RP 741f8fbe04 lib/util_hash.c: update copyright year. 2014-09-17 07:24:00 +02:00
Juan RP 72c64c7626 xbps_file_hash: reduce memory footprint and process file in small chunks.
With xbps-rindex(8) -c/-r being multithreaded, the memory usage was
insanely high in the build server, with peaks of almost 4GB (this depends
on the file size being processed and number of threads).

Process the file in small chunks instead to compute the SHA256 hash.
2014-09-17 06:50:46 +02:00
Juan RP 94b9455175 NEWS: another change. 2014-09-16 09:58:27 +02:00
Juan RP fe6d79fa46 NEWS: mention recent changes. 2014-09-16 09:58:27 +02:00
Juan RP f80df0fa22 xbps-{install,remove}: print guards in post-install/pre-remove messages.
This avoids the need to manually add them to the {INSTALL,REMOVE}.msg
files in binary packages, and saves some bytes in the repository archive
and binary packages.

Idea by @dominikh.
2014-09-16 09:58:27 +02:00
Juan RP e3b76ac30a Merge pull request #58 from uggedal/bash-completion-extra-properties
data/xbps.bash: add more xbps-query properties.
2014-09-16 09:43:49 +02:00
Juan RP 6894980983 lib/package_msg.c: fix a heap overflow (noticed by @Gottox). 2014-09-16 09:13:32 +02:00
Juan RP 3efd345e84 Post release bump. 2014-09-15 12:47:01 +02:00
Juan RP d1a1f00ca0 NEWS: prepare 0.39. 2014-09-15 12:45:56 +02:00
Juan RP e4484133a6 NEWS: mention musl build fix. 2014-09-15 12:26:17 +02:00
Juan RP 6d4b326b13 NEWS: mention recent changes. 2014-09-15 12:25:39 +02:00
Juan RP dee7852af8 xbps-rindex: fix -a/--add mode repodata archive permissions.
The repodata archive wasn't group writable, resulting in a new archive
created from scratch if the fd wasn't writable.

repodata archives are now created with 0664 mode, this way its main group
also can write to it.
2014-09-15 12:15:42 +02:00
Juan RP 3f7e98235c Merge pull request #57 from uggedal/bash-completion-props
data/xbps.bash: add property completion.
2014-09-15 09:48:04 +02:00
Juan RP b54b0324a1 Merge pull request #56 from uggedal/bash-completion-0.38
data/xbps.bash: fix listing of all packages with 0.38.
2014-09-15 09:47:42 +02:00
Juan RP 567382c3a2 xbps-rindex: fix musl build: needs -lcrypto explicitly. 2014-09-14 20:01:05 +02:00
Juan RP 0e6f2870cc Post release bump. 2014-09-14 19:00:19 +02:00
Juan RP 71dfbd23a1 NEWS: prepare 0.38. 2014-09-14 18:58:12 +02:00
Juan RP f6b653a11f etc/xbps.conf: sync with reality. 2014-09-14 18:39:57 +02:00
Juan RP e902619220 Remove empty self replaced pkg arrays from pkgdb. 2014-09-14 18:16:43 +02:00
Juan RP ac2c517bd7 Fixed install/update tests on pkgs with no files. 2014-09-14 18:04:10 +02:00
Juan RP 68bb09bc58 tests: two new tests to verify pkg install/update with no files. 2014-09-14 18:03:29 +02:00
Juan RP c9514ad617 libxbps: fixed replaces/replace_vpkg test case. 2014-09-14 12:50:17 +02:00
Juan RP c36c641350 tests/libxbps/replace: another test case for replaces and vpkgs. 2014-09-14 12:49:38 +02:00
Juan RP 2b7c4d568a Remove pkg self replacement from pkgdb; this must not be propagated. 2014-09-13 18:14:04 +02:00
Juan RP dea31f0a15 Add xbps_remove_{pkgname,string}_from_array() to the API. 2014-09-13 18:13:25 +02:00
Juan RP b42c3d8498 lib/pkgdb_conversion.c: avoid copying dangling pointer if "repository-origin" is unexistent. 2014-09-13 16:59:19 +02:00
Juan RP d67f8bdc8c xbps_register_pkg: do not modify the transaction pkg dictionary, use a copy instead.
Due to not using a copy the replace tests were failing at the configure phase,
because the "transaction" object was removed.
2014-09-13 13:31:56 +02:00
Juan RP 598022a60b xbps_transaction_commit: add more debugging to know the unconfigured pkg reason. 2014-09-13 12:21:49 +02:00
Juan RP 842a91149d tests/libxbps/replace: add more debugging to see what's going on. 2014-09-13 12:21:24 +02:00
Juan RP 60e9bbac3d tests/libxbps/replace: check that pkgs were configured too.
These two tests currently fail.
2014-09-13 12:11:24 +02:00
Juan RP 411480e43d pkgdb: repository-origin -> repository to match the repo pkg obj. 2014-09-13 10:49:13 +02:00
Juan RP 287665009b Drop unused headers. 2014-09-13 08:54:12 +02:00
Juan RP e0f2e75657 xbps.h: update comments. 2014-09-13 08:35:25 +02:00
Juan RP f26a9c1e2b xbps-{install,query}.8: sync with reality. 2014-09-12 12:15:03 +02:00
Juan RP 8c25d56fcd NEWS: improve wording. 2014-09-12 12:02:41 +02:00
Juan RP 39aca1bbc9 Implement shlib checks for all pkg revdeps in the transaction.
Added three new test cases to verify its correctness.
2014-09-12 11:49:34 +02:00
Juan RP b306adf52b bin/xbps-query/ownedby.c: take into account pkgs with no files. 2014-09-11 18:10:04 +02:00
Juan RP 4978fe9844 lib/transaction_package_replace.c: misc optimizations. 2014-09-11 17:55:05 +02:00
Juan RP 4ab831888a xbps_repo_sync: fix swapped args (Hi Tox!) 2014-09-11 13:38:26 +02:00
Juan RP 6ba20bb5ca data/Makefile: fix reinstallation. 2014-09-11 12:40:58 +02:00
Juan RP d959502311 NEWS: do not mention repodeltas, it's not ready yet. 2014-09-11 12:23:48 +02:00
Juan RP dea7ea888e bin/*/*.8: sync with reality. 2014-09-11 12:21:33 +02:00
Juan RP 2207517e13 Disable best pkg matching code; see NEWS for more information. 2014-09-11 12:19:52 +02:00
Juan RP ed6b3c00f5 xbps_entry_install_conf_file: fix non debug build. 2014-09-11 11:56:23 +02:00
Juan RP e1124800a5 lib/repo_sync.c: xbps_fetch_file_dest() expects 4 args not 5 (hi Tox) 2014-09-11 11:51:20 +02:00
Juan RP f9d162e639 xbps-install: show "pkgname (curver -> newver)" in updates; requested by @chneukirchen. 2014-09-11 11:43:15 +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
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