Commit Graph

900 Commits

Author SHA1 Message Date
Juan RP
5642ffa86e New configuration scheme changes, round 1.
- Configuration file 'xbps-conf.plist' has been splitted off into
  two files: conf.plist and repositories.plist. By default they
  are stored in etc/xbps.
- Changed some members in xbps_handle struct, mostly to make it easy
  to change its value in {cache,root}dir and conffile.
- Made xbps_init() release proplib objects as soon as we don't need
  them, that way it uses 35% less of memory or in some cases even more.

There will be another commit that will implement to read new virtualpkg
settings by the user, as specified in:

	http://code.google.com/p/xbps/issues/detail?id=12
2011-10-17 12:37:15 +02:00
Juan RP
b6da7393c1 libxbps: make the xbps_find_*pkg_dict_installed work as expected.
Bump XBPS_API_VERSION due to semantics change in virtual and non virtual
functions.
2011-10-16 17:21:43 +02:00
Juan RP
d70036dd81 xbps-repo8(8): make the show targets be aware of vpkg settings in conf. 2011-10-16 16:54:08 +02:00
Juan RP
dfa8b8e8ba libxbps: make xbps_*_find_virtualpkg_*_by_name funcs work as expected. 2011-10-16 16:52:58 +02:00
Juan RP
d551713c01 Move repository_pool_find code into its own file. 2011-10-16 14:31:53 +02:00
Juan RP
d762c9c866 NEWS: mention recent changes to libxbps. 2011-10-16 13:25:33 +02:00
Juan RP
12af2370da libxbps: separate virtualpkg conf stuff from repository_pool_find_pkg.
Now to find a virtualpkg set by the user in conf file, there is a new
function: xbps_repository_pool_find_virtualpkg(). Use it in some
places to make jpeg -> libjpeg-turbo (and other pkgs that can be
replaced with other virtual pkgs) work correctly even if installed
multiple times.
2011-10-16 12:22:46 +02:00
Juan RP
104bec27e5 libxbps: handle the case to replace a vpkg with a pkg with same name.
This for example fixes reinstalling jpeg and libjpeg-turbo multiple
times. Also if the "automatic-install" obj is in the pkg to be
replaced, copy it to the new pkg to be preserved.

Bumped XBPS_API_VERSION.
2011-10-16 10:28:03 +02:00
Juan RP
0f0c66fafb xbps_dictionary_from_metadata_plist: if pkgname not found try from a
virtual pkg.
2011-10-16 10:27:02 +02:00
Juan RP
a59f48585f repository_pool_find_pkg: added some dbg printf, calloc -> malloc.
There's no need to use calloc here because some members are being
initialized anyway, so fully initialize all members and skip the memset
syscall via calloc.
2011-10-16 10:03:27 +02:00
Juan RP
e37a9efb74 libxbps: check in virtual pkgs when matching replaced pkgs. 2011-10-15 20:01:55 +02:00
Juan RP
d3e1c0dcf2 libxbps: when sorting deps take into account transaction reason. 2011-10-15 20:00:41 +02:00
Juan RP
f2ede44c80 libxbps: make xbps_find_virtualpkg_user *only* look for virtual pkgs. 2011-10-15 19:59:54 +02:00
Juan RP
ead8d2460f libxbps: respect reqdby obj when replacing a pkg with a virtual pkg.
Reverse dependencies weren't respected when replacing a pkg with
another pkg that is providing a virtual pkg for the former.

This resulted in reversedeps being completely lost when new pkg
is installed.
2011-10-15 16:43:27 +02:00
Juan RP
c3395a2f3b Bump XBPS_API_VERSION for last libxbps change. 2011-10-12 09:28:50 +02:00
Juan RP
20b0b4ce12 libxbps: when replacing a pkg, also fully purge the pkg(s). 2011-10-12 09:28:11 +02:00
Juan RP
ac5bc123b8 NEWS: improve grammar in last entry. 2011-10-06 21:13:33 +02:00
Juan RP
024bec0045 Fixed HTTP repositories in non standard HTTP port (80).
The code didn't take into account for different ports and simply ignored
them, now they work correctly. This fixes issue 10 in googlecode.
2011-10-06 19:05:16 +02:00
Juan RP
e43603847e NEWS: mention recent bugfix to xbps-bin check target. 2011-09-28 11:15:57 +02:00
Juan RP
2d50109da5 xbps-bin: detect broken symlinks in the 'check' target. 2011-09-28 11:06:24 +02:00
Juan RP
edb909c899 xbps-{bin,repo}: minor change to long_desc obj printing. 2011-09-01 09:50:47 +02:00
Juan RP
26af45dcd5 doc: update for official logo, new doxyfile with svg images. 2011-08-18 10:44:02 +02:00
Juan RP
4b68af989e libxbps: xbps_repository_sync_index: return proper return value in error path. 2011-08-18 10:43:30 +02:00
Juan RP
3c61de45aa xbps_api.h: fix xbps_transaction_cb_data::repourl descr. 2011-08-18 10:42:37 +02:00
Juan RP
ba5913cbb9 libxbps: [unpack] only extract files if they have been modified. 2011-08-01 12:35:47 +02:00
Juan RP
890bdd368f xbps_unpack_binary_pkg: remove redudant error printf, cosmetic changes. 2011-07-29 23:28:36 +02:00
Juan RP
6327100f1a configure: link bins against libxbps... 2011-07-29 20:52:25 +02:00
Juan RP
2c53c6e0de configure: detect external libfetch and portableproplib automatically.
The options --with-external-* have been removed, if the checks don't
detect required functions, included sources are used.

Enable --silent mode by default, now --verbose is required to disable
it.
2011-07-29 12:47:34 +02:00
Juan RP
4aa06921ff xbps-*: do not pass a NULL pointer to xbps_end(). 2011-07-29 11:27:43 +02:00
Juan RP
2857214afa libxbps: improve returned errnos for repository API functions.
- xbps_repository_update_packages: return ENOENT if regpkgdb is NULL
  (no packages currently registered).
- xbps_repository_update_packages: return EEXIST if no updates are
  available.
- xbps_repository_pool: return ENOTSUP if no repositories were
  registered.
- make xbps-{bin,repo} handle ENOTSUP errors.
2011-07-29 11:17:34 +02:00
Juan RP
e71e3e9958 trans_cb: fix obvious error in REPOSYNC state. 2011-07-29 11:12:34 +02:00
Juan RP
3bbc6ae18d trans_cb: also show old pkgver when updating a pkg. 2011-07-29 08:09:23 +02:00
Juan RP
5e390b8839 Introduce new pkg state: half-unpacked.
Packages in this state shall be re-installed and re-unpacked because its
files weren't unpacked properly.
2011-07-28 16:25:01 +02:00
Juan RP
6c0b24029b xbps-bin(8): fix a couple issues in the 'check' target. 2011-07-28 16:24:16 +02:00
Juan RP
98a2508c2e xbps_repository_sync_pkg_index: fix copy/paste in trans err_cb. 2011-07-28 09:34:29 +02:00
Juan RP
6f783389dd Share transaction callbacks for xbps-{bin,repo}, reposync cb support. 2011-07-28 09:25:30 +02:00
Juan RP
d7d077a377 xbps_api.h: fixed some comments. 2011-07-27 23:18:25 +02:00
Juan RP
43b841dce1 Use xfcd->cookie to pass user-supplied data to the fetch cb. 2011-07-27 18:04:38 +02:00
Juan RP
508f119bc9 Moved install transaction code to libxbps, see NEWS file. 2011-07-27 17:13:54 +02:00
Juan RP
ce0b21a062 xbps_dictionary_from_metadata_plist: fix this with empty regpkgdb.plist.
If regpkgdb wasn't initialized it failed to properly internalize the
dictionary from the plist file.
2011-07-27 11:23:25 +02:00
Juan RP
6b02c28bd7 xbps-bin(8): simplify previous commit and reuse new code. 2011-07-25 16:44:26 +02:00
Juan RP
e26b6e23e6 xbps-bin(8): make 'show{,-deps,-revdeps}' target work with virtual pkgs. 2011-07-25 16:40:34 +02:00
Juan RP
2e5d5e7f49 NEWS: mention recent bugfix to dewey code. 2011-07-25 16:09:53 +02:00
Juan RP
19f4cbd995 Generate transaction pkg count stats in the transaction dictionary.
This removes a chunk in frontends to compute number of installed,
updated, configured and removed pkgs in transaction.
2011-07-24 17:43:17 +02:00
Juan RP
d1454c21d2 Improvements to xbps-bin(8) and xbps-repo(8) manpages. 2011-07-23 08:33:12 +02:00
Juan RP
59ddc58187 xbps_api.h: fix descr in xbps_cmpver(). 2011-07-22 18:05:21 +02:00
Juan RP
32be850c9d libxbps: make dewey code be aware of XBPS pkg revisions.
This makes the comparision "1.4.11.1" greater than "1.4.11_1", that
previously thought they were the same version.
2011-07-22 07:30:40 +02:00
Juan RP
a22a6c3be1 libxbps: move hash funcs from util.c into its own file. 2011-07-19 21:21:28 +02:00
Juan RP
468366b1b2 libxbps: move match funcs from plist_find.c into its own file. 2011-07-19 21:07:04 +02:00
Juan RP
d0372b5555 Remove old mercurial repo references. 2011-07-17 01:51:48 +02:00