Commit graph

70 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
aee08a7f8f Make the code build with another bunch of warning flags.
--HG--
extra : convert_revision : 1c5b66b58e4c66ff61e9cef2cb3760ac675c1626
2009-03-13 00:21:55 +01:00
Juan RP
b14fea2e58 Split funcs to build binpkgs into its own file.
--HG--
extra : convert_revision : a4fd0f4506bd257308936e0d0c0187fa62a840ed
2009-03-12 23:44:18 +01:00
Juan RP
53747489f0 Implemented support for running triggers with binpkgs.
Also the following changes were made:
 * Added an info-files trigger, to (un)register info files.
 * xbps-base-dirs: it's responsible to install triggers on destdir.

--HG--
extra : convert_revision : 8d707053616f38d2b5beef7cf28e1bc4a66812b8
2009-03-12 11:16:08 +01:00
Juan RP
05f918ea93 xbps-repo: in the show target also print the binpkg file size.
Now it looks like:

...
Filename: kernel-2.6.28.1.i686.xbps (size: 16M)
SHA256: 6b2d79ed89697263020979addde7fa2f535d53df0c1b011ea74ec7757cfba2f0
...

--HG--
extra : convert_revision : 3e18cbc35b8a85fffefe71dd64815ba23c06b528
2009-03-02 03:06:35 +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
f1f34487e2 xbps-bin: added -f flag for remove target.
Now if any package is going to be removed and it's required by
other packages, it won't let you remove it unless -f is set.

Here's an example of how it looks like:

[juan@fedora-vm xbps]$ xbps-bin -r ~/testing-xbps remove glibc
WARNING! glibc is required by the following packages:

	zlib-1.2.3 ncurses-libs-5.7 gcc-libstdc++-4.3.2 e2fsprogs-libs-1.41.4
	cracklib-2.8.13 expat-2.0.1 ncurses-5.7 cpio-2.9
	module-init-tools-3.6 busybox-initramfs-1.13.2 udev-138 procps-3.2.7
	pam-1.0.2 dbus-libs-1.2.12 lzma-utils-libs-4.32.7 coreutils-7.1
	sed-4.1.5 grep-2.5.4 gawk-3.1.6 gzip-1.3.12
	bzip2-1.0.5 bash-4.0 less-424 gdbm-1.8.3
	groff-1.20.1 lzma-utils-4.32.7 dbus-1.2.12 proplib-0.3
	dash-0.5.4 findutils-4.4.0 util-linux-ng-2.14.2 initramfs-tools-0.92o
	file-5.00 diffutils-2.8.1 wget-1.11.4 man-db-2.5.3
	sysklogd-1.5 eject-2.1.5 shadow-4.1.2.2 sudo-1.7.0
	e2fsprogs-1.41.4 tzdata-2009a vim-7.2 upstart-0.5.1
	kernel-2.6.28.1 xbps-base-pkg-0.1 kbd-1.14.1

If you are sure about this, use -f to force deletion for this package.
[juan@fedora-vm xbps]$

--HG--
extra : convert_revision : eeb92925e51f11d5b3bf7e069ed4986ae5fb0c2d
2009-03-01 01:34:15 +01:00
Juan RP
62e1344b53 xbps-bin::main.c: avoid an extra level of indentation.
--HG--
extra : convert_revision : 6c05ab660edbaef484d0a8852918c021a253dc9f
2009-03-01 00:19:45 +01:00
Juan RP
be170f0cb7 Fix some problems with dangling links while removing a binpkg.
First remove all links, next files and last dirs.
Only check the SHA256 hash for files, skip links and dirs.

--HG--
extra : convert_revision : b1762d5e795959591c732f625d25adfd1840f592
2009-02-28 17:32:38 +01:00
Juan RP
4edad150c0 xbps-bin: make -C flag work when -r not set.
--HG--
extra : convert_revision : f4248255d94e9562483ef76630707eaefc3a9591
2009-02-27 18:30:59 +01:00
Juan RP
48a5933756 xbps-bin: added -C flag for 'files' target, to check SHA256 hash in files.
--HG--
extra : convert_revision : 28fffd3047de8d8a4b9401618017a880cbf03008
2009-02-27 17:00:41 +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
eb2e824a33 xbps-bin: while installing binpkgs, detect properly in some cases its return value.
--HG--
extra : convert_revision : 89cb21eed183c1d9702613690fb7f48f8cceb5e2
2009-02-22 06:00:08 +01:00
Juan RP
b225a1dc30 Added support to build subpackages from a single source.
proplib has been converted to see how it works.

--HG--
extra : convert_revision : dfcd1f547884108d69682e9e62b4aacfa431cc83
2009-02-20 04:10:55 +01:00
Juan RP
cbb1d1bef5 xbps-repo: fix search and show targets when first repo doesn't exist.
--HG--
extra : convert_revision : 2e5410f4461c62ceb51bb1296cab8a9076bc666a
2009-02-18 03:50:05 +01:00
Juan RP
2c7f9d1330 xbps-bin: fix typo in previous.
--HG--
extra : convert_revision : 3010d732f67e42a368722f6aa81b5263e0b1fdf9
2009-02-18 01:10:07 +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
028cacdd2a Add support to set automatic install flag for srcpkgs.
--HG--
extra : convert_revision : fa0e103ce44a4758858124ecd63aea0dec400720
2009-02-18 00:28:35 +01:00
Juan RP
a2e9f7de29 xbps-pkgdb: check for empty strings passed to getpkg{name,version}.
--HG--
extra : convert_revision : adc73449ed57cd4628fbba91c91372d05db4e594
2009-02-17 23:29:13 +01:00
Juan RP
3d308188b7 xbps-pkgdb: add 'getpkgname' and 'getpkgversion' actions.
--HG--
extra : convert_revision : e931f3527b501d6153348b503b3213064e55c286
2009-02-17 13:57:51 +01:00
Juan RP
fda3da1543 Use string version comparator code from FreeBSD.
This fixes all cases that previous code has with no changes...
sorry pancake.

--HG--
extra : convert_revision : 993d0aa060daf36d1b5ffa63725002dda122c091
2009-02-17 03:49:02 +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
82a9667049 xbps-bin: return a proper error when dict == NULL && rv != ENOENT.
--HG--
extra : convert_revision : f51b4fcda1497cd9aa640cb3db48080806fe497a
2009-02-16 22:19:10 +01:00
Juan RP
e59520869b Use a common mk file for all bins, install bins stripped.
--HG--
extra : convert_revision : dd739bbc9c67b099ef690533e02bb3f40aa2dc8a
2009-02-16 18:03: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
3084354cec Fix previous.
--HG--
extra : convert_revision : a8073bfa4782f6c6a3e2afe760b184598f268807
2009-02-14 03:57:29 +01:00
Juan RP
b55346ae64 Show an informative error if binpkg cannot be found in repos.
--HG--
extra : convert_revision : 0c1e639cb598b19d258c1e1413dd1cb5930c4c61
2009-02-14 03:25:55 +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
d420d00081 xbps_unregister_repository: return ENOENT if not found, not ENODEV.
--HG--
extra : convert_revision : c1be34bc1840ac351e8e2d301e2c71d247f0ea9c
2009-02-13 00:18:28 +01:00
Juan RP
c9d4ea5527 xbps-pkgdb: use EXIT_FAILURE.
--HG--
extra : convert_revision : 0a41128bdf379ca2dfdf1be7053a42e85fddc81a
2009-02-12 18:59:43 +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
126928ca8d Merge branch 'master' of ssh://xtraeme@repo.or.cz/srv/git/xbps
Conflicts:
	lib/depends.c

--HG--
extra : convert_revision : 568341c7637aa537838880da03bd4dda819902ea
2009-02-09 16:09:39 +01:00
Juan RP
2ff54fadeb xbps-src: ignore pkgs with unexistent destdir in 'build-pkg all'.
--HG--
extra : convert_revision : 7fe1a6d09fb90bed64b93f7b589641a34036511a
2009-02-09 03:52:08 +01:00
Juan RP
4a4f70b005 xbps-src: add -u flag, if used with fetch update $checksum in tmpl file.
--HG--
extra : convert_revision : a11fe9147498fb4a60ecb2633493d2d4789c288d
2009-02-09 01:01:14 +01:00
Juan RP
bb6355fe12 Allow installing/removing binpkgs as non-root.
--HG--
extra : convert_revision : 3781ef0a422530623cf64f45f87948e00d7e50e8
2009-02-07 18:05:40 +01:00
Juan RP
7e48132dde Fix some stuff committed in previous.
--HG--
extra : convert_revision : a0daf5c9d6bf623d3a35c5e2195cc7adaa3ed753
2009-02-07 13:30:02 +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
dfb7e2a687 xbps-repo: there's no need to prefix local funcs with xbps_ anymore.
--HG--
extra : convert_revision : d8a2402697ca5709c5ca4e94d94ab4df6b97c818
2009-02-05 15:31:54 +01:00
Juan RP
c86be9931b Install by default xbps.conf into $(PREFIX)/etc and use it.
--HG--
extra : convert_revision : d6550a3d9e6093cb1ec789715e2b1107b9bb59bd
2009-02-05 15:21:33 +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
fe8ea8c21c Check that pkg is installed before removing.
--HG--
extra : convert_revision : 4ea85e367ecbc0d39dcba1c8ee63392f0e1177f7
2009-02-03 16:51:42 +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
bc9bf83f0a xbps-src: update PATH with default PREFIX set by make.
--HG--
extra : convert_revision : 235ae5d28d075ffda87734224a4edf724799e2f1
2009-01-14 16:50:30 +01:00
Juan RP
68d2bbe8fb xbps-bin: add missing newline.
--HG--
extra : convert_revision : e75a20206dc19000360df659814b9c2d6f7769d1
2008-12-29 16:02:35 +01:00
Juan RP
15e15465c8 bin: use EXIT_SUCCESS and EXIT_FAILURE.
--HG--
extra : convert_revision : 730a4f09ae67423e4a34b1c7e9d020998cc2288c
2008-12-29 15:56:40 +01:00
Juan RP
e5774555cf xbps-bin: simplify sanitize_localpath().
--HG--
extra : convert_revision : 223334822b80c6b11e63f1a34e7bfadb9115d5b9
2008-12-27 22:56:47 +01:00