3 ms·
I think with the introduction of Nickel [1], Nix packages would be rewritten in it over time, which may be a good thing (types) or a bad thing (another fragment
by ducktective 3y ago
I think with the introduction of Nickel [1], Nix packages would be rewritten in it over time, which may be a good thing (types) or a bad thing (another fragmentation after flakes) depending on your point of view.
On the other hand, Guile is not a DSL but a general purpose language or a Lisp (Scheme to be exact), so it's not actually a downside compared to a DSL in my view.
I myself am torn between these two. Nix community is larger and they have more packages. Guix, being a GNU project, obsessing over ""non-free"" sure won't help in its adoption. Even debian folks toned down their stance on this, why couldn't Guix do so too?
[1]: https://github.com/tweag/nickel https://github.com/tweag/nickel
- rekado 3y ago> Guix, being a GNU project, obsessing over nON-fReE As a long time contributor to Guix I find that the "obsessing" is regularly done by others when talking about GNU. There's enough useful free software out there that needs packaging, and that's what I do. I don't need the extra headache of special snowflake licenses or custom restrictions. For nonfree software that doesn't have a popular alternative I contribute to guix-science-nonfree. It's barely an inconvenience for users to expressly add another channel to their Guix installation.
- accelbred 3y agoWhen I used Guix, I needed nonfree for Firefox and the upstream Linux kernel. I also prefer to only use free software, and also like them not including proprietary software. Needing a channel was a huge inconvenience as you would often pull your channels and stuff would break, as guix was updated but non-guix wasn't. Managing channel manifests was a pain. Firefox would often be months out of date as well. Moved to NixOS, didn't enable allowUnfree, and had an actually up to date and simple to maintain system. Flakes solves the channels problems too. I had put a lot of effort into making Guix work, but it just had too many usabiltity issues, and the policy on firefox was a major one.
- davexunit 3y agoCounter anecodate: I use guix + the nonguix channel for firefox, linux, etc. and it has been smooth sailing for quite some time.
- Kalq 3y agoI'm not sure how long ago you used Guix, but in my experience, modern day nonguix is very up to date with Firefox and upstream Linux. Combined with things like Guix shell, time machine, and pinning specific commits, I find things have not broken for me in ways that I couldn't easily resolve in a few minutes in a long time.
- nyberg 3y agoI've been using guix since 0.15.0 and haven't seen it as much of an issue. Sure, channels will sometimes be out of sync with the latest commit but that's to be expected given that you're likely not following a version cut but rather the latest commit. It's easy enough to bump the package locally (inherit, etc) or contribute an update which solves this for everyone. Needing channels for non-free is a feature as the system will be pure by default and can make progress towards fully reproducible builds for all packages rather than having several blessed non-free blobs around that drain maintainance time. For the record, I use linux-nonfree, amdgpu, iwlwifi, firefox, and steam.
- b3n 3y agoGuix comes with a service for using Nix packages[1], if that's what you want. It's very simple to setup, and would allow you to use Nix's Firefox package without any issue. [1] https://guix.gnu.org/manual/en/html_node/Miscellaneous-Services.html#index-nix_002dservice_002dtype https://guix.gnu.org/manual/en/html_node/Miscellaneous-Servi...
- ryan77627 3y agoI've been using Guix for a bit over 2 months at this point and honestly the whole 'non-free' software thing has not been an issue in the slightest. Use the System Crafters installation iso [1] to get around driver issues on install, and then the only time I've ever had the system complain to me was it warning me one of my hardware components wouldn't work (which it did, since the System Crafters ISO uses the standard Linux kernel). Afterwards, just add nonguix (and I even added Nix as well, so I get the best of both worlds!) If a package isn't in Guix and I don't want to make a package definition, I simply pull it using Nix home-manager. May not be the best or 'proper' setup, but I find it works well enough. [2] [1]: https://github.com/SystemCrafters/guix-installer/releases https://github.com/SystemCrafters/guix-installer/releases [2]: https://g.stationery.lol/ryan77627/guix-dotfiles https://g.stationery.lol/ryan77627/guix-dotfiles
- ducktective 3y agoFor installation and setting up something as basic as drivers, we should follow a non-official guide?
- orbital-decay 3y agoYes if your only connection is wi-fi with drivers that require nonfree firmware, which is missing from the official ISO. You're supposed to discuss nonfree software in some non-official place too. That's what been stopping me as well; the system seems technically superior to Nix and not nearly as chaotic, but hardcore FOSS idealism makes it impractical sometimes.
- ryan77627 3y agoI will admit, I was hesitant as well, but so far it's been fine. The #guix community on libera.chat is very active and has been nothing short of amazing in helping me understand the ins and outs of Guix. For any non-free software I use, #nonguix in libera.chat exists. It's less active but still pretty active (plus I pop in occasionally).
- ryan77627 3y ago
- pxc 3y ago> I myself am torn between these two. As a regular Nix user and occasional Guix dabbler, I think you really can't go wrong either way. I feel that Guix often gets short shrift here on HN, but at the end of the day it's a really thoughtfully designed project with a capable community and great documentation.
- t0astbread 3y agoFor the record, Nix doesn't let you install unfree packages by default either. You have to flip a flag to allow it and you can also supply a predicate to conditionally approve unfree packages (https://nixos.org/manual/nixpkgs/stable/#sec-allow-unfree https://nixos.org/manual/nixpkgs/stable/#sec-allow-unfree).