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
This commit is contained in:
Juan RP
2011-10-17 12:37:15 +02:00
parent b6da7393c1
commit 5642ffa86e
27 changed files with 236 additions and 207 deletions

View File

@ -214,7 +214,8 @@ get_pkg_index_remote_plist(const char *uri)
return NULL;
repodir = xbps_xasprintf("%s/%s/%s/%s",
xhp->rootdir, XBPS_META_PATH, uri_fixed, XBPS_PKGINDEX);
prop_string_cstring_nocopy(xhp->rootdir),
XBPS_META_PATH, uri_fixed, XBPS_PKGINDEX);
if (repodir == NULL) {
free(uri_fixed);
return NULL;
@ -261,7 +262,8 @@ xbps_path_from_repository_uri(prop_dictionary_t pkg_repod, const char *repoloc)
/*
* First check if binpkg is available in cachedir.
*/
lbinpkg = xbps_xasprintf("%s/%s", xhp->cachedir, filen);
lbinpkg = xbps_xasprintf("%s/%s",
prop_string_cstring_nocopy(xhp->cachedir), filen);
if (lbinpkg == NULL)
return NULL;