[Nix-dev] Distribution compatibility

Mathnerd314 mathnerd314.gph at gmail.com
Thu Dec 13 07:11:35 CET 2012


It seems like Nix can be installed on pretty much any system (including 
Windows?), but the reverse does not seem possible: why shouldn't one be 
able to install any system on NixOS?

In a perfect world, I envision having multiple systems running at the 
same time a la Qubes (http://qubes-os.org/trac), all nicely managed 
using nix, but a good start is finding a way to stuff Debian's package 
repository into NixPkgs.

Currently, it seems like installing Debian packages on NixOS requires 
manually writing a derivation, and there are no tools to automate 
writing such a derivation. There's also the question of whether the Nix 
package format is flexible enough to allow installing/breaking up 
packages in something approximating "the Debian way," and whether the 
dependency solver in Nix is powerful enough to handle ~26,000 new 
packages, each with 3+ versions from the various debian-stable, 
debian-testing, and debian-unstable repositories.

I looked over the Mancoosi project, and one of their tasks was 
formalizing maintainer scripts into a DSL. I think they've stopped 
(mostly), but EVOSS (the system they developed) is still up: 
http://mancoosi.di.univaq.it/?page_id=36

Presumably it wouldn't be too hard to take their translator and modify 
it to output in a format that Nix can read instead of whatever DSL they 
came up with, and then implement whatever glue code is needed to get Nix 
to understand those. After that it's a question of whether the 
infrastructure is up to it; even if Nix works perfectly (which it won't; 
it doesn't have any sort of SAT solver but just brute-forces things, 
correct?), Hydra will run out of disk space. I expect these problems can 
be mostly ignored because they're orthogonal to the actual packages.

Thoughts? Reasons this won't work that I'm missing?

-- Mathnerd314


More information about the nix-dev mailing list