posted by Simone Rota on Thu 2nd Oct 2003 19:39 UTC

"CRUX, Page 2"
The port system

Crux Linux Among optional packages you can choose during setup, the one called "ports" will provide a *BSD-style port tree for CRUX. This system allows the user to keep the packages up-to-date and install contributedports into the base distribution. The number of third-party applications available via the port system is at the moment not comparable with other mainstream distributions. Still you can find many common server and desktop software as apache, mysql, kde (3.1.4), Gnome (2.4.0), mplayer and so on.

More than this, creating a port is very easy and you can always use a personal collection of ports for the ones not present in the contributed collections.

The third-party utility prt-get (strongly recommended) is a very useful tool for installing ports and take care of dependencies. The following are just few snippets, just to show up typical commands you need to type for common maintenance actions:

# synchronize the port tree.
ports -u 

# download, compile and install xfce4 and all its dependencies
prt-get install `prt-get quickdep xfce4`

# A new version of xfce4 is out? No problem
prt-get update xfce4

# want to upgrade the entire system?
prt-get sysup

To be more accurate, prt-get is an addon for the default package management system (pkgtools) and is a wrapper for the pkgmk and pkgadd commands, which have no dependency handling (remember the keep it simple idea?)

While the port system is not a new idea, I found it a lot easier to deal with (especially from the packager's point of view) than other solutions (*BSD, Gentoo) for the extreme simplicity of the build files. This someway sacrifices some customization (ie global USE flags in Gentoo), but it gives a "simple and clean" feeling to the entire port system.

The ports are updated regularly about the respective maintainers, I must say that I'm very satisfied by the frequency both of security updates (ie recent openssh vulnerabilities) and new releases of software in general (CRUX was one of the first distros to have Gnome 2.4 in the port tree if I remember well)

Configuration

There are no configuration tools in CRUX. Everything is handled by you and your favorite editor. As I wrote in the introduction, CRUX targets advanced users, yet I think it is a great solution for anyone who would like to learn more about Linux.
I particularly appreciate the fact that ports comes with standard, default configuration files. No modification is applied to packages, and you get the applications as they are shipped by their developers. (think of a default Gnome / KDE installation).
A big, relevant exception is documentation: package guidelines for CRUX indicate to remove all documentation except man pages: HTML documentation, info pages, etc. are removed from the final package.

Performance / Stability

The general perception that source distributions and optimized packages would dramatically improve system performance is an exaggeration. I don't think a i586 package would perform very differently from a i686 package, maybe with the exception of applications that are very CPU intensive.
Still I found CRUX the fastest distribution I have tried so far; I have the general feeling that everything runs faster. I don't have performance tests to support my impressions, so you'll have to accept them as a personal opinion, or try CRUX yourself.

I think I cannot say many things about stability of the system: this is strictly related to how you manually configure your system and has little to do with the distribution itself, since there is no automatic setup or configuration.
In general, packages and ports available are the latest stable release of the applications, and there are no experimental or testing versions in the port tree.
I suppose the trimmed number of packages available plays in favor of the general stability, since there is less possibility of conflicting applications and libraries.

What's to improve?

Hardware support could represent a problem during the installation on some machines: if your basic hardware (i.e. hard disk or motherboard) is not supported by the kernel on the bootable CD-Rom, you won't be able to install CRUX.
Another missing feature of the installation CD is support for alternative filesystems: reiserfs and ext2/3 are supported, while there is no way at the current stage to install CRUX on a JFS or XFS partition (though there's a contributed ISO image with XFS support).
Also, installing or updating large sets of packages would take a long time, since as said before, CRUX is a source based distribution.

The dependency system is considered an "unofficial" addition, and installing a long list of dependencies could sometimes require some extra work. For example, there's no easy way to install the full Gnome desktop with a single command.
Installing certain packages requires some manual intervention with pre or post-install procedures, and you have to dig into a README file provided with the port. Some of them are distributed with installation scripts that could be automatically executed by prt-get.

Conclusions

I liked CRUX Linux from day one, and use it daily as my main distribution. If you want to learn a bit more about Linux go get the ISO and start to play with it. If you have some spare time, it could be an interesting experience.
Overall rating: Very Good.

Links

CRUX Linux: http://www.crux.nu
CLC - Crux Linux Community - http://clc.berlios.de
CRUX ITALY (home of the PPC port): http://www.crux-it.org (Italian)
OSNews: Interview With the Creators of CRUX and ROOTLinux

About the Author
I consider myself a pretty advanced user. I've been using personal computers for fun and work for about 15 years (and still find there are a lot of things to learn everyday). I study Ingegneria Informatica at Politecnico di Milano - ITALY and work as a developer in a small company I share with a couple of friends.
Table of contents
  1. "CRUX, Page 1"
  2. "CRUX, Page 2"
e p (0)    44 Comment(s)

Technology White Papers

See More