Ever since I’ve started using Unix systems I always asked myself one question: if this Unix stuff is so great, why are all your applications scattered around the whole system and not put neatly into one directory per application?
This question became stronger when I first met Mac OS X. They’re doing exactly that: all applications are in /Applications/appname.app. You can install applications by simly dragging them into the /Applications directory, no installers (usually), just drag-and-drop. Yesterday I found out that this way of structuring your filesystem originates from “NextStep”:http://en.wikipedia.org/wiki/NextStep, a company that was bought by Apple around 1997, which on its turn used it to base its tenth version of Mac OS on.
Ever since I started using OS X I wondered: would it be possible to have a Linux distribution based on this concept? Just a neat filesystem in which you can install and uninstall software by simply using cp and rm? Or xcopy-deployment as Microsoft calls it. However, at that point I didn’t consider myself knowledgeable enough about Linux to give it a shot.
This morning, when I searched for a Linux distribution based on “GNUStep”:http://www.gnustep.org, a free implementation of OpenStep (which is a standardized version of NextStep), I found “GoboLinux”:http://www.gobolinux.org. GoboLinux is a Linux distribution like any other, except that it uses a totally different filesystem lay-out, one fairly similar to NextStep and therefore Mac OS X.
The basic structure of applications is: /Programs/AppName/versionnumber/… this allows for multiple versions of an application or library to be installed. In order to make programs easily runnable (i.e. easier than running them by typing /Programs/OpenOffice/1.1/bin/openoffice every time), symlinks are created from /System/Links/Executables which is on each user’s path (like /usr/bin on normal Unix systems). GoboLinux also contains scripts to easily port normal Linux software to a GoboLinux-like file structure.
It definately looks like an interesting project. I’m downloading the ISO right now (which is also a LiveCD, so I can easily test it). “Read an introduction to the ideas behind GoboLinux here.”:http://www.kuro5hin.org/story/2003/5/9/05015/62649