More about CTKArch

The project started in june 2009, when, out of curiosity, I tried to make a LiveCD.
I have to say that I was dreaming of it since 2003, when I discovered GNU/Linux with Knoppix in the “Linux Pratique” magazine.

I started the project as soon as the X configuration problem disappeared: Xorg just started using HAL to detect the mouse and keyboard! No more static configuration!

At first, I was using it to quickly test Arch with Xorg on a PC, before starting the installation: it would have been a waste of time to install just to eventually find out that some things weren't working properly (or not at all)…

The initial result wasn't very good, but the CD did boot on Xorg, which was the goal.
I had also included a small graphical environment, and some applications just in case — I had just forsaken KDE3.5, and KDE4 did not suit me, so I configured a small desktop using Openbox + a panel I was quite happy about.

Everything started there. I uploaded the 0.1 ISO, and some people on the #archlinux-fr channel on Freenode were interested. The environment wasn't very eye-candy, so version 0.2 followed, with a nicer theme — and quite a lot of new applications.
I posted a message on the archlinux.fr forums (link in French).

Then people started asking me how they could install it on their hard disk: there was no installer.
It was true that when I was installing Arch Linux for friends, I did the same thing every time! After all, why wouldn't I automate the installation of a base system with X (and some apps), in order to save time?

Version 0.3 was issued, with an installer.

At that time, the KMS (Kernel Mode Setting) was appearing. I absolutely had to do something with that! Release 0.4 was a (failed) attempt to support KMS on Intel/ATI/nVidia video cards.
Nevertheless, there were interesting novelties: the iso was hybrid, allowing to copy it on a CD as well as on a storage medium (on USB for instance); there was support for a persistent documents partition, that could be in the remaining space on the storage peripheral where the iso was “dd-ed”; and the live system could be (hot-)copied to RAM. And of course, the bootloader was nicer.
Then, I released an i586 version, compiling a part of the Arch Linux repositories for that architecture.

For 0.5 version, I decided to do things well: I included the git release of Nouveau' DRI — that supports 3D acceleration on nVidia video cards.
Another problem appeared: more and more people were asking me for incompatible changes, and inclusion of packages I didn't like (proprietary, …).
So I had a simple idea: why couldn't these packages and other stuff be put in the persistent home partition?

Add-ons were born. With them, the base live system could remain minimal; and everybody could be satisfied, for it had become very easy to add whatever you want to the Live.

Nine months passed, the time of gestation as Gyo said. Even though the fifth release was growing old, I was waiting for HAL to stop being required.
I promised it: each version would be lighter than the previous one! (and cleaner, but that isn't as visible)

I eventually took two weeks to finish version 0.6. Since I received a lot of e-mail from English-speaking people about it, I decided I had to do something: so I translated it to English!
Some guys wanted to modify the Live; it has become easy, as addons can now be put directly on the CD.

This led me to think of making an online iso assembler, but this is postponed to next version. The idea of making “base” iso images to customize them with addons, is appealing as well.

That's a lot of ideas to work on! To be continued…

Philosophy

The ideas that led to CTKArch are straight-forward and a little bit extreme.

The base

The first point is: everyone agrees — not on everything, but on a quite surprisingly big amount of ideas.
To be more precise, for a desktop install, we need a kernel, an userland, and an X window server.

And we obviously need a desktop environment, providing the following elementary features:

Once we have that (and a config menu for the environment), we notice that an image viewer, a PDF viewer, etc… for the most common document types would be handy.
Being able to edit them would be good too. That is the purpose of all the included applications.

Here we are: this is CTKArch.

Choosing applications

Now, you know that there is a lot of applications that can perform each one of those functions.
We don't want heavy software. We don't want proprietary software.
We want straight-forward, light, efficient and useful software that does one thing, and does it well.

I will add that we want the system and the apps to be launched as fast as possible.
Ideally, you push the power button, and two seconds later, you are using the application you wanted.

How lightness can be achieved

In order to launch the system quicky, we must get rid ot the unnecessary stuff.
For this, I am following this idea: it is faster to launch an empty environment fast, than to fill it with auto-launched services that *may* be useful, but most of the time just make you lose time.

I don't like background notification services.
No one needs pop-ups stealing the focus of the window you're typing in, for instance when plugging an external storage medium. It's way faster to launch the browser yourself, *if that's what you wanted*: you may as well want to fsck or partition that medium. In that case, auto-mounting it would have been all but wise!

Automatic behaviour is always annoying, heavy and unpredictable!
An OS should provide the user an interface to instantaneously use the function he wants to use. And nothing else.

If that sounds good and obvious to you, then… Join the project!

About the author

Hello!
I am a 24 year old French student slightly interested in computing. ☺

I like doing things well, or not to do them.

You can contact me via e-mail: calimeroteknikfree.fr or on IRC: irc.freenode.net, channel #ctkarch. (CalimeroTeknik)