Removed outdated doc files.
--HG-- extra : convert_revision : xtraeme%40gmail.com-20091122054748-1gidbo33c2c3e2j2
This commit is contained in:
parent
3d24672e58
commit
625b3df820
106
doc/BINPKG_INFO
106
doc/BINPKG_INFO
@ -1,106 +0,0 @@
|
||||
------------------------------------------------------------------------------
|
||||
BRIEF INTRODUCTION
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
A binary package built with xbps is a normal tar(1) archive, compressed
|
||||
with any of the formats that libarchive supports, and it has the following
|
||||
structure:
|
||||
|
||||
Package metadata
|
||||
-----------------
|
||||
/INSTALL
|
||||
/REMOVE
|
||||
/files.plist
|
||||
/props.plist
|
||||
|
||||
Package data
|
||||
-----------------
|
||||
/usr
|
||||
/var
|
||||
/etc
|
||||
...
|
||||
|
||||
Metadata info is stored in the "/var/db/xbps/metadata/$pkgname"
|
||||
directory and two files will be always be present: files.plist
|
||||
and props.plist.
|
||||
|
||||
The files.plist file contains the list of files/links/dirs that package
|
||||
will install, as well as SHA256 hashes for files.
|
||||
|
||||
The props.plist file contains package metadata properties and has the
|
||||
following structure:
|
||||
|
||||
<dict>
|
||||
<key>pkgname</key>
|
||||
<string>foo</string>
|
||||
|
||||
<key>version</key>
|
||||
<string>3.40</string>
|
||||
|
||||
<key>maintainer</key>
|
||||
<string>The Master BOFH <bofh@baobab.org> </string>
|
||||
|
||||
<key>short_desc</key>
|
||||
<string>Foo is a virtual package</string>
|
||||
|
||||
<key>long_desc</key>
|
||||
<string>
|
||||
Foo is a virtual package to show how the metadata props.plist file works
|
||||
with xbps handling binary packages.</string>
|
||||
|
||||
<key>architecture</key>
|
||||
<string>x86_64</string>
|
||||
|
||||
<key>installed_size</key>
|
||||
<integer>500000</integer>
|
||||
|
||||
<key>configuration_files</key>
|
||||
<array>
|
||||
<string>/etc/foo.conf</string>
|
||||
...
|
||||
</array>
|
||||
<key>run_depends</key>
|
||||
<array>
|
||||
<string>bofh-2.0</string>
|
||||
<string>blab-1.1</string>
|
||||
...
|
||||
</array>
|
||||
...
|
||||
</dict>
|
||||
|
||||
The INSTALL/REMOVE executables allows you to trigger any action
|
||||
at pre/post installation/removal of the binary package.
|
||||
|
||||
The package's dictionary will also be written into the repository's package
|
||||
index file, that describes information about a binary package on it.
|
||||
See the BINPKG_REPOSITORY file for more info about repositories.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
HOW TO USE BINARY PACKAGES
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
To install binary packages, firstly a repository must be created as well as
|
||||
some binary packages for it. The flow for this task is:
|
||||
|
||||
1- xbps-src install <package>
|
||||
2- xbps-src build-pkg all [requires sudo access]
|
||||
3- xbps-repo genindex $XBPS_PACKAGES
|
||||
4- xbps-repo add $XBPS_PACKAGES
|
||||
5- xbps-bin install -r /rootdir <package>
|
||||
|
||||
So the tasks are: install the package into destdir (and all its dependencies),
|
||||
build the binary package from the required package, generate the repository
|
||||
index, add the repository into the pool and install the binary package.
|
||||
|
||||
Please note that by default, the xbps-* utils accept the -r flag, to specify
|
||||
the root directory for all operations, in that case the package will be
|
||||
installed into <rootdir> and metadata files into <rootdir>/var/db/xbps.
|
||||
|
||||
Don't forget to set this flag if you aren't using xbps as the primary
|
||||
package manager in your system, otherwise it could overwrite some files!
|
||||
|
||||
See the BINPKG_REPOSITORY file for more info about repositories for
|
||||
binary packages or SRCPKG_INFO for source packages.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
Juan Romero Pardines <xtraeme@gmail.com>
|
@ -1,111 +0,0 @@
|
||||
------------------------------------------------------------------------------
|
||||
BRIEF INTRODUCTION
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
A repository for binary packages contains the packages itself, and
|
||||
an index file describing the information about available packages.
|
||||
|
||||
The structure for this file is just the same than the plist file used
|
||||
to register installed packages, aka "an array of dictionaries" and
|
||||
a "dictionary per package". Additional objects are added into the
|
||||
main dictionary to specify more info, like:
|
||||
|
||||
- pkgindex-version: version used to build the index.
|
||||
- total-pkgs: total of number of available packages.
|
||||
|
||||
The package dictionary will be the same than the one available in
|
||||
package's metadata directory "/var/db/xbps/metadata/$pkgname/props.plist",
|
||||
but some additional objects are added to provide enough info for
|
||||
the repository itself:
|
||||
|
||||
- filename: name (and path relative to current dir) for the binary
|
||||
package.
|
||||
- filename-sha256: SHA256 hash of the binary package.
|
||||
|
||||
Here's how the package index plist file shall look like in a repository:
|
||||
|
||||
<dict>
|
||||
<key>pkgindex-version</key>
|
||||
<string>1.0</string>
|
||||
<key>total-pkgs</key>
|
||||
<integer>666</integer>
|
||||
<key>available-packages</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>pkgname</key>
|
||||
<string>klibc</string>
|
||||
<key>version</key>
|
||||
<string>1.5.17</string>
|
||||
<key>filename</key>
|
||||
<string>klibc-1.5.17.x86_64.xbps</string>
|
||||
<key>filename-sha256</key>
|
||||
<string>7b0de0521983037107cc33f2b1514126432f86ac2be1ef9b9dc51a1e959ea777</string>
|
||||
<key>architecture</key>
|
||||
<string>x86_64</string>
|
||||
<key>installed_size</key>
|
||||
<integer>9471141</integer>
|
||||
<key>maintainer</key>
|
||||
<string>Juan RP xtraeme@gmail.com</string>
|
||||
<key>short_desc</key>
|
||||
<string>Minimal libc subset for use with initramfs</key>
|
||||
<key>long_desc</key>
|
||||
<string>
|
||||
klibc is intended to be a minimalistic libc subset for use with initramfs.
|
||||
It is deliberately written for small size, minimal entanglement, and
|
||||
portability, not speed. It is definitely a work in progress and a lot of
|
||||
things are still missing.</string>
|
||||
...
|
||||
</dict>
|
||||
...
|
||||
</array>
|
||||
</dict>
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
HOW TO USE BINPKGS WITH REPOSITORIES
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
To build binary packages from all currently installed packages in
|
||||
XBPS_MASTERDIR:
|
||||
|
||||
$ xbps-src build-pkg all
|
||||
|
||||
To generate the repository package index for your $XBPS_PACKAGESDIR
|
||||
setting in the configuration file:
|
||||
|
||||
$ xbps-repo genindex /path/to/dir
|
||||
|
||||
Alternatively if you only want to register a single package:
|
||||
|
||||
$ xbps-repo add-pkgidx /package/repo /package/repo/<arch>/foo-1.2.xbps
|
||||
|
||||
After this you can add your own local repository with binary packages:
|
||||
|
||||
$ xbps-repo add /path/to/dir
|
||||
Added repository at /path/to/dir (1.0) with 6 packages.
|
||||
$
|
||||
|
||||
Once it's registered, you can start searching/installing/removing
|
||||
binary packages. You can add multiple repositories, the order for searching
|
||||
is the same than they were added; check it with:
|
||||
|
||||
$ xbps-repo list
|
||||
/storage/xbps/binpkgs
|
||||
/path/to/dir
|
||||
$
|
||||
|
||||
The first repository that has the metadata for a package wins, if not found
|
||||
it will search in all them until it's found. A repository can also be
|
||||
unregistered from the pool:
|
||||
|
||||
$ xbps-repo remove /path/to/dir
|
||||
|
||||
To show information about available packages in the repository pool:
|
||||
|
||||
$ xbps-repo show package
|
||||
|
||||
To search for binary packages by specifying a shell pattern (see fnmatch(3)):
|
||||
|
||||
$ xbps-repo search 'foo*'
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
Juan Romero Pardines <xtraeme@gmail.com>
|
65
doc/README
65
doc/README
@ -1,65 +0,0 @@
|
||||
-----------------------------------------------------------------------------
|
||||
WHAT IS IT?
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
xbps - xtraeme's binary package ystem.
|
||||
|
||||
xbps is a new binary package system, taken ideas from other free available
|
||||
implementations, such as dpkg/apt, RPM, pacman and others. Metadata handling
|
||||
as package databases are handled by proplib. Multiple compression formats
|
||||
are supported in binary packages thanks to libarchive.
|
||||
|
||||
xbps has been designed for Linux, and for the moment I'm not interested to
|
||||
make it work on any other random OS. xbps is the base to create a basic
|
||||
Linux system.
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
REQUIREMENTS
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
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/
|
||||
|
||||
I'm also the human maintaining the portable proplib package. I'd suggest you
|
||||
to install it into /usr/local to avoid issues with your distribution packages.
|
||||
|
||||
To build the xbps utils, you'll need for both shared and dynamic:
|
||||
|
||||
* asciidoc (to build the manpages)
|
||||
* libarchive (devel pkg)
|
||||
* proplib (devel pkg)
|
||||
* openssl (devel pkg)
|
||||
|
||||
And the following packages as well to build the static binaries:
|
||||
|
||||
* attr (devel pkg with static lib)
|
||||
* acl (devel pkg with static lib)
|
||||
* zlib (devel pkg with static lib)
|
||||
* bzip2 (devel pkg with static lib)
|
||||
* xz (devel pkg with static lib)
|
||||
|
||||
Please note that when building the static binaries, the static libs
|
||||
must match the requirements! please make sure that your installed
|
||||
libarchive has all features built in (acl, zlib, bzip2, xz and openssl).
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
HOW TO USE IT
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
Before using xbps, some required utilities need to be built and installed
|
||||
into $(PREFIX); by default they are installed into /usr/local.
|
||||
You can do this by issuing "make" and "make install" as root in the top
|
||||
level directory. See the REQUIREMENTS section above for required packages.
|
||||
|
||||
To build binary packages, you need xbps-src. It's stored in a public GIT
|
||||
repository located at:
|
||||
|
||||
http://repo.or.cz/w/xbps.git
|
||||
|
||||
For information about binary packages, see the BINPKG_INFO file.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
Juan Romero Pardines <xtraeme@gmail.com>
|
18
doc/TODO
18
doc/TODO
@ -1,18 +0,0 @@
|
||||
xbps-bin:
|
||||
* Add support to install binary packages without any repository.
|
||||
* Add a flag to reinstall a package version that is already installed,
|
||||
overwritting files on disk and updating required_by if required.
|
||||
Perhaps change the automatic-install object to false, like pkg_install
|
||||
from NetBSD do.
|
||||
* Implement shell style match patterns with fnmatch() for install, update
|
||||
and remove.
|
||||
* Make -f flag to overwrite files when installing, and to ignore
|
||||
files with wrong checksum or unexistent when removing.
|
||||
[PARTIAL: only unexistent files are ignored when removing]
|
||||
|
||||
libxbps:
|
||||
* Add support to upgrade packages but overwritting current files;
|
||||
this will fix libc, sh and others. An "essential" boolean obj
|
||||
seems to be a good way to find such packages, like dpkg.
|
||||
[PARTIAL: files are overwritten but obsolete files are not
|
||||
taken into account yet]
|
Loading…
Reference in New Issue
Block a user