Package: guix;
Reported by: Jack Hill <jackhill <at> jackhill.us>
Date: Wed, 8 Dec 2021 17:17:02 UTC
Severity: normal
View this message in rfc822 format
From: Jack Hill <jackhill <at> jackhill.us> To: 52375 <at> debbugs.gnu.org Subject: bug#52375: webkitgtk needs gst-plugins-bad Date: Tue, 21 Dec 2021 11:49:19 -0500 (EST)
On Tue, 21 Dec 2021, Jack Hill wrote: > I asked about this issue on #webkitgtk:gnome.org on IRC. It turns out that > what's missing from my environment is gst-plugins-bad (most likely the > fakevideosink plugin contained therein). If I install gst-plugins-bad into an > environment with a webgkitgtk browser, the crash I was seeing is resolved. > Only adding gst-plugins-bad to the inputs of webkitgtk doesn't seem to be > enough to solve the problem. I suppose some additional wrapping is needed > somewhere (although gst-plugins-base shows up in the webkitgtk references). > > What's the best path forward here? I got permission to quote from the IRC conversation for some additional context: 10:52 < jackhill> Hi folks! In the Guix WebKitGTK packages we seem to have introduced a problem that causes tabs to crash on some pages. I'm trying to track it down, but could use a hand in either identifying the solution or in more troubleshooting techniques: https://issues.guix.gnu.org/52375 10:55 < MichaelCatanzaro[m]> jackhill: Looks like you're missing a GStreamer element that is required (do you have: gst-plugins-base, gst-plugins-good, and at least the free half of gst-plugins-bad?) 10:56 < MichaelCatanzaro[m]> Alternatively, maybe try deleting ~/.cache/gstreamer-1.0 in the off chance your registry is corrupt 10:58 < MichaelCatanzaro[m]> jackhill: I think you're missing the fakevideosink element from gst-plugins-bad 11:01 < jackhill> MichaelCatanzaro[m]: thanks. Looking at our package definition we only depend directlyon gst-plugins-base. It seems that we were scared off of -bad at some point in the past: https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/webkit.scm#n255 11:03 < jackhill> I'll look into adding them (and manybe clearing my cache). Were we wrong in our assesment of -bad? 11:06 < MichaelCatanzaro[m]> jackhill: Yup, that is mandatory... and disabling GStreamerGL is not recommended either 11:06 < jackhill> MichaelCatanzaro[m]: yep, adding -bad did it! Is there an official WebKitGTK statement that I can point to when proposing my fix to Guix? 11:06 < MichaelCatanzaro[m]> Not all the elements are mandatory, but some are... 11:07 < MichaelCatanzaro[m]> jackhill: No, we just expect you to have a working gstreamer installation 11:07 < jackhill> hehe, fair enough 11:08 < MichaelCatanzaro[m]> Looks like there is a bug report: https://bugs.webkit.org/show_bug.cgi?id=233949 [daychange] 10:55 < jackhill> MichaelCatanzaro[m]: we're having a conversation in #guix:libera.chat about adding the gst-plugins-bad. Can I quote our conversation yesterday to hopefully bring others up to speed? 11:26 < MichaelCatanzaro[m]> <jackhill> "Michael Catanzaro: we're..." <- Of course, all the history here is public anyway 11:27 < MichaelCatanzaro[m]> You need: gst-plugins-base, gst-plugins-good, and gst-plugins-bad (not gst-plugins-ugly) 11:27 < MichaelCatanzaro[m]> gst-libav especially welcome if available, but not required... 11:29 < MichaelCatanzaro[m]> GStreamer is indeed used inside the bwrap sandbox (most applications do not enable the sandbox, but Ephy does) 11:29 < MichaelCatanzaro[m]> All web content is handled sandboxed :) > Should leaf applications that use webkitgtk be wrapped to find the right > gst-plugins? This seems suboptimal to me. If the plugins are really > dependencies of webkitgtk then perhaps they should be encoded that way in > Guix. > > Should webkitgtk be wrapped somehow to find the plugins on its own? How would > this wrapping be done? Do we want to force all webkitgtk applications to > carry around these dependencies? We talked through some of these option on #guix:libera.chat (thanks apteryx and cybersyn!) and it sounds like we're leaning towards the first option. An additional concern with webkitgtk always pulling in the plugins is that it increases the webkitgtk closure size by over 1G! We're still waiting on webkitgtk builds to finish to help us determine if we can enable GSTREAMER_GL. Best, Jack
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.