Unable to add drives to Steam

First, off I don’t know if this is the correct place nor do I know this is a problem with either containers, Fedora Silverblue or Steam.

I am on Fedora Silverblue and I have Steam installed via flatpak. I have been trying to attach my drives under the setting “Storage” in Steam. When I click on “Add drive”, the file explorer pops up, naturally. But, I get the error message in the new window “The contents of the folder couldn’t be shown. The process is not supported”. I translated the error I got into English.This problem was also reported on Github: “Unable to drives in settings” Then I go to my second drive and choose the location of the Steam folder. And nothing happens. The settings window doesn’t show the attached drive nor the installed games.

No matter what I tried, it fails.

  1. Used the command in terminal flatpak override --user --filesystem=/run/media/username/drive_name com.valvesoftware.Steam I noticed after executing this command, Flatseal added the path for access. However, I still couldn’t add my drive under “Storage” in Steam.
  2. Tried it with Flatseal. It didn’t work either. See setting here in the screenshot: Link to screenshot
  3. Trying to do this in toolbox will get the same issues and the same error output (see below).
  4. Changed the directory to /run/media/<my_user> then later to /var/mnt (I created the /mnt folder) - it didn’t work, either
  5. Updated all flatpak packages - as of right now no update available yet for Steam

While Steam is running through the terminal and when I go to settings > “Storage” > add drives, I get this output in the terminal:

output

`Couldn’t write /usr/.steam_exec_test.sh: Read-only file system

Couldn’t write /app/.steam_exec_test.sh: Read-only file system

Couldn’t write /app/lib/ffmpeg/.steam_exec_test.sh: Read-only file system

Couldn’t write /app/lib/i386-linux-gnu/.steam_exec_test.sh: Read-only file system

Couldn’t write /app/lib/i386-linux-gnu/GL/default/.steam_exec_test.sh: Read-only file system

Couldn’t write /app/lib/i386-linux-gnu/GL/default/.steam_exec_test.sh: Read-only file system

Couldn’t write /app/lib32/ffmpeg/.steam_exec_test.sh: Read-only file system

Couldn’t write /usr/lib/x86_64-linux-gnu/GL/default/.steam_exec_test.sh: Read-only file system

Couldn’t write /usr/lib/x86_64-linux-gnu/GL/default/.steam_exec_test.sh: Read-only file system

Couldn’t write /usr/lib/x86_64-linux-gnu/openh264/.steam_exec_test.sh: Read-only file system

Couldn’t write /usr/share/runtime/locale/.steam_exec_test.sh: Read-only file system

Couldn’t write /etc/machine-id/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/e2scrub.conf/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/issue/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/issue.net/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/ld.so.conf/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/mke2fs.conf/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/moduli/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/nsswitch.conf/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/protocols/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/rc_maps.cfg/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/rpc/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/services/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/ssh_config/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/vdpau_wrapper.cfg/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/xattr.conf/.steam_exec_test.sh: Not a directory

Couldn’t write /etc/alsa/.steam_exec_test.sh: Read-only file system

Couldn’t write /etc/debuginfod/.steam_exec_test.sh: Read-only file system

Couldn’t write /etc/fonts/.steam_exec_test.sh: Read-only file system

Couldn’t write /etc/gtk-3.0/.steam_exec_test.sh: Read-only file system

Couldn’t write /etc/pki/.steam_exec_test.sh:Read-only file system

Couldn’t write /etc/profile.d/.steam_exec_test.sh: Read-only file system

Couldn’t write /etc/pulse/.steam_exec_test.sh: Read-only file system

Couldn’t write /etc/rc_keymaps/.steam_exec_test.sh: Read-only file system

Couldn’t write /etc/security/.steam_exec_test.sh: Read-only file system

Couldn’t write /etc/ssl/.steam_exec_test.sh: Read-only file system

Couldn’t write /etc/xdg/.steam_exec_test.sh: Read-only file system

Couldn’t write /usr/share/zoneinfo/.steam_exec_test.sh: Read-only file system

Couldn’t write /run/media/user/drivename/.steam_exec_test.sh: Read-only file system

Couldn’t write /run/host/usr/.steam_exec_test.sh: Read-only file system

Couldn’t write /run/host/var/usrlocal/.steam_exec_test.sh: Permission denied

Couldn’t write /run/host/etc/ld.so.cache/.steam_exec_test.sh: Not a directory

Couldn’t write /run/host/etc/alternatives/.steam_exec_test.sh: Permission denied

Couldn’t write /run/host/os-release/.steam_exec_test.sh: Not a directory

Couldn’t write /run/host/fonts/.steam_exec_test.sh: Read-only file system

Couldn’t write /run/host/fonts-cache/.steam_exec_test.sh: Read-only file system`

Basically, it says the path (where the drives are) are read-only.

Many people have games installed on other drives and considering many people have terrible internet like me I am not willing to download a single ~40GB game for 8 hours to the local drive.

Ok, what about installing and using Steam with rpm-ostree? I get the same results like before. What about adding the drives directly via fstab into the /var/mnt/ directory and then give Steam the rights to access those paths? I did, I get the same issues. Or what about running Steam with sudo? I get the error message “Cannot run as root user”.

I also checked if the user owns Steam. I get this output:

output
my_user@fedora:~$ ls -l ~/.var/app/com.valvesoftware.Steam
total 12
drwxr-xr-x. 1 my_user my_user  0 29. Okt 20:05 Bilder
lrwxrwxrwx. 1 my_user my_user  6 29. Okt 20:05 cache -> .cache
lrwxrwxrwx. 1 my_user my_user  7 29. Okt 20:05 config -> .config
lrwxrwxrwx. 1 my_user my_user 12 29. Okt 20:05 data -> .local/share
drwxr-xr-x. 1 my_user my_user  0 29. Okt 20:05 Musik

I ran

flatpak run --command=sh com.valvesoftware.Steam

I can get into the shell.

What can I do now? I am clueless. I have been looking around on the internet and I don’t find anything. I would like to solve this. Or if not, then I simply go back to Fedora Workstation. Help would be appreciated. Thank you.

You are running sandboxed operation system with sandboxed apps like steam they can’t see or talk to system that is called atomi/immutable you are running Silverblue so you need to edit flatpak permissions to enable read/write access to SSD/folder you want to add it can see, talk and write

1 Like

Added silverblue

This should work. I’m using it on my system. Did you make sur to restart Steam after adding the override via Flatseal?

Added flatpak, steam and removed silverblue

I ran

flatpak override --user --filesystem=host com.valvesoftware.Steam

then restarted my whole system. Now I am getting this, when running flatpak run com.valvesoftware.Steam

INFO:root:https://github.com/flathub/com.valvesoftware.Steam/wiki
WARNING:root:Found filesystem "host" in static permissions
ERROR:root:Refusing to launch in order to prevent issues; if you've added an override with access to some of the filesystems above, please remove it and see https://github.com/flathub/com.valvesoftware.Steam/wiki#i-want-to-add-external-disk-for-steam-libraries

The link you see there was the one I previously visited. There is a command to grant Steam the right to access the drives, which I already used previously (I said it in my top comment). Alternatively, Flatseal can be used and it will do the same like that command.
Anyway, I will test few more things but honestly I have no idea what’s the problem here nor do I have an issue how to solve this.

flatpak override as --user to host might be the issue since you are trying to access root folder as a user also default flatpaks are installed as system not user level and fedora flatpaks are still in system, but filtered

No, that wasn’t the problem. It turned out for whatever reason both the drives and the SteamLibrary folders were both owned by root and were read-only. That was the problem. Like I said, I didn’t do any ownership or read and write settings after installing the OS on my system. My two drives are NTFS, so I installed ntfs-3g to enable read and write processes on NTFS drives.

I went into /etc/fstab and edited the prior lines I added previously and replaced them with:

UUID=<uid> /path/to/drive ntfs-3g defaults,rw,uid=<user id>,gid=<group id>,umask=000,nofail 0 0

This makes sure to not only enable read and write but also to assign the ownership of the drives to me.

Then I executed the commands one by one:

sudo systemctl daemon-reload
sudo umount /path/to/drive
sudo mount -a

Had to use the second command twice to unmount the second drive. Then I restarted the system. This edit in /etc/fstab also solves the read-only problem when trying to launch a game because Steam uses Proton to create necessary files in /path/to/drive/SteamLibrary.

This is kinda interesting but kinda annoying that Linux seems to disable read and write and assign ownership to root out of the box when drives are mounted to the system without the user doing anything in /etc/fstab. I have no idea and it’s just my speculation. Anyway, I am having now fun with gaming.

This should not be necessary. Fedora already is able to read/write ntfs drives.

The lines is fstab should read ‘ntfs’ for the file system type and not necessarily ‘ntfs-3g’

Do not select the drive directly. Create a folder in the drive and select that folder instead.