Earlier quoted context omitted.
Mise/rtx doesn't cut it for us. It's approach is shell-based, so if your programs launch sub-processes, mise won't be applied. So for example Node scripts running in version 18 might npm run a process, which gets launched with the system node.js version. Where-as asdf creates shims that go into the PATH. That way any processes launching processes using normal env rules have asdf applied. Mise looks well built & is ve…
you can use shims with mise
Install Asdf: One Runtime Manager to Rule All Dev Environments
81–90 of 132 posts
Re: Install Asdf: One Runtime Manager to Rule All Dev Environments
#82Earlier quoted context omitted.
How doesnt it play well one MacOS? I've been using Nix Home Manager + Nix Darwin as my package manager, and Direnv + Nix Shell for developer environments; and havent had any problems (yet). Is there something I should be aware of? Agree about the learning curve; but I am going to experience onboarding my coworkers onto using Nix only for developer environments over the next months; I feel the curve is not quite that…
There’s some really annoying edge cases I’ve found once Xcode gets involved and graphical apps are a bit hit and miss (Wireshark failed pretty completely for me a few weeks back.) I’d still call it a major improvement over the alternatives. Re: onboarding - I’m doing the same thing at a somewhat larger scale. Same username on twitter if you want to start a support group. :)
Re: Install Asdf: One Runtime Manager to Rule All Dev Environments
#83Wait, not only is it called asdf leading to confusion, it literally is also a package manager of sorts just like the original asdf??? I just tried googling it having not really used CL in a while, and apparently it was seo'd to the top of google results too?
I raised this complaint before and learned that most people using the "new" one have never even heard of Common Lisp, and certainly not of its own "asdf" system.
Re: Install Asdf: One Runtime Manager to Rule All Dev Environments
#84Having been down this path - asdf didn’t go far enough in creating reproducible/sealed environments, the quality of the plugins per language varied dramatically, shims made a lot of assumptions about how tools will be used, and you can expect to throw asdf away the moment you need to deploy and then have to build something else. I don’t like Nix but I haven’t found anything else that scales along those critical requi…
ASDF generally doesn't reinvent version management, but wrap and re-use ruby-build, node-build etc.
It fails if your single project is a legacy monster needing four versions of node, two pythons and a handful of javas - but that's not a common use case.
More commonly you have multiple projects, each with a single version of node, python and java. For deployment you only need one of each - it's in development you need five of each when switching between projects.
Re: Install Asdf: One Runtime Manager to Rule All Dev Environments
#85I had to install a couple of alternative python versions on my dev machine at work and found it was easiest for me to just build from source and `make altinstall` with a custom prefix set. From there I just always work in virtual environments. This doesn't seem to have created any major problems for me, so something like asdf doesn't feel necessary. Is there something serious that I've missed or is this just a case o…
Generally asdf shines when you need more than one system installed - say a html or SQL language server that depends on node in addition to python for your main app.
Re: Install Asdf: One Runtime Manager to Rule All Dev Environments
#86Re: Install Asdf: One Runtime Manager to Rule All Dev Environments
#87Earlier quoted context omitted.
No disrespect to mise but this what’s so frustrating about the industry. Just as one starts getting popular, some people move on to something “better”.
> Just as one starts getting popular ... asdf hasn't just started getting popular. It's been popular for a long time already. IIRC I started using it ~8 years ago (~2016). asdf has been around since 2014. I believe Mise (rtx) has been around for a couple of years already too.
Re: Install Asdf: One Runtime Manager to Rule All Dev Environments
#88Out of curiosity, how many dev environments do folks use? Is this for reproducible environments shared by members of a team or company? For a single user with one development machine, simply having say a time-machine backup could be sufficient. I haven't had challenges for personal projects where details mattered. e.g. a Maven pom.xml, or Go modules/packages was sufficient for my needs. Historically I'd only cared ab…
> Why would I want/need this? always, golang is overly opinionated regarding where modules and binaries are stored. I don't like that and I've blown my local development environment into pieces because of that (looking at you GRPC, yikes) But also, imagine that you, like me, need to test Python, Java+Kotlin+Gradle and NodeJS+Angular stuff. Do you really want to install _all that_ natively ? Just for a couple of merge…
https://learn.microsoft.com/en-us/aspnet/core/grpc/basics?vi...
Re: Install Asdf: One Runtime Manager to Rule All Dev Environments
#89Earlier quoted context omitted.
OP here, although I hoped I took an example that was relatable, it seems it wasn't as relatable as I expected. > Is it just me that never even wants to get to the problems that asdf attempts to solve? You aren't alone, the scenario isn't ideal. However, brew's Python installation on MacOS as are Debian's and Ubuntu's are _extremely_ brittle. You are one cask, formulae or apt package away from needing to do a weekend-…
You shouldn't need asdf to work with JVM stuff. I would suggest learning how to use SDKMAN: https://sdkman.io/ It will manage the JDK for you. Usage is basically this: # Install a JDK, that version is now default sdk install java # Another one, it asks if you want to change the default sdk install java # List available and installed versions sdk list java # Change which one you're using in this shell sdk use java Tha…
Sure. But you might need node for some front end build tool, or a language server for sql. Then you can use two version managers, or just asdf.