These are lists of some tools and software that are useful for Steam Deck and can enhance your experience with it, as well as all the websites and other such Steam Deck resources I know.

I made these lists for the wiki on Reddit’s SteamDeck sub and I thought it was a pretty useful to keep around. I wanted to dump them here for everybody to preserve them and to maybe find a new home for this Steam Deck resource.

Let me know what you think.

List of tools and homebrew

Below is a list of tools and homebrew that can enhance your experience with the Steam Deck. Since the Steam Deck offers most things that a normal Linux desktop environment can, tools are included that can be found in the Discover store (including from non-default repositories) and have proven to be an especially good fit.

Emulation and non-steam games

  • BCML Installer for Steam Deck

    BCML (a modding tool voor Breath of the Wild for WiiU) can be difficult to get running on Steam Deck, because it uses an immutable filesystem and the version of Python installed by default is higher than what BCML supports. This script helps people install it.

  • BoilR

    Add non-steam games to your steam library.

  • Emudeck

    This script automates downloading, installing and setting up a large list of different emulators.

  • EmulationStation DE

    A graphical and themeable emulator front-end that allows you to access all your favorite games in one place, which is installed by Emudeck and Retrodeck, but can also be used by itself.

  • Mod Organizer 2 Linux Installer

    This project aims to make modding and playing Bethesda games on Linux as easy as possible. It does that by providing installers which automatically setup a working experience for the user.

  • Retrodeck

    A flatpak application containing a large list of different emulators.

  • SGDBoop

    A tool that automatically applies assets from SteamGridDB directly to your Steam library, removing the need to download and set them manually.

  • Steam ROM Manager

    Steam ROM Manager is a super flexible tool for adding non-Steam games to steam in bulk and managing their artwork assets. It can be installed with Emudeck, but can also be used by itself.

File management

  • Deck Drive Manager

    Copy Steam Games From Your PC to Your Steam Deck SD Card.

  • Disk Usage Analyzer

    A tool for managing your used and free space.

  • Firelight

    Filelight is an application to visualize the disk usage on your computer by showing folders using an easy-to-understand view of concentric rings. Filelight makes it simple to free up space!

  • gdu

    If you prefer the command-line, gdu is a fast disk usage analyzer with console interface, written in Go.

  • Shortix

    A script that creates human readable symlinks for Proton game prefixes. Reddit release post

  • Steam Deck Shader Cache Killer

    Script to Purge The Steam Decks Shader Cache/ Compat Data. Reddit release post

File transfer and synchronization

  • Deck Screenshot Sync

    A work-in-progress auto-uploader for screenshots made from the Deck onto your PC or phone. Reddit post by u/ Xinerki.

  • MEGASync

    Easy automated syncing between your computers and your MEGA Cloud Drive.

  • OpenCloudSaves

    Open Cloud Saves is an open source application for managing your saves games across Windows, MacOs, and Linux (including SteamOS).

  • Syncthing

    Syncthing is a file synchronization tool like Dropbox, except that it can work with your own machines and without a server. This can be very useful for keeping non-Steam and emulator save games in sync or backed up.

  • Warpinator

    Send and Receive Files across the Network

Launchers

  • Alfea

    Alfae is an experimental project to launch GOG/Local/ItchIo/Epic/Bottles Games in an organised fashion. Also can add games to deck UI.

  • Bottles

    Runs Windows software on Linux with Bottles.

  • Heroic Game Launcher

    Heroic is an Open Source Games Launcher. Right now it supports launching games from the Epic Games Store using Legendary and GOG Games using our custom implementation with gogdl.

  • Lutris

    Lutris is a video game preservation platform aiming to keep your video game collection up and running for the years to come.

  • NonSteamLaunchers

    Installs the latest GE-Proton and several non-Steam launchers under one Proton prefix folder and adds them to your Steam library. Reddit release post for v2.7

  • Steam Tinker Launch

    Steam Tinker Launch is a versatile Linux wrapper tool for use with the Steam client which allows for easy graphical configuration of game tools, such as GameScope, MangoHud, modding tools and a bunch more. It supports both games using Proton and native Linux games, and works on both X11 and Wayland.

Plugins and mods

Remote access and game streaming

  • AnyDesk

    AnyDesk allows you to connect to your Steam Deck desktop remotely, like TeamViewer.

  • Barrier

    Share mouse and keyboard over the local network.

  • Chiaki4deck

    Chiaki4deck is a fork of Chiaki, adding features for the Steam Deck. It is a free and Open Source Client for PlayStation 4 and PlayStation 5 Remote Play. It can be used to play in real time on a PlayStation as long as there is a network connection.

  • Deskreen

    Turn any device into a secondary screen for your computer. Streams your Steam Deck screen to a browser on another machine.

  • KDE Connect

    Enables communication between all your devices.

  • Moonlight

    Moonlight allows you to play your PC games on almost any device, whether you’re in another room or miles away from your gaming rig.

  • NoMachine

    Like AnyDesk, allows remote desktop connections to your Steam Deck. Disabling read-only on the filesystem is required to install, but otherwise works very well.

  • Remote Mouse

    Use your phone as a keyboard and mouse, and copy/paste between devices (apps for iOS and for Android available.) Gained improved support for Linux and Steam Deck in December 2022.

  • Rustdesk

    An open source TeamViewer alternative, remote desktop software. Works out of the box, no configuration required. Use the AppImage from the nightly build.

  • Steam Link

    Connect your Steam Deck or other Steam devices with each other for remote streaming.

  • Sunshine

    Sunshine is a self-hosted game stream host for Moonlight, offering low latency, cloud gaming server capabilities.

  • Unified Remote

    Remote control app for your Steam Deck. Turn your smartphone into a universal remote control, control mouse, keyboard and more.

Other tools

  • Boot Video Randomizer

    Replace the Deck startup video file with a file of the user’s choice. Randomizer provides two features: individual random set and on-boot randomization. Reddit release post

  • CoreKeyboard

    CoreKeyboard is an X11-based virtual keyboard. It has the advantage over Valve’s built-in keyboard to offer access to special keys such as Ctrl, Alt and function keys.

  • Great on Deck browser extension for Chrome or Firefox

    See what games are verified for the Steam Deck and which medal they have on ProtonDB in the Steam store.

  • Ludusavi

    Backup tool for PC game saves. Here is the Reddit release post.

  • ProtonUp-Qt

    Install and manage Wine- and Proton-based compatibility tools for Steam and Lutris with this graphical user interface.

  • Qbert

    Qbert generates a root overlay where you can install whatever software you need without messing your filesystem. NOTICE: something is broken atm, Qbert is not creating a correct overlay so basically the software is not working as intended.

  • SC Controller

    User-mode driver, mapper and GTK3 based GUI for Steam Controller, DS4 and similar controllers. Steam Deck support added in version 0.4.8.8.

  • Steam Deck SD Card Scanner

    An application to help you keep track of the different games you have on your SD Cards. If you ever found yourself wondering if you already have a game installed on a different SD Card then this is for you. Reddit post by u/ddotthomas.

  • Steam Deck Utilities by CryoByte33

    Scripts and utilities to enhance the Steam Deck experience, particularly performance.

  • Steam Shortcut Editor

    Allows you to modify the shortcuts file quickly and set game name to be the appid, so you have access to community controls. Link to Reddit post

  • Vibrant Deck CLI

    A simple command line utility to tweak the screen saturation of the Steam Deck.

List of Steam Deck-related websites

Here is a collection of websites that offer information, guides and news about the Steam Deck.

Official Valve sites

Linux and Steam Deck gaming sites

  • ProtonDB

    Crowdsourced Linux and Steam Deck game compatibility reports.

  • GamingOnLinux

    GamingOnLinux deals with games on Linux (which the Steam Deck runs) in general, but has consistently reported on Steam Deck-related news.

  • Linux Gaming Central

    Linux Gaming Central is dedicated to giving you news on the Linux gaming front. The link above points to the “Steam Deck” tag on the site.

  • Boiling Steam

    Boiling Steam is dedicated to covering the world of PC Linux Gaming since 2014. The site often reports on the Steam Deck, as the search results the link points to show.

  • Are We Anti-Cheat Yet?

    A comprehensive and crowd-sourced list of games using anti-cheats and their compatibility with GNU/Linux or Wine/Proton.

Steam Deck community sites

  • Steam Deck Community

    An independent Steam Deck Forum.

  • Steam Deck Life

    A Steam Deck blog for the latest news, tips and tricks and more.

  • Steam Deck HQ

    A web site with game reviews with optimal configuration, tips and guides, and news.

  • ShareDeck

    An unofficial site to find and share Steam Deck performance configurations.

  • overkill.wtf

    overkill.wtf primarily focuses on the Steam Deck, with a hint of Switch, PC gaming and whatever else we find interesting at that moment–but mostly Steam Deck.

  • Great on Deck

    Unofficial Steam Deck compatibility website. Verification, performance reviews and tweaks for Steam Deck. Emulation guides, Epic Games Store, Ubisoft Connect games and more.

  • CheckMyDeck

    Check Steam Deck compatibility of your Steam library.

  • sdeck.wiki

    A list of Steam Deck resources.

  • Steam Deck Guide

    A guide covering Steam Deck, including the applications and tools that will make you better and more efficient with your Steam Deck device.

  • Steam Deck Repo

    A website where you can upload and share community-made Steam Deck boot videos (plus in the future, other things like themes and an app to automatically apply them to the Steam Deck)!

  • Steam Deck Linux Wiki

    This wiki aims to be a useful resource for those that want to explore the desktop side of the Steam Deck.

  • Steam Deck Guide

    This guide contains all kinds of useful tips that were found online. Hopefully it will help you use your Steam Deck to the fullest.

List of Steam Deck-related subreddits and Lemmy communities

These other places covering the Steam Deck also exist on sites like Reddit and Lemmy:

  • r/SteamDeck
  • r/DeckSupport
  • r/steamdeck_linux
  • r/SteamDeckBootVids
  • r/SteamDeckEmulation
  • r/SteamDeckGames
  • r/SteamDeckModded
  • r/SteamDeckMods
  • r/SteamDeckTech
  • r/SteamDeckTinker
  • r/SteamDeckTricks
  • r/SteamDeckWins
  • r/SteamDeckYuzu
  • r/SteamOS
  • r/WindowsOnDeck
  • r/BestOfSteamDeck
  • r/linux_gaming

List of Steam Deck-related podcasts

If you enjoy listening to Steam Deck news in your car or elsewhere, these podcasts might be for you:

List of Steam Deck-related Discord servers

Get together and discuss the Steam Deck on these Discord servers:

  • Steam Deck Discord

    The main Steam Deck Discord, not affiliated with Valve, Valve employees are known to lurk on the Discord.

  • Steam Deck Homebrew

    Steam Deck Homebrew Discord server, with, among others, a channel for Decky support.

  • Moxvallix@sopuli.xyzM
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 year ago

    It might be a good idea to remove r/steamdeck_linux from the list. I restricted that subreddit a while ago, and this community serves as it’s replacement.

  • jayandp@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 year ago

    Great list, but remove Crankshaft. It’s basically dead now, and pretty much everything it could do is now possible in Decky, including video capture.

    • Thaurin@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I added a disclaimer. Might still be useful for historical purposes, or when the project becomes alive again, as open source project sometimes do.

  • supersquirrel@sopuli.xyz
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    7 months ago

    Here is a guide to installing and using distrobox on the Steam Deck. The usefulness of using distrobox is that distrobox sets up little mini environment you can install programs too that is outside the context of the immutable SteamOS operating system. Thus, after updates, software or setups you install in a distrobox environment will remain the same. Distrobox is more than just a simple bifurcation between the main SteamOS and a virtual environment, it provides tools to set up the ability to connect programs between the two for advanced setups (though you can ignore this stuff and just use the defaults).

    What Distrobox does (quote)

    Simply put it’s a fancy wrapper around podman, docker or lilipod to create and start containers highly integrated with the hosts.

    The distrobox environment is based on an OCI image. This image is used to create a container that seamlessly integrates with the rest of the operating system by providing access to the user’s home directory, the Wayland and X11 sockets, networking, removable devices (like USB sticks), systemd journal, SSH agent, D-Bus, ulimits, /dev and the udev database, etc…

    It implements the same concepts introduced by https://github.com/containers/toolbox but in a simplified way using POSIX sh and aiming at broader compatibility.

    All the props go to them as they had the great idea to implement this stuff.

    It is divided into 12 commands:

    distrobox-assemble - creates and destroy containers based on a config file
    distrobox-create - creates the container
    distrobox-enter - to enter the container
    distrobox-ephemeral - create a temporal container, destroy it when exiting the shell
    distrobox-list - to list containers created with distrobox
    distrobox-rm - to delete a container created with distrobox
    distrobox-stop - to stop a running container created with distrobox
    distrobox-upgrade - to upgrade one or more running containers created with distrobox at once
    distrobox-generate-entry - to create an entry of a created container in the applications list
    distrobox-init - the entrypoint of the container (not meant to be used manually)
    distrobox-export - it is meant to be used inside the container, useful to export apps and services from the container to the host
    distrobox-host-exec - to run commands/programs from the host, while inside of the container
    

    source: https://github.com/89luca89/distrobox/blob/main/docs/README.md#what-it-does


    Guide For Installing Distrobox On The Steam Deck

    https://github.com/89luca89/distrobox/blob/main/docs/posts/steamdeck_guide.md

    Quckstart Guide

    https://github.com/89luca89/distrobox/blob/main/docs/README.md#quick-start

    Distrobox Guide Homepage

    https://github.com/89luca89/distrobox/tree/main/docs#readme

    note because distrobox is a process that can be run by command line, you could presumably launch distrobox in a terminal window in Gaming Mode and keep everything for that session within that steam Big Picture window no problem. I am gonna have to keep experimenting with this, I will update with progress.

  • supersquirrel@sopuli.xyz
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    6 months ago

    An Easy Way To Copy A Controller Layout Configuration From One Game To Another

    I have unfortunately not been able to figure out how to load controller configurations that I have shared to steam into games that weren’t the original game I made that controller config in. I click on the controller layout and it fails to load and reverting back to the layout I already had selected.

    My recommendation for getting around this is adding the file manager Dolphin as a non-steam game to steam as well as “Corehunt” (which you have to download from Discover, it is made by the same people that made CoreKeyboard). Or you can just use Dolphin and Corehunt in desktop mode.

    https://flathub.org/apps/org.cubocore.CoreHunt

    (you already have Dolphin)

    1. Go to the game you want to copy a controller layout into. Edit one of the default controller layouts, just make a random change to it, rename the controller layout to a unique name like TARGET_game then export the file as a personal save (or a personal shareable save I can’t remember which).

    2. In Corehunt, search for the file, Corehunt should find the file fairly quickly (it is muchhhh faster and more thorough than the other file search programs I have used on the Steam Deck so far). Note the file path.

    3. If needed, also search the name of the controller layout you want to copy into the game (name that layout something you can search for easily too).

    4. Navigate to the file path for your controller layout you want to copy, click split view in dolphin and then open up the controller layout for the game you want to copy the controller layout into (that contains your “Target_game” file) and… drag and drop copy!

    5. Done!

    Note… you can also look up your steam deck’s file path to controller layouts in a guide or documentation but the filepath is really annoying and one of the folder steps is your steam user-id… so I actually think this explanation is much more concise and easy to do. Just let Corehunt find the folder location for you and then pin it to Dolphin’s sidebar so you can quickly jump to it again.

    Steam games should name themselves according to the name you have in Steam, but sometimes the folder name is just a number (the steam game’s id number or something).

  • CosmicSploogeDrizzle@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    For Chiaki, could we add a link specifically to Chiaki4Deck? Last I checked Chiaki was in maintenance mode and wasn’t accepting edits to fix issues with trackpad swipes and some other deck specific improvements. Someone from the community forked Chiaki and made chiaki4deck, available on the discover store to remedy these issues.

  • supersquirrel@sopuli.xyz
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    7 months ago

    https://swethatanamala.substack.com/p/how-i-ran-llms-on-steam-deck-handheld

    I am going to probably make a post/video about using the setup Swetha lays out in this article after I have fiddled around with this setup to have enough good advice to collect into a post, but it is worth linking to this awesome guide here as well on how to run a LLM/AI locally on your steam deck (meaning an internet connection is not needed and no data leaves your device period). There are a million ways to do this but what is so clever about Swetha’s is that because the whole setup is contained within a distrobox ubuntu instance that lives in your home directory, updates to your Steam Deck won’t break everything (Steam-os is an immutable operating system which can cause headaches with having to re-setup things after every update).

    Also because this method relies on using a llama.cpp through a terminal, there is no reason this workflow couldn’t be done with a terminal program open in Gaming Mode on the Steam Deck (or through Decky Terminal, but I can’t figure out how to easily paste text in and out of it ughh).

    Edit you can also just install jan from here as an app image https://jan.ai/ and load in .gguf files you download from huggingface.co

    Swetha recommends getting a model that is less than 4 gigabytes and loading it into the GPU, but I haven’t found a >4 gig model that actually gives that useful information yet. I have had success with running these models on the CPU

    https://huggingface.co/TheBloke/Mistral-7B-Instruct-v0.1-GGUF

    In particular I found the sweet spot to be these specific models:

    mistral-7b-instruct-v0.1.Q5_K_S.gguf Q5_K_S

    mistral-7b-instruct-v0.1.Q5_K_M.gguf Q5_K_M

    This one runs too slow on the CPU to be useful at least with the settings I am currently using:

    mistral-7b-instruct-v0.1.Q6_K.gguf Q6_K

    I like the handy chart that comes along with this release of mistral models as it gives you a good starting point from which to figure out generally what size model is practical and optimal for your computer.

    This reddit thread had some good general information on how to download AI models from hugginface.co and run them

    https://www.reddit.com/r/LocalLLaMA/comments/18hzun0/sharing_a_simple_local_llm_setup/

    Specifically this quote from that reddit thread is useful


    Steps:

    Install llama.cpp, the steps are detailed in the repo.

    Download an LLM from huggingface.

    For those not familiar with this step, look for anything that has GGUFin its name. You will probably find that on TheBloke's page. If you are not sure which one to choose, start with one that has lots of likes or downloads, or browse this community for impressions and feedback. Once you find the model you like, go to its page, click on Files and versions` and then choose a file that ends with .gguf and download it. If you are not familiar with the sizes, go for Q4_K_M and make sure the size of the file seems to be something that can fit in your GPU or CPU memory.

  • Kissaki@feddit.de
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    What use is linking Steam Link store page when it can no longer be bought? Should at least be disclosed and put into context.

    • Thaurin@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      There is a link somewhere on that page, which links to the download for the app. That’s why I used it, I guess. I changed it to the Flatpak link.

    • Noxious@fedia.io
      link
      fedilink
      arrow-up
      2
      ·
      3 months ago

      There’s a fork called Input Leap that is working on Wayland support. Most of the maintainers of Barrier have now moved on and are working on Input Leap.

  • CannedTuna@sh.itjust.works
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Got my Steam Deck recently and just wanted to add image resources to non steam game icons for Plex and Firefox and such. Remembered seeing this post here a while back and now I’m deep in the rabbit hole. Thanks for this super useful post!

    • Thaurin@lemmy.worldOP
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      No problem! For adding art for non-Steam games, I’d really recommend the SteamGridDB plugin for Decky Loader! And of course Steam ROM Manager for things like emulators and ScummVM, etc.

  • FrankFrankson@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    1 year ago

    Can moderators can sticky/pin posts here? If so this probably should be stickied/pinned/whatever the fuck you call it here.

  • doxxx@lemmy.ca
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Fantastic list! I’m gonna try out SyncThing this weekend 👍🏻

    • Thaurin@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      1 year ago

      SyncThing is great. I have it on all my computers and a VPS. At least two clients need to be online for them to be able to transfer data, of course, so that VPS comes in handy. Something like a Raspberry Pi would work.

      I sync all my emulator save games with it, for instance.

      • doxxx@lemmy.ca
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        That was actually pretty easy to setup.

        I installed SyncThing on my Windows PC using https://github.com/Bill-Stewart/SyncthingWindowsSetup and set it up to monitor a folder which contains the non-Steam games I want to sync to my SteamDeck.

        On the SteamDeck, in Desktop mode, I installed the SyncThingy app via the package manager and followed the instructions to set it up as a service that starts at boot time, so it will even work in Gaming mode.

        Once that was running, I went through the process in SyncThing to synchronize my PC and the Steam Deck, which does take a few clicks and confirmations on both the PC and the Steam Deck, but after that it just started copying the game folders automatically.

        After a game had sync’d to the Steam Deck, I added it to Steam, switched back to Gaming mode and played it for a bit. After saving my game, I checked on the PC to see that the save files that added to the game folder on my Steam Deck also now showed up on my PC.