Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Steam browser protocol doesn't work #7076

Open
Xinayder opened this issue Apr 27, 2020 · 8 comments
Open

Steam browser protocol doesn't work #7076

Xinayder opened this issue Apr 27, 2020 · 8 comments

Comments

@Xinayder
Copy link

Xinayder commented Apr 27, 2020

Your system information

  • Steam client version (build number or date): April 23, 2020 00:53:55
  • Distribution (e.g. Ubuntu): Arch Linux 5.6.6-zen1-1-zen, KDE
  • Opted into Steam client beta?: Yes
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

The Steam browser protocol steam:// doesn't work. On Firefox, any links that use the protocol just redirect the Steam client to the store front page. On any other app in Linux, clicking a steam:// link fails with the error:

File not found: steam://open/news

EDIT: the protocol handler will redirect the Steam client to whatever window is set as the startup window, on Settings - Interface. When running in terminal, the following line appears whenever I try to open a Steam link in Firefox:

ExecCommandLine: "'/home/alex/.local/share/Steam/ubuntu12_32/steam' -foreground"

Steps for reproducing this issue:

  1. Open steam://url/SSA or any other Steam browser protocol link
@kisak-valve
Copy link
Member

kisak-valve commented Apr 27, 2020

Hello @RockyTV, this sounds like a MIME issue outside of Steam. Can you copy your /usr/share/applications/steam.desktop to a gist and share the link?

In particular, I want to confirm the Exec= line in the first section of /usr/share/applications/steam.desktop is Exec=/usr/bin/steam %U.

@Xinayder
Copy link
Author

https://gist.github.com/RockyTV/099336594fec21aebd198f9f2a46758e

Looks okay to me, though I'm running steam-native from Arch Linux, but the same issue happens with steam-runtime (using Valve's runtime).

@LuvIsBadToTheBone
Copy link

LuvIsBadToTheBone commented May 1, 2020

Hello, I can confirm this behavior as @RockyTV discribed

Steamclientversion: April 27 2020 at 21:53:32
Steam-Api: v020
Os (inxi): https://pastebin.com/CkfqbKib
Steam system info: https://gist.github.com/LuvIsBadToTheBone/d213f5965b2dfbb162901dec0a390e61
System is up to date.

Discribe issue:
When clicking on "invite to civ 6 lobby" link like this : steam://joinlobby/289070/109775241033311305/76561198043381777 in discord or open with firefox or open in terminal
i get redireted to whatever site is preset in steam start site.

btw terminal output:
toni@lifebook:$ xdg-open "steam://joinlobby/289070/109775241024549909/76561198285600411"
toni@lifebook:
$ Running Steam on linuxmint 19.3 64-bit
STEAM_RUNTIME is enabled automatically
Pins up-to-date!
Steam client's requirements are satisfied
/home/toni/.steam/ubuntu12_32/steam

Expected behaviour would be i click link, it opens civilization 6 and join the civ 6 lobby where the other players are.

Steps to reproduce:
click link again

@inukaze
Copy link

inukaze commented Jun 8, 2020

Open a terminal and try this :

echo 'Variables :'
MIMESA="$HOME/.local/share/applications/mimeapps.list"
MIMESL=$(cat $HOME/.local/share/applications/mimeapps.list | grep "x-scheme-handler/steam=steam.desktop")
MIMESC="$HOME/.local/share/mime"
 
echo 'Steam Desktop Entry:'
echo '[Desktop Entry]
Name=Steam
Comment=Application for managing and playing games on Steam
Comment[es]=Aplicación para administrar y ejecutar juegos en Steam
Exec=/usr/bin/steam %U
Icon=steam
Terminal=false
Type=Application
Categories=Network;FileTransfer;Game;
MimeType=x-scheme-handler/steam;
Actions=Store;Community;Library;Servers;Screenshots;News;Settings;BigPicture;Friends;
 
[Desktop Action Store]
Name=Store
Name[es]=Tienda
Exec=steam steam://store
 
[Desktop Action Community]
Name=Community
Name[es]=Comunidad
Exec=steam steam://url/SteamIDControlPage
 
[Desktop Action Library]
Name=Library
Name[es]=Biblioteca
Exec=steam steam://open/games
 
[Desktop Action Servers]
Name=Servers
Name[es]=Servidores
Exec=steam steam://open/servers
 
[Desktop Action Screenshots]
Name=Screenshots
Name[es]=Capturas
Exec=steam steam://open/screenshots
 
[Desktop Action News]
Name=News
Name[es]=Noticias
Exec=steam steam://open/news
 
[Desktop Action Settings]
Name=Settings
Name[es]=Parámetros
Exec=steam steam://open/settings
 
[Desktop Action BigPicture]
Name=Big Picture
Exec=steam steam://open/bigpicture
 
[Desktop Action Friends]
Name=Friends
Name[es]=Amigos
Exec=steam steam://open/friends' | tee "$HOME/.local/share/applications/steam.desktop" &> /dev/null
 
echo 'Let the all users read & execute that desktop entry :' 
chmod a+o+x "$HOME/.local/share/applications/steam.desktop
 
echo 'Add the protocol handler to the user local settings' 
sed -i '/\[Default Applications\]/a x-scheme-handler/steam=steam.desktop' "$MIMESA"
 
echo 'Update the mime database :'
update-mime-database $MIMESC

@Tank-Missile
Copy link

Tank-Missile commented Jun 30, 2020

I'm having a similar issue involving opening steam from chromium. Steam starts but does not show a system tray icon or the UI. Clicking on the .desktop file afterwards will open the UI though.

@JoeJoeTV
Copy link

I am also having this issue and have found a way to solve it:

The Problem

In the steam.desktop file located in /usr/share/applications the Exec line reads:

Exec=sh -c 'STEAM_FRAME_FORCE_CLOSE=1 steam' %U

As I understand it, the %U is outside of the quotation marks encapsulating the command for sh -c , so it isn't passed to thesteam executeable.

I have installed steam fro the .deb file provided by Valve, so I checked what the Exec line in the provided .deb file says and it reads

Exec=/usr/bin/steam %U

which should be fine.

So the file probably gets overridden by the first steam update.
The .deb file provided by my Distro's package maintainer(Linux MInt) also has the correct Exec line in the steam.desktop file.

A (temporary) solution

To fix this issue temporarily, until the file gets updated, I edited the /usr/share/applications/steam.desktop file, so that the Exec line reads as follows:

Exec=sh -c 'STEAM_FRAME_FORCE_CLOSE=1 steam %U'

So basically, I just moved the ' to behind the %U and I can open steam:// links in the client now.

@Tibladar
Copy link

Can confirm this long standing issue and the simple fix mentioned above

Why isn't it fixed yet?

@Tibladar
Copy link

I opened a pull request for fixing this issue in Linux Mint: linuxmint/mintsystem#129

I don't know about OP as Arch with KDE is stated maybe there's a similar overwrite

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants