Commit Graph

869 Commits

Author SHA1 Message Date
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
Juan RP
9ac3b60048 xbps-query: repo_revdeps_cb: simplify by using a dictionary iterator. 2012-11-30 10:45:26 +01:00
Juan RP
63c1883201 Major API/ABI cleanup bringing performance improvements and fixes.
These are the core interfaces in the new API:

rpool - Interface to interact with the repository pool.
rindex - Interface to interact with repository indexes.
pkgdb - Interface to interact with local packages.
transaction - Interface to interact with a transaction.

This also brings new repository index format, making the index file
per architecture and being incompatible with previous versions.

The transaction frequency flush option has been removed, and due to
the nature of package states it was causing more harm than good.

More changes coming soon, but the API shall remain stable from now on.
2012-11-30 07:11:51 +01:00
Juan RP
25612870f0 xbps-query: when checking revdeps from repos use the same pkgver from repo pkg.
This fixes showing revdeps for any pkg that uses dependencies like:

	foo>2.0<3.0
	blah<15
2012-11-26 10:22:09 +01:00
Juan RP
b7b6f7f1b4 xbps-create: use the right var in chdir(2) doh. 2012-11-25 11:03:03 +01:00
Juan RP
743eabb88e xbps-rindex: dont panic if old binpkg doesn't exist. 2012-11-24 08:50:52 +01:00
Juan RP
9f7357ecf5 xbps-{install,remove}.8: remove unimplemented option. 2012-11-21 06:57:13 +01:00
Juan RP
0c79a016a4 xbps-rindex: typo fix to make -r work. 2012-11-21 06:03:41 +01:00
Juan RP
b39881e47a xbps-remove: renamed -i, --ignore-revdeps to -F --force-revdeps. 2012-11-21 06:00:55 +01:00
Juan RP
7669fcf34d xbps-install: remove -p --print-format arg for now (unimplemented). 2012-11-21 05:57:53 +01:00
Juan RP
27622cf3cb xbps-{install,query}.8: update for 0.18 metadata changes. 2012-11-21 05:30:28 +01:00
Juan RP
79a31bb6bc xbps-query: implemented -X, --revdeps in repository mode. 2012-11-21 02:52:36 +01:00
Juan RP
37e5d7ebe0 xbps-query: show_pkg_files: return error if files != dictionary. 2012-11-20 22:58:15 +01:00
Juan RP
d063e63bbb xbps-create: new option -G, --source-revisions; mainly for xbps-src use. 2012-11-20 04:21:26 +01:00
Juan RP
78cd625c28 xbps-pkgdb: fixed symlinks check; this now detects modified symlinks correctly. 2012-11-19 21:12:04 +01:00
Juan RP
ca26c20dd5 xbps-query: show usage() when called with no args. 2012-11-19 21:06:37 +01:00
Juan RP
5de4fb1f0a xbps-install: -f will also overwrite pkg files. 2012-11-19 20:50:58 +01:00
Juan RP
01e67d1394 xbps-install: do not print anything for XBPS_STATE_INSTALL. 2012-11-19 12:29:47 +01:00
Juan RP
edc9853904 xbps-reconfigure: printf typo fix. 2012-11-18 13:23:24 +01:00
Juan RP
55982c7a3c xbps-query: process modes and arguments correctly. 2012-11-18 12:57:38 +01:00
Juan RP
ace91b17e0 xbps-pkgdb: add changes in reqby back to our pkgdb pkg dictionary. 2012-11-18 12:04:57 +01:00
Juan RP
66bb87d053 xbps-rindex: fixes to remove old binpkg when arch not matched and entry from index-files. 2012-11-17 19:22:58 +01:00
Juan RP
c899572bd4 xbps-pkgdb: don't forget to update pkgdb; some printf fixes. 2012-11-17 18:25:18 +01:00
Juan RP
e763f154a0 xbps-pkgdb: simplify the check code; make the reqby check work again. 2012-11-17 17:43:54 +01:00
Juan RP
b0fab7a3ee Implemented a cache to get pkg dicts from metadir.
This improves xbps-pkgdb -a marginally, but still seems to be a bit slow.
2012-11-16 21:50:52 +01:00
Juan RP
34bd49f85a New pkg metadata structure for 0.18. See the NEWS file for info. 2012-11-16 16:55:35 +01:00
Juan RP
a77727887d Improvements for xbps_fetch_file and xbps_repository_sync_index.
xbps_fetch_file:
	- A temp file is created with .part extension to improve resuming.
	- Files are downloaded in cwd.
	- Switch to futimens(2) and fsync(2).

xbps_repository_sync_index:
	- Do not create local repodir in metadir if it already exists.
	- Simplify the code thanks to new xbps_fetch_file().
2012-11-11 11:29:49 +01:00
Juan RP
d6735d5685 xbps_xasprintf: do not return NULL anymore; remove checks for this. 2012-11-11 09:37:27 +01:00
Juan RP
2a1e4fe137 xbps-query: sync XBPS_PKGINDEX_FILES with ownedby in repository mode. 2012-11-07 10:45:10 +01:00
Juan RP
d3f5223c1b xbps-install: only sync XBPS_PKGINDEX from remote repos. 2012-11-07 10:38:37 +01:00
Juan RP
ca095df52f libxbps: some tweaks for struct xbps_state_cb_data.
- Renamed args pkgname/version to arg0/arg1 to make them generic.
- Update bins with this and make some tweaks in state_cb.

Bumped API version.
2012-11-07 10:11:06 +01:00
Juan RP
89d892d98f xbps-install/fetch_cb.c: some printf tweaks. 2012-11-07 10:09:50 +01:00
Juan RP
fcb565cfa1 xbps-remove: dont error out if no orphans were found. 2012-11-06 14:46:43 +01:00
Juan RP
5830f154d5 xbps-query.8: improve -R, --repository description. 2012-11-06 11:41:33 +01:00
Juan RP
e21cdc68df Remove obsolete xbps-{bin,repo} utils. 2012-11-06 11:07:31 +01:00
Juan RP
e57e6669fb xbps-query: added a manual page. 2012-11-06 11:05:27 +01:00
Juan RP
11149f058c man: use the same width. 2012-11-06 10:33:29 +01:00
Juan RP
0c6a4f08ff xbps-install: added a manual page. 2012-11-06 10:23:07 +01:00
Juan RP
a41f8f2d92 man: s/Void GNU\/Linux/Void Linux/g 2012-11-06 09:55:56 +01:00
Juan RP
737727999b xbps-pkgdb: added a manual page. 2012-11-06 09:54:43 +01:00
Juan RP
310e619ea3 Remove unnecessary variable assignments reported by cppcheck. 2012-11-06 09:28:34 +01:00
Juan RP
c7402a9176 xbps-query/search.c: fix a memleak found by cppcheck. 2012-11-06 09:13:05 +01:00
Juan RP
ef6ed7d8c7 xbps-query: fallback to repos on ENOENT for show modes. 2012-11-05 13:17:15 +01:00
Juan RP
2e649f9315 xbps-query: show usage if no args are set for search or ownedby modes. 2012-11-05 12:12:34 +01:00
Juan RP
1948978dec xbps-create.8: add Xrefs. 2012-11-05 09:57:52 +01:00
Juan RP
f6a4ab353a xbps-install/transaction: remove extra \n in a printf. 2012-11-05 09:53:35 +01:00
Juan RP
caaf885229 xbps-remove: constify longopts; exec trans correctly. 2012-11-05 09:51:34 +01:00
Juan RP
0a7e917d49 manpages: tweaks. 2012-11-05 09:39:10 +01:00
Juan RP
603b0249f1 xbps-remove.8: minor fix. 2012-11-03 11:37:12 +01:00
Juan RP
306273ce7b xbps-remove.8: minor tweaks. 2012-11-03 11:33:55 +01:00
Juan RP
2734ad6d5e xbps-remove.8: extend DESCRIPTION. 2012-11-03 11:29:45 +01:00
Juan RP
b35ae55028 xbps-reconfigure.8: Xr xbps-rindex(8). 2012-11-03 11:21:39 +01:00
Juan RP
35f468fa55 xbps-reconfigure: added a manual page. 2012-11-03 11:18:10 +01:00
Juan RP
611d529cb0 xbps-remove: added a manual page. 2012-11-03 10:47:03 +01:00
Juan RP
b11d18a54f xbps-rindex: added a manual page. 2012-11-03 10:30:26 +01:00
Juan RP
4bc718b91b xbps-install: state_cb.c: s/xbps-bin/xbps-install/g. 2012-11-03 09:48:16 +01:00
Juan RP
714bacb0e4 xbps-remove: avoid xbps-install/state_cb.c dependency. 2012-11-03 09:47:28 +01:00
Juan RP
d61e12d75e xbps-reconfigure: avoid xbps-install/state_cb.c dependency. 2012-11-03 09:43:28 +01:00
Juan RP
a0d4a21a1d xbps-install: fixed some issues; remove unused headers. 2012-11-02 15:24:48 +01:00
Juan RP
b05ce9fe57 New utilities: xbps-{install,pkgdb,query,reconfigure,rindex} (WIP). 2012-11-02 15:04:25 +01:00
Juan RP
7fa8207cf3 xbps-create: be consistent with options, minor fixes. 2012-11-02 15:03:33 +01:00
Juan RP
9e11ea950a Do not inherit unneeded objs from trans dictionary onto pkg's pkgdb dictionary. 2012-10-25 09:29:56 +02:00
Juan RP
56d704f733 xbps-bin/check: do not warn if pkg's meta files plist is empty, it is valid. 2012-10-24 07:31:59 +02:00
Juan RP
f8450f9bd7 xbps-create: use mmap(2). 2012-10-04 17:13:33 +02:00
Juan RP
d59ad72ee4 xbps-bin(8): the 'check' target now handles symlinks correctly. 2012-10-04 12:05:04 +02:00
Juan RP
42c21e1c3c xbps-create: if a symlink points to an unexistent file store symlink target as is.
Seen in recent builds when building the systemd binpkg:

[chroot] => Building systemd-194_1.x86_64.xbps...
xbps-create.real: main.c:219: ftw_cb: Assertion `p' failed.

Which was asserting in a symlink that was pointing to a file provided by the udev
pkg, therefore realpath(3) failed.
2012-10-04 09:40:52 +02:00
davehome
efe6d4ff94 xbps-repo.8: misc grammar fixes. 2012-10-02 03:02:52 -06:00
davehome
272d4ffaf6 xbps-bin.8: misc grammar fixes. 2012-10-02 02:56:34 -06:00
davehome
7fb829177c xbps-bin.8: fix previous. 2012-10-02 02:49:10 -06:00
davehome
51b9b7f3bf xbps-bin.8: fix check target grammar. 2012-10-02 02:48:15 -06:00
davehome
2456a0e502 xbps-bin.8: fix grammar for -A. 2012-10-02 02:44:15 -06:00
Juan RP
9f41661726 xbps-create: added manpage. 2012-10-02 10:14:20 +02:00
Juan RP
154337ceab xbps-repo: remove-obsoletes: remove broken binpkgs (when plist cannot be internalized). 2012-09-30 10:08:21 +02:00
Juan RP
0ab888a79c xbps-repo: no need to release dict from xbps_rpool_xxx. 2012-09-30 08:11:51 +02:00
Juan RP
1d7fab2abd xbps-create: remove -d --destdir option and require this as argument. 2012-09-30 07:12:31 +02:00
Juan RP
3222fce866 Revert "xbps-bin.8: update FILES section."
This reverts commit 8e4e9e7bf5.

This doesn't apply to this branch, only for single-pkgdb.
2012-09-29 19:37:22 +02:00
Juan RP
890e1a0040 xbps-create/Makefile: remove unneeded var.
(cherry picked from commit b7f98f1a916db98c476be3b05ad29bf96a5746c9)
2012-09-29 19:14:05 +02:00
Juan RP
140a012d3b xbps-uhelper: remove obsolete code (unneeded with upcoming xbps-src-30).
(cherry picked from commit 14ec6cfdd0068b348b302a8da24774e9794bbaf8)

Conflicts:
	bin/xbps-uhelper/main.c
2012-09-29 19:13:38 +02:00
Juan RP
ea2710bca4 xbps-uhelper: allways zero out xbps_handle passed to xbps_{init,end}.
(cherry picked from commit e84d44a3416936333d10b134514eca6abddb5d6d)
2012-09-29 19:12:39 +02:00
Juan RP
7fa0861794 xbps-create: switch --homepage to -H, add -h/--help.
(cherry picked from commit 3a383c41f5dc77f5c08c90a9831123243ffa9109)
2012-09-29 19:12:20 +02:00
Juan RP
8e4e9e7bf5 xbps-bin.8: update FILES section.
(cherry picked from commit ae5079b05c499a2194a445799b1d52604f69d279)
2012-09-29 19:11:02 +02:00
Juan RP
54b6cc7ec1 xbps-{bin,repo}: add -B flag to set default repo if xbps.conf not found.
(cherry picked from commit 75eac1a1426040a833e0b10e208f2e55fa359532)
2012-09-29 19:10:48 +02:00
Juan RP
7714f0f6c5 bin: print usage() in stdout.
(cherry picked from commit b090e1a0bd32cabd8fe81bd756d419ee4b170ef7)
2012-09-29 19:08:03 +02:00
Juan RP
c39c1e5751 xbps-create: handle another variant of a relative symlink.
(cherry picked from commit 7d849c2a656246be808206baa0adae2da1c9132d)
2012-09-29 19:07:54 +02:00
Juan RP
e989b74c6a xbps-create: handle symlinks a bit better.
(cherry picked from commit 8a0e98485872b4ab97a3e55b453821016d89eab7)
2012-09-29 19:07:45 +02:00
Juan RP
d3bb6fe13e xbps-create: when adding entries to archive, copy data with one read().
(cherry picked from commit 1263e4555a25c4118647104563c92af9bfbe5005)
2012-09-29 19:05:54 +02:00
Juan RP
b478f6d774 xbps-create: add -q (quiet), ignore optarg if it's empty.
(cherry picked from commit 4417f7d74c0d552bba0f625b7df8adf25999000f)
2012-09-29 19:05:39 +02:00
Juan RP
83688cf8ec xbps-{bin,repo}: fixed crash in 'show' target reported by pancake.
(cherry picked from commit 4129a08cef7139b30b41ac659f35f9d494c2d918)
2012-09-29 19:04:41 +02:00
Juan RP
b08d3ea89c xbps-create: added -B (--built-with) to set "packaged-with" string obj.
(cherry picked from commit 16cffb187990df161e4683ce3154abdd6ce2bbd4)
2012-09-29 19:04:12 +02:00
Juan RP
114fd914d8 xbps-create: finish support for -M (mutable files).
(cherry picked from commit 73028bdd892384684a70fa8da0572b0832c69c92)
2012-09-29 19:04:12 +02:00
Juan RP
7f8c8b3dcd xbps-create: remove trailing whitespace.
(cherry picked from commit d139420576328084255f0145c5cfea3ad2d1367a)
2012-09-29 19:04:12 +02:00
Juan RP
5868bafc85 xbps-create: remove leftover line.
(cherry picked from commit 1c37453d2815b94de5a1191031a17623661ce435)
2012-09-29 19:03:58 +02:00
Juan RP
215f6d6f31 xbps-create: multiple fixes and new additions, 1 item left to finish.
- Added "build-date" object to XBPS_PKGPROPS.
- Added "installed_size" object to XBPS_PKGPROPS.
- Add entries to archive with "./" as prefix to match xbps-src.
- Create binpkg atomically (from caller's perspective) in cwd.
(cherry picked from commit efeae7c346e914bca045ffe44627c18321e45be9)
2012-09-29 19:03:04 +02:00
Juan RP
6ece895957 WIP: xbps-create(8) to create xbps binary packages from a destdir.
(cherry picked from commit 6546f73f90cd56d14a2e90cb6604901df18a9419)
2012-09-29 19:00:58 +02:00
Juan RP
7d4ecbb0ab xbps-repo: index-add: look for pkg in index matching arch or noarch. 2012-08-20 14:58:38 +02:00
Juan RP
3c379ff78e xbps-repo: remove repo index file locking, it's unreliable under NFS. 2012-08-16 10:59:54 +02:00
Juan RP
a037b89042 xbps-repo: really wait 30 secs max to acquire repo file lock. 2012-08-14 09:36:44 +02:00
Juan RP
2e594caf8a xbps-repo(8): the 'show-deps' target only lists deps and not repo/pkgver. 2012-08-10 08:43:51 +02:00
Juan RP
c34e564327 xbps-repo: more exact pkg extension check. 2012-08-07 10:37:52 +02:00
Juan RP
f0ab396036 xbps-{bin,repo}: ignore ENOENT when checking write perms in {root,meta,cache}dir. 2012-08-03 10:58:16 +02:00
Juan RP
68a0223c4e xbps-repo: fix the 'search' target to show a consistent output for inst/uninst pkgs.
Fixes issue #28.
2012-08-02 14:37:15 +02:00
Juan RP
3a247bd5cb xbps-{bin,repo}: make sure that user has write permission on {root,meta,cache}dir.
Fixes issue #27
2012-08-02 12:20:18 +02:00
Juan RP
cae219c4de xbps-repo: indent pkgs from all repos with longest pkgver found. 2012-08-01 08:25:15 +02:00
Juan RP
01c2dcaca7 xbps-bin: get_maxcols(): use stdin to make it work in all cases (from xdave). 2012-08-01 07:47:40 +02:00
Juan RP
1be90e57d7 xbps-{bin,repo}: wrap long lines for list, pkg-list and search targets.
Fixes issue #26
2012-07-31 17:50:50 +02:00
Juan RP
eb75041b25 xbps-repo(8): the search target now shows which pkgs are currently installed. 2012-07-31 10:34:10 +02:00
Juan RP
d319816fa2 xbps-bin: fixed regression in show target for vpkgs. 2012-07-23 10:21:32 +02:00
Juan RP
577ae731bb xbps-repo: index-clean: simplify code. 2012-07-22 11:45:17 +02:00
Juan RP
5a120e346e xbps-repo: new 'remove-obsoletes' target to remove obsolete pkgs in a local repo. 2012-07-22 10:48:29 +02:00
Juan RP
f0c96aac65 xbps-repo: index-clean now also removes obsolete pkgs found in repo. 2012-07-22 10:21:49 +02:00
Juan RP
adc6ce9d22 xbps-repo: [index] use proper arch obj to remove old entry. 2012-07-21 22:23:45 +02:00
Juan RP
29f9724ba0 xbps-repo: properly remove (no)arch old entry/binpkg from index. 2012-07-21 21:50:16 +02:00
Juan RP
9a69c5e349 xbps-bin: fix a warning found by -Wshadow on Ubuntu. 2012-07-19 18:00:19 +02:00
Juan RP
bf7324f7a4 xbps-repo: mention index-{add,clean} in usage(). 2012-07-18 15:06:47 +02:00
Juan RP
674adf64a3 xbps-repo: remove old binpkg symlinks too, fix index-files. 2012-07-17 13:10:34 +02:00
Juan RP
8eba2d7ea3 xbps-repo: replaced 'genindex' target with 'index-{add,clean}'.
See the NEWS file for more information.
2012-07-17 12:31:04 +02:00
Juan RP
2f1e975607 Added "install-date" object to pkg's pkgdb dictionary, make xbps-bin(8) print it. 2012-07-11 12:19:39 +02:00
Juan RP
f1ad8a95de xbps-repo: fixed issue 24 (xbps-src make-repoidx is doing something wrong). 2012-06-30 11:10:00 +02:00
Juan RP
5cb0d17f8e xbps-repo: [clean] print err msg when unlink(2) fails. 2012-06-19 10:55:42 +02:00
Juan RP
f4e97228c8 xbps-repo: [clean] do not fail if cachedir does not exist, update for new API. 2012-06-19 10:52:57 +02:00
Juan RP
3e93d235ff xbps-{bin,repo}: strlcpy -> memcpy. 2012-06-18 10:42:24 +02:00
Juan RP
a2e42f1d57 xbps-bin: fixed a memleak in show_pkg_info(). 2012-06-18 10:01:27 +02:00
Juan RP
ad766cd538 xbps-repo: fixed regression in the 'clean' target. 2012-06-16 09:32:26 +02:00
Juan RP
974b2fe8ad libxbps: simplify pkgdb_get_pkgd and find_pkg_dict_installed internals.
There's no need to prop_dictionary_copy the returned dictionary to
later have to free it again, just return directly the dictionary and
avoid the free(3)s.
2012-06-16 09:02:07 +02:00
Juan RP
068cab8d20 libxbps: performance improvements by caching the most accessed paths.
1- We can cache the result of the first xbps_pkgdb_init() when it fails
   and avoid the malloc/free/access from it.
2- We cache the uname(2) result into a private var in xbps_handle and
   use it in xbps_pkg_arch_match().

This improves performance by ~5% approx and it's close as it was before
introducing the repository index format 1.5.
2012-06-15 15:33:11 +02:00
Juan RP
29871b2120 xbps-bin: re-add libxbps cleanup to the sighandler, also handle SIGHUP. 2012-06-14 10:11:50 +02:00
Juan RP
3e9e87fc2a libxbps: require a pointer to xbps_handle in functions that need it.
This removes 2 global vars from lib/initend.c and easier to know
what functions require access to xbps_handle.
2012-06-14 08:22:11 +02:00
Juan RP
c61ba8dfcc Added support for package conflicts. 2012-06-11 16:14:03 +02:00
Juan RP
efefa000b2 xbps_dictionary_metadata_plist_by_url: only accept exact matches. 2012-06-05 20:53:15 +02:00
Juan RP
1244d663d8 xbps-repo.8: rewording. 2012-06-05 14:42:03 +02:00
Juan RP
c37026d4c6 libxbps: require an underscore in strings to detect correctly pkgname/version. 2012-06-05 10:58:39 +02:00
Juan RP
61e8daea88 xbps-bin.8: document the 3 ways to install pkgs, with grammar help by xdave. 2012-06-03 08:08:29 +02:00
Juan RP
21060384d3 xbps-repo/index.c: misc cosmetic change. 2012-06-02 16:51:22 +02:00
Juan RP
06034ea928 xbps-repo: index: don't write plist if no changes were made. 2012-06-01 17:03:05 +02:00
Juan RP
3399184511 xbps-repo: genindex target now removes any obsolete binpkg not registered in index. 2012-06-01 16:37:44 +02:00
Juan RP
0c52f3cce6 xbps-repo.8: improve description of 'genindex' target. 2012-06-01 15:45:23 +02:00
Juan RP
992aeeee4a xbps-repo: typo build fix. 2012-06-01 15:04:29 +02:00
Juan RP
981b13bd5a xbps-repo: 'sync' and 'pkg-list' target now accept a repository URI argument.
If set, only the matching repository will be used for the task.
2012-06-01 15:02:06 +02:00