Commit graph

39 commits

Author SHA1 Message Date
Juan RP
a67374bd66 Simplify all code that used rootdir and flags passed via xbps-bin.
Add util funcs to get/set global values for them:
 * xbps_[gs]et_rootdir()
 * xbps_[gs]et_flags()

--HG--
extra : convert_revision : 2584b098e68a684e7b0eeac57c2b1df4aba6589d
2009-03-17 00:32:26 +01:00
Juan RP
37e4be86f9 Added support to check the SHA256 hash for any binpkg before installation happens.
--HG--
extra : convert_revision : 4f812eb0cfb614461527e360db1692bd5f9c34aa
2009-03-02 23:38:24 +01:00
Juan RP
0d8f08e8ea Added support to list and remove orphaned packages.
A new target has been added to xbps-bin: autoremove. It works in
the same way than 'apt-get', but there's no stdin input. By default
it will list you all orphaned packages, and -f flag must be set
to really remove them.

The following is a real example for the git package, which requires
directly perl and curl-libs, and indirectly libidn and openssl.

$ xbps-bin -r ~/testing-xbps remove git
Removing package git-1.6.1.3 ... done.
$

$ xbps-bin -r ~/testing-xbps autoremove
The following packages were installed automatically
(as dependencies) and aren't needed anymore:

	perl-5.10.0 curl-libs-7.19.0 libidn-1.10 openssl-0.9.8j

If you are really sure you don't need them, use -f to confirm.
$

--HG--
extra : convert_revision : 70eebaa3d99be27753b94f580c8ec86330c7c2d3
2009-03-02 02:26:20 +01:00
Juan RP
d9cc1d6b8f Implement support to update required_by objs when removing a pkg.
--HG--
extra : convert_revision : 405986d806ff23ce6348b22a2d7c48e0820ab1b9
2009-02-27 16:03:25 +01:00
Juan RP
255c48b198 Added support to check SHA256 integrity for binary pkgs.
This currently checks:
 - While removing, any file is checked and if hash doesn't match the
   file is ignored and not removed.
 - While installing, if a binary pkg file doesn't match with the one
   reported by the repository's pkg index file, the process will be
   stopped.

--HG--
extra : convert_revision : 42bb64e89a092f0ff3e7d951e5b26e45d63a60fe
2009-02-26 05:41:49 +01:00
Juan RP
8d243e8dab xbps-bin: implement 'files' target, to show installed files for a pkg.
--HG--
extra : convert_revision : c522253a61c23e8439c6de343e713497a2a10033
2009-02-26 02:46:20 +01:00
Juan RP
3b18195a6a Change code to compile with -Wall -Wextra.
--HG--
extra : convert_revision : 992e1515458c6ee36cd481d1ba0ff8febf892d12
2009-02-18 01:07:51 +01:00
Juan RP
fb998feacf xbps-bin: add -v flag, used when installing/removing currently.
--HG--
extra : convert_revision : d543b52213bf3d35b17ef29ff74a879bc4342cef
2009-02-17 00:08:03 +01:00
Juan RP
2b24128059 xbps-bin: added support for the show target.
--HG--
extra : convert_revision : 24b2d30a94c95b22b1c524203cf578da03314335
2009-02-16 16:24:33 +01:00
Juan RP
6b6162bb44 Added support for using noarch packages.
--HG--
extra : convert_revision : a96166ddecb6efe65d35283f25e06a944cc4a038
2009-02-16 00:39:41 +01:00
Juan RP
746d59a9dd Some improvements for installation of binary packages.
* If any dep of a package cannot be found in the repository pool,
  show it on xbps-bin.

* Add the automatic-install boolean obj into pkg's dictionary
  on regpkgdb.plist, this will be used to implemented something
  like "apt-get autoremove".

--HG--
extra : convert_revision : 666e2fa666ac94140159896e28b445e88e8afb7a
2009-02-15 20:23:23 +01:00
Juan RP
902fb71aa6 Changed XBPS_META_PATH to /var/db/xbps rather than /var/cache/xbps.
--HG--
extra : convert_revision : 4e10af13ce05f060ebdfa8ca4e767a269c46b17f
2009-02-14 23:21:12 +01:00
Juan RP
83ed100fcf Use xbps_callback_array_iter_in_repolist() and removed dup code.
--HG--
extra : convert_revision : 7eb9c1b3df3fc7fde2ff61ac0cce1d635c3fef18
2009-02-14 02:26:11 +01:00
Juan RP
3c7b8186e6 Fix binpkg installation with multiple repositories.
New changes include a modified algorithm of the previous one, which
finally does not fail even with multiple repos, YAY!

Fixed some leaks as well, thanks to valgrind.

--HG--
extra : convert_revision : 3cffe1e9e9e9f7abf225ca3c6643377fc12a94bd
2009-02-14 01:37:12 +01:00
Juan RP
28cfeea6d1 New dependency sorting algorithm made in 2 days.
This algorithm works for all packages currently usable on xbps.
Previous code didn't take into account the correct order between
indirect and direct deps.

--HG--
extra : convert_revision : c49a20ce300e6e9dfa565325b40745b5a78b78ed
2009-02-12 17:30:38 +01:00
Juan RP
939a63036e Added support to keep track of reverse depends on installed packages.
--HG--
extra : convert_revision : 9e3e46f726ef28843dc52b95ce818637c2a18de5
2009-02-10 02:52:12 +01:00
Juan RP
1eb9ea591a Fix binpkg dependency installation with new code.
--HG--
extra : convert_revision : fc6c3fd108caf4cedec0edd3b813edbdfb6bd8be
2009-02-09 16:39:55 +01:00
Juan RP
61f0b09698 New dependency/install/unpack WIP code.
This implementation will be faster and resolv the dependency chain
correctly taking into account indirect/direct deps and priority.

--HG--
extra : convert_revision : cc4ec186f06f944fa8825b176344c4d612658f85
2009-02-07 13:27:24 +01:00
Juan RP
0f44fd7f72 Some more cleanups for previous.
--HG--
extra : convert_revision : 4750989fdc6494eb2593a3782035289200fbea15
2009-02-05 16:57:20 +01:00
Juan RP
3a52668aed Reorganize headers and move two funcs into util.c, where they belong.
--HG--
extra : convert_revision : 63d54dddfeb732da2204244fd9f00cff434e5540
2009-02-05 16:53:49 +01:00
Juan RP
7740958643 Split repo commands into the new xbps-repo bin.
- Remove lib/info.c that doesn't belong in the lib and add it into the
  bins.
- Every binary now uses its own directory on bin/.

This is in preparation for future changes for correct behaviour of
the library and binaries.

--HG--
extra : convert_revision : 880d16378bf940c4f5478de0362afe883cd5fd2c
2009-02-05 14:46:09 +01:00
Juan RP
4a9125364a xbps-bin: added WIP remove target.
--HG--
extra : convert_revision : 71314f7183384094223cf10bf16ff704ca084883
2009-02-03 03:18:00 +01:00
Juan RP
f0f479a3c1 Pass more arguments to the prepost-action command.
--HG--
extra : convert_revision : f39f2926d0b3d9155e409a6193662c55c263167c
2008-12-29 15:57:37 +01:00
Juan RP
4148b5e4b6 Added support for pre/post installation script with binary packages.
For now all is handled in a script "prepost-action.sh" in package's
metadata directory, with a target in the shell script.

--HG--
extra : convert_revision : 93ed92d9fbb12939c751354cff464cc097379520
2008-12-28 08:44:01 +01:00
Juan RP
db1227ab76 libxbps: add fexec.c from NetBSD's pkg_install, with some minor mods.
--HG--
extra : convert_revision : 42a4231615746fdc21c826d7f5c1ccbe5ea7a6e2
2008-12-28 04:34:27 +01:00
Juan RP
926b1dfa4a Improve binpkg priorities, dynamically allocate mem, etc.
--HG--
extra : convert_revision : 479011aba6e9da4e5662137381e04042e762d428
2008-12-27 22:19:04 +01:00
Juan RP
b2abe59c52 Added support to specify a root directory for xbps.
All xbps metadata files will go into <rootdir>/var/cache/xbps
and package data will go into <rootdir>/<data>.

--HG--
extra : convert_revision : 37007ac4f9b99b31465612a58749713b3164139b
2008-12-27 12:56:51 +01:00
Juan RP
d309f54ff1 Register binary package if unpacking was successful.
--HG--
extra : convert_revision : ac984d640acb340e3a8db2ac07e41d15b1eea89e
2008-12-26 10:13:03 +01:00
Juan RP
91f7df59cd Support for installing pkgs from multiple repositories.
--HG--
extra : convert_revision : fc8a430e71d202aa9e7560b921669f62f1947ae1
2008-12-26 04:36:51 +01:00
Juan RP
9a0c175c18 Use the repo list to find binary packages.
--HG--
extra : convert_revision : c35e25604d0e417115cd1c30d77d23fee3c39f92
2008-12-24 12:34:04 +01:00
Juan RP
4101025318 Working dependency handling for binary packages.
--HG--
extra : convert_revision : d0ff56b524efba53b11b7635972b03feaaeb889a
2008-12-24 10:58:19 +01:00
Juan RP
fa3b59b246 Another checkpoint for installing binary packages.
At least now dependencies are tracked, not sure it will be
enough for real life :-)

--HG--
extra : convert_revision : 962de22d515efa5599c148f918c14d32b5d9496d
2008-12-24 07:20:19 +01:00
Juan RP
0c0e796fc5 Fix some leaks detected by valgrind.
--HG--
extra : convert_revision : 15f7c0f673c4f46e36de82f5e55c7bcd370093e9
2008-12-23 13:05:01 +01:00
Juan RP
26c054d773 Checkpoint for installation of binary packages.
--HG--
extra : convert_revision : 0bc55ebae04b2e1e5ab20feca786b649fc2e0335
2008-12-23 12:28:21 +01:00
Juan RP
fa793a5044 Prefix humanize_number() with xbps_.
This will avoid clashes if xbps ever works on NetBSD.

--HG--
extra : convert_revision : 064b690988ba5cd75de55eacd9f37996a952da17
2008-12-22 07:51:14 +01:00
Juan RP
a928bf02e2 Add queue.h from NetBSD rev 1.50, verbatim.
This will be used shortly to handle dependencies with xbps-bin.

--HG--
extra : convert_revision : a4e58303b7cc6a2a99c8874d0154fea4bcccbd11
2008-12-22 07:42:34 +01:00
Juan RP
d10d9e824c xbps_show_pkg_info(): use humanize_number().
--HG--
extra : convert_revision : e1c903e76d6d5b6501c8893b6d14e23e5b395e58
2008-12-22 07:09:04 +01:00
Juan RP
3f7c353356 Fix some issues in repo handling.
--HG--
extra : convert_revision : 5ec7488c8967f50b7e2dce93276accd829c541b3
2008-12-22 05:00:15 +01:00
Juan RP
e7cf222ac9 Reorganize the tree splitting stuff on its own dir.
--HG--
extra : convert_revision : 87473fb499c42deaf0285f5559dc1cd8d67ab436
2008-12-21 23:57:02 +01:00