Building Plash from source
Using Debian source packages
Debian source packages can be downloaded using APT by adding one of the sources.list lines from DownloadPackages to your /etc/apt/sources.list file along with the corresponding deb-src line. For example:
deb http://plash.beasts.org/packages ubuntu-feisty/ deb-src http://plash.beasts.org/packages ubuntu-feisty/
Since Plash builds a modified version of glibc, it requires a copy of the glibc source. The glibc source tarball is not included in the Plash source package, but in a separate binary package such as glibc-source-2.5. This and other build dependencies will be installed by doing:
apt-get update apt-get build-dep plash
Get the source package with:
apt-get source plash
and build with:
cd plash-X.XX dpkg-buildpackage -rfakeroot -b -D
Creating Debian packages from SVN
The code in the SVNRepository contains multiple versions of the debian packaging scripts, for both Debian and Ubuntu; for example, debian-etch and debian-feisty. In order to use one of these sets of packaging scripts, create a symlink from "debian" pointing to the relevant "debian-*" directory.
To build the package, you might use the following commands:
svn co svn://svn.gna.org/svn/plash/trunk plash cd plash ln -s debian-feisty debian wget ftp://ftp.gnu.org/gnu/glibc/glibc-2.6.tar.bz2 dpkg-buildpackage -rfakeroot -b -D
Making source packages
The script "make-deb-src-pkg.sh" can create source packages for multiple variants in one go.
Setting up a development environment
$ svn co svn://svn.gna.org/svn/plash/trunk plash $ cd plash $ git-clone http://plash.beasts.org/git/glibc.git/ glibc-source $ autoconf $ ./configure GLIBC_BUILD_TYPE=integrated GLIBC_VERSION=9999 $ ./make.sh $ ./build-glibc-integrated.sh link_source $ ./build-glibc-integrated.sh configure_glibc $ ./build-glibc-integrated.sh make_glibc
On a Debian-based system, you can install the build dependencies with:
$ sudo apt-get install pbuilder $ ln -s debian-template debian $ sudo /usr/lib/pbuilder/pbuilder-satisfydepends
You might want to remove glibc-source-2.7 from the build dependencies in debian/control because this dependency is not coming from a Debian package in this case.
