Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
GoboLinux 015 released (gobolinux.org)
42 points by jhasse on May 9, 2014 | hide | past | favorite | 23 comments


Really excited to see this get active again. GoboLinux sets itself apart from other distributions being one of the few that tackle a drastic change to the filesystem. They keep compatibility with the filesystem hierarchy standard via symlinks but that is mostly hidden from the user.

For those wondering about more information there is definitely a better writeup about the file system layout on wikipedia.

http://en.wikipedia.org/wiki/GoboLinux

As well as more recently written slides

http://gobolinux.org/doc/fisl2014/GoboLinux-015.pdf

I'd say the filesystem is really the differentiator here. Back when I first tried it out boot times were insanely fast compared to other distros of the day. However I'm sure that gap has been shortened (if not inversed.. haven't tried the latest version.)

Not saying the filesystem had anything to do with the boottimes. That was because they use a different boot system.


Another distribution which ditches the FHS is NixOS. On top of this, it implements a configuration management system as a core part of the OS, is a source distro with an online binary cache (so installing things by default doesn't require building anything, but it's very easy to modify package definitions), and allows for very easy rollbacks, multiple system environments, and a bunch more interesting stuff. It's also not had a multi-year hiatus as a recent part of its history.


True. But the hashes Nix uses in folder names make it a bit more complicated than it has to be. But I like both GoboLinux and NixOS and really hope one of them or a similar approach takes off some day.


As someone that just (2? 3? days ago) migrated his laptop to nixos I can certainly sympathize. That said, hashes aren't a big issue and the community is quite nice. Packages aren't thaaaat up to date, but pull requests to bump these things are answered in days (sometimes hours). I have FreeBSD PRs open for weeks...

In the end I like it. I'm not sure if this is the best thing ever, but I appreciate the fact that I have a single file that describes my whole system.


> Packages aren't thaaaat up to date, but pull requests to bump these things are answered in days (sometimes hours).

It's also possible to write custom packages as part of your configuration if you need them "right now", through `packageOverrides`. As a general rule, packages are updated by people who need newer versions of packages; there's not really a maintainer infrastructure like most distros have. If something needs to be done, whoever is affected by it does that thing. I'll point out that there's not a security team either yet, so it's not really suitable for real production use.

Personally, as someone who's battled the usual configuration management approach of "here's a fully working OS with its own ideas of how things should be done... now modify that through a really awful ad-hoc scripting language without breaking anything", NixOS is amazing. It's even possible to build tests into your system configuration!


I wish other distros would follow GoboLinux's lead and do away with the horrible "standard" Unix filesystem. It is a usability disaster.


I actually like the standard Unix filesystem layout, I find it much better organized than the one used by Windows or OS X.


So just to be clear this is a version of Linux which abandons the filesystem hierarchy standard? (man 7 hier ; http://www.pathname.com/fhs/)


Based on the first paragraph of the site, they're indeed using their own filesystem layout. Whether or not it's cleaner/easier/useful is, of course, up to the user.


It doesn't completely abandon it - the old-fashioned filesystem is kept intact through symlink management.


From http://www.gobolinux.org/?page=at_a_glance

~] ls -l /usr/include/stdio.h | cut -b 45-

stdio.h -> /Programs/Glibc/2.3.6/include/stdio.h

Does anyone know what happens if e.g. a later version of Glibc overwrites the stdio.h 2.3.6 version found under /usr/include/stdio.h?

How does GoboLinux still retain its "compatibility with the Unix legacy" in such situations without breaking things?


It builds software in it's own namespace so it sees /usr/include/stdio.h as a symlink to whatever version it was built for, and the symlink won't change if you update Glibc.


Why ? I mean don't get me wrong, it does look organized yes, but can someone explain me the pros and cons about such a thing ? the website is very sparse about it.


For example:

* Installation of multiple versions of the same program is trivial

* Uninstall programs just by deleting a Folder


But you would still need a tool to manage dependencies, track updates, etc. And it will be this tool that you will need to use to keep the system in a consistent state.


Depends on your perspective on file systems. For those that want to get to know their file system inside out (so they know what they have on their system) a more straightforward layout is its own benefit.


I don't see the point. If it's all about easy to compile and use multiple software versions, why not just install stow in your current distro?


So is version 015 supposed to be 13 or 15?


Yes, 015 is 13 octal. :) Remember when a bunch of distros inflated their version numbers to catch up with each other? We decided to poke fun on that and make the GoboLinux version numbers octal, so we'd have "scheduled bumps", so yes, we went from 007 to 010, and will go from 017 straight to 020 in the future :)


The filesystem sounds similar to what Homebrew for OS X does.


More appropriately, Homebrew is very similar to GoboLinux's Rootless project.

It's also worth noting GoboLinux predates Homebrew by about 7 years.


In fact, the original documentation of Homebrew described this approach as "The GoboLinux Way". (They no longer call it that, but this reference is buried somewhere in their git history.)


I'm not implying anything other than what I said.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: