Commit Graph

200 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
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
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
6f783389dd Share transaction callbacks for xbps-{bin,repo}, reposync cb support. 2011-07-28 09:25:30 +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
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
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
c163801fd0 xbps-bin: print the list of pkgs when removing a pkg with reverse-deps.
This commit also removes the printf for -F, it seems that it's confusing
so I simply removed it and it won't proceed unless -F is specified.
2011-07-10 20:24:29 +02:00
Juan RP
0a2abb3f3d xbps-repo(8): 'search' target is now case insensitive.
Along with this change, compat code has been added (from NetBSD)
for systems that don't have it. The compat code has been reorganized
to be in a common place and its prototypes in compat.h.

The configure scripts checks if strcasestr() is available, and
uses compat code if not found.

This fixes issue #2 on github.com/vanilla/xbps.
2011-07-09 10:50:44 +02:00
Juan RP
7999d393e2 xbps-bin: return ENODEV in missing dependencies, not 1. 2011-07-02 23:44:51 +02:00
Juan RP
539dd1c0cd xbps-bin: when replacing pkgs only purge for pkgs that aren't going to be updated. 2011-06-25 22:53:47 +02:00
Juan RP
97fcd43bbe xbps-bin: also purge pkgs that shall be replaced. 2011-06-23 11:46:15 +02:00
Juan RP
6b4aaae971 xbps-bin: check: missing whitespace in printf. 2011-06-22 09:37:59 +02:00
Juan RP
96bf160032 xbps-bin: check: don't play stupid games removing previous lines. 2011-06-22 09:33:39 +02:00
Juan RP
de9e153bb9 xbps-bin: check target: ignore symlinks with empty targets. 2011-06-22 09:16:48 +02:00
Juan RP
ed82315813 xbps-{bin,repo}(8): don't mention xbps-src, this info is outdated. 2011-06-20 12:56:43 +02:00
Juan RP
32a5cd501e xbps-bin: improve error printfs while checking files.plist. 2011-06-06 09:09:30 +02:00
Juan RP
90549d829a xbps-bin::util.c: do not use C99 struct initialization, it's too long to type. 2011-06-04 22:35:48 +02:00
Juan RP
48f689d8e6 xbps-bin: error msg when cachedir cannot be created. 2011-06-04 16:37:05 +02:00
Juan RP
bb4cefcd2c xbps-{bin,repo}: init conffile to NULL. 2011-06-04 13:53:55 +02:00
Juan RP
9673c4bd09 XBPS major changes in June 2011.
- A configuration file "xbps-conf.plist" replaces the (un)register target
  in xbps-repo(8) and (un)set-prop in xbps-bin(8). For now, you can set
  the repositories and prefered virtual packages.

- New package pattern matching code from NetBSD. Supports more ways of
  matching patterns in packages.

- Multiple bugs fixed in virtual packages related matching code.

--HG--
rename : LICENSE => COPYING
2011-06-04 13:37:53 +02:00
Juan RP
841c9e2d51 API/ABI break for June 2011.
Rename some functions to reflect its description a bit better.

--HG--
rename : lib/repository_plist.c => lib/plist_fetch.c
2011-06-01 09:37:32 +02:00
Juan RP
c9a673cc11 xbps-bin: make the 'check' target also test for modified symlinks. 2011-06-01 07:31:38 +02:00
Juan RP
cfa637db48 Repository package index format 1.2.
The pkg index now stores all package objects from props.plist, so that
xbps-repo(8) doesn't have to access the target binpkg anymore.
2011-05-27 17:32:42 +02:00
Juan RP
f7882f7215 xbps-{bin,repo}: parse three new objects in pkg props.plist: homepage, build_date and license. 2011-05-26 10:54:48 +02:00
Juan RP
ef28101203 xbps_register_pkg: remove 'automatic' boolean argument.
It should be provided in the proplib dictionary with key 'automatic-install'.
This fixes a regression not respecting the 'automatic-install' value stored
in regpkgdb.
2011-04-11 14:42:06 +02:00
Juan RP
ad66fa2e3d xbps-bin::install.c: remove unused var to make this build with gcc-4.6.
Reported and patch provided by ojab in issue 4.
2011-04-08 19:25:41 +02:00
Juan RP
007d6b4bd5 xbps-bin.8: bump date. 2011-02-26 11:17:02 +01:00
Juan RP
221291929e xbps-bin: added -A and -M options for explicitly setting install reason to auto or manual. 2011-02-26 11:14:05 +01:00
Juan RP
f2ef0c0050 xbps-bin: return rval if 'install' target cannot find a pkg. 2011-02-25 13:41:57 +01:00
Juan RP
2eb7331907 xbps-bin: return 1 if there are missing deps, return errno in other errors. 2011-02-25 12:27:42 +01:00
Juan RP
0a84799ac7 xbps-bin: add a simple unpack cb that mimics the 'check' target. 2011-02-24 10:18:24 +01:00
Juan RP
5f2ae48b71 xbps-bin: skip some unneeded stuff in the download and configure phases. 2011-02-23 23:43:45 +01:00
Juan RP
12cdc7c242 xbps-bin: remove the unpack callback with a percentage.
It messes up some xbps_*printf()s, and removing it makes it look like
previous versions (<=0.7.3).
2011-02-22 16:33:54 +01:00
Juan RP
9abcb92e39 xbps-bin::instal.c: some bugfixes for pkg state and the transaction steps.
- While installing a package, always check its state and don't ignore it
  if it was already unpacked, we have to configure it.
- Before unpacking packages, configure packages that were unpacked previously.
2011-02-22 11:07:34 +01:00
Juan RP
9e22df0725 xbps-bin: skip packages to be configured in the install/update stage, fix configured pkg count. 2011-02-21 23:28:39 +01:00
Juan RP
870ad18d58 xbps_init() now sets rootdir, cachedir and flags.
That means that the following functions were removed:
	- xbps_set_{cachedir,flags,rootdir}.
	- xbps_get_{cachedir,flags,rootdir}.

With this change fixed an obvious typo that made -c argument to not work,
and now the cache directory is an absolute path not relative to rootdir.
2011-02-21 17:42:47 +01:00
Juan RP
3acf91bb15 xbps-bin: unpack_progress_cb_verbose printf to stdout for consistency. 2011-02-21 13:53:08 +01:00
Juan RP
22ae7aa2e8 Introduce struct xbps_handle and use it for xbps_init().
This structure sets up function callbacks for fetching files and
unpacking binary packages, as well as setting the debug boolean.

This way the affected functions (xbps_fetch_file() and
xbps_unpack_binary_pkg()) do not need to accept the fn cb pointers
and data as arguments.

Bump XBPS_RELVER.
2011-02-21 13:38:44 +01:00
Juan RP
078f9f1cda Fixed finally another real case when updating and replacing pkgs. 2011-02-18 16:39:42 +01:00
Juan RP
b90c815e80 Minor nits to the xbps-{bin,repo}.8 manpages. 2011-02-05 17:32:14 +01:00