"Bad Penguin" Package System ============================ Autore: Antonio Gallo Updated: Mon Jul 17 19:53:59 2000 - Added package.conf Updated: Sat Aug 19 12:31:25 2000 - Added package.depots Updated: Tue Sep 12 00:31:52 2000 - version 2.0.3 Updated: Thu Nov 16 18:46:23 2000 - version 2.0.4 Index ===== 1. Directories 2. Configuration Files 3. Scripts & Binaries 1. Directories Configuration ============================ The Bad Penguin Package System is made of the following directories: /etc/badpenguin/bpp/ - configuration files /opt/badpenguin/packages - contains package downloaded by internet or rebuilded locally /opt/badpenguin/sources - contains source code downloaded by internet or manually copied by cdrom /opt/badpenguin/ports - contains the 'ports' of any package /opt/badpenguin/workdir - where source code is build /var/spool/badpenguin - contains info on installed packages Those directories are full configurable thru' the file /etc/badpenguin/bpp/package.conf 2. Files & Directories ====================== /etc/badpenguin/release This file contains the distribution release version informations NAME="Bad Penguin" COMPATIBLE="Debian" MAJOR="0" MINOR="6" PATCHLEVEL="pre4" VERSION="0.6.0pre4" CODENAME="Firegarden" RELEASEDATE="`date`" /etc/badpenguin/bpp/package.conf This file contains the configuration value needed by the scripts into package-tools DIST_VERSION="/etc/badpenguin/release" PACKAGE_CONF="/etc/badpenguin/bpp/package.conf" PACKAGE_DEPOTS="/etc/badpenguin/bpp/package.depots PKG_PKGDEPOT="/opt/badpenguin/packages" PKG_SRCDEPOT="/opt/badpenguin/sources" PKG_PORTSDIR="/opt/badpenguin/ports" PKG_SPOOLDIR="/var/spool/badpenguin" PKG_WORKDIR="/opt/badpenguin/workdir" PKG_VERSION="2.0.3" PKG_CATEGORIES="base games gnome palm www x11 x11-servers x11-wm" SOURCE_DEPOTS="/etc/badpenguin/bpp/sourcedepots" /etc/badpenguin/bpp/package.depots This file contains a list of local directories, ftp or http sites that mirror the official distribution from where we can download packages. Usually it is arranged in this way: /cdrom/badpenguin/packages /opt/badpenguin/packages ftp://ftp3.linux.it/pub/Linux/Badpenguin/packages | | As you can see the file contains additional information for ftp and http depot, in order to cache the list of the files on it. /etc/badpenguin/bpp/sourcedepots Contains a sets of file uset with the special URL depot:// in order to search for some source tarball onto a predefined sets of ftp mirrors. 3. Scripts & Binaries ====================== The package-tools tarball contains a set of scripts (package-create, package-init, package-rebuild, package-repack, package-build, etc.) used to build and mantain .BPP packages. package-setup, instead, is the command line package manager tools, like rpm or dpkg. Simple usage: package-init create all the directories and configuration files package-create create the skeleton for a new package into the port dir package-build $SONAME_$VERSION [norepack] create a .bpp package from the current content of the port dir. If the 'norepack' option is used the it will not call package-repack before building the .bpp package package-repack $SONAME_$VERSION [$MANIFEST] [nobuild] copy the files listed into the MANIFEST of the package from the filesystem into the port dir, this is usefull to track changes to the package. If the 'nobuild' option is used then 'package-build' will not be called automatically package-rebuild $SONAME_$VERSION this script is used to fully rebuild a package from scratch. It first run the COMPILE script then track changes to the filesystem, then from the list of modified files it will run 'package-repack' and finally 'package-build' to complete the automatically creation of the .bpp package package-library it is a collection of functions used inside the COMPILE script to help the mantainer of the package in his work. EOF