Enter 9front
There are dozens of articles out there explaining how to get a “functional desktop” running on 9front, though “functional” is a strong word, since the system already works out of the box. Everything we do afterward is just lipstick or personal tweaks to make life easier.
Many of the tutorials on the internet are outdated. As an example some still teach you how to install Git manually but it is already included by default.
What follows are just minor adjustments I like to make on some of my 9front installations. I say “some” because I’ve set up this system more times than I can count, often for servers rather than desktops.
Warning: This article contains heresies.
For Unix Refugees
If you’re used to Unix-like systems, your first instinct might be to create a new user. Strictly speaking, this isn’t necessary—but if you insist on committing such blasphemy, here’s how:
Pay attention to your filesystem type:
- For CWFS:
con -C /src/cwfs.cmd
- For HJFS:
con -C /srv/hjfs.cmd
Then, summon your new user:
newuser username
newuser sys +username
newuser upas +username
And if you really want to sin by impersonating root (like our beloved glenda
):
newuser adm +username
Silencing Boot Prompts
9front asks you questions at boot. Let’s automate that.
- Mount the boot partition:
9fs 9fat
- Edit
plan9.ini
:acme /n/9fat/plan9.ini
- Find the line containing
bootargs
and replace it withnobootprompt
to skip partition questions. - To auto-login as your new user, add:
user=yourusername
Reboot and you’ll face a gloriously empty environment because your user lacks config files. Fix this with:
/sys/lib/newuser
Fixing the Missing Status Bar
Noticed your desktop lacks the system status widget?
cp /usr/glenda/bin/rc/riostart /usr/youruser/bin/rc/riostart
Then edit your profile
(/usr/youruser/lib/profile
) and tweak the rio
line to:
rio -s -i riostart
(The -s
enables auto-scrolling, a personal preference.)
Now What?
What’s your goal? Learning? Programming? Hacking? Showing off your obscure OS to friends? I don’t care. But here are tips:
-
Browsers: 9front ships with
abaco
andmothra
. Test them. If you miss the modern web’s garbage, try the Netsurf port:
github.com/netsurf-plan9/nsport -
Escape the modern web: Use Gopher instead. I recommend this client:
github.com/telephil9/gopher