[Nix-dev] "NixOS is an *experimental* Linux distribution"?

Vladimír Čunát vcunat at gmail.com
Sat Feb 5 21:22:24 CET 2011


Hi.

- I agree that "experimental" may sounds too discouraging
I think that NixOS can't get much further without getting more users.
More users will give more feedback and thus better stability. There
will also be more people likely to write and maintain packages. More
packages and better stability will in turn result into more users,
etc.
We just have to jump into this circle somewhere if we want NixOS to
get out of the "experimental stage". I think there are many unique
features that can make NixOS attractive to a lot of users, perhaps
after some more polishing. But again, IMHO a real distribution (that
isn't just a modification of another distro) can't work with such a
small community.

- There is the question of stability
NixOS is unique in the way it can roll back bad updates but I still
think we should distinguish between "stable" and "testing" versions of
packages if we want to get rid of the "experimental" label. Not every
user wants to test every package and if some problem stays undetected
for a long time, it may not be easy to roll back (or do so without
dropping lots of useful updates).
(Side note: I would find useful the ability of per-package rollbacks.
I know It can be done by hand but running something like "nix-env
--rollback firefox" would be so much simpler.)
My idea is that a new expression/version/configuration on an
architecture (i686-linux, etc.) would always be "testing" at first and
after 'sufficient' testing by various users it could be declared
"stable" by the maintainer (security updates could get into stable
immediately). I see this as a tradeoff between amount of testing and
"new features", so the "stable" versions would probably be updated
less frequently than the "testing" (most users don't really need to be
on the bleeding edge, or at least in most of the packages) and
packages with few users may not have any "stable" version at all.
The philosophy could be, for example, that for every package the user
would choose whether he wants to update to the "stable" or to the
"testing" version by default.

My conclusion: bugs are in all distros but NixOS provides great tools
to handle them (easy per-package rollbacks, possibility of automatic
building and testing).
We shouldn't scare off new users because we really do need them. To
help them, we should declare which packages are well tested and which
are not (and we should strive to make the life of *any* regular user
or maintainer as simple as possible).

To everyone: what are your ideas about this?

Vlada



More information about the nix-dev mailing list