On Sun, Jan 17, 2016 at 11:38:56AM +0100, Emery wrote:
I would agree that the file system APIs should be included in the next release of the manual, now that the VFS has outgrown libc and Noux. If a volunteer is needed I could make draft. Emery
Hey Emery,
Sorry to hijack this thread but I've been meaning to ask: Have you considered using Guix instead of Nix? I feel that as we all get more and more serious when it comes to a package manager for Genode, Nix may be a bit of a low level choice. Guix is fairly new but has a few key features that may be of interest to the Genode project in particular:
- A focus on reproducible builds.
Guix has a focus on reproducible builds meant to be shared with others in a decentralized fashion, rather than from a single source. For a system with a focus on security, it'd be nice to see a package manager that keeps us honest.
- An architecture intended to be composable.
I think this is probably the biggest gap between Nix and Guix in philosophy. Guix is intended to be composable- you can use it within existing systems, VMs, disk images, containers and on bare metal. Rather than being just a package manager, it's a complete environment manager that you can use to bootstrap.
On a technical level, support for more fine grained environments like HURD is going to happen in the future, so perhaps it'd be interesting to follow that.
- Support for importing from other package managers.
Something you've hinted at before is having a Noux builder and perhaps down the track a Genode builder- Guix has things like Python, Ruby, Haskell and Nixpkgs import tools that download packages and fill in some boilerplate to make creating new packages easier. In addition it separates build systems like Cabal, Autotools and CMake which are defined on a package level.
I'd love to see a Genode system using a tool like Guix to have 'one' system running across VMs, containers, and languages with all the inter-language dependencies figured out and a common store.
I understand it's a huge leap from Nix to Guix, but I thought it might be nice to dream a little. Guix still uses Nix under the hood, so it can still benefit. Of course, Nix could provide all this eventually but then you just get Guix.
Cheers, Jookia.