Steam Deck

Steam Deck

is it possible to make discover apps install on the sd card instead of the ssd?
I'd rather not waste money on a SSD upgrade but the discover apps are taking way too much space on the main storage to the point where I cant even update some of them. Is there a way to make them install to the SD card instead? I know I'd have to re-download them and get all of the settings back and stuff but, any fixes?
< >
Showing 1-4 of 4 comments
retrogunner Apr 18, 2023 @ 8:30am 
(If you do any of the following you assume all risk ;-) )

I hope the following helps. I get it. I've a 256GB model with its OG storage (I got a 4 lane nvme model). I keep everything on my A2 SD card except the 2 games that need the best performance.

You might consider using https://github.com/CryoByte33/steam-deck-utilities . It can move game prefixes and other space sucking stuff to the SD card. If space is a premium, you might not want a full 8GB swap increase. I went with the 4GB swap. You can pick 1,2,4,8,16 GB Swap -- if you want.

But as for flatpaks, you can sorta move some of it, but it's not easy for beginners. You'd have to know Linux, and you'd only free some of the storage.

You'd want to make sure you SD was formatted on Linux or the Steam Deck, not Windows. It should not be NTFS/ExFAT/FAT32.

One thing you must do using flatpaks is clearing out unused shared libraries. This may reclaim some space. In Desktop, you'll want to open a Konsole and issue the following command:

`flatpak uninstall --unused`

Flatpaks have two storage locations:
* your data for flatpak apps in `/home/deck/.var/app`
* app install install in `/var/lib/flatpak` (but /var is really stored on `/home/.steamos/app/offload/var/lib/flatpak` for persistence between OS updates.)

The app data directory could easily be symlinked to directory on your sd card (I'd make a `/run/media/sdcard_name/home/deck/.var`; rsync the data; then symlink it back.
This is where all the box art, data saves, and other stuff lives.

Making a symlink for the app install directory would be more complicated due to potential mounting race conditions, that its loopback style mount (bind mount, overlay, or what not).

If you are needing to prune some of the larger installs, you'll likely need to assess the installed appdir disk usage, then start selectively removing apps you can get by without.

If you're not using a GUI disk usage utility flatpak (ironic isn't it :-) ), you can use the following command in the Konsole:

`du -ks /home/deck/.var/app/* /var/lib/flatpak/app/*`

Then looks for App(s) you can live without. Again, if in the /home/deck/.var -- it's a mkdir; rsync; symlink - away to reclaim some space.

Don't bother removing libraries. They will just re-install so you need to remove the Apps that leverage them. Time to connect some dots -- sorry.

You cannot really do anything about /var/lib/flatpak/objects. After removing an app and run the `flatpak uninstall --unused`, the objects should free up.

I hope this helps. Cheers.
retrogunner Apr 18, 2023 @ 8:44am 
Oh, and more thing. Proton hasn't always cleaned up after itself. I go in to manually remove them. Check this out:

(deck@retrodeck ~)$ find .local/share -type f -name "*.tar" -ls 14427050 888856 -rwxr-xr-x 1 deck deck 910182400 Sep 17 2022 .local/share/Steam/steamapps/common/Proton\ 4.11/proton_dist.tar 14554026 1072596 -rwxr-xr-x 1 deck deck 1098332160 Feb 10 22:18 .local/share/Steam/steamapps/common/Proton\ 7.0/proton_dist.tar 14425486 1081536 -rwxr-xr-x 1 deck deck 1107486720 Aug 24 2022 .local/share/Steam/steamapps/common/Proton\ 6.3/proton_dist.tar

Each proton tarball is roughly 1 GB each !!! Delete those. It's comparable to having the 'msredist' from every game install left behind. They've already been unpacked. The Steam client will get them again if necessary.

Speaking of msredist, they were left behind from game installs on your Windows Game installs. Those will be left behind still. I'm sure you can reclaim some space getting rid of those. But they'll be in those game's Prefix locations.

Cheers, retro.
Originally posted by retrogunner:
(If you do any of the following you assume all risk ;-) )

I hope the following helps. I get it. I've a 256GB model with its OG storage (I got a 4 lane nvme model). I keep everything on my A2 SD card except the 2 games that need the best performance.

You might consider using https://github.com/CryoByte33/steam-deck-utilities . It can move game prefixes and other space sucking stuff to the SD card. If space is a premium, you might not want a full 8GB swap increase. I went with the 4GB swap. You can pick 1,2,4,8,16 GB Swap -- if you want.

But as for flatpaks, you can sorta move some of it, but it's not easy for beginners. You'd have to know Linux, and you'd only free some of the storage.

You'd want to make sure you SD was formatted on Linux or the Steam Deck, not Windows. It should not be NTFS/ExFAT/FAT32.

One thing you must do using flatpaks is clearing out unused shared libraries. This may reclaim some space. In Desktop, you'll want to open a Konsole and issue the following command:

`flatpak uninstall --unused`

Flatpaks have two storage locations:
* your data for flatpak apps in `/home/deck/.var/app`
* app install install in `/var/lib/flatpak` (but /var is really stored on `/home/.steamos/app/offload/var/lib/flatpak` for persistence between OS updates.)

The app data directory could easily be symlinked to directory on your sd card (I'd make a `/run/media/sdcard_name/home/deck/.var`; rsync the data; then symlink it back.
This is where all the box art, data saves, and other stuff lives.

Making a symlink for the app install directory would be more complicated due to potential mounting race conditions, that its loopback style mount (bind mount, overlay, or what not).

If you are needing to prune some of the larger installs, you'll likely need to assess the installed appdir disk usage, then start selectively removing apps you can get by without.

If you're not using a GUI disk usage utility flatpak (ironic isn't it :-) ), you can use the following command in the Konsole:

`du -ks /home/deck/.var/app/* /var/lib/flatpak/app/*`

Then looks for App(s) you can live without. Again, if in the /home/deck/.var -- it's a mkdir; rsync; symlink - away to reclaim some space.

Don't bother removing libraries. They will just re-install so you need to remove the Apps that leverage them. Time to connect some dots -- sorry.

You cannot really do anything about /var/lib/flatpak/objects. After removing an app and run the `flatpak uninstall --unused`, the objects should free up.

I hope this helps. Cheers.

Wow. This thread is old and doesn't have many replies but I'm very glad I found it with your response because as a SteamDeck newbie struggling to understand why there are so many junk files clogging up my Deck (and being the unfortunate victim of buying the 64gb model), I have gotten more answers from you in this topic than from Googling resolutions for literally MONTHS. Thank you!

I already have had my steamapps folder symlinked but this thread has given me valuable information on what else I can link and how to cleam some stuff up that I didn't know how to.

That said, how safe is it really to symlink these folders? I've read doing this with an SD card is "volatile" but I haven't heard any horror stories, personally.
KingArt123 Apr 22 @ 10:31pm 
Total noob here but from symlink from what I reasearched it seems its a temporary resolution for tricking steam into reading the sd card as the main onstead of the ssd as the main now the issue it is said to have symlinking is that when you have to switch out your sd card if your not experienced it can get messy with the files and thats my take
< >
Showing 1-4 of 4 comments
Per page: 1530 50