GoboLinux was created out of a desire to try new approaches in the Linux distribution design space: the innovative filesystem organization allows us to use a radically different approach in package management — effectively doing away with the package manager.
GoboLinux 016 continues this journey, with a focus on the exploration of novel ideas aiming to make the system simpler yet functional.
Runner is a brand new filesystem virtualization tool, specifically designed for GoboLinux. It dynamically changes a process' view of /System/Index based on the program's Dependencies file.
From day one, GoboLinux has always supported keeping multiple versions of a program installed on disk at the same time, but when two versions had conflicts, you had to choose which one would be activated in the system as the default.
With Runner, you don't need to worry about which version of a given dependency is currently linked (or activated) in /System/Index: Runner gives the process its own virtual /System/Index with all the right dependencies.
Instead of using full-fledged containers (which carry an entire distro inside them!) just to avoid library conflicts when running an executable, in GoboLinux you can launch a program with Runner to make sure the filesystem view of the process will match its dependencies. Runner builds a custom mount table for the process, like container tools do, but without all the file duplication: it dynamically picks the correct parts of your /Programs tree. This approach is only feasible because in GoboLinux programs are logically organized in the filesystem.
Unlike mainstream distributions, GoboLinux doesn't need a particular "multi-arch" setup for supporting 32 and 64-bit binaries. Using Runner, we can simply give 32-bit processes their own view of the standard Unix directories so that, for example, /lib/libc.so.6 is a 32-bit library for a 32-bit process and a 64-bit library for a 64-bit process. This screenshot shows an example session.
This release includes GoboNet, our own daemon-free network manager. Feature-heavy network managers like Wicd and NetworkManager are great at handling numerous complex scenarios, but the vast majority of the time something much simpler would do. And when the network manager does not suit your needs, it is important that it does not get in the way.
GoboNet is a simple wireless networking tool that "just works" in the common case and doesn't get in the way when you need to tweak things yourself. It does not use DBus or any daemon of its own: it only launches dhcpcd to handle DHCP, manages Wi-Fi passwords and provides a command-line API for ease of use and scripting.
GoboLinux 016 features a minimalistic yet comfortable desktop based on the Awesome window manager. Awesome is well-known as an excellent tiling WM, but its Lua scripting capabilities makes it extremely customizable. In Gobo, we tuned it so it ships with a setup based on floating windows which should be familiar to all users, while keeping all the power features of Awesome at hand.
We also developed custom Awesome widgets that integrate nicely with the no-frills philosophy of Gobo:
And just like the background of this website, the wallpaper is procedurally-generated — you get a new one on every boot. :)
© 2002-2016 GoboLinux.org.
gobo AT gobolinux DOT org