Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Q&A

Are NixOS and Guix analogous projects?

+2
−0

From what I can tell, both NixOS and Guix are built around a package manager which, instead of installing package into the "common environment" as is traditional, isolates them to mitigate issues arising from various dependency/version conflicts.

Are there any significant differences between these two distributions? Why would one decide to use NixOS and not Guix, or vice versa?

History
Why does this post require moderator attention?
You might want to add some details to your flag.
Why should this post be closed?

0 comment threads

1 answer

+3
−0

They are broadly analogous; there's a lot of cross-pollination of ideas between the projects.

Some terminology first, because you'll notice that both columns have duplicate entries and this often confuses the conversation.

Component in Nix in Guix
package expression language Nix Guile Scheme
(independent of Guix)
package manager software Nix Guix
repository of packages Nixpkgs Guix
operating system built around above NixOS Guix System

Significant differences between the projects include:

  • Guix (the package manager) consumes input expressed in (Guile) Scheme. Nix (the package manager) consumes input expressed in Nix (the language). Some people love Scheme. Some people hate Scheme. Some people are indifferent toward Scheme but hate that Nix is yet another special-purpose language to learn. Some people like Nix the language despite its niche status.
  • Guix System uses GNU Shepherd as its service manager and init system. NixOS uses systemd. Some people love systemd. Some people hate systemd. Some people are indifferent toward systemd but hate that GNU wrote yet another implementation of a service manager. Some people like GNU Shepherd despite its niche status.
  • Guix (the package repository) contains libre software only. Nixpkgs restricts itself to libre software by default, but allows flags to be set to install non-libre software. The maintainers of Nixpkgs are less zealous about libre software than the GNU project is (a somewhat vacuous statement, given the ideals of GNU), so there are more errors in license classification in Nixpkgs than in Guix. Conversely, there are generally more packages available in Nixpkgs than in Guix, even restricted to the libre subset.
  • To grossly overgeneralize, Nix is older and Guix is nimbler. The pace of innovation seems faster in the Guix project. But Nix has more weight behind it in the form of paid developers from various companies invested in the success of the project.

[Third-party edits adding to this list are encouraged on this post.]

History
Why does this post require moderator attention?
You might want to add some details to your flag.

0 comment threads

Sign up to answer this question »