diff options
| author | Tomas Volf <~@wolfsden.cz> | 2026-07-21 21:52:49 +0200 |
|---|---|---|
| committer | Jonathan Brielmaier <jonathan.brielmaier@web.de> | 2026-08-16 11:30:49 +0200 |
| commit | 38c4d08cb96d7f148d4a23d07945fef576eb5ed8 (patch) | |
| tree | 17bd686d312aa0ec569fecfe01d48e4d6e3efa10 | |
| parent | c786b0280654044411567a567b8fb6c1d6f9666a (diff) | |
nongnu: firefox-esr: Update to 153.0esr [security fixes].
Fixes CVE-2026-15718, CVE-2026-15719, CVE-2026-16349, CVE-2026-16350,
CVE-2026-16351, CVE-2026-16352, CVE-2026-16353, CVE-2026-16354,
CVE-2026-16355, CVE-2026-16356, CVE-2026-16357, CVE-2026-16358,
CVE-2026-16359, CVE-2026-16360, CVE-2026-16361, CVE-2026-16362,
CVE-2026-16363, CVE-2026-16368, CVE-2026-16369, CVE-2026-16371,
CVE-2026-16374, CVE-2026-16375, CVE-2026-16377, CVE-2026-16379,
CVE-2026-16381, CVE-2026-16383, CVE-2026-16387, CVE-2026-16390,
CVE-2026-16391, CVE-2026-16396, CVE-2026-16405, CVE-2026-16412.
* nongnu/packages/mozilla.scm (firefox-esr): Update to 153.0esr.
[source]<patches>: Remove -esr, -ge-138 from patch names. Sort.
[inputs]: Use icu4c-78, clang-19, rust-cbindgen-0.29.4.
(rust-cbindgen-0.29.4): New variable.
(firefox)[source]<patches>: Remove -ge-138 from patch name.
[inputs]: Drop icu4c replacement.
* nongnu/packages/patches/firefox-ge-138-compare-paths.patch: Rename from
this...
* nongnu/packages/patches/firefox-compare-paths.patch: ... to this.
* nongnu/packages/patches/firefox-esr-add-store-to-rdd-allowlist.patch,
nongnu/packages/patches/firefox-esr-use-system-wide-dir.patch: Delete files.
* nongnu/packages/wasm.scm (wasm32-wasi-clang-runtime): Inherit from
clang-runtime-19.
[native-inputs]: Use clang-19.
[inputs]: Use llvm-19.
(wasm32-wasi-clang) [base]: Use llvm-19. Drop #:patches.
(wasm32-wasi-libcxx) [version]: Use llvm-19.
[arguments]<#:configure-flags>: Add -DLIBCXXABI_USE_LLVM_UNWINDER=OFF.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
| -rw-r--r-- | nongnu/packages/mozilla.scm | 23 | ||||
| -rw-r--r-- | nongnu/packages/patches/firefox-compare-paths.patch (renamed from nongnu/packages/patches/firefox-ge-138-compare-paths.patch) | 0 | ||||
| -rw-r--r-- | nongnu/packages/patches/firefox-esr-add-store-to-rdd-allowlist.patch | 36 | ||||
| -rw-r--r-- | nongnu/packages/patches/firefox-esr-use-system-wide-dir.patch | 37 | ||||
| -rw-r--r-- | nongnu/packages/wasm.scm | 14 |
5 files changed, 17 insertions, 93 deletions
diff --git a/nongnu/packages/mozilla.scm b/nongnu/packages/mozilla.scm index 085d65f..4f97cec 100644 --- a/nongnu/packages/mozilla.scm +++ b/nongnu/packages/mozilla.scm | |||
| @@ -88,25 +88,25 @@ | |||
| 88 | 88 | ||
| 89 | ;; Update this id with every firefox update to its release date. | 89 | ;; Update this id with every firefox update to its release date. |
| 90 | ;; It's used for cache validation and therefore can lead to strange bugs. | 90 | ;; It's used for cache validation and therefore can lead to strange bugs. |
| 91 | (define %firefox-esr-build-id "20260720102539") | 91 | (define %firefox-esr-build-id "20260720102245") |
| 92 | 92 | ||
| 93 | (define-public firefox-esr | 93 | (define-public firefox-esr |
| 94 | (package | 94 | (package |
| 95 | (name "firefox-esr") | 95 | (name "firefox-esr") |
| 96 | (version "140.13.0esr") | 96 | (version "153.0esr") |
| 97 | (source | 97 | (source |
| 98 | (origin | 98 | (origin |
| 99 | (method url-fetch) | 99 | (method url-fetch) |
| 100 | (uri (string-append "https://archive.mozilla.org/pub/firefox/releases/" | 100 | (uri (string-append "https://archive.mozilla.org/pub/firefox/releases/" |
| 101 | version "/source/firefox-" version ".source.tar.xz")) | 101 | version "/source/firefox-" version ".source.tar.xz")) |
| 102 | (sha256 | 102 | (sha256 |
| 103 | (base32 "00adf648nrhzngb4ssx31l17bh4zym491mx7b8ca3g9ajk39sfzm")) | 103 | (base32 "1dbcc80wq1354pzy6wg17gm81qiddyf5b3384fva865ivkgdkqyv")) |
| 104 | (patches | 104 | (patches |
| 105 | (nongnu-patches | 105 | (nongnu-patches |
| 106 | "firefox-add-store-to-rdd-allowlist.patch" | ||
| 107 | "firefox-compare-paths.patch" | ||
| 106 | "firefox-restore-desktop-files.patch" | 108 | "firefox-restore-desktop-files.patch" |
| 107 | "firefox-ge-138-compare-paths.patch" | 109 | "firefox-use-system-wide-dir.patch")) |
| 108 | "firefox-esr-use-system-wide-dir.patch" | ||
| 109 | "firefox-esr-add-store-to-rdd-allowlist.patch")) | ||
| 110 | ;; XXX: 75 Mo (800+ Mo uncompressed) of unused tests. | 110 | ;; XXX: 75 Mo (800+ Mo uncompressed) of unused tests. |
| 111 | ;; Removing it makes it possible to compile on some systems. | 111 | ;; Removing it makes it possible to compile on some systems. |
| 112 | (modules '((guix build utils))) | 112 | (modules '((guix build utils))) |
| @@ -460,7 +460,7 @@ | |||
| 460 | gtk+ | 460 | gtk+ |
| 461 | gtk+-2 | 461 | gtk+-2 |
| 462 | hunspell | 462 | hunspell |
| 463 | icu4c-76 | 463 | icu4c-78 |
| 464 | jemalloc | 464 | jemalloc |
| 465 | libcanberra | 465 | libcanberra |
| 466 | libevent | 466 | libevent |
| @@ -498,7 +498,7 @@ | |||
| 498 | alsa-lib | 498 | alsa-lib |
| 499 | autoconf-2.13 | 499 | autoconf-2.13 |
| 500 | `(,rust-firefox-esr "cargo") | 500 | `(,rust-firefox-esr "cargo") |
| 501 | clang-18 | 501 | clang-19 |
| 502 | llvm | 502 | llvm |
| 503 | wasm32-wasi-clang-toolchain | 503 | wasm32-wasi-clang-toolchain |
| 504 | m4 | 504 | m4 |
| @@ -508,7 +508,7 @@ | |||
| 508 | pkg-config | 508 | pkg-config |
| 509 | python | 509 | python |
| 510 | rust-firefox-esr | 510 | rust-firefox-esr |
| 511 | rust-cbindgen-0.28 | 511 | rust-cbindgen-0.29 |
| 512 | which | 512 | which |
| 513 | yasm)) | 513 | yasm)) |
| 514 | (native-search-paths | 514 | (native-search-paths |
| @@ -543,7 +543,7 @@ Release (ESR) version.") | |||
| 543 | (patches | 543 | (patches |
| 544 | (nongnu-patches | 544 | (nongnu-patches |
| 545 | "firefox-restore-desktop-files.patch" | 545 | "firefox-restore-desktop-files.patch" |
| 546 | "firefox-ge-138-compare-paths.patch" | 546 | "firefox-compare-paths.patch" |
| 547 | "firefox-use-system-wide-dir.patch" | 547 | "firefox-use-system-wide-dir.patch" |
| 548 | "firefox-add-store-to-rdd-allowlist.patch")) | 548 | "firefox-add-store-to-rdd-allowlist.patch")) |
| 549 | ;; XXX: 75 Mo (800+ Mo uncompressed) of unused tests. | 549 | ;; XXX: 75 Mo (800+ Mo uncompressed) of unused tests. |
| @@ -557,9 +557,6 @@ Release (ESR) version.") | |||
| 557 | (replace 'set-build-id | 557 | (replace 'set-build-id |
| 558 | (lambda _ | 558 | (lambda _ |
| 559 | (setenv "MOZ_BUILD_DATE" #$%firefox-build-id))))))) | 559 | (setenv "MOZ_BUILD_DATE" #$%firefox-build-id))))))) |
| 560 | (inputs | ||
| 561 | (modify-inputs inputs | ||
| 562 | (replace "icu4c" icu4c-78))) | ||
| 563 | (native-inputs | 560 | (native-inputs |
| 564 | (modify-inputs native-inputs | 561 | (modify-inputs native-inputs |
| 565 | (replace "rust" rust-firefox) | 562 | (replace "rust" rust-firefox) |
diff --git a/nongnu/packages/patches/firefox-ge-138-compare-paths.patch b/nongnu/packages/patches/firefox-compare-paths.patch index b7d92d7..b7d92d7 100644 --- a/nongnu/packages/patches/firefox-ge-138-compare-paths.patch +++ b/nongnu/packages/patches/firefox-compare-paths.patch | |||
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 deleted file mode 100644 index 4bdaa7d..0000000 --- a/nongnu/packages/patches/firefox-esr-add-store-to-rdd-allowlist.patch +++ /dev/null | |||
| @@ -1,36 +0,0 @@ | |||
| 1 | diff --git a/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp b/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp | ||
| 2 | index 4eff5e6..42171eb 100644 | ||
| 3 | --- a/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp | ||
| 4 | +++ b/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp | ||
| 5 | @@ -476,6 +476,7 @@ void SandboxBrokerPolicyFactory::InitContentPolicy() { | ||
| 6 | // Various places where fonts reside | ||
| 7 | policy->AddTree(rdonly, "/usr/X11R6/lib/X11/fonts"); | ||
| 8 | policy->AddTree(rdonly, "/nix/store"); | ||
| 9 | + policy->AddTree(rdonly, "/gnu/store"); | ||
| 10 | // https://gitlab.com/freedesktop-sdk/freedesktop-sdk/-/blob/e434e680d22260f277f4a30ec4660ed32b591d16/files/fontconfig-flatpak.conf | ||
| 11 | policy->AddTree(rdonly, "/run/host/fonts"); | ||
| 12 | policy->AddTree(rdonly, "/run/host/user-fonts"); | ||
| 13 | @@ -485,6 +486,7 @@ void SandboxBrokerPolicyFactory::InitContentPolicy() { | ||
| 14 | // Bug 1848615 | ||
| 15 | policy->AddPath(rdonly, "/usr"); | ||
| 16 | policy->AddPath(rdonly, "/nix"); | ||
| 17 | + policy->AddPath(rdonly, "/gnu"); | ||
| 18 | |||
| 19 | AddLdconfigPaths(policy); | ||
| 20 | AddLdLibraryEnvPaths(policy); | ||
| 21 | @@ -934,6 +936,7 @@ SandboxBrokerPolicyFactory::GetRDDPolicy(int aPid) { | ||
| 22 | policy->AddTree(rdonly, "/usr/lib64"); | ||
| 23 | policy->AddTree(rdonly, "/run/opengl-driver/lib"); | ||
| 24 | policy->AddTree(rdonly, "/nix/store"); | ||
| 25 | + policy->AddTree(rdonly, "/gnu/store"); | ||
| 26 | |||
| 27 | // Bug 1647957: memory reporting. | ||
| 28 | AddMemoryReporting(policy.get(), aPid); | ||
| 29 | @@ -1079,6 +1082,7 @@ SandboxBrokerPolicyFactory::GetUtilityProcessPolicy(int aPid) { | ||
| 30 | // Required to make sure ffmpeg loads properly, this is already existing on | ||
| 31 | // Content and RDD | ||
| 32 | policy->AddTree(rdonly, "/nix/store"); | ||
| 33 | + policy->AddTree(rdonly, "/gnu/store"); | ||
| 34 | |||
| 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 | ||
diff --git a/nongnu/packages/patches/firefox-esr-use-system-wide-dir.patch b/nongnu/packages/patches/firefox-esr-use-system-wide-dir.patch deleted file mode 100644 index 564f12f..0000000 --- a/nongnu/packages/patches/firefox-esr-use-system-wide-dir.patch +++ /dev/null | |||
| @@ -1,37 +0,0 @@ | |||
| 1 | Replace "/usr/lib/mozilla" (the system-wide directory for extensions and | ||
| 2 | native manifests) with "$ICECAT_SYSTEM_DIR". | ||
| 3 | |||
| 4 | diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp | ||
| 5 | index e3be04e70c..a3501c4f44 100644 | ||
| 6 | --- a/toolkit/xre/nsXREDirProvider.cpp | ||
| 7 | +++ b/toolkit/xre/nsXREDirProvider.cpp | ||
| 8 | @@ -280,24 +280,11 @@ nsresult nsXREDirProvider::GetBackgroundTasksProfilesRootDir( | ||
| 9 | static nsresult GetSystemParentDirectory(nsIFile** aFile) { | ||
| 10 | nsresult rv; | ||
| 11 | nsCOMPtr<nsIFile> localDir; | ||
| 12 | -# if defined(XP_MACOSX) | ||
| 13 | - rv = GetOSXFolderType(kOnSystemDisk, kApplicationSupportFolderType, | ||
| 14 | - getter_AddRefs(localDir)); | ||
| 15 | - if (NS_SUCCEEDED(rv)) { | ||
| 16 | - rv = localDir->AppendNative("Mozilla"_ns); | ||
| 17 | - } | ||
| 18 | -# else | ||
| 19 | - constexpr auto dirname = | ||
| 20 | -# ifdef HAVE_USR_LIB64_DIR | ||
| 21 | - "/usr/lib64/mozilla"_ns | ||
| 22 | -# elif defined(__OpenBSD__) || defined(__FreeBSD__) | ||
| 23 | - "/usr/local/lib/mozilla"_ns | ||
| 24 | -# else | ||
| 25 | - "/usr/lib/mozilla"_ns | ||
| 26 | -# endif | ||
| 27 | - ; | ||
| 28 | - rv = NS_NewNativeLocalFile(dirname, getter_AddRefs(localDir)); | ||
| 29 | -# endif | ||
| 30 | + const char* systemParentDir = getenv("ICECAT_SYSTEM_DIR"); | ||
| 31 | + if (!systemParentDir || !*systemParentDir) return NS_ERROR_FAILURE; | ||
| 32 | + | ||
| 33 | + rv = NS_NewNativeLocalFile(nsDependentCString(systemParentDir), | ||
| 34 | + getter_AddRefs(localDir)); | ||
| 35 | |||
| 36 | if (NS_SUCCEEDED(rv)) { | ||
| 37 | localDir.forget(aFile); | ||
diff --git a/nongnu/packages/wasm.scm b/nongnu/packages/wasm.scm index 3451489..ba74aea 100644 --- a/nongnu/packages/wasm.scm +++ b/nongnu/packages/wasm.scm | |||
| @@ -67,11 +67,11 @@ other APIs.") | |||
| 67 | license:expat)))) | 67 | license:expat)))) |
| 68 | 68 | ||
| 69 | (define-public wasm32-wasi-clang-runtime | 69 | (define-public wasm32-wasi-clang-runtime |
| 70 | (package (inherit clang-runtime-17) | 70 | (package (inherit clang-runtime-19) |
| 71 | (native-inputs | 71 | (native-inputs |
| 72 | (list clang-17 | 72 | (list clang-19 |
| 73 | wasi-libc)) | 73 | wasi-libc)) |
| 74 | (inputs (list llvm-17)) | 74 | (inputs (list llvm-19)) |
| 75 | (arguments | 75 | (arguments |
| 76 | (list | 76 | (list |
| 77 | #:build-type "Release" | 77 | #:build-type "Release" |
| @@ -109,8 +109,7 @@ other APIs.") | |||
| 109 | 109 | ||
| 110 | (define-public wasm32-wasi-clang | 110 | (define-public wasm32-wasi-clang |
| 111 | (let ((base | 111 | (let ((base |
| 112 | (clang-from-llvm llvm-17 wasm32-wasi-clang-runtime | 112 | (clang-from-llvm llvm-19 wasm32-wasi-clang-runtime))) |
| 113 | #:patches '("clang-17.0-fix-build-with-gcc-14-on-arm.patch")))) | ||
| 114 | (package | 113 | (package |
| 115 | (inherit base) | 114 | (inherit base) |
| 116 | (name "wasm32-wasi-clang") | 115 | (name "wasm32-wasi-clang") |
| @@ -132,7 +131,7 @@ other APIs.") | |||
| 132 | (define-public wasm32-wasi-libcxx | 131 | (define-public wasm32-wasi-libcxx |
| 133 | (package | 132 | (package |
| 134 | (name "wasm32-wasi-libcxx") | 133 | (name "wasm32-wasi-libcxx") |
| 135 | (version (package-version llvm-17)) | 134 | (version (package-version llvm-19)) |
| 136 | (source (llvm-monorepo version)) | 135 | (source (llvm-monorepo version)) |
| 137 | (build-system cmake-build-system) | 136 | (build-system cmake-build-system) |
| 138 | (arguments | 137 | (arguments |
| @@ -173,7 +172,8 @@ other APIs.") | |||
| 173 | "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF" | 172 | "-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF" |
| 174 | "-DLIBCXXABI_ENABLE_SHARED=OFF" | 173 | "-DLIBCXXABI_ENABLE_SHARED=OFF" |
| 175 | "-DLIBCXXABI_ENABLE_THREADS=OFF" | 174 | "-DLIBCXXABI_ENABLE_THREADS=OFF" |
| 176 | "-DLIBCXXABI_ENABLE_FILESYSTEM=OFF") | 175 | "-DLIBCXXABI_ENABLE_FILESYSTEM=OFF" |
| 176 | "-DLIBCXXABI_USE_LLVM_UNWINDER=OFF") | ||
| 177 | #:tests? #f | 177 | #:tests? #f |
| 178 | #:phases | 178 | #:phases |
| 179 | #~(modify-phases %standard-phases | 179 | #~(modify-phases %standard-phases |
