Skip to main content
added 93 characters in body
Source Link
Geremia
  • 1.3k
  • 2
  • 14
  • 28

Use a wrapper script:

#!/usr/bin/bash

url=$1

if [[ $url == *youtube.com/watch* ]] || 
  [[ $url == *youtu.be* ]] || 
  [[ $url == *vimeo.com* ]] || 
  [[ $url == *instagram.com* ]] ||
  [[ $url == *facebook.com* ]] || 
  [[ $url == *twitter.com* ]] || 
  [[ $url == *x.com* ]]; then
  mpv $url
  if [[ $? -ne 0 ]]; then
    kdialog --error "Error playing video $url"
    exit 1
  fi
elif [[ $url == ^mailto:* ]]; then
  thunderbird $url
else
  firefox $url
fi
$ chmod +x ~/.local/bin/url-handler.sh

~/.local/share/applications/url-handler.desktop:

[Desktop Entry]
Name=URL Handler
Exec=/home/YOUR_USERNAME/.local/bin/url-handler.sh %u
Terminal=false
Type=Application
MimeType=x-scheme-handler/http;x-scheme-handler/https;
$ xdg-mime default url-handler.desktop x-scheme-handler/http
$ xdg-mime default url-handler.desktop x-scheme-handler/https

🎩-tip: this Google Gemini transcript (with my edits)

Use a wrapper script:

#!/usr/bin/bash

url=$1

if [[ $url == *youtube.com/watch* ]] || 
  [[ $url == *youtu.be* ]] || 
  [[ $url == *vimeo.com* ]] || 
  [[ $url == *instagram.com* ]] ||
  [[ $url == *facebook.com* ]] || 
  [[ $url == *twitter.com* ]] || 
  [[ $url == *x.com* ]]; then
  mpv $url
elif [[ $url == ^mailto:* ]]; then
  thunderbird $url
else
  firefox $url
fi
$ chmod +x ~/.local/bin/url-handler.sh

~/.local/share/applications/url-handler.desktop:

[Desktop Entry]
Name=URL Handler
Exec=/home/YOUR_USERNAME/.local/bin/url-handler.sh %u
Terminal=false
Type=Application
MimeType=x-scheme-handler/http;x-scheme-handler/https;
$ xdg-mime default url-handler.desktop x-scheme-handler/http
$ xdg-mime default url-handler.desktop x-scheme-handler/https

🎩-tip: this Google Gemini transcript (with my edits)

Use a wrapper script:

#!/usr/bin/bash

url=$1

if [[ $url == *youtube.com/watch* ]] || 
  [[ $url == *youtu.be* ]] || 
  [[ $url == *vimeo.com* ]] || 
  [[ $url == *instagram.com* ]] ||
  [[ $url == *facebook.com* ]] || 
  [[ $url == *twitter.com* ]] || 
  [[ $url == *x.com* ]]; then
  mpv $url
  if [[ $? -ne 0 ]]; then
    kdialog --error "Error playing video $url"
    exit 1
  fi
elif [[ $url == ^mailto:* ]]; then
  thunderbird $url
else
  firefox $url
fi
$ chmod +x ~/.local/bin/url-handler.sh

~/.local/share/applications/url-handler.desktop:

[Desktop Entry]
Name=URL Handler
Exec=/home/YOUR_USERNAME/.local/bin/url-handler.sh %u
Terminal=false
Type=Application
MimeType=x-scheme-handler/http;x-scheme-handler/https;
$ xdg-mime default url-handler.desktop x-scheme-handler/http
$ xdg-mime default url-handler.desktop x-scheme-handler/https

🎩-tip: this Google Gemini transcript (with my edits)

added 136 characters in body
Source Link
Geremia
  • 1.3k
  • 2
  • 14
  • 28

Use a wrapper script:

#!/usr/bin/bash

url=$1

if [[ $url == *youtube.com/watch* ]] || 
  [[ $url == *youtu.be* ]] || 
  [[ $url == *vimeo.com* ]] || 
  [[ $url == *instagram.com* ]] ||
  [[ $url == *facebook.com* ]] || 
  [[ $url == *twitter.com* ]] || 
  [[ $url == *x.com* ]]; then
  mpv $url
elif [[ $url == ^mailto:* ]]; then
  thunderbird $url
else
  firefox $url
fi
$ chmod +x ~/.local/bin/url-handler.sh

~/.local/share/applications/url-handler.desktop:

[Desktop Entry]
Name=URL Handler
Exec=/home/YOUR_USERNAME/.local/bin/url-handler.sh %u
Terminal=false
Type=Application
MimeType=x-scheme-handler/http;x-scheme-handler/https;
$ xdg-mime default url-handler.desktop x-scheme-handler/http
$ xdg-mime default url-handler.desktop x-scheme-handler/https

🎩-tip: this Google Gemini transcript (with my edits)

Use a wrapper script:

#!/usr/bin/bash

url=$1

if [[ $url == *youtube.com/watch* ]] || 
  [[ $url == *youtu.be* ]] || 
  [[ $url == *vimeo.com* ]] || 
  [[ $url == *instagram.com* ]] ||
  [[ $url == *facebook.com* ]] || 
  [[ $url == *twitter.com* ]] || 
  [[ $url == *x.com* ]]; then
  mpv $url
elif [[ $url == ^mailto:* ]]; then
  thunderbird $url
else
  firefox $url
fi
$ chmod +x ~/.local/bin/url-handler.sh

~/.local/share/applications/url-handler.desktop:

[Desktop Entry]
Name=URL Handler
Exec=/home/YOUR_USERNAME/.local/bin/url-handler.sh %u
Terminal=false
Type=Application
MimeType=x-scheme-handler/http;x-scheme-handler/https;

🎩-tip: this Google Gemini transcript (with my edits)

Use a wrapper script:

#!/usr/bin/bash

url=$1

if [[ $url == *youtube.com/watch* ]] || 
  [[ $url == *youtu.be* ]] || 
  [[ $url == *vimeo.com* ]] || 
  [[ $url == *instagram.com* ]] ||
  [[ $url == *facebook.com* ]] || 
  [[ $url == *twitter.com* ]] || 
  [[ $url == *x.com* ]]; then
  mpv $url
elif [[ $url == ^mailto:* ]]; then
  thunderbird $url
else
  firefox $url
fi
$ chmod +x ~/.local/bin/url-handler.sh

~/.local/share/applications/url-handler.desktop:

[Desktop Entry]
Name=URL Handler
Exec=/home/YOUR_USERNAME/.local/bin/url-handler.sh %u
Terminal=false
Type=Application
MimeType=x-scheme-handler/http;x-scheme-handler/https;
$ xdg-mime default url-handler.desktop x-scheme-handler/http
$ xdg-mime default url-handler.desktop x-scheme-handler/https

🎩-tip: this Google Gemini transcript (with my edits)

Source Link
Geremia
  • 1.3k
  • 2
  • 14
  • 28

Use a wrapper script:

#!/usr/bin/bash

url=$1

if [[ $url == *youtube.com/watch* ]] || 
  [[ $url == *youtu.be* ]] || 
  [[ $url == *vimeo.com* ]] || 
  [[ $url == *instagram.com* ]] ||
  [[ $url == *facebook.com* ]] || 
  [[ $url == *twitter.com* ]] || 
  [[ $url == *x.com* ]]; then
  mpv $url
elif [[ $url == ^mailto:* ]]; then
  thunderbird $url
else
  firefox $url
fi
$ chmod +x ~/.local/bin/url-handler.sh

~/.local/share/applications/url-handler.desktop:

[Desktop Entry]
Name=URL Handler
Exec=/home/YOUR_USERNAME/.local/bin/url-handler.sh %u
Terminal=false
Type=Application
MimeType=x-scheme-handler/http;x-scheme-handler/https;

🎩-tip: this Google Gemini transcript (with my edits)