this post was submitted on 21 Jul 2023
67 points (94.7% liked)

Programming

16975 readers
1288 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 1 year ago
MODERATORS
 

Some folks on the internet were interested in how I had managed to ditch Docker for local development. This is a slightly overdue write up on how I typically do things now with Nix, Overmind and Just.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] -3 points 1 year ago (3 children)

I know you won't believe this, but you don't need any of these GTOS (giant towers of shit) to write & ship code. "Replace one GTOS with another" is a horizontal move to still using a GTOS.

You can just install the dev tools you need, write code & libraries yourself, or maybe download one. If you don't go crazy with the libraries, you can even tell a team "here's the 2 or 3 things you need" and everyone does it themselves. I know Make is scary, with the mandatory tabs, but you can also just compile with a shell script.

Deployment is packing it up in a zip and unzipping it on your server.

[–] [email protected] 5 points 1 year ago (1 children)

Try to develop on a system that just has node16 3 different projects at the same time that each require different node versions. Nix rocks.

[–] [email protected] 0 points 1 year ago (1 children)
[–] [email protected] 1 points 1 year ago

And now these need different GCC compilers. And building should be easy and reproducible.

[–] [email protected] 1 points 1 year ago

Sometimes you need complex tools for complex problems. We just have a homegrown GTOS at my work instead, I wish we had something that made as much sense as Nix!

[–] [email protected] 0 points 1 year ago (1 children)

Lot's of (incorrect) assumptions here and generally a very poorly worded post that doesn't make any attempt to engage in good faith. These are the reasons for what I believe is my very first down-vote of a comment on Lemmy.

[–] [email protected] 1 points 1 year ago (2 children)

You're advocating switching to another OS with a complex package manager, to avoid using a package manager that's basically a whole new OS. Giant Tower of Shit may be too generous for that.

But I was of course correct, I said you wouldn't believe it.

[–] [email protected] 6 points 1 year ago

nix does not need nixOS to run but is a complex package manager. At least for me, it doesn't seem more complex than docker ecosystem.

I personally use nix to take care of downloading compatible dependencies in isolation for me. And the rest of the code is really, just basic script shell or Makefile too.

I also could add a fancy mergeShells function I have written in nix to support a docker-compose-like composition of nix-shell files. But you could go a very long way with nix before you even want to do something like this.

[–] [email protected] 2 points 1 year ago

Tutorial != advocation. As I said, no attempt to engage in good faith.