Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I fear it being 'GNU' they will shoot themselves in the foot somehow. Bad marketing, unnecessarily geeky and childish nomenclature, GPLv3 and make it all free software, no proprietary drivers, hard to get proprietary third party software to install et cetera...

'GNU Guix is a transactional package manager and an advanced distribution of the GNU system that respects user freedom.'[0]

NixOS is developed using the MIT license and does seem to just want things to work.

I am bringing this up purely as a question, is that fear justified or am I missing something? Would be glad for a take on this from someone who knows more.

[0] https://savannah.gnu.org/projects/guix



The choice of GPL doesn't seem to be hurting the Linux Kernel. I doubt it'll hurt a package manager either. Plenty of Debian infrastructure software is also GPLv3.

At any rate, the choice to go "have a pure base" is the right one IMO: it's nice to have a system where I know I have the right to use/modify/distribute changes to the entire thing. It's easier to start with that pure base and add impurities if you need them (eg if your hardware requires blobs to operate it) than the reverse.

That said I think it would be helpful if there was a place to direct users who need to figure out how to install such blobs, even though I agree that the official mailing lists and project repository should not be it. (I am running a blobbed kernel on my current machine because I have to, but I previously was able to run with the linux-libre kernel Guix ships with. It's definitely possible to do if you need to, just not well documented.)


It's open source, so of course it's 'possible', but if it's difficult to do and another project actually fully supports my use case, documents it, allows questions on IRC and mailing lists with regards to it... the choice for many is obvious then. Last I checked the Linux Kernel was GPLv2 only, and we all (I guess) know the reasons why.


I guess it depends on what you mean by shoot themselves in the foot. There are major differences in philosophy and bar the "superficial" differences these are quite different projects.

For one nix simply doesn't have a project focused on bootstrapping. As another example compare rust bootstrapping[0] versus using a rust binary[1]. Nix also has no alternative to guix challenge[2] or guix pack[3]. Even a comparison of their documentation shows this difference.

The question is if you consider these measures useful, and if you think bootstrapping is even an issue in the first place. To me this is the bigger question when comparing the two projects, as depending on your philosophy guix is either taking necessary precautions or unnecessary mitigations.

Given posts like this their marketing is okay, I haven't seen much unnecessary childishness - but both projects are fundimentally complicated thus have to invent words for concepts and there's nonguix[4] and most people run nix on GuixSD for their non free software needs.

I doubt guix will be more popular than nix anytime soon, but I don't think NixOS will be more popular than Arch anytime soon either.

[0]: https://guix.gnu.org/blog/2018/bootstrapping-rust/

[1]: https://github.com/NixOS/nixpkgs/pull/85542

[2]: https://guix.gnu.org/manual/en/html_node/Invoking-guix-chall...

[3]: https://guix.gnu.org/manual/en/html_node/Invoking-guix-pack....

[4]: https://gitlab.com/nonguix/nonguix


> I don't think NixOS will be more popular than Arch anytime soon either.

It seems to already have more packages though (60,000 vs 11,000).

I guess NixOS, and also Guix, will be used first in domains where both recentness of tools and libraries, as well as the capability to exactly reproduce software and results are important, such as in science, AI and commercial data analysis.


Nix has `nix build --check` which should do the same thing as `guix challenge`. I think there may be more fine tuned options in challenge though.


It's not the same. Guix also has "guix build --check" which builds a package a second time to compare potentially different results.

"guix challenge" challenges different substitute servers and also compares what they offer with what you may have installed (whether you built it locally or downloaded it from elsewhere). It's really quite different from "guix build --check".


For those who are not into free software, or do not believe in user freedom, I believe there's already an excellent choice of software options, many of which will also sell your privacy. You will not find GNU to compete, good luck!


Yes it's GPLv3, and yes it doesn't package proprietary software. (Would you expect anything else from GNU? :)

There are a few unofficial channels that do package proprietary software for Guix, though they're of course not advertised on the official Guix site, etc.


Yeah this is my take on it too. While I deeply admire the GNU philosophy and practice I debated adopting NixOS or Guix a few months ago and ultimately adopted NixOS as I got the same vibe as you.

That said I really want to learn more about Guix. It seems like a more pure impl of a functional package manager but haven’t worked with it enough to know the difference.


> unnecessarily geeky and childish nomenclature, GPLv3

You seem to be a bit new to this issue.

Building software from source and using FLOSS licenses makes sure that the software is available in the long term and can be developed further (even if the original developers lose interest or run out of time for that).

There are many more advantages in using free (copyleft) software which can be build from source, and making this capability available to the end user as Guix does:

- better privacy protection (the software does not phone home or leaks your private data, as does, for example, Zoom)

- a working software which is used will not be simply withdrawn and be forbidden to use (as many Google software projects).

- useful standards and file formats, such as markup in text documents are available in the long term (I still have latex sources from 1993 around which I wrote in another language that uses different char sets, and which I can today compile without any problem).

- FLOSS software also has the advantage that it is more economical with attention (a very precious human resource), as it only display useful stuff and does not extra things that only have the purpose to capture the attention of the user. For example, I really hate it when I open a web browser with a blank page, to look up something I am working with, and it is full of advertisements for news for completely unrelated stuff up to sexual gossip and celibrity trash, when what I need to do is concentrated work. Once you have become aware of how much many nonfree software wastes your attention, and that this is actively against your interests, it is difficult to ignore that.

- it does not need to assume unrelated features to compete, which prevents feature bloat and improves usability (your picture viewing program does not need to be a file manager, and your image editing program not a publishing platform)

- preventing feature bloat and open interfaces also improves its interopoeration with other software (who does really believe that MS Word is usable?)

- preventing commercial-driven featuritis is also good for long-term usability. I learned to use Unix in 1994 I believe, and I can still navigate and inspect the file system using cd and ls.

- Using open standards also means, for software developers, that their knowledge does not goes out of date quickly or becomes unusable when they change employers. Non-free software tools have a much shorter half-life (anyone still using Silverlight or Visual Basic?), and this means a lot of your learning effort becomes useless after a few years. This might be a minor advantage for somebody who has worked one year or two but it makes a big big difference after many years of working.

- As a lot of innovation happens incrementally and evolutionary, and innovation is based on open exchange of ideas, free software is very open to innovation. At the same time, as working code can always be shared (as, for example, the code for the build daemon in NixOS and Guix), innovation is better conserved than in closed-source software with usual commercial licenses. At a previous employer, I mighhjt have done a really good job with some kind of signal processing which would be useful for things like making wind energy more reliable, but the project manager fucked that up, the software is closed source, and the effort is lost to humanity. I would very much prefer the generation of my niece to get the returns of the work I did.

I could go on for half an hour but I have something else to do :)

But, all of this boils down to that the software on somebody's computer is controlled by its user, not somebody else or a big company which has interests very different from him (or her), and this is what the GPL is about. And yes, the GPL is a means to some end, one could discuss how to reach its specific goal in a different way, but simply labeling its intention as "childish" is just FUD (https://en.wikipedia.org/wiki/Fear,_uncertainty,_and_doubt).




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: