summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomas Volf <~@wolfsden.cz>2025-06-26 23:01:22 +0200
committerHilton Chain <hako@ultrarare.space>2025-06-28 21:03:20 +0800
commit1b17c6dfc04faf545e4142a1d5efab6a93d31fcf (patch)
treece66040d7c863c84b7adade8b5e2d7a7175569ce
parent250a6b02d09d6b0eac17b488b8464ce0ab73b85b (diff)
nongnu: firefox-esr: Update to 140.0esr.
* nongnu/packages/mozilla.scm (firefox-esr): Update to 140.0esr. [source]<patches>: Add firefox-restore-desktop-files.patch. Use >=138 version of path comparison patch. [inputs]: Use icu4c-76. [native-inputs]: Use rust-cbindgen-0.28. (firefox)[inputs]: Drop. [native-inputs]: Do not replace rust-cbindgen. * nongnu/packages/patches/firefox-esr-add-store-to-rdd-allowlist.patch: Update to new version. No functional changes. * nongnu/packages/patches/firefox-esr-use-system-wide-dir.patch: Same. * nongnu/packages/patches/firefox-esr-compare-paths.patch: Delete file. Signed-off-by: Hilton Chain <hako@ultrarare.space>
-rw-r--r--nongnu/packages/mozilla.scm17
-rw-r--r--nongnu/packages/patches/firefox-esr-add-store-to-rdd-allowlist.patch32
-rw-r--r--nongnu/packages/patches/firefox-esr-compare-paths.patch23
-rw-r--r--nongnu/packages/patches/firefox-esr-use-system-wide-dir.patch9
4 files changed, 27 insertions, 54 deletions
diff --git a/nongnu/packages/mozilla.scm b/nongnu/packages/mozilla.scm
index d8deb82..9193d5d 100644
--- a/nongnu/packages/mozilla.scm
+++ b/nongnu/packages/mozilla.scm
@@ -87,26 +87,27 @@
87 87
88;; Update this id with every firefox update to its release date. 88;; Update this id with every firefox update to its release date.
89;; It's used for cache validation and therefore can lead to strange bugs. 89;; It's used for cache validation and therefore can lead to strange bugs.
90(define %firefox-esr-build-id "20250623124138") 90(define %firefox-esr-build-id "20250623125548")
91 91
92(define-public firefox-esr 92(define-public firefox-esr
93 (package 93 (package
94 (name "firefox-esr") 94 (name "firefox-esr")
95 (version "128.12.0esr") 95 (version "140.0esr")
96 (source 96 (source
97 (origin 97 (origin
98 (method url-fetch) 98 (method url-fetch)
99 (uri (string-append "https://archive.mozilla.org/pub/firefox/releases/" 99 (uri (string-append "https://archive.mozilla.org/pub/firefox/releases/"
100 version "/source/firefox-" version ".source.tar.xz")) 100 version "/source/firefox-" version ".source.tar.xz"))
101 (sha256 101 (sha256
102 (base32 "0gwpkpl053jv8j7bl8cjdqngxfj5wbj2mm48rqzws5nbqs3fpv9b")) 102 (base32 "0gz9z6lh2iz0mpfa0cqlz86dpxhn235lhvh4kg5ka9g7i8x2i9x1"))
103 (patches 103 (patches
104 (map (lambda (patch) 104 (map (lambda (patch)
105 (search-path 105 (search-path
106 (map (cut string-append <> "/nongnu/packages/patches") 106 (map (cut string-append <> "/nongnu/packages/patches")
107 %load-path) 107 %load-path)
108 patch)) 108 patch))
109 '("firefox-esr-compare-paths.patch" 109 '("firefox-restore-desktop-files.patch"
110 "firefox-ge-138-compare-paths.patch"
110 "firefox-esr-use-system-wide-dir.patch" 111 "firefox-esr-use-system-wide-dir.patch"
111 "firefox-esr-add-store-to-rdd-allowlist.patch"))) 112 "firefox-esr-add-store-to-rdd-allowlist.patch")))
112 ;; XXX: 75 Mo (800+ Mo uncompressed) of unused tests. 113 ;; XXX: 75 Mo (800+ Mo uncompressed) of unused tests.
@@ -462,7 +463,7 @@
462 gtk+ 463 gtk+
463 gtk+-2 464 gtk+-2
464 hunspell 465 hunspell
465 icu4c 466 icu4c-76
466 jemalloc 467 jemalloc
467 libcanberra 468 libcanberra
468 libevent 469 libevent
@@ -510,7 +511,7 @@
510 pkg-config 511 pkg-config
511 python 512 python
512 rust-firefox-esr 513 rust-firefox-esr
513 rust-cbindgen-0.26 514 rust-cbindgen-0.28
514 which 515 which
515 yasm)) 516 yasm))
516 (native-search-paths 517 (native-search-paths
@@ -574,13 +575,9 @@ Release (ESR) version.")
574 (if (string=? old-content 575 (if (string=? old-content
575 (pk (call-with-input-file file get-string-all))) 576 (pk (call-with-input-file file get-string-all)))
576 (error "substitute did nothing, phase requires an update"))))))))) 577 (error "substitute did nothing, phase requires an update")))))))))
577 (inputs
578 (modify-inputs (package-inputs firefox-esr)
579 (replace "icu4c" icu4c-76)))
580 (native-inputs 578 (native-inputs
581 (modify-inputs (package-native-inputs firefox-esr) 579 (modify-inputs (package-native-inputs firefox-esr)
582 (replace "rust" rust-firefox) 580 (replace "rust" rust-firefox)
583 (replace "rust-cbindgen" rust-cbindgen-0.28)
584 (replace "rust:cargo" `(,rust-firefox "cargo")))) 581 (replace "rust:cargo" `(,rust-firefox "cargo"))))
585 (description 582 (description
586 "Full-featured browser client built from Firefox source tree, without 583 "Full-featured browser client built from Firefox source tree, without
diff --git a/nongnu/packages/patches/firefox-esr-add-store-to-rdd-allowlist.patch b/nongnu/packages/patches/firefox-esr-add-store-to-rdd-allowlist.patch
index 6ae18c3..4bdaa7d 100644
--- a/nongnu/packages/patches/firefox-esr-add-store-to-rdd-allowlist.patch
+++ b/nongnu/packages/patches/firefox-esr-add-store-to-rdd-allowlist.patch
@@ -1,16 +1,16 @@
1diff --git a/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp b/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp 1diff --git a/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp b/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp
2index 0e5358e68e..efbde9616e 100644 2index 4eff5e6..42171eb 100644
3--- a/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp 3--- a/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp
4+++ b/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp 4+++ b/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp
5@@ -452,6 +452,7 @@ void SandboxBrokerPolicyFactory::InitContentPolicy() { 5@@ -476,6 +476,7 @@ void SandboxBrokerPolicyFactory::InitContentPolicy() {
6 // Various places where fonts reside 6 // Various places where fonts reside
7 policy->AddDir(rdonly, "/usr/X11R6/lib/X11/fonts"); 7 policy->AddTree(rdonly, "/usr/X11R6/lib/X11/fonts");
8 policy->AddDir(rdonly, "/nix/store"); 8 policy->AddTree(rdonly, "/nix/store");
9+ policy->AddDir(rdonly, "/gnu/store"); 9+ policy->AddTree(rdonly, "/gnu/store");
10 // https://gitlab.com/freedesktop-sdk/freedesktop-sdk/-/blob/e434e680d22260f277f4a30ec4660ed32b591d16/files/fontconfig-flatpak.conf 10 // https://gitlab.com/freedesktop-sdk/freedesktop-sdk/-/blob/e434e680d22260f277f4a30ec4660ed32b591d16/files/fontconfig-flatpak.conf
11 policy->AddDir(rdonly, "/run/host/fonts"); 11 policy->AddTree(rdonly, "/run/host/fonts");
12 policy->AddDir(rdonly, "/run/host/user-fonts"); 12 policy->AddTree(rdonly, "/run/host/user-fonts");
13@@ -461,6 +462,7 @@ void SandboxBrokerPolicyFactory::InitContentPolicy() { 13@@ -485,6 +486,7 @@ void SandboxBrokerPolicyFactory::InitContentPolicy() {
14 // Bug 1848615 14 // Bug 1848615
15 policy->AddPath(rdonly, "/usr"); 15 policy->AddPath(rdonly, "/usr");
16 policy->AddPath(rdonly, "/nix"); 16 policy->AddPath(rdonly, "/nix");
@@ -18,19 +18,19 @@ index 0e5358e68e..efbde9616e 100644
18 18
19 AddLdconfigPaths(policy); 19 AddLdconfigPaths(policy);
20 AddLdLibraryEnvPaths(policy); 20 AddLdLibraryEnvPaths(policy);
21@@ -920,6 +922,7 @@ SandboxBrokerPolicyFactory::GetRDDPolicy(int aPid) { 21@@ -934,6 +936,7 @@ SandboxBrokerPolicyFactory::GetRDDPolicy(int aPid) {
22 policy->AddDir(rdonly, "/usr/lib64"); 22 policy->AddTree(rdonly, "/usr/lib64");
23 policy->AddDir(rdonly, "/run/opengl-driver/lib"); 23 policy->AddTree(rdonly, "/run/opengl-driver/lib");
24 policy->AddDir(rdonly, "/nix/store"); 24 policy->AddTree(rdonly, "/nix/store");
25+ policy->AddDir(rdonly, "/gnu/store"); 25+ policy->AddTree(rdonly, "/gnu/store");
26 26
27 // Bug 1647957: memory reporting. 27 // Bug 1647957: memory reporting.
28 AddMemoryReporting(policy.get(), aPid); 28 AddMemoryReporting(policy.get(), aPid);
29@@ -1043,6 +1046,7 @@ SandboxBrokerPolicyFactory::GetUtilityProcessPolicy(int aPid) { 29@@ -1079,6 +1082,7 @@ SandboxBrokerPolicyFactory::GetUtilityProcessPolicy(int aPid) {
30 // Required to make sure ffmpeg loads properly, this is already existing on 30 // Required to make sure ffmpeg loads properly, this is already existing on
31 // Content and RDD 31 // Content and RDD
32 policy->AddDir(rdonly, "/nix/store"); 32 policy->AddTree(rdonly, "/nix/store");
33+ policy->AddDir(rdonly, "/gnu/store"); 33+ policy->AddTree(rdonly, "/gnu/store");
34 34
35 // glibc will try to stat64("/") while populating nsswitch database 35 // glibc will try to stat64("/") while populating nsswitch database
36 // https://sourceware.org/git/?p=glibc.git;a=blob;f=nss/nss_database.c;h=cf0306adc47f12d9bc761ab1b013629f4482b7e6;hb=9826b03b747b841f5fc6de2054bf1ef3f5c4bdf3#l396 36 // https://sourceware.org/git/?p=glibc.git;a=blob;f=nss/nss_database.c;h=cf0306adc47f12d9bc761ab1b013629f4482b7e6;hb=9826b03b747b841f5fc6de2054bf1ef3f5c4bdf3#l396
diff --git a/nongnu/packages/patches/firefox-esr-compare-paths.patch b/nongnu/packages/patches/firefox-esr-compare-paths.patch
deleted file mode 100644
index dd113c7..0000000
--- a/nongnu/packages/patches/firefox-esr-compare-paths.patch
+++ /dev/null
@@ -1,23 +0,0 @@
1See comment in gnu/build/icecat-extension.scm.
2
3diff --git a/toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs b/toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs
4index 0b885f6..0bbfbee 100644
5--- a/toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs
6+++ b/toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs
7@@ -3607,6 +3607,7 @@ export const XPIDatabaseReconcile = {
8 if (
9 newAddon ||
10 oldAddon.updateDate != xpiState.mtime ||
11+ oldAddon.path != xpiState.path ||
12 (aUpdateCompatibility && this.isAppBundledLocation(installLocation))
13 ) {
14 newAddon = this.updateMetadata(
15@@ -3615,8 +3616,6 @@ export const XPIDatabaseReconcile = {
16 xpiState,
17 newAddon
18 );
19- } else if (oldAddon.path != xpiState.path) {
20- newAddon = this.updatePath(installLocation, oldAddon, xpiState);
21 } else if (aUpdateCompatibility || aSchemaChange) {
22 newAddon = this.updateCompatibility(
23 installLocation,
diff --git a/nongnu/packages/patches/firefox-esr-use-system-wide-dir.patch b/nongnu/packages/patches/firefox-esr-use-system-wide-dir.patch
index 67a1709..564f12f 100644
--- a/nongnu/packages/patches/firefox-esr-use-system-wide-dir.patch
+++ b/nongnu/packages/patches/firefox-esr-use-system-wide-dir.patch
@@ -2,10 +2,10 @@ Replace "/usr/lib/mozilla" (the system-wide directory for extensions and
2native manifests) with "$ICECAT_SYSTEM_DIR". 2native manifests) with "$ICECAT_SYSTEM_DIR".
3 3
4diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp 4diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp
5index d3af49b495..4beef0aa7e 100644 5index e3be04e70c..a3501c4f44 100644
6--- a/toolkit/xre/nsXREDirProvider.cpp 6--- a/toolkit/xre/nsXREDirProvider.cpp
7+++ b/toolkit/xre/nsXREDirProvider.cpp 7+++ b/toolkit/xre/nsXREDirProvider.cpp
8@@ -296,24 +296,12 @@ nsresult nsXREDirProvider::GetBackgroundTasksProfilesRootDir( 8@@ -280,24 +280,11 @@ nsresult nsXREDirProvider::GetBackgroundTasksProfilesRootDir(
9 static nsresult GetSystemParentDirectory(nsIFile** aFile) { 9 static nsresult GetSystemParentDirectory(nsIFile** aFile) {
10 nsresult rv; 10 nsresult rv;
11 nsCOMPtr<nsIFile> localDir; 11 nsCOMPtr<nsIFile> localDir;
@@ -25,13 +25,12 @@ index d3af49b495..4beef0aa7e 100644
25- "/usr/lib/mozilla"_ns 25- "/usr/lib/mozilla"_ns
26-# endif 26-# endif
27- ; 27- ;
28- rv = NS_NewNativeLocalFile(dirname, false, getter_AddRefs(localDir)); 28- rv = NS_NewNativeLocalFile(dirname, getter_AddRefs(localDir));
29-# endif 29-# endif
30+
31+ const char* systemParentDir = getenv("ICECAT_SYSTEM_DIR"); 30+ const char* systemParentDir = getenv("ICECAT_SYSTEM_DIR");
32+ if (!systemParentDir || !*systemParentDir) return NS_ERROR_FAILURE; 31+ if (!systemParentDir || !*systemParentDir) return NS_ERROR_FAILURE;
33+ 32+
34+ rv = NS_NewNativeLocalFile(nsDependentCString(systemParentDir), false, 33+ rv = NS_NewNativeLocalFile(nsDependentCString(systemParentDir),
35+ getter_AddRefs(localDir)); 34+ getter_AddRefs(localDir));
36 35
37 if (NS_SUCCEEDED(rv)) { 36 if (NS_SUCCEEDED(rv)) {