Commit Graph

579 Commits

Author SHA1 Message Date
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
Juan RP
ba84f82e66 xbps-repo.8: update. 2012-06-01 14:23:23 +02:00
Juan RP
da75866a63 xbps-bin: -n now also prints pkg arch. 2012-06-01 11:28:30 +02:00
Juan RP
b20dffd2c0 xbps-repo: misc fixes/improvements to index{,-files}.c code. 2012-06-01 10:57:58 +02:00
Juan RP
65b5e328d8 xbps-repo: fixed index-files generation, this time for real! 2012-06-01 00:31:18 +02:00
Juan RP
ff2e434b56 xbps-repo: properly fix index-files update. 2012-05-31 23:48:58 +02:00
Juan RP
356bd655cf xbps-repo: fixed 'genindex' target when removing obsoletes in index-files. 2012-05-31 17:34:17 +02:00
Juan RP
7289547432 Welcome "repository index format 1.5". See NEWS for information. 2012-05-31 16:29:56 +02:00
Juan RP
a58df97c75 xbps-bin: new flag -S to sync rpool indexes before the target. 2012-05-31 08:08:32 +02:00
Juan RP
6228204a14 xbps-bin: change yesno() in targets that use a transaction. 2012-05-31 08:03:54 +02:00
Juan RP
3244ec935d bin/xbps-bin/check.c: remove a dead assignment found by clang-analyzer. 2012-05-30 14:21:34 +02:00
Juan RP
922ee1f1b6 libxbps: rename xbps_repository_pool_xxx to xbps_rpool_xxx. 2012-05-30 10:56:32 +02:00
Juan RP
fa7bee1164 xbps-repo: [pkg-list] do not print repo url if index is specified. 2012-05-29 16:17:48 +02:00
Juan RP
a14886ab48 xbps-bin: fix swapped args in check_pkg_symlinks. 2012-05-25 14:28:12 +02:00
Juan RP
30932b3c55 xbps-uhelper: fixed 'register' target (regression added in recent commits). 2012-05-15 08:56:30 +02:00
Juan RP
5fabb34a1f xbps-bin(8): keep auto{remove,update} targets for compatibility. 2012-05-08 10:09:01 +02:00
Juan RP
e0fc55c389 xbps-bin(8): renamed autoremove target to remove-orphans. 2012-05-08 09:58:56 +02:00
Juan RP
758cd4fd11 xbps-bin(8): renamed autoupdate target to dist-upgrade. 2012-05-08 09:54:06 +02:00
Juan RP
b7961ae611 xbps-bin: print current/total pkgs counter in 'check all' target. 2012-05-07 12:33:50 +02:00
Juan RP
5e0b06dc00 xbps-bin: improve def unpack cb to print more meaningful messages. 2012-05-06 16:48:47 +02:00
Juan RP
b4f202f89f xbps-bin/util.c: find out terminal columns and use it to print transaction. 2012-05-06 16:47:30 +02:00
Juan RP
b53795e095 fetch_cb: clear until EOL when displaying final stats. 2012-05-06 10:09:23 +02:00
Juan RP
391bb3daf2 fetch_cb: simplify and improve output. 2012-05-06 10:05:35 +02:00
Juan RP
f7c49a706c xbps-repo(8): new target 'clean': removes obsolete binpkgs from cachedir. 2012-05-05 10:07:47 +02:00
Juan RP
53c7f9effe xbps-bin: fixed regression in 'show-deps' target. 2012-04-16 16:42:03 +02:00
Juan RP
93c5536e36 xbps-{bin,repo}: remove dead code. 2012-04-12 13:05:13 +02:00
Juan RP
bfe7ab1c5a xbps_configure_pkg: simplify and remove "version" arg (API change).
The "version" argument (being optional) clearly is not needed and it
can be fully removed. This simplifies the internal implementation as well
as the API.
2012-04-10 10:02:27 +02:00
Juan RP
ef6d1adf91 xbps_set_pkg_state_installed: simplify (API change).
The third optional argument "pkgver" clearly is useless because we can
create it internally with "pkgname" and "version" arguments instead.

Also make the "version" argument mandatory.
2012-04-10 09:43:59 +02:00
Juan RP
00148c40b0 xbps-bin(8): extended 'requiredby' check to find and remove stale entries. 2012-04-05 10:58:52 +02:00
Juan RP
9bada162a1 New "metadir" member in xbps_handle to override default metadata dir. 2012-03-13 10:22:35 +01:00
Juan RP
d4f623e7e7 Commit Kyua/ATF test suite for libxbps. 2012-03-12 15:23:04 +01:00
Juan RP
8c6b335ca8 xbps-{bin,repo}: redirect error messages to stderr. 2012-02-25 10:30:15 +01:00
Juan RP
fd5d8b9f51 xbps-repo.8: sync with reality. 2012-02-20 16:02:42 +01:00
Juan RP
7fc8ee8231 xbps-bin: check for EEXIST when installing a pkg. 2012-02-18 16:15:54 +01:00
Juan RP
7a9d47c133 xbps-repo: show, show-deps and show-files targets accepts pkgpatterns. 2012-02-16 08:55:41 +01:00
Juan RP
7628561518 xbps-repo: added -h to print usage(), print detailed info for usage(). 2012-02-14 10:49:41 +01:00
Juan RP
052a266b76 xbps-bin: added -h to print usage(), print detailed info for usage(). 2012-02-14 10:35:33 +01:00
Juan RP
cbfc8868a6 xbps-repo.8: sync with reality. 2012-02-06 13:32:31 +01:00
Juan RP
36ae5709e4 xbps-bin: dry-run: add binary pkg filename prop to the output. 2012-02-05 14:56:18 +01:00
Juan RP
3afa3ba93b xbps-bin: new dry-run mode (-n) for (auto)update, (auto)remove and install targets. 2012-02-03 14:53:28 +01:00
Juan RP
7fd4b16156 xbps-bin: fetch_cb.c: avoid ANSI escape sequencies and use \r. 2012-02-03 06:43:00 +01:00
Juan RP
1acf933f5a xbps-repo: make show* targets do not follow virtualpkgs from xbps.conf.
The reason for that is that you should be able to show information from
any package, and by enabling virtual packages you cannot do that.
2012-01-27 15:24:24 +01:00
Juan RP
164a928e5a xbps-bin: do not syslog msgs if disabled due to uninitialized bool. 2012-01-26 11:46:01 +01:00
Juan RP
1a73b93d63 Calculate properly required/freed size in transactions. 2012-01-25 04:56:54 +01:00
Juan RP
abb0d260b9 xbps-bin: the install target gains suppor for installing best pkg available. 2012-01-25 02:14:04 +01:00
Juan RP
11f94a4f46 xbps-bin: pretty output for 'check all'. 2012-01-25 01:17:18 +01:00
Juan RP
9becfc29d2 xbps-bin: fix pkgpattern to install new pkgs. 2012-01-24 20:48:54 +01:00
Juan RP
9a1f05ee89 xbps-bin: use "mutable" bool object to check for mutable files in pkg file list. 2012-01-24 18:47:43 +01:00
Juan RP
fe1e8d14c8 xbps-repo: [genindex] print to stdout when obsolete entry is removed. 2012-01-24 09:47:40 +01:00
Juan RP
791f1d40b2 xbps_handle: remove debug, install_*, syslog_enabled members.
Replaced by definitions that can be set to xbps_handle::flags.
2012-01-22 10:52:35 +01:00
Juan RP
a166d6a2a3 Simplify xbps_transaction_prepare()/commit() and related API changes.
- xbps_handle::transd -> new member with transaction dictionary.
- xbps_transaction_prepare: returns an int.
- xbps_transaction_commit: doesn't need any arg now.
- xbps_repository_pool_sync: doesn't need any arg now.
- xbps_pkgdb_update: removed xbps_handle * arg.
- xbps_transaction_missingdeps_get: removed, missing_deps array is in
  xbps_handle::transd("missing_deps") array object.
2012-01-22 10:00:46 +01:00
Juan RP
38db570c19 pkgdb: foreach_xxx_pkg_cb -> foreach_xxx_cb. 2012-01-21 10:30:20 +01:00
Juan RP
0561d068d5 xbps-uhelper: new target 'updatepkgdb' to migrate to 0.12 pkgdb format. 2012-01-20 18:42:00 +01:00
Juan RP
6940505de9 regpkgdb rototill: renamed to pkgdb, improve the public API. 2012-01-20 11:10:52 +01:00
Juan RP
9a088937b5 Repository index 1.4 -- see NEWS file for info. 2012-01-19 12:26:40 +01:00
Juan RP
dfc7ff4232 API break: simplify xbps_repository_pool_find_virtualpkg(). 2012-01-18 08:25:28 +01:00
Juan RP
d0e1477eeb Simplify xbps_end() and don't continue if xbps_init() did not succeed. 2012-01-17 16:56:17 +01:00
Juan RP
f2b05d6438 Improved pkg best matching in rpool, and support for exact pkgver matches.
- xbps_repository_pool_find_pkg in best match case, now returns the
  newest package version available in rpool.
- Added xbps_repository_pool_find_pkg_exact that returns a package
  by exact matching a pkgver.
- Removed xbps_handle_alloc(), the user is free to use memory
  allocated from heap or stack.
- Improved API documentation in preparation for 0.12.

Bumped XBPS_API_VERSION again.
2012-01-17 16:17:03 +01:00
Juan RP
da5e9f841f xbps-repo: fixed removing multiple entries from index-files.plist. 2012-01-17 12:16:54 +01:00
Juan RP
4fdf675249 xbps-repo: index.c: oldpkgver might be undefined if entry is removed from index. 2012-01-17 11:25:45 +01:00
Juan RP
9906aa7029 xbps-repo: index-files.c: warning due to uninitialized var. 2012-01-17 10:55:28 +01:00
Juan RP
beb7284681 xbps-repo: faster 'genindex' target implementation for index-files.plist. 2012-01-17 10:50:35 +01:00
Juan RP
4164573b35 Added xbps_match_pkgdep_in_array() to match a pkgdep against pkgpatterns.
This fixes xbps_match_pkgpattern_in_array() which had the args swapped
in xbps_pkgpattern_match() resulting in inverted results while resolving
virtual packages in a transaction.
2012-01-16 15:50:06 +01:00
Juan RP
95804bdb77 xbps-repo: simplify 'index-files.plist', externalized as an array. 2012-01-15 16:33:44 +01:00
Juan RP
2186e16a5e Fixed issue 21 "xbps-repo find-files is awfully slow" reported by ojab. 2012-01-15 14:24:44 +01:00
Juan RP
8780e15635 xbps-bin.8: typo, remove refs to purge flag. 2012-01-05 21:19:29 +01:00
Juan RP
0356afba6d Bump copyright year for latest changes. 2012-01-05 16:17:37 +01:00
Juan RP
c83a77c1b5 Fixed issue 19 "xbps-src cannot fetch source with unknown Content-Length". 2012-01-05 12:26:57 +01:00
Juan RP
7d631c5d11 xbps-bin: fix check_pkg_integrity() pkg dictionary confusion. 2012-01-05 11:53:14 +01:00
Juan RP
a7ef059673 Bump copyright year for changed files. 2012-01-04 17:56:52 +01:00
Juan RP
a31c20e52a Make xbps_configure_pkg/packages accept a flush bool arg for frontends. 2012-01-04 17:41:36 +01:00
Juan RP
e22ba9a972 xbps-bin: simplify and make 'check' target work after regpkgdb flush changes. 2011-12-29 16:43:52 +01:00
Juan RP
c0f81bd482 xbps-uhelper: use xbps_(un)register_pkg() again. 2011-12-28 05:58:03 +01:00
Juan RP
11ca929985 xbps-uhelper: fix 'fetch' target exiting with error value. 2011-12-24 16:56:45 +01:00
Juan RP
9fa2804763 xbps-uhelper: really fix this time after regpkgdb rototill. 2011-12-24 16:37:42 +01:00
Juan RP
5a1ab26972 Introduce xbps_regpkgdb_remove_pkgd, and use regpkgdb funcs to make xbps-uhelper work. 2011-12-24 16:09:30 +01:00
Juan RP
3b7491d29b Merged purge code in remove, configurable transaction regpkgdb flushing.
See the NEWS file for info.
2011-12-24 01:05:26 +01:00
Juan RP
32597d85c1 Use xbps_regpkgdb_foreach_pkg_cb() where needed. 2011-12-22 14:41:40 +01:00
Juan RP
7bfcdee791 Introduce xbps_regpkgdb_foreach_pkg_cb() and use it in xbps-bin check. 2011-12-22 14:25:27 +01:00
Juan RP
939e2c2417 xbps-bin(8): fix 'find-files' syntax in manpage. 2011-12-22 11:07:54 +01:00
Juan RP
47237846ae xbps-repo(8): the 'find-files' target now accepts multiple patterns. 2011-12-22 11:01:28 +01:00
Juan RP
d4278be914 xbps-bin(8): the 'find-files' target now accepts multiple patterns. 2011-12-22 10:45:13 +01:00
Juan RP
13331f801c xbps-repo: the 'search' target now accepts multiple patterns as arguments. 2011-12-22 09:33:54 +01:00
Juan RP
a5d9eb9853 xbps-bin: it's possible to reinstall any pkg with '-f' option. 2011-12-20 16:08:23 +01:00
Juan RP
6ad7289d68 Detect clock_gettime(2) and use (if available) for the fetch cb. 2011-12-19 16:41:57 +01:00
Juan RP
79fd316f8e xbps-bin: formatting fixes for transaction printfs. 2011-12-18 01:10:24 +01:00
Juan RP
a1f39a0a82 xbps-repo(8): rewriten manpage to mdoc(7) macro format. 2011-12-17 18:30:13 +01:00
Juan RP
99f0b02e03 xbps-bin(8): fix typo. 2011-12-17 18:29:48 +01:00
Juan RP
fa80e01404 xbps-bin(8): rewritten manpage to mdoc(7) macro format. 2011-12-17 17:40:23 +01:00
Juan RP
b0ceeaa58e New configuration file via confuse: xbps.conf. 2011-12-15 11:19:20 +01:00
Juan RP
3f45f563be xbps-bin: syslog support, enabled by default. 2011-12-06 13:02:49 +01:00