4 ms·
Man, I’ve really wanted to take the plunge and dedicate some play time to GUIX for a while now. I feel like between the GUIX package system and Shepherd, they’r
by peatmoss 8y ago
Man, I’ve really wanted to take the plunge and dedicate some play time to GUIX for a while now. I feel like between the GUIX package system and Shepherd, they’re creating an authentically new and exciting thing in the universe of Linux distributions.
The fact that they’re using Scheme for so much of it is also pretty cool, as I think this sort of high level systems programming is a great potential use case for showcasing meta programming as well as the unique power of lisps for code-as-data.
- rufugee 8y agoSame here...as a NixOS user, I really wish it used scheme instead of the nix language. However, I do like the pragmatic nature of NixOS (you're able to easily install non-free packages). GUIX doesn't make this easy at all from what I understand. I appreciate those virtues, but practically speaking, I have to use non-free software on the desktop all the time.
- _emacsomancer_ 8y agoGuix does have the capacity to add 'channels', e.g. https://gitlab.com/mbakke/guix-chromium https://gitlab.com/mbakke/guix-chromium , so while non-free software while never be part of the distribution itself, it could be done unofficially. Also, you can run the Nix standalone on top of GuixSD, so you could run GuixSD and then use Nix to install whatever's missing.
- yorwba 8y ago> you could run GuixSD and then use Nix to install whatever's missing. How much cooperation between the two is necessary? If I wanted to install CUDA drivers with Nix would it "just work" (i.e. if it works on NixOS it works on GuixSD) or could GuixSD make problems? I found a comment from a year ago claiming that the kernel wouldn't load blobs: https://news.ycombinator.com/item?id=14630581 https://news.ycombinator.com/item?id=14630581
- rufugee 8y agoI'd like to understand this as well. It's a viable option for me if it truly works.
- _emacsomancer_ 8y agoI'm not certain about CUDA drivers and whether this sort of thing work "just work" via the Nix package manager on GuixSD. That sounds like you might need to recompile kernel headers or the like. Re: the comment about the Guix kernel and blobs: Guix uses the linux-libre kernel which has blobs removed. BUT you can use a custom kernel on Guix, so you could use a blobby kernel, but you would have to configure it. If you poke around, you can find examples of people doing this, e.g.: https://gist.github.com/TeMPOraL/306bbb7c627ab0d32fa84af831963563 https://gist.github.com/TeMPOraL/306bbb7c627ab0d32fa84af8319... But, in general, the standalone Nix package manager (and the standalone Guix package manager, for that matter) are designed to work as isolated units, not depending as much on the 'host' system, so lots of stuff does 'just work' regardless of whether the host distro is GuixSD or Debian or Void or Arch or whatever.
- rekado 8y agoIf you have a Guix package definition for CUDA then you can install it. There's no need to use Nix when Guix can be easily extended.
- dreamofkoholint 8y agoDo you have more detail/instructions on running Nix on GuixSD?
- _emacsomancer_ 8y agoJust install the standalone Nix installer like you would on any other (non-Nix) distro (see this part of the Nix manual: https://nixos.org/nix/manual/#chap-quick-start https://nixos.org/nix/manual/#chap-quick-start ). Both Guix and Nix are designed to work on top of 'foreign' distros, and this includes using a standalone Nix package manager on GuixSD and a standalone Guix package manager on NixOS (or both the standalone Guix package manager and the standalone Nix package manager on top of Arch Linux, etc. etc.)
- sevensor 8y agoHaving once spent a happy afternoon browsing the Guile info pages, but otherwise pretty unfamiliar with it, this seems to realize a lot of the promise that Guile has had from the beginning. Specifically, the idea that the language that ties together the GNU operating system is not C or bash, but Guile Scheme. A language that can do very low level stuff and GUI development and be used for scripting, empowering the users of a capital-F Free operating system that's hackable all the way down. That's my impression anyway. As I said, this is mostly gleaned from the Guile info pages, but I was impressed by the consistency of that vision with the GNU project's overall goals.