Using these scripts is so easy that they hardly need explaining. But for those who want it in writing ANYWAY: a) Download the ENTIRE CONTENTS of the directory containing the package you wish to build. Don't skip anything. We recommend wget (from http://wget.sunsite.dk/) for downloading. A wget SlackBuild is even included here for your convenience. b) If there is a README file in the directory -- by all means READ IT FIRST! It's been put there for a reason! c) Most source code tarballs at SlackBuild Central are EMPTY due to bandwidth constraints. You must obtain the source code separately. The name of the required tarball is ONLY included for your information. Do a search on that name. When you find and download the real tarball, copy it over the empty placeholder. d) Again, ensure that all downloaded files are in one directory on your machine. It's best to keep each package's build files in a directory dedicated to that package. For example for openssh create a directory named "openssh" and place all the downloaded files for openssh there. e) Have a look through the SlackBuild script and change anything you wish changed. Take special note of the ./configure options. As a general rule, you can use the same SlackBuild script for later releases of the same software. For example, the postfix SlackBuild can be used to build postfix-1.1.7, even though the source tarball says "1.1.2". Just change the VERSION value in the script from 1.1.2 to 1.1.7 and try a build. Remember, you can't lose anything by trying! f) If it is not already executable: chmod 700 SlackBuild g) Build the package with: ./SlackBuild h) If you wish to delete the build directories in /tmp after a build, instead execute: ./SlackBuild --cleanup i) With some newer SlackBuild scripts, executing ./SlackBuild --cleanup --nomove is necessary to end up with the finished package in the /tmp directory. See point (m) for more information. j) Most newer scripts have an extra line of code that will log screen output. The log file will be deposited in the same directory as the SlackBuild script, and named packagename.build.log. k) All finished packages are normally named packagename-version.tgz. This format is fully compatible with Slackware 8.0, because 8.0's packaging system doesn't really look at architecture and build tags. If you want to include these tags anyway (example: foo-1.2.3-i386-1.tgz, where "-i386-1" are the extra bits) just add the bits to the end of the VERSION=1.2.3 line near the top of the script (this example would end up with VERSION=1.2.3-i386-1). l) If non-versioning (ie. ordinary packagename.tgz) is required, simply change $NAME-$VERSION.tgz near the end of the SlackBuild script to $NAME.tgz. m) Some newer SlackBuilds will create a new package/ sub-directory where the script resides, and move the finished package into that directory. This is NOT standard SlackBuild behaviour, but something that the author included as a matter of personal preference. So if you can't find your package in /tmp, look in package/ instead. n) Finally, many of the SlackBuilds here include a "description" file in the install/ directory of the package. Installing these packages will create an /install directory on the receiving system. This directory can safely be deleted with: cd / rm -r install Alternately, you can rename "description" to "slack-desc" and become fully compliant with the official Slackware 8.0 package tools. Enjoy! George Georgakis Monday 3 April 2002