Skip to content

Operator873/steam-deck-smb-mount

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Operator873's Steam Deck SMB Mount Wizard

A few years ago, I wrote a guide on Reddit detailing how to mount a Samba share on a Steam Deck using systemd. This permitted the remote storage of ROMs, media, and other associated content that nerds like me want access to on their Deck. Recently, another user (u/rogercrocha) appeared in that thread with a ChatGPT-generated script to automate the process. This inspired me to revisit my old project and build a proper, native tool to make adding an SMB share incredibly easy—and honestly, quite pleasant.

This is the result.

✨ Features

  • Zero-Terminal Experience: Completely GUI-driven using native KDE Plasma dialogs (kdialog).
  • Update Resilient: Safely mounts your shares within the /home/deck/ directory, ensuring your configuration survives major SteamOS system updates.
  • High Performance: Utilizes the kernel CIFS driver rather than user-space FUSE frameworks (like Dolphin's default network viewer) for better emulator compatibility and lower CPU overhead.
  • Automated Lifecycle: Generates strict, FHS-compliant systemd .mount and .automount units, securely stashes your credentials, and handles the sudo heavy lifting.

🛑 Prerequisites

Samba server

This wizard DOES NOT install, create, or host a Samba server. It will not turn your Steam Deck into a NAS, nor will it create a share for you.

This tool is strictly designed to act as a client that connects to an outside source. It requires that you already have a fully functioning, accessible Samba share living somewhere else on your network (such as a Synology NAS, a TrueNAS server, a Windows PC, or a homelab).

Before you run this script, you must already have the following ready to go:

  • A running NAS or server hosting an active SMB share.
  • The exact IP address of that server.
  • A tested username and password that has access to the share.
  • Verified that the share is successfully reachable over your local network from another device.

Sudo access

Because this wizard creates system-level mount units, it requires root (sudo) access.

Out of the box, SteamOS does not have a user password set. If you have never set a password on your Steam Deck, you must do so before running this wizard:

  1. Open Konsole in Desktop Mode.
  2. Type passwd and press Enter.
  3. Create a secure password (it will not show characters on screen as you type).

🚀 Installation

Installation is scripted for ease of use. Simply copy the following one-liner into Konsole and press Enter:

curl -sSL https://raw.githubusercontent.com/Operator873/steam-deck-smb-mount/main/install.sh | bash

After the script completes, you will have an SMB Mount Wizard shortcut added directly to your Desktop. Double-click it to launch the tool!

⚙️ Modification

The wizard supports seamlessly modifying SMB configurations that it has created (it explicitly ignores and will not alter other systemd mount units on your system). Once you've created an SMB mount with this utility, you may relaunch the wizard via the desktop shortcut at any time and select "Modify" to change IPs, paths, or credentials.

🗑️ Uninstallation

The wizard features a built-in removal utility to make tearing down SMB shares just as easy as creating them. Launch the wizard and select "Remove" to safely stop the services, delete the systemd units, and wipe your cached credentials.

To fully remove the wizard itself from your system, execute the following commands in Konsole after you have used the tool to unmount your shares:

cd ~
rm -f smb_wizard.sh
rm -f Desktop/SMB-Wizard.desktop

🤝 Contributing & Support

This project was built to make life easier for the Steam Deck community, and I welcome any help to make it even better!

  • Found a bug? If the script fails, throws an error, or just doesn't work with your specific NAS setup, please open an Issue. Be sure to include what type of NAS you are connecting to and any error messages you received.
  • Have an idea? Feature requests are always welcome. Drop your ideas in the Issues tab so we can discuss them.
  • Want to code? Pull requests are openly encouraged! If you've written a fix or a new feature, feel free to submit a PR. Just ensure your bash script modifications remain layperson-friendly and avoid introducing external dependencies.

About

A zero-config, GUI-driven utility for securely mounting Samba shares on SteamOS via systemd.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages