You can sign up to get a daily email of our articles, see the Mailing List page.
Steam install links
Salvatos 7 Mar
I never bothered to ask, and looking around now didn’t yield any results. Steam install links (e.g. steam://install/1519390) have never worked for me on Linux Mint. At best they’ll switch focus (kind of) to Steam and take me to the Library, but no pop-up or anything relevant to the game in question. Are they supposed to work at all or are they just not supported on Linux?
This topic has an answer marked - jump to answer.
Liam Dawe 7 Mar
Quoting: SalvatosI never bothered to ask, and looking around now didn’t yield any results. Steam install links (e.g. steam://install/1519390) have never worked for me on Linux Mint. At best they’ll switch focus (kind of) to Steam and take me to the Library, but no pop-up or anything relevant to the game in question. Are they supposed to work at all or are they just not supported on Linux?
There's something specific you need installed for it to work with xdg-open, do you have it?
Salvatos 7 Mar
I assume not, as I have no idea what it would be
whizse 7 Mar
Works for me™.

AFAICT this should be set up when the Steam client is installed. A steam.desktop file registers a mimetype for steam:// like this:
MimeType=x-scheme-handler/steam;x-scheme-handler/steamlink;

and you can see if it's registred properly by using:
xdg-mime query default "x-scheme-handler/steam;x-scheme-handler/steamlink" which should return "steam.desktop" by default.
whizse 7 Mar
If I run /usr/bin/steam steam://install/1402490 from a terminal (with the Steam client already running in a second terminall) I get the following output on stdout and the download window opens.

ExecCommandLine: "'/home/whizse/.local/share/Steam/ubuntu12_32/steam' 'steam://install/1402490'"
ExecuteSteamURL: "steam://install/1402490"


You can check if something mangles the link, and for possible error messages.

(/usr/bin/steam is the path set on my system in Exec in the steam.desktop file mentioned above.)
Salvatos 7 Mar
I have a /usr/share/applications/steam.desktop file with  MimeType=x-scheme-handler/steam;

`steam.desktop` is returned if I query just  
xdg-mime query default "x-scheme-handler/steam"


The links are sent to Steam, it just doesn’t really do anything with them. Upon further testing, it opens whichever page I have set under "Select which Steam window appears when the program starts", not necessarily the Library.
Salvatos 7 Mar
Quoting: whizseIf I run /usr/bin/steam steam://install/1402490 from a terminal (with the Steam client already running in a second terminall) I get the following output on stdout and the download window opens.

ExecCommandLine: "'/home/whizse/.local/share/Steam/ubuntu12_32/steam' 'steam://install/1402490'"
ExecuteSteamURL: "steam://install/1402490"


You can check if something mangles the link, and for possible error messages.

(/usr/bin/steam is the path set on my system in Exec in the steam.desktop file mentioned above.)

So if I run  
steam steam://install/1402490

it works as expected. The same link in the browser does nothing but open the Library. In both cases, there’s no output in the terminal though

At least I have a workaround of sorts, now ^^ Thanks for your help!

What does your full `Exec` line look like? Mine (unmodified from the install) is:
 
Exec=sh -c 'STEAM_FRAME_FORCE_CLOSE=1 steam' %U


Last edited by Salvatos on 7 March 2022 at 8:59 pm UTC
whizse 7 Mar
Quoting: SalvatosWhat does your full `Exec` line look like? Mine (unmodified from the install) is:
 
Exec=sh -c 'STEAM_FRAME_FORCE_CLOSE=1 steam' %U

Mine just says "Exec=/usr/bin/steam %U"

Yours does look odd though. The %U which is the URI is outside the quote and is never sent to the steam command. Also, one does usually just use env in a .desktop file to set environment variables. Some Mint specific changes/bug?
Salvatos 8 Mar
Quoting: whizseYours does look odd though. The %U which is the URI is outside the quote and is never sent to the steam command.
I suspected as much. Moving it inside the quoted part does fix the issue! Thank you again :)
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: Liberapay or PayPal.

This ensures all of our main content remains totally free for everyone with no article paywalls. We also don't have tons of adverts, there's also no tracking and we respect your privacy. Just good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register

Or login with...
Sign in with Steam Sign in with Twitter Sign in with Google
Social logins require cookies to stay logged in.