4 ms·
Nix has the same problem as Terraform: it solves a lot of problems, but you have to 'live and breathe' their DSL. You're no longer learning/maintaining Linux -
by mobiuscog 3y ago
Nix has the same problem as Terraform: it solves a lot of problems, but you have to 'live and breathe' their DSL.
You're no longer learning/maintaining Linux - you're learning and maintaining Nix.
- senectus1 3y agoI like the way you're thinking. What do you recommend? I haven't played with Linux in about 18 years, (back then it was Ubuntu and Gentoo)... what the going recommendations now?
- lvncelot 3y agoIf you like the idea of Nix but are "meh" about the language, you could check out Guix, which does the same thing as Nix but with Guile (Scheme) as the configuration language. (Disclaimer: Still stuck on NixOS, am myself "meh" about the language and have only dabbled in Guix, still need to commit a machine to it)
- tsuujin 3y agoI’m all in on Nix (the package manager) today and use it across multiple Linux and Mac machines to handle my configs and most of my app installs. That said, I still find nix difficult to understand and learn, and when I get stuck on something it seems extremely frustrating to unstick myself. I would love to try Guix, mostly because I think building on an existing language would have solved many of my issues with nix, but the whole point for me is that I want a stable config across all of my platforms; the “non free” restrictions guix poses has gated me from it.
- inawarminister 3y agoguix-nonguix (nonfree) is a bit hush-hush but in my experience works well enough for all hardware drivers and proprietary-adjacent softwares that I need
- tsuujin 3y agoI made an effort to look into this at one point, and discovered that that there are actual rules prohibiting discussing it on the normal communication channels. Made it seem like troubleshooting was going to be way more difficult than it was worth.
- huijzer 3y ago> Nix has the same problem as Terraform: it solves a lot of problems, but you have to 'live and breathe' their DSL. I find it much more pleasant to live and breathe the NixOS configuration than to live and breathe someone else's OS. It's a bit like a woodworkers workshop. Do you prefer to have someone else configure the workshop or do rather tune it to your use-cases over time? > You're no longer learning/maintaining Linux - you're learning and maintaining Nix. I disagree. I learned more Linux fundamentals with NixOS (and via that the Arch documentation) than I learned from running Ubuntu.
- mobiuscog 3y ago> I find it much more pleasant to live and breathe the NixOS configuration than to live and breathe someone else's OS. I grew up with Linux and whilst it's changed, it's far more of my OS than what is provided by Nix. The idea is sound, to provide a more standard configuration, but that's what many Linux standards have done, and then been forked because people don't all think the same way - and they shouldn't. Sure, if you're running servers or otherwise need reproducible systems in production, there's absolutely a lot of value in Nix. For a personal computer, which is something I still value greatly, I don't want to be constrained so much, especially by a DSL that is not intuitive to me. I know Nix isn't 'new' and has just become more popular of late due to influencers, and I see the benefits for those that don't mind the aspects I mentioned, but it's absolutely not for me, or a lot of others I suspect. I will stick with Debian for stable, Arch for rolling, and see what occasional others (void, for example) have to offer at the time. I used to be a big fan of gentoo, and I still would prefer to build from source, but it doesn't offer anything beyond that - I would love a variant of gentoo that also isolated dependencies for each package. Then again, I suspect as flatpak continues to do well (or Canonical impose snaps everywhere) there will be even less space on the desktop for such 'personality' anyway.
- grigio 3y agoMhm.. yes, what is the problem with it if it makes your life better ? It's the problem with every abstraction it can be 90% good but for edge cases you need to know what is happening behind the scene. But for some use cases is better to know the state of the system instead of running by hands a sequence of commands.
- mobiuscog 3y agoThe problem is that when you need to fix those edge cases, suddenly you have to learn all of the things that the abstraction 'protected' you from. I have no problem with the ability to know the state of the system - that's one of the 'cool' features. I just don't like it being locked away from me (on my personal computer) and having to use a language (DSL) that I dislike to describe everything when I already am happy with what exists.
- n8henrie 3y agoFair, but "learning / maintaining Linux" is not a singular entity. Every project uses a different configuration (toml, yaml, json, ini, etc.), much of which can often be accomplished -- even for multiple machines simultaneously -- with some nix.
- yetanother12345 3y ago>their DSL Non-American here: - Digital Subscriber Line? Damn Small Linux? Urban Dictionary certainly is no help[0]. Please connect the dots for me... [0] https://www.urbandictionary.com/define.php?term=DSL https://www.urbandictionary.com/define.php?term=DSL
- commotionfever 3y agodomain specific language
- l0b0 3y agoIt sounds like you're saying we should all use Linux From Scratch. Or are you saying that Nix is somehow equally bad as Terraform? Because as a user of both, that's ridiculous.