Search My Blog

Tuesday, August 30, 2011

ROCK Linux - The Distribution Build Kit


ROCK Linux is a flexible Linux Distribution Build Kit. I.e. it is a toolchain/framework for making your own Linux Distributions. See also our Mission Statement.

If you don't want to build your own distribution but simply are interested in a good general purpose distribution, you might want to have a look at Crystal ROCK.

Configurable Build

You can configure your personal build of ROCK and easily build your own distribution. It is software for managing operating environments. In a way it is a software development toolkit for building OS solutions.

The available config options include, but are not limited to:

Package Selection
You can select the packages you want to have in your distribution. So packages you don't want or need are not built at all. A list of available packages can be found here.
Compiler and Optimization
You can select a compiler and optimization options for building your distribution. That enables you to highly optimize for your hardware. You can also build your entire distribution with the GCC Stack-Smashing Protector enabled for enhanced security.
Dietlibc and uClibc
You can use dietlibc or uClibc instead of the GNU LibC as your C library. That can be very useful e.g. for embedded systems.
And much more ...
Other options are: selection of an init-style and package manager, custom GNU configure options, cross-building, and much more. A major focus in the ROCK development always has been to make adding new features and config options as easy as possible.

Supported Architectures

Most of the ROCK Linux development is done on x86 hardware. But ROCK Linux also supports the Alpha AXP, ARM, HPPA/HPPA64, ia64, MIPS, PowerPC, Sparc32/Sparc64 and x86-64 architectures. Others will follow and are easy to add.

The ROCK Linux Core has been ported to the PowerPC. This was done live, on stage at the Chaos Communication Congress 1999 in only 3 congress days . That was a very impressive demonstration of the high portability of ROCK Linux.


A "ROCK Linux Build Target" is a set of rules for creating a ROCK Linux based Linux distribution. The ROCK Linux build system has very flexible hooks which allow targets to modify the way the build system works. So targets can be used to create special-purpose distributions like single-disk routers, embedded systems, NCs (thin clients), set-top-boxes or cluster-nodes.

Building on a Cluster

Building ROCK Linux can take a long time (a few days, even with state of the art hardware, if you build all packages with high optimization). To speed up build time it's possible to build ROCK Linux on a cluster of workstations.

Extending ROCK Linux

Extending ROCK Linux is pretty easy and documented in The ROCK Linux Hacking HowTo, which also comes with the ROCK Linux sources. It describes how to write package, target and architecture scripts for ROCK Linux.

Go there...

Looks interesting. But, will take some time and a learning curve, for me to use ROCK. I've tried out and installed many Pre-Built Linux Distros from ISO files. But this is building from Scratch. I was going to download Crystal ROCK, but none of the Download Links work today (08-30-11). Hopefully, it's just a temporary thing...


ROCK Linux - The Distribution Build Kit
Main Page - RockWiki
Building - RockWiki
About - RockWiki
Distribution Portal - RockWiki
Crystal ROCK - RockWiki

No comments: