Some parts in the library related to findings pkgs in repositories
has been improved vastly by caching the dictionary once.
Duplicated code has been added in xbps-bin/install.c, but will
be fixed soon.
--HG--
extra : convert_revision : 2924012a8589a2a6ecaa3863b5091049006c0ef3
So you can do you now:
$ xbps-repo search '*'
and it will list all registered packages.
--HG--
extra : convert_revision : d65edb4be6a0d815410d215774acf9ebeb23fa49
Now it looks like this:
$ xbps-bin -r ~/blah install initscripts
Finding/sorting required binary packages...
Checking binary package file(s) integrity...
The following new packages will be installed:
xbps-base-files-0.8_1 gcc-libgcc-4.3.3 glibc-locales-2.9
ncurses-base-5.7 glibc-2.9 ncurses-libs-5.7 gawk-3.1.6 grep-2.5.4
coreutils-7.1 sed-4.1.5 ncurses-5.7 kbd-1.15 findutils-4.4.0_1
net-tools-1.60 rcorder-2009.01 minilogd-2009.01 dhcpcd-4.0.12
bash-4.0 procps-3.2.7 udev-140_2 initscripts-2009.03_2
Total download size: 16M
Total installed size: 48M
Do you want to continue? [y/N]
...
--HG--
extra : convert_revision : e32a136ee882160637c1930d998c0f5ae3a6b108
The library is only responsible now to find all binary packages
from repositories, sort them and create a dictionary with all
details. The frontend (xbps-bin) provides support for this,
and this allows for more flexibility and removes some stuff
that didn't belong in the library.
While here implemented support to show total download/installed
size for all packages that are going to be installed.
Next step will be to implement user interactivity before
installing/removing/updating packages.
--HG--
extra : convert_revision : 858e9a89bc6a60b348435f2416a8af3ebb6ea5c9
This version is 12x faster than current implementation in shell script.
To generate an index for 434 packages, current implementation took
5min and 56 seconds. New implementation only took 29 seconds!
New implementation also doesn't add duplicate packages, and updates
the package entry for new package versions.
--HG--
extra : convert_revision : 269d38ee18184b585877fd729bf95e07ce57dd50
Add util funcs to get/set global values for them:
* xbps_[gs]et_rootdir()
* xbps_[gs]et_flags()
--HG--
extra : convert_revision : 2584b098e68a684e7b0eeac57c2b1df4aba6589d
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
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
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
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