diff options
| author | Tomas Volf <~@wolfsden.cz> | 2025-06-26 23:01:22 +0200 |
|---|---|---|
| committer | Hilton Chain <hako@ultrarare.space> | 2025-06-28 21:03:20 +0800 |
| commit | 1b17c6dfc04faf545e4142a1d5efab6a93d31fcf (patch) | |
| tree | ce66040d7c863c84b7adade8b5e2d7a7175569ce | |
| parent | 250a6b02d09d6b0eac17b488b8464ce0ab73b85b (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>
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 @@ | |||
| 1 | diff --git a/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp b/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp | 1 | diff --git a/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp b/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp |
| 2 | index 0e5358e68e..efbde9616e 100644 | 2 | index 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 @@ | |||
| 1 | See comment in gnu/build/icecat-extension.scm. | ||
| 2 | |||
| 3 | diff --git a/toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs b/toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs | ||
| 4 | index 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 | |||
| 2 | native manifests) with "$ICECAT_SYSTEM_DIR". | 2 | native manifests) with "$ICECAT_SYSTEM_DIR". |
| 3 | 3 | ||
| 4 | diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp | 4 | diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp |
| 5 | index d3af49b495..4beef0aa7e 100644 | 5 | index 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)) { |
