Skip to content

Instantly share code, notes, and snippets.

@fathonix
Last active February 19, 2024 09:58
Show Gist options
  • Select an option

  • Save fathonix/b03325895c56e42ee0dab92ecce2f81f to your computer and use it in GitHub Desktop.

Select an option

Save fathonix/b03325895c56e42ee0dab92ecce2f81f to your computer and use it in GitHub Desktop.
Make Zoom app links automatically open Zoom meeting on browser

Make Zoom app links automatically open Zoom meeting on browser

This trick automatically opens meeting on your browser without having to click "Join from Your Browser" manually, useful to save some space used by Zoom Desktop or run on unsupported platforms such as i386 and ARM.

There is a Chromium extension to do this, but this method works on any XDG-compliant browser without additional extensions and fearing your data collected by them.

Getting Started

Make sure Zoom Desktop is uninstalled, the xdg-utils package is installed, the xdg-mime command is accessible and x-www-browser opens your preferred browser.

Download the following zoom-url-handler.sh file and put it on /usr/local/bin and make it executable. Download zoom.desktop and put it on ~/.local/share/applications.

Associating Zoom Protocol

Run this command to associate the protocol:

xdg-mime default ~/.local/share/applications/zoom.desktop x-scheme-handler/zoommtg

Try to open a Zoom meeting link, there should be a popup asking to open "Zoom PWA" application. Tick the "Always allow" checkbox and click Open. Next time, this process should be automatic.

Credits

Thanks to sebaro for their guide on setting up ViewTube to play on external player.

#!/bin/sh
# zoom-url-handler.sh - Redirect Zoom app URL to Zoom PWA
# Licensed under MIT. (c) 2024 Aldo Adirajasa Fathoni
url="https://app.zoom.us/wc/home"
if ( echo $1 | grep -qE '^zoommtg:' ); then
confno=$(echo $1 | sed -r 's/.+[?&]confno=([^&]+).+?/\1/')
passwd=$(echo $1 | sed -r 's/.+[?&]pwd=([^&]+).+?/\1/')
if [ -n "$confno" ] && [ -n "$passwd" ]; then
url="https://app.zoom.us/wc/${confno}/join?fromPWA=1&pwd=${passwd}"
fi
fi
x-www-browser "$url"
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Terminal=false
Type=Application
Name=Zoom PWA
Exec=/usr/local/bin/zoom-url-handler.sh %u
Icon=Zoom
MimeType=x-scheme-handler/zoommtg
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment