Interview With the Creators of CRUX and ROOTLinux

Back when I used to live in Greece, there was a popular saying: “Greece is not just Athens”. Similarly, Linux is much more than (the highly marketed) Red Hat or Mandrake. Assuming you got the skills required, a Linux distribution can be created, distributed or sold by virtually anyone. This is what Free Software is all about anyway. Two Sweedish Linux coders are offering their own Linux distros for some months now (with newer versions on the way). Per Lidén has put together CRUX from scratch, while John Eriksson has evolved a lightweight Slackware version to his own ROOTLinux. OSNews interviews both the developers regarding their (part-time, hobby) projects and their future prospects.

Per Lidén for CRUX

1. Are you interested in making CRUX a successful/commercial distro that you could actually sell support, or are you doing it for fun? How can a CRUX user find support?

Per Lidén: I’m doing it for fun. Even though it would be nice to work with this full-time and get paid for it I have, at this moment, no intention to make this into a business. But who knows what the future will bring 😉

2. How do you choose which software packages you are going to include on CRUX and which not?

Per Lidén: Gut feeling for the most part 😉 I have no specific rules or anything like that. I’ll include a new package if I believe that it’s a fundamental part of a Linux distribution and serves an important purpose for many users. I have no plans to extend the current package collection that much since I believe the most important things are there already (with a few exceptions). Things you can live without (well, at least I can), e.g. Gnome, KDE, linuxconf, etc, are never going to be included in CRUX.

3. Please tell us about the beta testing process of any new version of CRUX.

Per Lidén: Since CRUX is a “hobby project” I don’t have a pronounced beta testing strategy. However, it usually ends up something like this.

When it’s time to make a new release I start of by letting the distribution build itself. Just like when bootstrapping a compiler I bootstrap CRUX by rebuilding it three times (or four depending on how you count). This is a somewhat time consuming activity since each build takes about 4 hours to complete and some manual procedures (like installing the intermediate build) is required inbetween. When this is completed I can rely on that there is no problems regarding dependencies between programs, libraries (and libraries used by the compiler that built the libraries), etc, etc. After that I install the new version and do some ad hoc tests to see that everything seems to work as expected. I don’t test every single program (of course) since that would be a huge task. Usually, if the distribution managed to compile itself I can at least be pretty sure the development tools are ok. I also let my dear friend (Jonas Matton) take the new build for a test drive. If none of us find any show stoppers I’ll upload the new release to the CRUX ftp-server.

I’m pretty happy with the level of stability CRUX currently offers, despite the lack of rigorous testing procedures. I think part of the reason I’ve managed to keep it that way is the relatively small package collection (i.e. less software less bugs). Another reason might be the package build utility (pkgmk), which was designed to catch errors when building packages.

Btw, rebuilding the whole distribution is a matter of typing “pkgmk -r -f &> log” and then do “grep ‘Test summary’ log” to get a complete build report, which indicates any build errors.

4. Was CRUX made from scatch or is it based on an existing distro layout? If yes, why was the specific distro chosen from others?

Per Lidén: CRUX is built from scratch, and is thus not based on any other distribution. Part of the reason why I started CRUX was to learn something on the way (and the other part was of course that I wasn’t very happy with the existing distributions). So, if I would have based CRUX on an existing distribution I would likely have failed to satisfy my reasons for doing it in the first place.

5. Can CRUX “understand” RPM or apt-get by default? What is the package manager used?

Per Lidén: Nope! rpm/debs/apt-get/etc are not supported. CRUX instead has a very simple package management system based on plain old tar.gz files. There is a number of package management utilities (pkgadd, pkgrm, pkginfo and pkgmk), with which you can install/uninstall/inspect/make packages and query the package database.

I’m currently developing a “ports” system which will be somewhat similar to *BSD-ports. This will make it very easy for users to download and build packages which have been contributed by other CRUX users. My plan is to include this into the next release of CRUX. There are however still some details to sort out.

6. Which ‘market’ would be interested in CRUX? People interested in a lightweight distribution, the server market, workstation, educational, or something else?

Per Lidén: Well, I don’t focus on any special “market”. I’d like to simply say “if you like it, use it!”. CRUX is a Linux distribution that I primarily made to fit my needs and have some fun at the same time. I happen to like when things are kept simple and lightweight. I think you can find people who share my ideas in all “markets”.

7. Do you apply patches to the CRUX Linux kernel? For example, patches for latency, preemtpiveness, other filesystems and maybe object prelinking KDE?

Per Lidén: So far I’ve used plain vanilla Linus-trees as the default kernel in CRUX. I’ve had thoughts about adding XFS and/or JFS, but I’ve decided to wait for the moment. I don’t really think the default kernel in CRUX is that important anyway. Since CRUX is targeted at “experienced Linux users” (whatever that means 😉 it is my belief that users themselves will download and apply the patches they want to use. Actually, I’d say that this is partly what CRUX is about. With its relatively small package collection, I expect users to download and compile their favourite programs, and tweak the system the way they like it.

Get up to speed with CRUX on the IRC server, channel #crux. Per’s nickname is ‘pli’.

John Eriksson for ROOTLinux

1. Are you interested in making RootLinux a successful/commercial distro that you could actually sell support, or are you doing it for fun? How can a RootLinux user find support?

John Eriksson: I’m making Root Linux most of all for fun, and because I want a distribution to run at home, which I’m totally satisfied with. If it gets big, it’s just more fun. There is no official support, but IRC is a good place to start. Root Linux has it’s own channel at OPN (#rootlinux).

2. How do you choose which software packages you are going to include on RootLinux and which not?

John Eriksson: I choose programs from my own taste. Users sometimes ask me to include different programs. I test them, and if I like them I include them. Simple =). I don’t want to include non-free software. 1.3 will have no closed-source programs, like Netscape 4, among the other packages. They will be available on the CD in a ‘nonfree’-folder, however.

3. Please tell us about the beta testing process of any new version of RootLinux.

John Eriksson: I have no real system for this. When it feels ready for a new release, I make a full installation and try all programs etc. After the 1.3 release (which will be available soon), a development version will always be available for download so that everyone can beta test it.

4. RootLinux is based on Slackware. Please tell us about the benefits of using Slackware.

John Eriksson: Compared to Red Hat, Mandrake and SuSe, you learn a lot more when using Slackware. In Slackware, you see how things really work. But Root Linux is not Slackware. Many people seem to think that Root Linux is a copy of Slackware, but that’s all wrong. It was based on Slackware when I started developing it. Now there’s not a single package from Slackware

5. Can RootLinux “understand” RPM or apt-get by default? What is the package manager used?

John Eriksson: Root Linux does not support RPM or apt-get by default. It uses a small package manager (“pkgtool”), which is a simple bash script to install/remove/show Root Linux’s tgz packages. It can also install Slackware packages. Root Linux users compile most of their software from source.

6. Which ‘market’ would be interested in RootLinux? People intersted in a lightweight distribution, the server market, workstation, educational, or something else?

John Eriksson: My goal is to make a flexible distribution. In my opinion, Root Linux is a great server distribution. I run it on my own web/ftp/ssh etc server at home. I also run it on my other workstation machine. With the latest KDE, GNOME and Xfree86, Root Linux is also a nice distribution for workstations (any newbie can use Root Linux if someone has configured it
for them).

7. Do you apply patches to the Linux kernel? For example, patches for latency, preemtpive, other filesystems and maybe object prelinking KDE?

John Eriksson: I have left the kernel source tree alone. KDE will be object prelinked in (the upcoming) version 1.3 of Root Linux.

Get up to speed with ROOTLinux on the IRC server, channel #rootlinux. John’s nickname is kohn^.


  1. 2001-10-30 8:31 am
  2. 2001-10-30 9:13 am
  3. 2001-10-30 7:20 pm
  4. 2001-10-31 3:19 pm
  5. 2001-10-31 6:43 pm