AstonJ

AstonJ

How to install Ruby 3 with ASDF

In case anyone else is wondering why Ruby 3 doesn’t show when you do asdf list-all ruby :man_facepalming: do this first:

asdf plugin-update ruby

Then you can install Ruby 3 with:

asdf install ruby 3.0.0

Or:

asdf install ruby latest

Also updated my blog post here.

Think it would be good if asdf list-all ruby simply does asdf plugin-update ruby beforehand - might save a bit of head scratching for a lot of people :laughing:

Most Liked

dimitarvp

dimitarvp

I have my own script that does a full update of all installed software and I’ve included ASDF updating of all plugins in it for that exact reason, @AstonJ. It’s a bit manual but you can script it (like I did) and then forget about it.

@ohm One version manager for 99% of all languages and many tools and databases you’ll ever use, is my motivation. Using asdf definitely simplified my setup.

AstonJ

AstonJ

I think the biggest benefit is that you can use it for lots and lots and lots of different languages :nerd_face:

Have a look at their list here:

In my dev env setup guide on my blog (link in first post) we use ASDF for Ruby, Elixir, Erlang and NodeJS :smiley:

For Ruby in a production env, I’ve always used Chruby as it has always worked well:

jc00ke

jc00ke

Rubinius Core Team

I’m completely sold on asdf. With the .tool-versions file I can just asdf install in a project and go.

I also love how simple it is to have multiple versions of PostgreSQL running. I use the technique described here to manage the database per project so I know I’m always exactly matching the production version. This has been super helpful when one project is on Heroku and runs 12 or 13 and another is using AWS Aurora that’s more like 9.6 maybe 10.

Where Next?

Popular Backend topics Top

New
New
New
New
finner
I’ve never really felt 100% comfortable using the enum type because of my lack of understanding how it is constructed . . . . . . until ...
New
First poster: bot
Welcome to RETRO, my personal take on the Forth language. This is a modern system primarily targetting desktop, mobile, and servers, th...
New
mudasobwa
To promote Tarearbol.DynamicManager I created the :heart_eyes_cat:-language (which is a brainfuck dialect.) Code outputting “Meow” to th...
New
Jsdr3398
I really need developers to help create my messaging platform but I’m not sure how much they want etc. I’ve never hired anyone before :s...
New
DevotionGeo
What do you people do for reading Erlang docs? Is there something like Ruby’s ri? I installed manual pages for Erlang under /usr/local/...
New
jaeyson
Sorry for the very vague noob question, I really want to ask this: When do we use async or sync code in the context of Elixir? AFAIK gen...
New

Other popular topics Top

AstonJ
If it’s a mechanical keyboard, which switches do you have? Would you recommend it? Why? What will your next keyboard be? Pics always w...
New
PragmaticBookshelf
Stop developing web apps with yesterday’s tools. Today, developers are increasingly adopting Clojure as a web-development platform. See f...
New
PragmaticBookshelf
Brace yourself for a fun challenge: build a photorealistic 3D renderer from scratch! In just a couple of weeks, build a ray tracer that r...
New
PragmaticBookshelf
Write Elixir tests that you can be proud of. Dive into Elixir’s test philosophy and gain mastery over the terminology and concepts that u...
New
Maartz
Hi folks, I don’t know if I saw this here but, here’s a new programming language, called Roc Reminds me a bit of Elm and thus Haskell. ...
New
mafinar
This is going to be a long an frequently posted thread. While talking to a friend of mine who has taken data structure and algorithm cou...
New
DevotionGeo
I have always used antique keyboards like Cherry MX 1800 or Cherry MX 8100 and almost always have modified the switches in some way, like...
New
PragmaticBookshelf
Develop, deploy, and debug BEAM applications using BEAMOps: a new paradigm that focuses on scalability, fault tolerance, and owning each ...
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New
NewsBot
Node.js v22.14.0 has been released. Link: Release 2025-02-11, Version 22.14.0 'Jod' (LTS), @aduh95 · nodejs/node · GitHub
New