2008-10-13 07:32:05 +02:00
|
|
|
|
xbps - xtraeme's build package system.
|
2008-09-29 19:25:56 +02:00
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
It is a simple build package system that uses Xstow to allow packages
|
2008-09-29 19:25:56 +02:00
|
|
|
|
to be available at a master directory.
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
2008-10-20 16:34:27 +02:00
|
|
|
|
xbps uses proplib, a property container object library and it's almost the
|
|
|
|
|
same one available for NetBSD. Be sure to have it installed before using
|
|
|
|
|
xbps. You can get it at:
|
|
|
|
|
|
|
|
|
|
http://code.google.com/p/portableproplib/
|
|
|
|
|
|
2008-09-29 20:05:13 +02:00
|
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
HOW TO USE IT
|
|
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
2008-10-20 16:34:27 +02:00
|
|
|
|
Before using xbps, some required utilities need to be built and installed into
|
|
|
|
|
the utils/ directory. You can do this by issuing a "make" command in the
|
|
|
|
|
top level directory.
|
|
|
|
|
|
2008-09-29 20:05:13 +02:00
|
|
|
|
Once you download it, you should edit the configuration file located at the
|
2008-10-13 07:32:05 +02:00
|
|
|
|
xbps directory. By default it uses the xbps directory in your $HOME.
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
If XBPS_CONFIG_FILE is not set or specified from the command line with the
|
2008-10-03 18:53:58 +02:00
|
|
|
|
-c flag, it will first try to use the default location at
|
2008-10-13 07:32:05 +02:00
|
|
|
|
/usr/local/etc/xbps.conf, and as last resort in current directory.
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
Once that you read the "xbps.conf" file and configured it, you can start
|
2008-09-29 20:05:13 +02:00
|
|
|
|
installing packages by using the command:
|
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
$ xbps.sh install glib
|
2008-09-30 01:59:51 +02:00
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
While installing your first package, if xbps couldn't find the Xstow program
|
|
|
|
|
specified at the configuration file with XBPS_XSTOW_CMD, the Xstow package
|
2008-09-29 20:05:13 +02:00
|
|
|
|
will be installed and "stowned".
|
|
|
|
|
|
|
|
|
|
If the package is properly installed, it will be "stowned" automatically.
|
|
|
|
|
``stowned<65><64> means that this package is available in the master directory,
|
2008-10-23 17:14:00 +02:00
|
|
|
|
on which xpbs has copied all files from DESTDIR/<pkgname>.
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
|
|
|
|
To remove a currently installed (and stowned) package, you can use:
|
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
$ xbps.sh remove glib
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
|
|
|
|
Please note that when you remove it, the package will also be removed
|
2008-10-13 07:32:05 +02:00
|
|
|
|
from XBPS_DESTDIR and previously "unstowned".
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
Summary, to stow an already installed package (into XBPS_DESTDIR/<pkgname>):
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
$ xbps.sh stow glib
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
|
|
|
|
and to unstow an already installed (stowned) package:
|
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
$ xbps.sh unstow glib
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
|
|
|
|
You can also print some stuff about any template, e.g:
|
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
$ xbps.sh info glib
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
2008-09-30 00:45:25 +02:00
|
|
|
|
To list installed (stowned) packages, use this:
|
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
$ xbps.sh list
|
2008-09-30 00:45:25 +02:00
|
|
|
|
|
2008-10-12 20:05:52 +02:00
|
|
|
|
To only extract the distfiles, without configuring/building/installing:
|
2008-10-02 03:52:21 +02:00
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
$ xbps.sh extract foo
|
2008-10-02 03:52:21 +02:00
|
|
|
|
|
|
|
|
|
To not remove the build directory after successful installation:
|
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
$ xbps.sh -C install blah
|
2008-10-02 03:52:21 +02:00
|
|
|
|
|
|
|
|
|
To only fetch the distfile:
|
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
$ xbps.sh fetch blah
|
2008-10-02 03:52:21 +02:00
|
|
|
|
|
|
|
|
|
To only install the package, _without_ stowning it into the master directory:
|
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
$ xbps.sh install-destdir blob
|
2008-10-02 03:52:21 +02:00
|
|
|
|
|
2008-10-13 06:19:35 +02:00
|
|
|
|
To list files installed by a package, note that package must be installed
|
|
|
|
|
into destination directory first and you must specify package name plus
|
|
|
|
|
version, i.e: vim-7.2:
|
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
$ xbps.sh listfiles blob-2.4
|
2008-10-13 06:19:35 +02:00
|
|
|
|
|
2008-09-30 00:45:25 +02:00
|
|
|
|
That's all for now folks. I hope you find it useful, as I do.
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------
|
2008-09-30 04:02:44 +02:00
|
|
|
|
PERFORMANCE
|
|
|
|
|
------------------------------------------------------------------------------
|
|
|
|
|
|
2008-10-13 07:32:05 +02:00
|
|
|
|
xbps is really fast, trust me. That was one of my reasons to make my own
|
2008-09-30 04:02:44 +02:00
|
|
|
|
pkgsrc/ports alike system.
|
|
|
|
|
|
2008-10-04 15:09:11 +02:00
|
|
|
|
If you want benchmarks, here is one: building libX11 and all its dependencies
|
2008-10-13 07:32:05 +02:00
|
|
|
|
required (not included building xstow) with xbps:
|
2008-09-30 04:02:44 +02:00
|
|
|
|
|
2008-10-04 15:09:11 +02:00
|
|
|
|
251.20s real 121.36s user 53.94s system
|
2008-09-29 20:05:13 +02:00
|
|
|
|
|
2008-10-04 15:09:11 +02:00
|
|
|
|
versus pkgsrc (make install clean clean-depends and digest previously
|
|
|
|
|
installed):
|
2008-09-30 04:02:44 +02:00
|
|
|
|
|
2008-10-04 15:09:11 +02:00
|
|
|
|
450.41s real 167.58s user 97.31s system
|
2008-09-30 04:02:44 +02:00
|
|
|
|
|
2008-10-04 15:09:11 +02:00
|
|
|
|
That's more or less 40% faster! that's the price you pay for having those
|
|
|
|
|
wrappers in pkgsrc that aren't very useful on NetBSD :-)
|
2008-09-30 04:02:44 +02:00
|
|
|
|
|
|
|
|
|
------------------------------------------------------------------------------
|
2008-09-29 20:05:13 +02:00
|
|
|
|
Juan Romero Pardines <xtraeme@gmail.com>
|