5 ms·
Guix has a more palatable language than nix to me. However I have pretty much no interest in interacting with gnu projects. I don't share the ideology strong en
by zaphar 3y ago
Guix has a more palatable language than nix to me. However I have pretty much no interest in interacting with gnu projects. I don't share the ideology strong enough to put up with it. So it stays in the "cool tech, won't use" category for me.
- tetris11 3y agoI had the same hangups, with Guix being way easier to grok than Nix. The non-guix repository and their substitute has you covered in the non-gnu side of things. You can use a regular kernel (read:not linix-libre) and it downloads all the required microcode and drivers.
- SuperSandro2000 3y agoThere shouldn't be much difference between understanding nix and guix, it is basically the same idea.
- pasc1878 3y agoUnderstanding yes but language wise no. Guix is a known language scheme. nix is off - I can't work out what parameters are needed for any one function call they all appear to be in a global namespace. Unfortunately I need to be able to use non Linux systems
- hamandcheese 3y ago> nix is off - I can't work out what parameters are needed for any one function call they all appear to be in a global namespace. If you are talking about something you saw in the nixpkgs repo, then that is probably the callPackage design pattern [0], which is basically a form of automatic dependency injection. It definitely made it hard for me to grok how nixpkgs package definitions worked at first - there was so much stuff getting injected dynamically, without any trace of where those dependencies lived. The callPackage pattern is an important piece that allows you to override a dependency with a different version, though, which is essential when customizing existing packages for your own needs. [0]: https://nixos.org/guides/nix-pills/callpackage-design-pattern https://nixos.org/guides/nix-pills/callpackage-design-patter...
- pasc1878 3y agoNo in setting up a flake to configure my system but yes callPackage seems odd as well
- SAI_Peregrinus 3y agoI'd say Nix-the-language isn't that hard or weird. Nixpkgs-the-standard-library is much, much harder, and basically undocumented. Nixpkgs-the-repository is nice and search.nixos.org works well.
- pasc1878 3y agoNix the language is OK if it is all in one file. How files all each other and the parameters is odd. You call a function with two parameters but the file starts with many
- aidenn0 3y agoMy experience with other GNU projects is that the community will give you a cold shoulder if you ask about a problem involving non-free software;[1] I have been told that this is not as much the case with Guix, so I may try it out. 1: And this is perfectly fine; communities can and should have such standards, but it will be off-putting to those who do not share the same values.
- tetris11 3y agoFrom what I've seen, they will point you in the direction of where you can get further info about non GNU resources, but they wont provide the extra effort of debugging your code. They're otherwise pretty kind/willing.
- SuperSandro2000 3y ago[flagged]
- Geezus_42 3y ago[flagged]
- rowanG077 3y agoIt's the opposite to me. Guile is an exercise in pain and suffering to read. While nix is definitely not perfect it's essentially json with some cherries on top.
- soraminazuki 3y agoThere's definitely a huge gap in the perception and the actual learning cost of the language part of Nix. There's few things to know about the language: JSON data types, functions, conditionals, and a small number of operators (arithmetic, concatenation, etc.). But there's so many people drawing comparisons with Haskell for, uh, apparently no reason other than to make it seem harder than it actually is.
- spott 3y agoThey compare them because Haskell is probably the most famous language with a function currying syntax. That is pretty much where the similarities end though.
- femiagbabiaka 3y agoHrm, I disagree. I think a functional language is a difficult transition, but the transition is worth it. If you want to be able to do things idiomatically in Nix and understand what you’re doing, there is a learning curve. It’s not a higher learning curve than a computer science bachelor will allow you to push past, but many people don’t have that background either. Quality training materials bridge that gap. If Rust and Haskell can do it, Nix can too.
- deleted 3y ago[deleted]