README: update to match new XBPS_USE_CAPABILITIES support.

--HG--
extra : convert_revision : 1952a4126324a435681cbcda44b777751d0c99af
This commit is contained in:
Juan RP 2010-04-26 14:54:44 +02:00
parent ce1f7f15a9
commit f34ac71c7f

84
README
View file

@ -65,19 +65,18 @@ illustrates the structure used by the _udev_ package in the filesystem:
Requirements Requirements
------------ ------------
The following software is required in the host system to build XBPS The following software is required in the host system to install xbps-src
binary packages from source: and its helpers:
- GCC, make, sed and libcap (depelopment package and setcap(8) command).
To build binary packages with xbps-src also the following software needs
to be installed into the host system:
- awk, bash, bison, gcc c++, gettext, path, texinfo, perl and fakeroot.
Additionally if you want to work as 'root':
- GNU awk
- GNU bash
- GNU bison
- GNU gcc c++ (development package)
- GNU gettext (development package)
- GNU make
- GNU patch
- GNU texinfo
- fakeroot
- perl
- sudo - sudo
Starting up Starting up
@ -127,15 +126,24 @@ $ cd xbps-templates/srcpkgs/xbps-base-chroot && xbps-src install
---------------------------------------------------------------- ----------------------------------------------------------------
This will build all required packages via fakeroot in masterdir, therefore you This will build all required packages via fakeroot in masterdir, therefore you
can run it as normal user. Next commands will require super-user privileges can run it as normal user. Once 'xbps-src-chroot' has been built and installed
and all package handling will be done within the chroot. I believe it's the into the 'masterdir' all packages will be built inside of the chroot.
most easier and faster way to handle clean dependencies; another reason would
be that xbps packages are meant to be used in a system and not just for 'xbps-src' supports building packages in the chroot with your normal user,
ordinary users. So once all packages are built, you can create and enter thanks to the *POSIX.1e Capabilities* support in the Linux kernel. To use this
to the chroot with: the target filesystem must support *extended attributes*, right now they
are supported on all most common filesytems, such as *ext2*, *ext3*, *ext4*,
*xfs*, etc. To enable this feature you have to uncomment the option
'XBPS_USE_CAPABILITIES' from *xbps-src.conf*. *Please note* that it's
commented out (disabled) by default.
I believe it's the most easier and faster way to handle clean dependencies;
another reason would be that xbps packages are meant to be used in a system and
not just for ordinary users. So once all packages are built, you can create and
enter to the chroot with:
---------------------- ----------------------
$ sudo xbps-src chroot $ xbps-src chroot
---------------------- ----------------------
Press Control + D to exit from the chroot. The following targets will require Press Control + D to exit from the chroot. The following targets will require
@ -149,19 +157,19 @@ installing packages you should use the install target, all source packages
are located in the `srcpkgs` directory, so to install glib: are located in the `srcpkgs` directory, so to install glib:
------------------------------------------ ------------------------------------------
~/srcpkgs/glib$ sudo xbps-src install $ cd srcpkgs/<pkgname> && xbps-src install
------------------------------------------ ------------------------------------------
If the package is properly installed, it will be "stowned" automatically. If the package is properly installed, it will be "stowned" automatically.
``stowned'' means that this package is available in the master directory, ``stowned'' means that this package is available in the master directory,
on which xpbs has copied all files from DESTDIR/<pkgname>. on which xpbs has symlinked all files from DESTDIR/<pkgname>.
+ +
+ +
To remove a currently installed (and stowned) package, you can use: To remove a currently installed (and stowned) package, you can use:
----------------------------------------- -----------------------------------------
~/srcpkgs/glib$ sudo xbps-src remove $ cd srcpkgs/<pkgname> && xbps-src remove
----------------------------------------- -----------------------------------------
Please note that when you remove it, the package will also be removed Please note that when you remove it, the package will also be removed
@ -172,20 +180,20 @@ from XBPS_DESTDIR and previously `unstowned`.
To stow an already installed package (from XBPS_DESTDIR/<pkgname>): To stow an already installed package (from XBPS_DESTDIR/<pkgname>):
--------------------------------------- ---------------------------------------
~/srcpkgs/glib$ sudo xbps-src stow $ cd srcpkgs/<pkgname> && xbps-src stow
--------------------------------------- ---------------------------------------
To unstow an already installed (stowned) package: To unstow an already installed (stowned) package:
----------------------------------------- -----------------------------------------
~/srcpkgs/glib$ sudo xbps-src unstow $ cd srcpkgs/<pkgname> && xbps-src unstow
----------------------------------------- -----------------------------------------
You can also print some stuff about any template build file, e.g: You can also print some stuff about any template build file, e.g:
---------------------------------- ---------------------------------------
~/srcpkgs/glib$ xbps-src info $ cd srcpkgs/<pkgname> && xbps-src info
---------------------------------- ---------------------------------------
To list installed (stowned) packages, use this: To list installed (stowned) packages, use this:
--------------- ---------------
@ -194,28 +202,28 @@ $ xbps-src list
To only extract the distfiles, without configuring/building/installing: To only extract the distfiles, without configuring/building/installing:
------------------------------------ ------------------------------------------
~/srcpkgs/glib$ xbps-src extract $ cd srcpkgs/<pkgname> && xbps-src extract
------------------------------------ ------------------------------------------
To not remove the build directory after successful installation: To not remove the build directory after successful installation:
--------------------------------------------- ---------------------------------------------
~/srcpkgs/glib$ sudo xbps-src -C install $ cd srcpkgs/<pkgname> && xbps-src -C install
--------------------------------------------- ---------------------------------------------
To only fetch the distfile: To only fetch the distfile:
----------------------------------- ----------------------------------------
~/srcpkgs/glib$ xbps-src fetch $ cd srcpkgs/<pkgname> && xbps-src fetch
----------------------------------- ----------------------------------------
To only install the package, _without_ stowning it into the master directory: To only install the package, _without_ stowning it into the master directory:
-------------------------------------------------- --------------------------------------------------
~/srcpkgs/glib$ sudo xbps-src install-destdir $ cd srcpkgs/<pkgname> && xbps-src install-destdir
-------------------------------------------------- --------------------------------------------------
To list files installed by a package, note that package must be installed To list files installed by a package, note that package must be installed
into destination directory first: into destination directory first:
---------------------------- ------------------------------
$ xbps-src listfiles pkgname $ xbps-src listfiles <pkgname>
---------------------------- ------------------------------