Setting Up Programming Languages
TechLit computers use asdf to manage the programming
languages you teach, like Python, JavaScript, and Java. Students use them
while learning code, the TechLit programming curriculum: reading
written instructions and turning them into working programs. asdf keeps
every language in its own folder, so two different versions can sit side
by side without breaking each other.
You do not need to install asdf itself. The system image already has it, and
it is wired into the guest shell. Your job is only to add the languages you
want to teach.
Before You Begin
Section titled “Before You Begin”Method 1: USB Pre-installed (Easiest)
Section titled “Method 1: USB Pre-installed (Easiest)”If you have a USB drive with asdf.tar.gz on it, use this method. The tarball
already contains the plugins and language versions used in class, so nothing
is downloaded from the internet.
-
Copy the Tarball from the USB
-
Unpack It
-
Check the Languages
Run
python --version(or whichever language you added) to check it works.
Method 2: Individual Install
Section titled “Method 2: Individual Install”Use this method to install one language on one computer, directly from the internet.
-
Add the Plugin
Each language has a plugin. Add the one you need:
-
Install a Version
-
Set the Default Version
Run this from your project folder so the version applies everywhere inside your project:
-
Make Sure the Shims Are on Your PATH
The system image already does this for the
guestshell, but if a command is still “not found”, add the shims folder to your PATH:
Method 3: Fleet Setup
Section titled “Method 3: Fleet Setup”Use this method to set up many computers at once. You prepare the languages once, then distribute them to the fleet. There are 2 ways to do that.
Sub-method A: Network Pull
Section titled “Sub-method A: Network Pull”If one computer on the network is already set up, the others can copy from it directly. Run this on each computer that still needs the languages:
Sub-method B: Tarball Distribution
Section titled “Sub-method B: Tarball Distribution”Prepare one tarball on a computer that is already set up, then share it on USB drives the same way as Method 1.
Name the tarball with the date you built it (asdf-2026-09-04.tar.gz), so it
is always obvious which build is the newest. Keep a latest.tar.gz symlink
pointing at the current build, so anything that copies “latest” always gets
the right one:
Dependencies & Troubleshooting
Section titled “Dependencies & Troubleshooting”- Read the plugin README first. Every language plugin needs its own build dependencies (compilers, headers, and so on). The plugin’s README lists exactly what is required. Check it before installing, especially when an install fails halfway through.
- Missing system packages? The TechLit desktop is Artix Linux. Install missing
tools and libraries from the AUR with
yay. - Still stuck? Ask for help. Send the exact command you ran and the full error output. A screenshot of the last 20 lines is helpful.
Adding Your Own Languages
Section titled “Adding Your Own Languages”The languages above are a starting point, not the limit. asdf supports
hundreds of tools and languages, so if you want to teach something new (Rust,
Go, Ruby, or anything else), you can add it yourself.
Once you find your language in the list, follow Method 2 to install it. If you add a language that works well in class, tell the TechLit team so it can be added to the system image for everyone.