** Description changed:

+ [Impact]
+ 
+ The firefox snap (default in 22.04) will always report that it thinks
+ it's not the default browser (even when it actually is) for KDE users
+ (this can be seen when browsing to about:preferences).
+ 
+ This is caused by an upstream bug in xdg-utils (using bashisms in KDE-
+ specific functions whereas the default interpreter is dash).
+ 
+ The fix is rather trivial and will visibly improve the UX for those
+ users.
+ 
+ 
+ [Test Plan]
+ 
+ In Kubuntu 22.04:
+  - make sure firefox isn't your default browser (by changing the setting to a 
different browser)
+  - run the firefox snap, browse to "about:preferences", and observe that 
firefox claims NOT to be the default browser
+  - click the "Set default" button
+  - refresh the page (F5)
+  - observe that now firefox claims to be the default browser
+  - in a terminal, execute `xdg-open https://example.org`, and verify that the 
page is open in the firefox snap
+ 
+ [Where problems could occur]
+ 
+ The patch is changing KDE-specific functions (check_browser_kde and
+ check_url_scheme_handler_kde), so in theory it shouldn't affect running
+ xdg-utils in any other desktop environment.
+ 
+ If the proposed patch is incorrect, it would affect the functionality of
+ `xdg-settings check default-web-browser` and `xdg-settings check
+ default-url-scheme-handler`, so this is what needs to be thoroughly
+ tested in KDE.
+ 
+ In the event of a regression, these functions wouldn't work as expected
+ (they already don't, so the user wouldn't observe a functional
+ regression, merely the absence of a fix).
+ 
+ 
+ [Original description]
+ 
  I'm reporting this issue from stock Ubuntu, but the problem is observed
  only in Kubuntu (can be reliably reproduced in a Kubuntu 22.04 VM). The
  version of xdg-utils is identical.
  
  This problem was initially reported on the snapcraft forum:
  https://forum.snapcraft.io/t/firefox-wont-set-as-my-default-
  browser/29708.
  
-     $ xdg-settings check default-web-browser firefox_firefox.desktop
-     /usr/bin/xdg-settings: 734: Bad substitution
+     $ xdg-settings check default-web-browser firefox_firefox.desktop
+     /usr/bin/xdg-settings: 734: Bad substitution
  
  The offending line is:
  
-     if [ x"!" == x"${browser:0:1}" ]; then
+     if [ x"!" == x"${browser:0:1}" ]; then
  
  If I modify /usr/bin/xdg-settings in place to set the interpreter to
  /bin/bash on the first line of the script, the problem goes away.
  
  ProblemType: Bug
  DistroRelease: Ubuntu 22.04
  Package: xdg-utils 1.1.3-4.1ubuntu1
  ProcVersionSignature: Ubuntu 5.15.0-27.28-generic 5.15.30
  Uname: Linux 5.15.0-27-generic x86_64
  NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair
  ApportVersion: 2.20.11-0ubuntu82
  Architecture: amd64
  CasperMD5CheckResult: unknown
  CurrentDesktop: ubuntu:GNOME
  Date: Wed Apr 27 11:21:31 2022
  InstallationDate: Installed on 2020-09-16 (587 days ago)
  InstallationMedia: Ubuntu 20.10 "Groovy Gorilla" - Alpha amd64 (20200910)
  PackageArchitecture: all
  SourcePackage: xdg-utils
  UpgradeStatus: Upgraded to jammy on 2022-03-19 (38 days ago)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1970594

Title:
  "xdg-settings check default-web-browser something.desktop" fails in
  Kubuntu 22.04: Bad substitution

To manage notifications about this bug go to:
https://bugs.launchpad.net/xdg-utils/+bug/1970594/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to