Anyone interested in a Package Manager in Ruby?

Hi Marc Weber,

It depends on what you want. nixpkgs was designed to generate
results you can regenerate on a different machine (if possible).

That's a unique feature.

I agree with you. :slight_smile:

It was also designed to offer atomic upgrades.
From this point it follows that it should support
multiple versions.

Ok, I see. NixOS comes from a slightly different angle here.

Versioned directories are very simple and primitive compared to
what NixOS is doing. But both are much better than the FHS
solution to spread everything out directly without any structure
at all.

Don't use a computer but a pencile.

But I like the computer because I make less errors.

When I write with a pencil, I sometimes can't even read my own
writing. :slight_smile:

But I can always read computer-text.

You can't be more simple :slight_smile:

Well. I guess the FHS is simpler than Gobolinux (and much simpler
than NixOS) because you do not have ANY real structure with the
FHS other than an arbitrary convention of where things *should*
go - but this convention was derived 99% because it already was
there. Reasons why /usr or /etc exist, because the old C hackers
were lazy to type longer words. You will never see /system or
/System, you will only see /sys because they HATE to type long
names. Or uppercased words as well. This also means they will
NEVER change to ANYTHING that makes them type more ... even if
the resulting structure is more logical.

I think /Users is a lot more logical than /usr. Yet, /usr is
short for "users", and not for the backronym "unix system resource"
which would not make a lot of sense on linux either. We could
use a /lsr if usr really meant "unix system resource".

I mean if you want the features described above you can't
make it simpler.

I am not disputing this, I can see that. However I am so far
using versioned directories and it is working beautifully and
is very simple. This is the only thing I disliked about NixPS
so far, which is that directories like:

  /nix/store/5rnfzla9kcx4mj5zdc7nlnv8na1najvg-firefox-3.5.4/

Aren't friendly to my eyes. And if things are needlessly
complex to my eyes, then my eyes complain to my brain and
my brain starts to enter the "not want to" mood. I'd even
suggest for NixOS to overlay these directories into a
/Programs structure (or anywhere else the user wants to)
with a clear versioned structure. Well, actually ... Gobolinux
could be a subpart of NixOS where NixOS would manage
everything Gobolinux does - but also gives the user the
ability to entirely stay within the simplicity and beauty of
/Programs/ProgramName/VersionNumber :wink:

This is probably not completely possible as NixOS seems to do
more than that under the hood, but still, I myself am too
much in love with the abovementioned scheme to abandon it.

But as said before, the NixOS model rocks.

Well - its not quite true. Application state (eg gimp's
configuration) is stored in ~/.gimp. Unfortunately it also
has some pointers to /nix/store/xxxxx-this-gimp-build.
Thus if the hash xxx changes your ~/.gimp is broken.
This results in gimp no longer being able to open jpeg
files. However this kind of problem is rare and it can
easily be fixed.

Interesting.

nix: the package manager
nixos: the linux distribution based on nix (and the nixpkgs
build descriptions).

The nice thing: because everything is in /nix/store it does not
interfere with your existing system much.

Do whatever you want :slight_smile: I wanted to make sure you don't miss
nixpkgs cause I think it the best system available. There are
some drawbacks though. Eg if you rebuild bash everything has
to be rebuild because youwant deterministic results :confused:

Well, it sounds very interesting. So I could skip NixOS as a
distribution and solely use Nix. This is making it a lot more
interesting. :slight_smile:

Because if I can use nix without necessarily having to use NixOS
at the same time, then I can try it out, try things with it, and
so on and so forth.

I've become too much of a tinkerer.

Thanks for your writing by the way, appreciated!

···

--
Posted via http://www.ruby-forum.com/\.

Excerpts from Marc Heiler's message of Sat Jul 16 20:24:10 +0200 2011:

  /nix/store/5rnfzla9kcx4mj5zdc7nlnv8na1najvg-firefox-3.5.4/

Don't know what to say. Usually you don't work with those paths. So
there is no reason to worry about them. That's why I've a hard time
understanding what you're doing. On the one hand you seem to know the
basics of nixos - on the other hand you're worrying about such small
details which don't matter in practice cause implementation is hidden
from user. You use KDE or use PATH in shell. And there you only type
"firefox" or click on an icon. So it looks like you never really tried
using it. Well - mainstream distros (ubuntu,debian,..) still work better
for some cases such as mono development. However the most important
applications are working well. If you want to be little less mainstream
nixos easily wins. From my point of view we can close this
discussion - cause I sayd what I had to say.

Marc Weber