Commit Graph

1379 Commits

Author SHA1 Message Date
Juan RP
99f3d846de xbps_purge_pkg: if state is not XBPS_PKG_STATE_CONFIG_FILES, just return 0. 2010-11-21 14:34:49 +01:00
Juan RP
fdec663855 API clean up (part 2), plus misc changes and improvements.
- Rename regpkgs_dictionary to regpkgdb_dictionary to better describe what is is.
- Change some funcs in plist.c to return a boolean rather than int.
- Hide more internal funcs off the API.
- Simplify xbps_repository_update_pkg() and remove its second arg.
- Hide implementation details in xbps_repository_pool, now to iterate over the
  pool you have to use xbps_repository_pool_foreach and its struct
  repository_pool_index.
- Introduce xbps_{init,end}, to initialize/destroy some stuff in the library.
- Introduce xbps_dbg_printf to printf stuff for debugging purposes.
- xbps-{bin,repo}:  added -d arg to enable debugging output.
- Before checking if a config file needs to be installed or such, check that
  package contains the "conf_files" array.
- Remove obsolete dirs as well while updating packages.
- If transaction dictionary is ready remove the "missing_deps" array.

Bump XBPS_RELVER to 20101118.

--HG--
rename : lib/regpkgs_dictionary.c => lib/regpkgdb_dictionary.c
2010-11-19 13:40:13 +01:00
Juan RP
ffc255b715 Starting to clean up the public API, move private stuff into xbps_api_impl.h. 2010-11-13 03:18:58 +01:00
Juan RP
3b931475c0 Make xbps_read_dict_from_archive_entry() private to libxbps, as it's only used internally. 2010-11-10 15:08:21 +01:00
Juan RP
420225d414 xbps-dgraph: new utility to generate dot(1) graphs for package metadata properties. 2010-11-08 23:27:15 +01:00
Juan RP
175b1abf8f xbps_purge_all_pkgs: no need to check for pkg state because xbps_purge_pkg() does it too. 2010-11-08 12:20:44 +01:00
Juan RP
0584c01088 Better describe xbps_find_pkg_from_plist(). 2010-11-08 11:49:29 +01:00
Juan RP
c3afb4f4fb New function: xbps_get_pkg_dict_from_metadata_plist.
This function returns and internalized dictionary from a package's metadata
plist file as specified by its arguments.

Update all code to use it where appropiate.
2010-11-08 03:14:41 +01:00
Juan RP
25ebcd53f8 xbps_api.h: update comments for @private funcs. 2010-11-08 02:12:03 +01:00
Juan RP
679833156a Always release the object dictionary returned by xbps_find_pkg_dict_installed().
Document this in the public API header and update all code accordingly.
2010-11-08 02:02:35 +01:00
Juan RP
ab10cc3b15 xbps_find_pkg_dict_installed: dictionary MUST be copied before calling
xbps_regpkgs_dictionary_release(), otherwise it will be NULL.

Found by executing this function without initializing regpkgdb.
2010-11-08 01:37:53 +01:00
Juan RP
756a5ec654 xbps_api.h: improve description for some defs. 2010-11-08 00:50:19 +01:00
Juan RP
c97c2c3f2f Update the dot(1) graph for the libxbps transaction dictionary. 2010-11-06 10:28:09 +01:00
Juan RP
ec7cdde1e0 Misc cleanups and performance improvements.
- There's no need to check rval for prop_dictionary_get_*, we are sure the
  objects are there at prop_dictionary_set_* time.
- Avoid two chdir(2) calls per INSTALL/REMOVE run.
- Avoid using access(2) to check for existence of INSTALL/REMOVE scripts,
  just try to run the executable directly and check for ENOENT.
2010-11-06 06:44:00 +01:00
Juan RP
f8629652da Make xbps_file_*_exec() always chroot if uid==0 and /bin/sh (+x, relative) exists. 2010-11-06 06:40:19 +01:00
Juan RP
74500381ff lib/Makefile: remove dup values. 2010-11-04 03:48:23 +01:00
Juan RP
99d38bf176 Rename some files in the library to better describe what they do.
--HG--
rename : lib/config_files.c => lib/package_config_files.c
rename : lib/configure.c => lib/package_configure.c
rename : lib/orphans.c => lib/package_orphans.c
rename : lib/purge.c => lib/package_purge.c
rename : lib/register.c => lib/package_register.c
rename : lib/remove.c => lib/package_remove.c
rename : lib/remove_obsoletes.c => lib/package_remove_obsoletes.c
rename : lib/requiredby.c => lib/package_requiredby.c
rename : lib/state.c => lib/package_state.c
rename : lib/unpack.c => lib/package_unpack.c
2010-11-03 20:08:33 +01:00
Juan RP
8ef8d86c12 Some changes for the XBPS libfetch's frontend code.
1) Raise the cache connection settings to more sane defaults (8->6, 16->2).
2) Introduce xbps_fetch_unset_cache_connection() to drop the caches.
2010-11-03 12:23:57 +01:00
Juan RP
9c60862e0f Pass LDFLAGS after the objects when creating the sharedlib, otherwise
-Wl,--as-needed will think that zlib is not needed.
2010-11-02 07:40:14 +01:00
Juan RP
8d998948ef xbps-bin.8: fixed two formatting errors. 2010-10-31 01:59:48 +02:00
Juan RP
e2e5e0478f Added tag 0.6.2 for changeset fe0d022c4236 2010-10-31 00:50:32 +02:00
Juan RP
1f9c57183d Changelog: update. 2010-10-31 00:50:16 +02:00
Juan RP
0672cb1dec NEWS: XBPS 0.6.2 will be released in a few minutes. 2010-10-31 00:49:56 +02:00
Juan RP
8051232e82 libxbps: xbps_repository_unregister(): in remote repositories, also
remove the pkg index file and its directory.
2010-10-29 09:10:41 +02:00
Juan RP
49a356df81 xbps_get_pkg_index_plist: fix a memleak. 2010-10-29 08:21:56 +02:00
Juan RP
a0e8fac8cb Add a Changelog file with all repo changes. 2010-10-27 16:37:25 +02:00
Juan RP
210f2799fc xbps-bin(8): modify the 'list' target to accept an optional argument to
list packages in the specified state, so that you can list packages that
 need to be purged, configured and broken (will be used in the future).
2010-10-27 13:10:03 +02:00
Juan RP
ef7da88db1 xbps-bin(8): added a new target "find-files".
This new target 'find-files' can be used to find which installed
package(s) own a file. Exact matches like "/bin/mount" or patterns
like "/usr/lib/libb[ao]b\*" can be specified.
2010-10-27 00:25:02 +02:00
Juan RP
992583311b configure: don't use -fPIE and --param ssp-buffer-size if CC != gcc. 2010-10-27 00:19:02 +02:00
Juan RP
c49bd80e20 fetch/ftp.c: fix a cast that caught clang via -Wcast-qual. 2010-10-27 00:17:08 +02:00
Juan RP
418ee6eec4 Remove empty dirs while removing obsolete files. 2010-10-27 00:15:59 +02:00
Juan RP
18e247486d Added tag 0.6.1 for changeset 9133c604fd81 2010-10-23 18:13:01 +02:00
Juan RP
d64815403e Increment XBPS_RELVER for 0.6.1. 2010-10-23 18:12:54 +02:00
Juan RP
9592fb012b Added tag 0.6.1 for changeset 6a4587e4f95f 2010-10-23 18:10:35 +02:00
Juan RP
8534b79ffc Prepare for going-to-be-released 0.6.1.
Includes the following change:

* When replacing a package that is going to be updated in the transaction
   do not remove it, just overwrite its files and continue. The updated
   package will find that old files didn't match the SHA256 hash and will
   skip them. This solves the issue of new package updates requiring new
   dependencies with files that were previously stored in the old version.
   For example gtk+-2.20 containing gdk-pixbuf, and gtk+-2.22 requiring
   gdk-pixbuf externally.
2010-10-23 18:09:35 +02:00
Juan RP
05c841ee9e Makefile: added dist target to create distribution source tarball. 2010-10-23 18:08:33 +02:00
Juan RP
f1c24cebfa Added tag 0.6.1 for changeset e51c0a0d740b 2010-10-23 17:58:16 +02:00
Juan RP
6cc080e029 Added tag 0.6.0 for changeset bfbbdcaef85a 2010-06-03 09:53:09 +02:00
Juan RP
d92f259921 NEWS: fix date for 0.6.0. 2010-06-03 09:53:03 +02:00
Juan RP
4b8f85382e Bump XBPS_RELVER for changes that will go to 0.6.0. 2010-06-02 23:50:44 +02:00
Juan RP
cb800e4996 Mention libfetch-2.31 sync. 2010-06-02 23:48:09 +02:00
Juan RP
bd37736d89 Import and merge libfetch-2.31 from NetBSD pkgsrc. 2010-06-02 23:44:25 +02:00
Juan RP
0c67681ce1 Update .hgignore for recent changes. 2010-05-20 15:20:29 +02:00
Juan RP
1bcf9de67a xbps_[gs]et_cachedir(): ensure we don't copy more than buffer's size including NUL. 2010-05-20 15:10:36 +02:00
Juan RP
8e764dca60 xbps-repo: put back sanitize_url() and improve the implementation. 2010-05-20 14:45:12 +02:00
Juan RP
3038fbed2d lib/repository_finddeps.c: change var names to be more descriptive, add
some more verbose messages.
2010-05-20 07:21:24 +02:00
Juan RP
eb645d2974 xbps_api.h: do not rely on sys/cdefs.h, fix up some comments. 2010-05-20 04:49:53 +02:00
Juan RP
8f20f4c0c6 libxbps: use OpenSSL SHA256, 5x faster xbps_get_file_hash() implementation.
* libxbps: improved xbps_get_file_hash() to mmap(2) rather than read(2)
  the file we have to process. With mmap'ed files the hash can be
  processed 5x faster than before, or even more in some cases.

* libxbps: switch to OpenSSL SHA256 implementation and remove the one
  previously used. It's faster and OpenSSL is required for libfetch so
  there is not point in using it.
2010-05-20 02:43:56 +02:00
Juan RP
e13bf5de02 3RDPARTY: sync with reality. 2010-05-19 23:29:50 +02:00
Juan RP
f888b582f9 Added a configure script to emulate GNU autoconf and related changes.
Changes included in this set:

 * Added strlcat() and strlcpy() from OpenBSD, always use them if the
   system does not have them built in.
 * Changed an array of PATH_MAX size allocated in the stack, to a dynamically
   allocated buffer from heap. This should reduce memory usage a bit.
 * Simplify code that implemented a homegrown realpath(3) implementation,
   simply use realpath(3).
 * If compiler supports -fstack-protector, build all code with
   -D_FORTIFY_SOURCE=2 and --param ssp-buffer-size=1 so that all
   buffers are protected.
2010-05-19 22:38:27 +02:00