reDeck Yo Steam!

How to re-install your/my/sd-stack on a SteamDeck post OS update.


#Grammarly now strips #markdown and converts it to a rich text format … and won’t give it back

So … this hasn’t been edited due to rage.

Reinstalling All The Things (for sd at least) on a Steam Deck

There was a SteamDeck update last night or this morning. I had to reinstall a bunch of stuff … and only halfway through did I find my notes on how.

Ignore my old post I guess; this is how to do it right!

Background (skip this)

SteamOS works because each update cleanses the system of … not-SteamOS tweaks. Concetional bigger-bbq wisdom is to put your dick in the soup;1 adding configs, changes, tweaks and other gotchas they saw on the internet just for the sake of feeling like they had a role in the construction. SteamOS knows that’s part of their audience - some people just need to feel the illusion of control by chewing on the wires and then forgetting about it. The obvious solution (here) is to overwrite the majority of the OS config on updates to match what Valvle intended. Generally, this would be really bad (TM) for PCs that have atypical hardware … but … Since the SteamDeck is a (few) fixed hardware layouts2 this works swimmingly and is a good idea.

SOP

I didn’t do anything with uv or anything in flatpack … so … yay? For the rest I had to start by turning off steamos-readonly … which I have strong feelings about (as expressed above) that I won’t repeat here.

λ sudo steamos-readonly disable

Setup PacMan Key

pacman neeeds … a thing … and it has to be sudo?

λ sudo pacman-key --init
λ sudo pacman-key --populate archlinux
λ sudo pacman-key --populate holo

With that in mind and done, we can setup (not) Visual Code and yay

(re)Install Visual Code

I install code first so I could switch to editing this file in it.

λ sudo pacman -S code

… wow … much complex …

setup for C/++ builds - and more!

This package list … might be more than you need. Most of this is “needed” for yay but I (think that I) need CMake and NodeJS for other work.

λ sudo pacman -S debugedit \
    fakeroot \
    debugedit \
    base-devel \
    gcc \
    git \
    glibc \
    go \
    libarchive \
    linux-api-headers \
    linux-headers \
    pacman \
    webkit2gtk-4.1 \
    nodejs \
    cmake \
    npm

It’s weird that I needed to install nodejs explicitly for npm to work. I’m a little sus about needing glibc and linux-headers explicitly, but, I don’t want to test that right now.

There’s probably a mountain of transitive dependencies a control-freak would include in this list. I hate those.

… and 15% of the time I’ll be typing instructions like this out by hand as I read them off my phone so … just “No”

Setup yay

I’m still not 100% sure what YaY is beyond “a second package manager” … so there’s that.

λ git clone https://aur.archlinux.org/yay.git ~/yay-thing
λ cd ~/yay-thing
λ makepkg -si
λ cd ~
λ sudo rm -fr ~/yay-thing

IIRC; makepkg screamed about a lot of stuff and asked for SUDO at some point

After this, yay will be installed and the folder will be deleted; YaY!

Setup TortoiseHg (the important part)

λ yay -S tortoisehg

IIRC; makepkg will ask to SUDO at some point

Cleanup and Get Out

The last step is to turn the RO filesystem on. Boys without beards and neighbours with bigger BBQs will tell you not to, but, anyone who fixes their own computers will say you should switch it back on at the end.

λ sudo steamos-readonly enable

Cool!

See you … next month?

… SteamOS seems to update each month … I’ll try to test the package list …


  1. … this is in opposied to the “Old Style Yankee” mentioned in a film that distrusts anything they don’t understand. Doesn’t matter if Gabe did the thhing or Dave did it after copying Liam’s reddit post; if it’s not understood, it’s not trusted. ↩︎

  2. … like a console! The equivalence should be obvious, but, feels distracting not to point out. ↩︎

comments powered by Disqus
Peter LaValle avatar
Peter LaValle
Any links probably include affiliate ids for that sweet sweet kickback - and some programs require that I tell you. The contents of this blog are likely unrelated - as they include games, paints, and build tools.