| ▲ | colordrops 7 hours ago |
| People shy from Nix because of supposed complexity but it really is the only real solution to this sort of problem. It's not really that much more difficult to learn, and in fact if you are willing, AI works really well generating nix config. |
|
| ▲ | drdexebtjl 6 hours ago | parent | next [-] |
| It took me a single afternoon to learn the basics and start using it. Contrary to what I initially thought, I didn't have to migrate all of my dotfiles at once. Then over the next couple of days, Codex migrated everything else for me. One major benefit for me is that I no longer need to have once-in-a-while tools installed, because I can always spin up a temporary shell with `nix-shell -p packageName`. This significantly decreased the amount of software I have in my environment. This works great with agentic coding. Agent wants to run `ripgrep`, but you don't have it? Tell it to run `nix run nixpkgs#ripgrep` instead. But the biggest benefit is that now that you know Nix! So you can start using it to create reproducible development environments and uninstall mise, asdf, nvm, pyenv, etc. You can spin up reproducible servers running NixOS and never touch Ansible again. You can even install it in your router. Or you can do none of that and continue just using it for your dotfiles. It plays nice with other tools. |
|
| ▲ | QwenGlazer9000 6 hours ago | parent | prev | next [-] |
| It's not complexity its questionable documentation. Picking up Nix is really hard yet the best we got is a mishmash of unofficial recourses and many of them are out of date and/or focus on the packaging side which is terrible for introduction. |
| |
| ▲ | linsomniac 6 hours ago | parent [-] | | I spent a year dabbling in NixOS, getting a few "toy" setups. About 6 weeks ago I installed NixOS on a spare laptop and did 100% of the configuration through Claude Codex. Initially I copied "/etc/nixos" off to my existing workstation, until Claude Code bootstrapped it enough to run on the NixOS machine. I've been running it as my primary workstation for the last 3-4 weeks, and it's been great! 100% configured by Claude Code or Codex CLI. Configuring a machine via Nix lang is not that fun. Configuring a machine via English is. And I've thrown some curveballs at this setup. I asked it for gitbutler-cli, which NixOS doesn't/didn't provide, and it was able to package up and build it. It's running Sway. I have my secrets and configs in SOPS+Home Manager. |
|
|
| ▲ | chungy 7 hours ago | parent | prev | next [-] |
| Guix solves the same problem in similar ways, though it uses Scheme as its configuration language. |
| |
| ▲ | drdexebtjl 7 hours ago | parent [-] | | Sadly it doesn't work on macOS, unlike Nix. | | |
| ▲ | pkulak 7 hours ago | parent [-] | | Or hardware. | | |
| ▲ | sham1 6 hours ago | parent [-] | | It absolutely works with hardware. And it's not that difficult to add channels for extra software like a tainted Linux kernel. And in return one gets a saner programming language than the Nix language. |
|
|
|
|
| ▲ | jdxcode 6 hours ago | parent | prev | next [-] |
| how nix-pilled do you have to be to think that nix is the "only real solution" to dotfile managers? |
| |
| ▲ | tfrancisl 6 hours ago | parent | next [-] | | Its the only complete, reproducible, and portable solution, in my opinion. I like mise, but at the end of the day some programs are more complex than just pulling a precompiled, dynamically linked binary and hoping it works. | | |
| ▲ | jdxcode 6 hours ago | parent [-] | | I am genuinely confused. Are you saying dotfile managers need to be more complex? Or that nix's problem space is the only solution for the things in nix's domain? (of which dotfiles are just one—via home manager) I thought it was the former but "just pulling a precompiled, dynamically linked binary and hoping it works" makes me think we're not on the same page since to me that has nothing to do with dotfiles. | | |
| ▲ | tfrancisl 6 hours ago | parent | next [-] | | I'm saying that I value the completeness (thoroughness may be a better word) as well as the reproducability and portability that nix ensures over convenience. I cant tell you the amount of times I've pulled a precompiled tool and it just doesnt work because of one quirk of their packaging or another. Also noting that I don't see the problem as "dotfile management" but as "system AND user configuration management" which extends beyond some plain text files in $HOME. ed.: and home manager is just one tool which provides not only dotfile management, but drvs for installing particular programs and configuring then in highly opinionated ways -- I do not use it | | |
| ▲ | bronson 5 hours ago | parent [-] | | > I can't tell you the amount of times I've pulled a precompiled tool and it just doesnt work because of one quirk of their packaging or another. This is a serious problem in Nix too. I often trip over buggy and abandoned Nix packages. Nix often makes it easy to roll back or work around them, but they're absolutely there. | | |
| ▲ | colordrops 4 hours ago | parent [-] | | They still build though. No one said anything about Nix being a solution to buggy software or bad maintainers, that's an absurd expectation. |
|
| |
| ▲ | drdexebtjl 4 hours ago | parent | prev [-] | | I don't think you're genuinely confused. Are you really in this thread to talk about dotfile managers, or are you here to criticize Nix, given that Nix directly competes with your company's only product? | | |
| ▲ | jdxcode 4 hours ago | parent [-] | | Considering nothing in that reply criticized nix you’re certainly wrong. I don’t hesitate to share my opinions on nix anytime (just like nix users themselves) so I’d have no reason to be coy about my criticism. tfrancisl was polite (even though I arguably wasn’t in the beginning) so I felt it important to return the favor. |
|
|
| |
| ▲ | colordrops 5 hours ago | parent | prev [-] | | "real" meaning truly reproducible and not brittle. |
|
|
| ▲ | arikrahman 3 hours ago | parent | prev | next [-] |
| A agree, Nix is very doable. With Deepseek or other cheaper models, you could get a whole headache-free setup done in one weekend for a few cents on the dollar. |
|
| ▲ | jorvi 6 hours ago | parent | prev | next [-] |
| Nix's complexity isn't with itself, its if you try to step one bit off the beaten path where it immediately starts to grate. |
| |
| ▲ | colordrops 5 hours ago | parent [-] | | That problem is overstated. I've been dozens of custom packages and modules and it's not that much more complex that basic Nix config, and in fact is a huge positive, not negative. How easy can you write config that packages a binary and/or sets up a new service reproducibly? I'd much rather do that on Nix than Ubuntu or Arch for sure. | | |
| ▲ | jolmg 10 minutes ago | parent [-] | | If you modify a base package, like maybe to apply some minor patch on a systemd executable as an example, is there a way to avoid having to recompile basically all installed packages (for being at least indirect dependencies)? |
|
|
|
| ▲ | NamlchakKhandro an hour ago | parent | prev [-] |
| Nix doesn't work on windows. It's also a massive pain the ass to work with |