News for hackers. Stuff that matters.
Re:Switching from pyenv, rbenv, goenv and nvm to asdf by trey-jones on Tuesday April 05, 2022 @08:31AM (#30918160)
I see comments about Nix and I've heard rumblings about it before, so I might look into that. But Docker covers my needs for version management completely. To me it seems much more explicit, more portable, less error prone, less complex than any of these virtual environment managers. Never mind that I don't even want node.js on my system if I can help it at all (I can't, generally).
Re:Switching from pyenv, rbenv, goenv and nvm to asdf by dlisboa on Tuesday April 05, 2022 @09:13AM (#30918535)
It's obviously doable, but it's very heavy for languages. Like someone else said, you immediately run into basic issues like readline, LSP compatibility, volume persistence, port forwarding, etc.

Docker is better for version managing services like databases, caches (Postgres, Redis, etc), things that have little need for different configuration or exploration and persist through multiple sessions. Once they're up, they're done.

Asdf is the next best thing for local development, where you need that kind of exploration.

Re:Switching from pyenv, rbenv, goenv and nvm to asdf by rkangel on Tuesday April 05, 2022 @10:21AM (#30919334)
The main issue with docker is that you have to start from scratch with your environment. With Nix you can layer it over your existing Linux environment (or you can have it from-scratch by running `nix-shell --pure`).

There are advantages to the docker approach, and Nix can be painful to get going, but a significant portion of the community (including me) find the pain to be worth it.

Re:Switching from pyenv, rbenv, goenv and nvm to asdf by hushpuppy on Tuesday April 05, 2022 @08:43AM (#30918253)
Docker doesn't allow for LSP servers in my text editor. Asdf "just works".
Re:Switching from pyenv, rbenv, goenv and nvm to asdf by trey-jones on Tuesday April 05, 2022 @08:52AM (#30918330)
This is a reasonable point, and something that is being worked on. I definitely think Docker can provide LSP servers as necessary, we're just not quite there. This is something that I'm interested in working on, though I'm not the only one: https://github.com/emacs-lsp/lsp-docker

For the most part, latest version linting is good enough for me, currently.