Feature Freeze Exception: Seeding the official Firefox snap in Ubuntu Desktop

Don’t know if my manual gnome 3.38 update (through GNOME Software, this time…) is concerned?

3 Likes

i got an automatic update of the 3-38 extension here with a bunch of electron apps open that use it and i don’t see crashes or any other ill effects with these apps …

looks like firefox could be more fragile to this …

i am pretty sure it does not make any difference whether you update manually or if it is automatic, the process is the same on a technical level, only the trigger for it differs …

Trying to run google earth: https://earth.google.com/web/ i have the messages:
Unfortunately your computer does not support WebGL graphics acceleration; Google Earth cannot be loaded

Hmm. While your browser seems to support WebGL, it is disabled or unavailable. If possible, please ensure that you are running the latest drivers for your video card.

On the same installation of Ubuntu Impish with Firefox .deb google earth works fine

corrado@corrado-n3-ii-0919:~$ inxi -SCGx

System:
Host: corrado-n3-ii-0919 Kernel: 5.13.0-16-generic x86_64 bits: 64
compiler: gcc v: 11.2.0 Desktop: GNOME 40.2
Distro: Ubuntu 21.10 (Impish Indri)
CPU:
Info: Quad Core model: Intel Core i5-1035G1 bits: 64 type: MT MCP
arch: Ice Lake rev: 5 cache: L2: 6 MiB
flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
bogomips: 19046
Speed: 945 MHz min/max: 400/1000 MHz Core speeds (MHz): 1: 945 2: 762
3: 731 4: 716 5: 970 6: 750 7: 709 8: 968
Graphics:
Device-1: Intel Iris Plus Graphics G1 vendor: Dell driver: i915 v: kernel
bus-ID: 00:02.0
Device-2: Realtek Integrated_Webcam_HD type: USB driver: uvcvideo
bus-ID: 1-6:3
Display: wayland server: X.Org 1.21.1.2 compositor: gnome-shell driver:
loaded: i915 note: n/a (using device driver) resolution: 1920x1080~60Hz
OpenGL: renderer: Mesa Intel UHD Graphics (ICL GT1) v: 4.6 Mesa 21.2.1
direct render: Yes
corrado@corrado-n3-ii-0919:~$

3 Likes

Somewhat happy to see I’m not alone, running very different hardware. What are the keys we have to change to make GE to work?

System:    Host: p14s Kernel: 5.13.0-16-generic x86_64 bits: 64 compiler: gcc v: 11.2.0 Desktop: GNOME 40.2 
           Distro: Ubuntu 21.10 (Impish Indri) 
CPU:       Info: 8-Core model: AMD Ryzen 7 PRO 5850U with Radeon Graphics bits: 64 type: MT MCP arch: Zen 3 rev: 0 cache: 
           L2: 4 MiB 
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm bogomips: 60685 
           Speed: 1583 MHz min/max: 1600/1900 MHz boost: enabled Core speeds (MHz): 1: 1583 2: 3110 3: 1380 4: 1387 5: 1397 
           6: 1397 7: 2176 8: 1523 9: 1451 10: 1396 11: 1397 12: 1396 13: 1397 14: 1397 15: 2705 16: 1397 
Graphics:  Device-1: Advanced Micro Devices [AMD/ATI] Cezanne vendor: Lenovo driver: amdgpu v: kernel bus-ID: 04:00.0 
           Device-2: Chicony Integrated Camera type: USB driver: uvcvideo bus-ID: 1-2:2 
           Display: wayland server: X.Org 1.21.1.2 compositor: gnome-shell driver: loaded: amdgpu,ati 
           unloaded: fbdev,modesetting,vesa resolution: 1920x1080~60Hz 
           OpenGL: renderer: AMD RENOIR (DRM 3.41.0 5.13.0-16-generic LLVM 12.0.1) v: 4.6 Mesa 21.2.1 direct render: Yes
1 Like

That would be a great addition for the browser snaps!
I was guessing though, how could OpenSC fit in there? Would it have to be in the form of another snap?

I want to make this a bit more clear:

Every single Belgian needs this functionality in order to do basic stuff like:

  • File their taxes
  • Read communication from the government
  • Check their medical history
  • Register for a (covid) vaccine
  • Rent stuff from the government

etc.

It is vital that this issue is fixed before phasing out the Firefox deb package. With the Chromium apt package gone, there will be no alternative in the Ubuntu repositories to do these basic things in Belgium.

It’s really nice that our government is supporting Ubuntu using open-source software using common standards and APIs. Breaking this vital functionality looks like a big middle-finger to them.

9 Likes

That’s a known issue that is being actively investigated.

1 Like

Tried running the firefox snap on impish. It started a brand new profile and couldn’t see the existing profile to import bookmarks/settings/etc. I can manually copy files over from ~/.mozilla to ~/snap/firefox/common/.mozilla but are these supposed to seamlessly transition?

Additionally, screen sharing through pipewire (tested on google meet) appears not to do anything.

1 Like

The profile importer logic isn’t in the stable channel yet. It’s available in the beta and candidate channels (and candidate should be promoted to stable very soon).

When the firefox snap crashes because of a background snap refresh (see this bug), relaunching it from the crash reporter dialog will indeed result in broken behaviour. The workaround in that case is to close the dialog, and launch firefox again. If the crash wasn’t caused by some dependencies disappearing under firefox’s feet, then relaunching from the crash reporter dialog should work just fine.

1 Like

image

I do not have any experience with OpenSC and it seems to be possible to use it without pcsc daemon.

But indeed it should be possible to package it as a snap and provide the same functionality and content interface my pcsc-daemon snap offers for someone who is more familiar with it.

One issue I can see currently with snaps, that this sandboxing prevents some other applications to function propperly.

For example the interaction of browser extension keepassxc-browser is not possible through snaps (currently). So this change would break many users daily workflow.

And there is still an issue in snap that prevents it from working propperly. E.g. in some enterprises the user homes are not in /home but somewhere else on the filesystem and /home is used with automount to access network homes - this does not work with snap and therefore from my perspective it is unacceptable to remove any key-functionality like Firefox from the normal “deb” way.

2 Likes

Few bits of feedback from me. I can turn these into bug reports, and check if they’re already reported, if that’s helpful (is that on firefox with the snap tag? It would be good to document that on the snap’s page) - sorry they’re not very detailed, I was doing other things when I noticed these issues. Also sorry I didn’t read through all 85 posts here so these may have been discussed already :smiley:

I was using beta, 93b8 at the time (I see b9 is out now), in a GNOME/Wayland session. I had manually imported my profile from the .deb installation I had before. This is on Impish.

  • Something was initially wrong with fonts. In Google Docs, “Sans Serif” was actually some serif font. After a reboot the fonts were OK again.
  • Similarly, cursors aren’t/weren’t (not sure if this one fixed itself) available - I got no ‘hand’ icon when hovering links, and no ‘I bar’ for text.
  • Screen sharing didn’t work e.g. in Meet. I guess this might be a Wayland thing but it was ok with the deb. I got the portal UI (which is great and I wish you didn’t have to go through the ‘Use system dialog’ [or whatever it is] step to see it) but after selecting the target sharing never started, and the screen sharing button in the Meet UI goes insensitive so you can’t retry until restarting. Not that it would have worked!
  • I couldn’t open links from the VS Code snap any more. I got that dialog which you sometimes see about Firefox not responding, even though it was working fine AFAICT.
2 Likes

You just lost another user of FF. Snap eats up space on my disk and initially does give trouble with new ad on applications. Sorry that is my experience. I quite Chromium be cause of this.

$ snap info firefox|grep installed
installed:          92.0-3                  (595) 159MB -
$ apt-cache show firefox | grep Installed
Installed-Size: 221407

the installed firefox snap is exactly 60MB smaller than the installed deb …

note that snap packages (unlike debs) do not get unpacked but only bind-mounted (as compressed, gpg signed (and thus tinker proof) readonly filesystem images)…

snaps are typically significantly smaller than what you get when installing the equivalent content on disk from debs.

9 Likes

Just out of curiosity: How do you install the Firefox deb without using disk space?

Problem with google earth can easily be reproduced with samples in https://www.khronos.org/webgl/wiki/Demo_Repository
occurs only in Wayland session but DOES NOT OCCUR with X11 session.

1 Like

It is the snap updates , leaves snap never self removed. Unless I missed a auto remove of the snap processing. over time the snap builds up.

snap packages have a builtin rollback mechanism as well as a builtin self-test mechanism …

i.e. if an apache snap is updated you can define that it checks for port 80 to be open after an upgrade … if that test fails, it will automatically roll back to the last known good version on disk to guarantee operation of the app/service (though admittedly desktop snaps do not use that feature a lot)) …

along with that, if your firefox snap is released with a bug or a new feature is broken you can always manualy do snap revert firefox

for this feature the last good snap as well as the current snap are always kept around …

you can define the number of snaps to keep with sudo snap set system refresh.retain=2 (2 is the minimum here) as documented in:

while this indeed means you always have the same snap installed two times, the snap compression usually compensates this … while they do occupy more disk space, it is usually not a lot more than their unpacked equivalent in deb or rpm …

2 Likes