5. May, 2003
5. May, 2003
in by Michael Neumann

Window-Manager

I’ve tried a whole bunch of different window managers (or desktop environments): KDE, Gnome, WindowMaker, AfterStep, Enlightenment, MetaCity, SawFish, Xfce, ROX, IceWm and some others I do not remember anymore.

ROX Desktop

ROX (rox.sf.net) is one of the best I’ve ever used, if it wouldn’t be so buggy (ROX-Filer faults on showing large directories). It’s very easy to use, looks nice and has a great file explorer (ROX-Filer).

IceWm

IceWm (icewm.sf.net) I even prefer more. I’ve used it years ago before trying all the other window managers out. Now, I’ve finally switched back using it.

IceWm is small, solid and rocking stable (I’ve never ever seen it crashing). It’s themeable, easyly customizable through simple configuration files and has multiple virtual desktops. But most important is that the windows behave as I think they should behave (maximizing etc.. all very Window-ish), no exotic behaviour.

Mail-Clients

As with window managers, I’ve tried a lot of different mail programs. On Unix, I started with Pine, then switched to mutt, then tried a lot of GUI mail readers, e.g. KMail, Sylpheed, Balsa, Mozilla Mail or Evolution.

Evolution

Evolution is very similar to Outlook, everything is included (Groupware). It looks very nice and usually responds quickly (unlike Mozilla), but seems to hang very often on my computer.

Mozilla Mail

Next best of GUI-clients is Mozilla-Mail, but it’s a bit slow. I’ve used it instead of Evolution, but wasn’t happy with it, either.

Mutt

I’ve removed both of them, and installed mutt again. The reason why I didn’t used mutt a long time was that no SMTP client is included, so you have to use sendmail or something similar (for the solution of this problem see my article at www.ntecs.de/blog/Tech/UNIX/Mail).

There’s nothing you cannot customize in mutt. Marcros, custom keybindings and more. Furthermore, mutt is extremely fast and rocking stable. Should I mention it’s text-mode?

Editors

Vim

Vim is great once you’ve learned it. It’s like learning machine-typing. Once you’ve got it, you’re incredible fast. Vim’s syntax high-lighting is very good and supports nearly every language (currenlty more than 300).

I tried Emacs, but as I often need to start an editor from command line, it’s startup takes too long. Emacs is a real best, everything is included. I don’t like that, but that’s my personal opinion. Emacs is a very good editor!

WWW Browsers

I currently use Opera and Mozilla Firebird (Phoenix) as well as the text-mode browsers elinks and w3m (with image support). Opera has good bookmark support but dumps core every so often.

Shells

I use zsh (or the default tcsh as root on FreeBSD).

Versioning/Configuration Managament

CVS

I avoid it’s usage whenever I can. It was good as long as no other, better, tools existed. But it’s a mess when renaming files, and there are many other historical mistakes.

arch

This project seems to be canceled.

aegis

Very nice tool, but it imposes a process on the programmer, so it’s not as lightweight as subversion, OpenCM or CVS.

subversion

Very good program! It’s the next generation CVS. I’ve used it since rev. 1868 (?), but now I’ve dropped it in favour of OpenCM.

I found it very hard to compile subversion myself (without using the FreeBSD port), as it depends on several libraries (neon, apr).

OpenCM

I use it for all my new projects. It’s commands are similar to CVS (even simpler) and has all the features subversion provides (except WebDAV), plus some more (further versions will reintroduce support for replication). OpenCM makes intensive use of cryptography, integrity of objects is ensured (=> high-assurance).

OpenCM can be used to version more generally any kind of object, not just files. The server side do not even know about files. It’s the client tool that maps file names and attributes to objects.

OpenCM is developed by the developers of EROS, the Extreme Reliable Operating System (www.eros-os.org).

Operating Systems

I’ve used in this order: TOS (ATARI), DOS, Windows (3.x, 95, 98), Linux (Suse 6.0), Windows, NetBSD, NetBSD, NetBSD, FreeBSD. Of course I’ve also tried Win2000/XP but never really used them.

Furthermore, I’ve evaluated QNX, Plan9 and EROS as well as some minor ones.

Linux

Maybe Suse’s fault, but Linux never made me excited. Linux is no operation system at all, it’s a kernel, but that’s another story (I don’t try to flame).

NetBSD

This is my favorit! Its code base is of a very high quality, there’s no featuritis and no hype. And of course, it runs!

FreeBSD

I am currently running FreeBSD 5.0 on my home computer and my server. It’s generally more up-to-date than NetBSD (it has more ports) and that’s why I do not currently use NetBSD. But there’s no huge difference. I like all BSDs!

Plan 9

The Unix-successor from Bell Labs. It has features not found in Unix, e.g. namespaces or no root user. Almost everything is a file in Plan 9, even the Window Manager (8 1/2) is controlled by simple file I/O.

It’s free, but has a strange license. Hardware support is limited.

EROS

EROS, the Extreme Reliable Operating System, is based on capabilities. Everything down to sectors on disk or single memory pages are controlled by capabilites (non-guessable random numbers). It’s security can be proven by mathematics.

It’s processes are persitent without interaction by the programmer. Every 5 minutes, the processes are check-pointed and written to disk. Thus, EROS do not need a file-system (and does not have one).

EROS is not (yet) usable for users and will probably never be! It’s for high-reliability and security.