(I just wrote an article about this issue. Feel free to comment before I
publish it.)

# Ubutu 20.04 was just released and is broken right from the start (as
is 19.10)

Millions of people have started working from home and may have even done
a fresh install of Ubuntu 20.04, but as they use Chromium (the pre-
installed open source version of the Google Chrome browser) and want to
join an online video conference with zoom .. it does not work! Joining
slack from a link ... does not work! What's going on ???

TDLR : The team responsible for the snap (Snappy) software manager at
Ubuntu messed it up. They do not understand the implications and
severity of this bug since almost 2 years, and there is no easy fix at
the moment.

Your options:
1) Use Firefox instead of Chromium browser, although Firefox (still) has 
(sometimes ?) an issue with opening a zoom link. When prompted to run 
`xdg-open` it does not work the first time, you have to do it a 2nd time, 
(only) then it works.


# Background story (skip if you are not interested):

Working in IT for many years, I have praised Ubuntu as a free, stable, 
non-intrusive, great alternative to Windows in recent years, which (now) works 
out of the box on most hardware. I regarded it now as a great replacement (even 
from a usability point of view) for the average (non technical) user.
My partner is a totally (!) non-technical person, working as an online language 
teacher for her living, but I was able to convince her to get rid of Windows 
just after she bought a new laptop and let me replace it with Ubuntu 18.04 MATE.
Everything worked fine, which is good because otherwise she would blame me that 
she looses her income because I replaced Windows with Ubuntu. It's also good me 
for, as every hour I have to spend on administrating her computer is one paid 
hour less on my side.

A few months ago, I upgraded to 19.04, which is not supported with new
updates any more, so now that Ubuntu 20.04 came out on 24 April 2020, I
thought it would be a good idea to anyhow wipe the whole setup and do a
fresh install of Ubuntu 20.04 MATE.

# END - Background story


# The problem : Ubuntu 19.10 & 20.04 + Chromium + zoom, Telegram, slack ... 
(many desktop apps)

Starting with a fresh install of Ubuntu 20.04 MATE, suddenly it was not
possible any more to launch zoom from the online learning platform, and
for the heck I could not get it to work quickly (had to give my Arch
Linux / Manjaro Laptop to my partner so that she could in time conduct
her online teaching).

Some google research surfaced the following facts which I will try to
summarize here :

* Since Ubuntu 19.10, Chromium is installed by default using the snap
(Snappy) package management system [https://snapcraft.io]
[https://en.wikipedia.org/wiki/Snappy_(package_manager)]

* For some reason ("security" ? - to be filled in)
"snapd has a hard-coded list of allowed URL schemes. Currently that is limited 
to "http", "https", "mailto", "snap".
which break a lot of desktop apps, not limited to zoom, but also many other 
important widely used ones as well (Telegram, github, slack, ... looks like 
"every polular app")

This bug has already been reported 2018-06-14 !
[https://bugs.launchpad.net/snapd/+bug/1776873]

Reading through the discussion, I could not believe that this bug is already 
that old (almost 2 years as of 28 April 2020) and has not been fixed by now !
I think this is a major issue !! Maybe I have overlooked a great solution, but 
if we aim for making Ubuntu a great platform for everybody !!, it should work 
(at least) with most commonly used software and scenarios out of the box.

Especially these days, as many people started working from home, and
many people trying to use zoom for the first time (zoom's security and
privacy issues left aside for the moment) or slack, or ... With a recent
(19.10 or 20.04) Ubuntu install and it simply does not work ! .. and
there is no easy fix?

How will that affect the adoption and reputation of Ubuntu, if the same setup 
works perfectly fine on Windows and Apple, but is very hard to fix on Ubuntu ?
If I would be into conspiracy theories, I would even consider that it is a 
(paid) attack against the Ubuntu ecoystem - that's how severe I see it, and to 
my surprise the snap developers just don't get it.

If Ubuntu / snap team does not want to limit Ubuntu adoption to developers who 
are forced to compile a patch by themselves, leaving out millions of users who 
just want to have a trustworthy, free and stable platform, than any "solution" 
which requires more than 1 click to confirm that Chromium is (this time / 
always) allowed to open a certain app, is just useless.
I totally agree with ...

Christopher Barrington-Leigh (cpbl) wrote on 2020-03-23: "If the approach so 
far is to individually whitelist classes of links, surely can't this be better 
dealt with by doing something similar to how Chromium responds to me clicking 
on a downloaded file: it asks me if it's okay to have snap launch that file? 
Can't we do this for links that go to xdg-open without downloading a file?"
[https://bugs.launchpad.net/snapd/+bug/1776873/comments/25]

Reading through the comments of some smart guys who had the same
problem, I can not agree more with their statements.

Maxim Boguk (maxim-boguk) wrote on 2019-10-29: "upgrade Ubuntu to 19.10
broke all our intranet apps/workflow"

Brad Davis (jherico) wrote on 2020-03-02: "set up ubuntu 19.10 as my
primary desktop and I'm being blocked by this. Both slack and zoom fail
to launch because of this. It also means that apps that want to use
Google to authenticate, and thus launch chrome to run the google login
and then get a URL callback don't work (Slack in particular)."

Michel-Ekimia (michel.ekimia) wrote on 2020-03-03: "Manual whitelisting
from the snap team will always be a blocker for such a widely adopted
use of an important browser. That will push people to use chrome which
IMO a failure on the libre software side."

Christopher Barrington-Leigh (cpbl) wrote on 2020-03-23: "Yeah, this can
be labelled a COVID-relevant bug, since there are countless new users
flooding to Zoom, etc..."

Troy Ready (troyready) wrote on 2020-04-23: "The vast majority of users
that experience these bugs won't be the ones to make Ubuntu SSO & GitHub
accounts and contribute PRs to fix it. They're just going to get a
silent launch failure, and tell their social circles about how Ubuntu
doesn't work. For snap's long term success, there needs to be a stronger
focus on a good user experience or we're just going to lose users."


[https://bugs.launchpad.net/snapd/+bug/1776873]

I don't understand why nobody (starting with @zyga with the initial bug
report) sees the severity and damage done by this!

No surprise that people get frustrated - Anton Alexandrenok (the-spyke)
wrote on 2020-04-21: "And then people are surprised why Linux community
is no negative to Snap."

... and I do not understand the reaction - Samuele Pedroni (pedronis)
wrote on 2020-04-23: "Contributing to the discussion with rudeness is
not conductive to collaboration, and will be moderated."

This is not "rudeness". Just an obvious fact has been stated ! ... and
nothing has been done to fix it for almost 2 years !


# What are the options to fix it ?

As I wrote before, this (like opening zoom from a link within Chromium)
should work out of the box, otherwise Ubuntu useless for the no-so-
technical users and wasting a lot of time for even the advanced Ubuntu
users to search for a fix.

Here [https://askubuntu.com/questions/1219614/xdg-open-doesnt-do-
anything-zoom-in-chromium] Andres Muniz suggests to uninstall Chromium
from snap and install Chromium from the repo (which has been working
fine for years).

$ snap remove chromium
$ sudo apt install chromium-browser

I did that on a fresh Ubuntu 20.04 MATE install today (28 April 2020),
and I ended up again with the snap version. So not only did snap (team)
mess up the whole setup, but also prevents you from installing Chromium
by not using the snap store - What ?!

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to chromium-browser in Ubuntu.
https://bugs.launchpad.net/bugs/1776873

Title:
  Whitelisted allowedURLschemes breaks some desktop apps

Status in snapd:
  Triaged
Status in chromium-browser package in Ubuntu:
  Confirmed

Bug description:
  
https://github.com/snapcore/snapd/blob/7952972d4897e085030b288e44dc98b824f6723a/userd/launcher.go#L55

  snapd has a hard-coded list of allowed URL schemes. Currently that is
  limited to "http", "https", "mailto", "snap".

  We have a number of applications in the store which are trying to use
  protocol handlers outside this scope and break when that's not
  possible.

  e.g.

  Telegram Desktop: tg:/
  Github Desktop: git:/
  IRCCloud Desktop: irc:/

  These are the ones I know of, others may also be affected. Can we
  please at least expand the list to those that we know of, and perhaps
  research other popular protocol handlers?

  Ideally we wouldn't have a whitelist, because this delays our ability
  to land new applications with as-yet unknown url schemes.

To manage notifications about this bug go to:
https://bugs.launchpad.net/snapd/+bug/1776873/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : desktop-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to