Mailing List Archives Mailing Lists IRC Logs SVN Repositories SubMaster CheckVersion People Directories MediaWiki

The ROCK Linux Distribution Build Kit

ROCK Linux is a distribution build kit, a group of tools to build GNU/Linux distributions from source. It comes with a set of predefined distributions like the Crystal ROCK desktop target or the small, bootable bootdisk target, and allows users to easily customize the build process and create new targets.

The distributions that ROCK Linux generates are sometimes called ROCK Linux themselves, although the term ROCK Linux based distribution is more appropriate.

In a way ROCK Linux is a tool for managing OS solutions. It comes with the package managers mine and bize, the rocket tool for updates over network, and the ability to build (emerge) single packages into an existing Linux OS. For system administrators, a setup tool (stone) and reasonable System V style init scripts as well as other configuration files are provided.

The latest version of ROCK Linux is always available from the Subversion repository. We stopped createing official releases some years ago. Instead it is recommended that you take a svn trunk revision that works for you and branch of your distribution from that, maybe merging upstream changes from our repository to your version of ROCK Linux on demand or on a regular basis. The source filesystem layout of ROCK Linux is designed in a way that makes it easy for you to seperate your changes and enhancement from the core build system and the generic package build descriptions.

Note that the bleeding edge ROCK Linux is not done dircetly in our svn head but instead outside of the svn repository using a SubMaster, our patch management software. So the code in svn trunk has passed already some amount of testing.

Q: How do I build my first ROCK Linux based distribution?

First check out the subversion trunk:
svn co rock-src
Then change to this directory and configure your distribution:
./scripts/Config -cfg mydist
Next you need to download all the package sources needed to build this distribution:
./scripts/Download -cfg mydist -required
Then you build the distribution:
./scripts/Built-Target -cfg mydist
And finally you create the ISO images (assuming that the distribution you have built provides metadata for this step):
./scripts/Create-ISO mydist mydist
There you are: Now you can burn the ISOs and install it.

It is highly recommended that you try building a distribution with the default settings for starters so you get some expirience with the build system. Non standard settings are broken sometimes in the svn head and you should have an idea about the generic should-be processes before starting to debug special cases..

Q: Where do I find more information

The source has a "Documentation" directory with some additional information and also you might find what you are looking for on the wiki. However: Be aware that some information in the wiki is outdated by now!

Another source of information are the mailing lists. Note that you need to be subscribed to a list in order to send mails!

Q: How can I participate? How can I send patches?

Patches are menaged using SubMaster. The easiest way of getting your patches processed is by creating a SubMaster account and uploading your patches. But you may also send you patches to the developerst mailing list, if you feel more comfortable with that.