GNU bug report logs - #73643
[PATCH 0/2] Fix LibreWolf context menu & livestreaming

Previous Next

Package: guix-patches;

Reported by: Ian Eure <ian <at> retrospec.tv>

Date: Sat, 5 Oct 2024 16:14:01 UTC

Severity: normal

Tags: patch

Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 73643 in the body.
You can then email your comments to 73643 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#73643; Package guix-patches. (Sat, 05 Oct 2024 16:14:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Ian Eure <ian <at> retrospec.tv>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sat, 05 Oct 2024 16:14:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Ian Eure <ian <at> retrospec.tv>
To: guix-patches <at> gnu.org
Cc: Ian Eure <ian <at> retrospec.tv>
Subject: [PATCH 0/2] Fix LibreWolf context menu & livestreaming
Date: Sat,  5 Oct 2024 09:12:49 -0700
After #73429 merged, I received reports of two problems:

- The right-click context menu has manu duplicate and broken entries.  This was caused by removing the genai module, but retaining code in the chrome which references it.  Until I find a better approach to this, I’ve reverted the change.
- Livestreamed video wouldn’t play.  This was caused by the patch from #72265.  I’ve reverted this, and will look into other approaches.

Ian Eure (2):
  gnu: librewolf: Fix broken context menu.
  gnu: librewolf: Revert video acceleration fix

 gnu/packages/librewolf.scm                    | 25 +++++++++++++------
 ...librewolf-add-paths-to-rdd-allowlist.patch | 11 --------
 2 files changed, 17 insertions(+), 19 deletions(-)
 delete mode 100644 gnu/packages/patches/librewolf-add-paths-to-rdd-allowlist.patch

-- 
2.46.0





Information forwarded to guix-patches <at> gnu.org:
bug#73643; Package guix-patches. (Sat, 05 Oct 2024 16:20:01 GMT) Full text and rfc822 format available.

Message #8 received at 73643 <at> debbugs.gnu.org (full text, mbox):

From: Ian Eure <ian <at> retrospec.tv>
To: 73643 <at> debbugs.gnu.org
Cc: Ian Eure <ian <at> retrospec.tv>
Subject: [PATCH 1/2] gnu: librewolf: Fix broken context menu.
Date: Sat,  5 Oct 2024 09:19:10 -0700
This patch fixes a reported bug where context (right-click) menus contain many
duplicate and incorrect entries.

* gnu/packages/librewolf.scm (librewolf): Include genai browser component.

Change-Id: I288545ce80b9a7e854edfc26a7ffe43433303458
---
 gnu/packages/librewolf.scm | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/gnu/packages/librewolf.scm b/gnu/packages/librewolf.scm
index 6fd0aa51f1..32b6d13d54 100644
--- a/gnu/packages/librewolf.scm
+++ b/gnu/packages/librewolf.scm
@@ -212,7 +212,7 @@ (define rust-librewolf rust) ; 1.75 is the default in Guix, 1.65 is the minimum.
 ;; Update this id with every update to its release date.
 ;; It's used for cache validation and therefore can lead to strange bugs.
 ;; ex: date '+%Y%m%d%H%M%S'
-(define %librewolf-build-id "20240922110507")
+(define %librewolf-build-id "20241003201141")
 
 (define-public librewolf
   (package
@@ -324,9 +324,6 @@ (define (write-setting key value)
                             libavcodec)))))
                    (add-after 'unpack 'neuter-genai
                      (lambda* _
-                       ;; Don't compile the code in.
-                       (substitute* "browser/components/moz.build"
-                         (("\"genai\",") ""))
                        ;; Lock the preferences so they can't be enabled.
                        (substitute* "lw/librewolf.cfg"
                          (("defaultPref\\(\"browser\\.ml\\.")
-- 
2.46.0





Information forwarded to guix-patches <at> gnu.org:
bug#73643; Package guix-patches. (Sat, 05 Oct 2024 16:20:02 GMT) Full text and rfc822 format available.

Message #11 received at 73643 <at> debbugs.gnu.org (full text, mbox):

From: Ian Eure <ian <at> retrospec.tv>
To: 73643 <at> debbugs.gnu.org
Cc: Ian Eure <ian <at> retrospec.tv>
Subject: [PATCH 2/2] gnu: librewolf: Revert video acceleration fix
Date: Sat,  5 Oct 2024 09:19:11 -0700
This patch partly reverts #73429, because that change makes livestreaming
video refuse to play.

* gnu/packages/librewolf.scm (librewolf): Revert video acceleration fix

Change-Id: Iaf36c64464cd078538fda677ea4fa7b13e7c110f
---
 gnu/packages/librewolf.scm                    | 22 ++++++++++++++-----
 ...librewolf-add-paths-to-rdd-allowlist.patch | 11 ----------
 2 files changed, 17 insertions(+), 16 deletions(-)
 delete mode 100644 gnu/packages/patches/librewolf-add-paths-to-rdd-allowlist.patch

diff --git a/gnu/packages/librewolf.scm b/gnu/packages/librewolf.scm
index 32b6d13d54..31de7a7171 100644
--- a/gnu/packages/librewolf.scm
+++ b/gnu/packages/librewolf.scm
@@ -212,7 +212,7 @@ (define rust-librewolf rust) ; 1.75 is the default in Guix, 1.65 is the minimum.
 ;; Update this id with every update to its release date.
 ;; It's used for cache validation and therefore can lead to strange bugs.
 ;; ex: date '+%Y%m%d%H%M%S'
-(define %librewolf-build-id "20241003201141")
+(define %librewolf-build-id "20241005085731")
 
 (define-public librewolf
   (package
@@ -223,9 +223,7 @@ (define-public librewolf
       (inherit (make-librewolf-source
                 #:version version
                 #:firefox-hash "0w4z3fq5zhm63a0wmhvmqrj263bvy962dir25q3z0x5hx6hjawh2"
-                #:librewolf-hash "0f80pihn375bdjhjmmg2v1w96wpn76zb60ycy39wafwh1dnzybrd"))
-      (patches
-       (search-patches "librewolf-add-paths-to-rdd-allowlist.patch"))))
+                #:librewolf-hash "0f80pihn375bdjhjmmg2v1w96wpn76zb60ycy39wafwh1dnzybrd"))))
     (build-system gnu-build-system)
     (arguments
      (list
@@ -592,12 +590,26 @@ (define (runpaths-of-input label)
                                        ;; For U2F and WebAuthn
                                        "eudev")))
 
+                              ;; VA-API is run in the RDD (Remote Data Decoder) sandbox
+                              ;; and must be explicitly given access to files it needs.
+                              ;; Rather than adding the whole store (as Nix had
+                              ;; upstream do, see
+                              ;; <https://github.com/NixOS/nixpkgs/pull/165964> and
+                              ;; linked upstream patches), we can just follow the
+                              ;; runpaths of the needed libraries to add everything to
+                              ;; LD_LIBRARY_PATH.  These will then be accessible in the
+                              ;; RDD sandbox.
+                              (rdd-whitelist (map (cut string-append <> "/")
+                                                  (delete-duplicates (append-map
+                                                                      runpaths-of-input
+                                                                      '("mesa"
+                                                                        "ffmpeg")))))
                               (gtk-share (string-append (assoc-ref inputs
                                                                    "gtk+")
                                                         "/share")))
                          (wrap-program (car (find-files lib "^librewolf$"))
                            `("LD_LIBRARY_PATH" prefix
-                             ,libs)
+                             (,@libs ,@rdd-whitelist))
                            `("XDG_DATA_DIRS" prefix
                              (,gtk-share))
                            `("MOZ_LEGACY_PROFILES" =
diff --git a/gnu/packages/patches/librewolf-add-paths-to-rdd-allowlist.patch b/gnu/packages/patches/librewolf-add-paths-to-rdd-allowlist.patch
deleted file mode 100644
index 1bee0bddf5..0000000000
--- a/gnu/packages/patches/librewolf-add-paths-to-rdd-allowlist.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp
-+++ b/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp
-@@ -920,6 +920,8 @@
-   policy->AddDir(rdonly, "/usr/lib64");
-   policy->AddDir(rdonly, "/run/opengl-driver/lib");
-   policy->AddDir(rdonly, "/nix/store");
-+  policy->AddDir(rdonly, "/gnu/store");
-+  policy->AddDir(rdonly, "/run/current-system/profile/lib");
-
-   // Bug 1647957: memory reporting.
-   AddMemoryReporting(policy.get(), aPid);
-- 
2.46.0





Reply sent to Maxim Cournoyer <maxim.cournoyer <at> gmail.com>:
You have taken responsibility. (Tue, 08 Oct 2024 07:42:01 GMT) Full text and rfc822 format available.

Notification sent to Ian Eure <ian <at> retrospec.tv>:
bug acknowledged by developer. (Tue, 08 Oct 2024 07:42:01 GMT) Full text and rfc822 format available.

Message #16 received at 73643-done <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Ian Eure <ian <at> retrospec.tv>
Cc: 73643-done <at> debbugs.gnu.org
Subject: Re: [bug#73643] [PATCH 0/2] Fix LibreWolf context menu & livestreaming
Date: Tue, 08 Oct 2024 16:39:48 +0900
Hi Ian,

Ian Eure <ian <at> retrospec.tv> writes:

> After #73429 merged, I received reports of two problems:
>
> - The right-click context menu has manu duplicate and broken entries.  This was caused by removing the genai module, but retaining code in the chrome which references it.  Until I find a better approach to this, I’ve reverted the change.
> - Livestreamed video wouldn’t play.  This was caused by the patch from #72265.  I’ve reverted this, and will look into other approaches.
>
> Ian Eure (2):
>   gnu: librewolf: Fix broken context menu.
>   gnu: librewolf: Revert video acceleration fix

I've pushed these two fixes, un-registering the removed patch from
gnu/local.mk and refining the ChangeLog commit messages; please take
a look!

Thanks for the fix-up.

-- 
Maxim




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 05 Nov 2024 12:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 227 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.