signal-desktop: 8.18.0 -> 8.21.0

(cherry picked from commit 01e6b20722)
This commit is contained in:
Angel J
2026-07-31 07:29:57 -07:00
committed by Marcin Serwin
parent fa48379b2d
commit c592a3ce62
7 changed files with 167 additions and 135 deletions

View File

@@ -0,0 +1,30 @@
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
index f977c9fed76e6f50c50351ca22128e8c8c8897b1..81460f3591b734f3354a6f9ac7bb0990e5b28889 100644
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -589,7 +589,7 @@ config("compiler") {
# Flags for diagnostics.
cflags += [ "-fcolor-diagnostics" ]
if (!is_win) {
- cflags += [ "-fdiagnostics-show-inlining-chain" ]
+ cflags += [ ]
} else {
# Combine after https://github.com/llvm/llvm-project/pull/192241
cflags += [ "/clang:-fdiagnostics-show-inlining-chain" ]
@@ -1911,7 +1911,7 @@ config("clang_warning_suppression") {
# See also: https://crbug.com/40891132#comment10
ubsan_hardening("c_array_bounds") {
sanitizer = "array-bounds"
- condition = !(is_asan && target_cpu == "x86")
+ condition = false
# Because we've enabled array-bounds sanitizing we also want to suppress
# the related warning about "unsafe-buffer-usage-in-static-sized-array",
@@ -1925,6 +1925,7 @@ ubsan_hardening("c_array_bounds") {
# `NOTREACHED()` at the end of such functions.
ubsan_hardening("return") {
sanitizer = "return"
+ condition = false
}
config("rustc_revision") {

View File

@@ -15,23 +15,23 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "libsignal-node";
version = "0.96.3";
version = "0.97.3";
src = fetchFromGitHub {
owner = "signalapp";
repo = "libsignal";
tag = "v${finalAttrs.version}";
hash = "sha256-FOppsfocUvUfWa6AfBPOxAnntGJkzTbnPwqMzzbHnWQ=";
hash = "sha256-mRhArmrrbnAfj4JS4OqWA+FEC57Sf/BEqb95KL3JXp0=";
};
cargoHash = "sha256-wsXlCpNwO+E6rVNaD2R51Mi0sZUv2lhllGxDxzyptYA=";
cargoHash = "sha256-obv5XcGD4kkgTPShszxJRTFsOeig9UWyxdE8cyjbsCY=";
npmRoot = "node";
npmDeps = fetchNpmDeps {
name = "${finalAttrs.pname}-npm-deps";
inherit (finalAttrs) version src;
sourceRoot = "${finalAttrs.src.name}/${finalAttrs.npmRoot}";
hash = "sha256-p8udihRlXMTnG4BT60D2VlI7D/O3eHV/zCS7ucpeuO4=";
hash = "sha256-jTyEnJBEuL8RXT29VYsRW797FPgINm8BvVBmt3m13EA=";
};
nativeBuildInputs = [

View File

@@ -9,7 +9,7 @@
fetchPnpmDeps,
pnpmConfigHook,
pnpmBuildHook,
electron_42,
electron_43,
python3,
makeWrapper,
callPackage,
@@ -34,7 +34,7 @@ assert lib.warnIf (commandLineArgs != "")
let
nodejs = nodejs_24;
pnpm = pnpm_11;
electron = electron_42;
electron = electron_43;
libsignal-node = callPackage ./libsignal-node.nix { inherit nodejs; };
signal-sqlcipher = callPackage ./signal-sqlcipher.nix {
@@ -45,13 +45,13 @@ let
webrtc = callPackage ./webrtc.nix { };
ringrtc = callPackage ./ringrtc.nix { inherit webrtc; };
version = "8.18.0";
version = "8.21.0";
src = fetchFromGitHub {
owner = "signalapp";
repo = "Signal-Desktop";
tag = "v${version}";
hash = "sha256-fynCFGmch3UecT5esNfVVlf0+xDrCdCBGw2HMMqBzWw=";
hash = "sha256-RuGq8ygiZewKqtKQattlqU0pcMMlgdFOJAhmN4J/8Tw=";
# Emoji font files will be added in `postFetch` if `withAppleEmojis` is enabled. They
# are fetched separately below.
postFetch = ''
@@ -77,18 +77,13 @@ let
pname
src
version
postPatch
pnpmWorkspaces
;
inherit pnpm;
fetcherVersion = 4;
hash = "sha256-bWNs5W2NPk55Sm7UqwWvXU7bY+AXzevU3o2ji23HxtU=";
hash = "sha256-1n+u0mcZJwjkdKmNY6KE6tk6/UPYuya5WqLrKRJimGw=";
};
postPatch = ''
rm sticker-creator/pnpm-lock.yaml
'';
strictDeps = true;
nativeBuildInputs = [
nodejs
@@ -190,13 +185,13 @@ stdenv.mkDerivation (finalAttrs: {
;
inherit pnpm;
fetcherVersion = 4;
hash = "sha256-bWNs5W2NPk55Sm7UqwWvXU7bY+AXzevU3o2ji23HxtU=";
hash = "sha256-1n+u0mcZJwjkdKmNY6KE6tk6/UPYuya5WqLrKRJimGw=";
};
env = {
ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
SIGNAL_ENV = "production";
SOURCE_DATE_EPOCH = 1783606680;
SOURCE_DATE_EPOCH = 1785418091;
};
preBuild = ''
@@ -259,6 +254,13 @@ stdenv.mkDerivation (finalAttrs: {
popd
test -f node_modules/@signalapp/windows-ucv/dist/index.js
# @signalapp/types is required at runtime by preload.wrapper.js, but its
# output is normally produced by the prepare script.
pushd packages/types
pnpm run build
popd
test -f node_modules/@signalapp/types/dist/index.std.cjs
cp -r ${electron.dist} electron-dist
chmod -R u+w electron-dist
cp -r ${sticker-creator} sticker-creator/dist

View File

@@ -2,13 +2,13 @@ diff --git a/app/AssetService.main.ts b/app/AssetService.main.ts
index a4a21b5bb..3d5ab1eb0 100644
--- a/app/AssetService.main.ts
+++ b/app/AssetService.main.ts
@@ -34,7 +34,6 @@ const OPTIONAL_ASSETS = new Map<string, string>([]);
@@ -34,7 +34,2 @@ const OPTIONAL_ASSETS = new Map<string, string>([]);
if (!process.mas) {
LOCAL_ASSETS.add('fonts/emoji.woff2');
-if (!process.mas) {
- LOCAL_ASSETS.add('fonts/emoji.woff2');
- OPTIONAL_ASSETS.set('optional-fonts/emoji-large.woff2', 'emoji-font.woff2');
}
-}
-
export class AssetService {
diff --git a/app/protocol_filter.node.ts b/app/protocol_filter.node.ts
index 17c68f0a4..4ed359de6 100644

View File

@@ -19,16 +19,16 @@ let
in
rustPlatform.buildRustPackage (finalAttrs: {
pname = "ringrtc";
version = "2.69.4";
version = "2.70.0";
src = fetchFromGitHub {
owner = "signalapp";
repo = "ringrtc";
tag = "v${finalAttrs.version}";
hash = "sha256-z/9Y9rrlH4yziEVAXrCmkmP42hdDm3frGJnL1O/qOqg=";
hash = "sha256-5RPX1SZhVJaSIDjdY2IvInwSI4YHs0y7TK1b9ixaeZc=";
};
cargoHash = "sha256-a6CEUVW1HXqgIp/S+4Ype83N3QtNCBrutiEepHNW5pY=";
cargoHash = "sha256-tztNtAGYHp+Kh98efwtt51yhRwhqDKeT06Q4B/HrHfQ=";
preConfigure = ''
# Check for matching webrtc version

View File

@@ -1,25 +1,25 @@
{
"src": {
"args": {
"hash": "sha256-kdRUqYFKsEbAR0u4btQc995vtbN+FVcei19PgTf1DyA=",
"hash": "sha256-icy7lsgHBofHMJg6Eo2jxkuo9vHVw6P8TXsti2416bg=",
"owner": "signalapp",
"repo": "webrtc",
"tag": "7778c"
"tag": "7871d"
},
"fetcher": "fetchFromGitHub"
},
"src/build": {
"args": {
"hash": "sha256-XmuuR4mLcaoAPCr82ka6ldtE4OmYFmXlWjNaP/wM2BQ=",
"rev": "dd54dd5186566a13bda647123c22540666b12ace",
"hash": "sha256-jY47j4gsrzQpNnQsTtb01CUMisejfqPgVsOyWLyI7iA=",
"rev": "d296a9fec6186f2c109758c7d3f93cbef936dfc3",
"url": "https://chromium.googlesource.com/chromium/src/build"
},
"fetcher": "fetchFromGitiles"
},
"src/buildtools": {
"args": {
"hash": "sha256-BvGCdJ3EgUZX6MC3jf86YNl4LzUxpxiptCEBv3bqBIo=",
"rev": "95ed44cf5f06dbb5861030b91c9db9ccb4316762",
"hash": "sha256-1xi58KhE/oErrrYnP/YKkWeA3dLfPtcTwbKcn6jr13o=",
"rev": "17495e454aae81b581e8b3caccbb53054509b280",
"url": "https://chromium.googlesource.com/chromium/src/buildtools"
},
"fetcher": "fetchFromGitiles"
@@ -35,40 +35,40 @@
},
"src/testing": {
"args": {
"hash": "sha256-tUh/eOrf71OjndY6p6IOJ5MFJUnuisDGWXJzsHHyrHs=",
"rev": "629b7bb6055714e23d8125bf790cfc8d94a94159",
"hash": "sha256-xUfuaftEKZr6GwBtZfAUW/uRkU1f+pJBdiFpGnJQPms=",
"rev": "5c19204b6395adfad25f83bbbd56439af9f86f7f",
"url": "https://chromium.googlesource.com/chromium/src/testing"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party": {
"args": {
"hash": "sha256-sLMCkUCadVZIX5bTVovDd5tPn0ZB/CH/d0tQic8lEQg=",
"rev": "4923971b35e39f6bd9be8bc19c4680785a15c80d",
"hash": "sha256-BDOKJiCeO8g3gtSJYK1ZMKymq63BJX1L5EeWpvfCFFM=",
"rev": "7c92732938de0ef7e28f5da231994723f938f407",
"url": "https://chromium.googlesource.com/chromium/src/third_party"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/boringssl/src": {
"args": {
"hash": "sha256-OIaU7GoHYKq1ZyPaW/gLSKNq1ipw5nAgjqcPIFXtGwE=",
"rev": "8dce4fd20ab7e768c0a5103edc1d8cb7e54366ba",
"hash": "sha256-7pKQHAQ218OiuuSNsm1ZRUvUcft7QzUG++xH3y8fR9o=",
"rev": "f91f1447397c6719f9774dfb8e67329378e1f3d3",
"url": "https://boringssl.googlesource.com/boringssl.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/breakpad/breakpad": {
"args": {
"hash": "sha256-igcX5XwacIwoGbqIcZKwlJYpRWl9Uc32WdpXyHO7UVA=",
"rev": "8be0e3114685fcc1589561067282edf75ea1259a",
"hash": "sha256-JzGeACM7hXKhjFVFoeHqs9HfqDLm2OyWtjhU5lyKuFs=",
"rev": "6d017fa2c0c440f914385bb794fd88de90fef736",
"url": "https://chromium.googlesource.com/breakpad/breakpad.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/catapult": {
"args": {
"hash": "sha256-f57wYazKyGrjfzcQ7EVqwIG8p+bHLGK0Qb/tZERxwY8=",
"rev": "5a34891efa6e41c8aca8842386b8ee528963ffdf",
"hash": "sha256-XYufVvzOXD4voZUWUvumQQqLNsx9sy0QmQzNzrgNEWg=",
"rev": "2852bb7e91e4995502ffb72b7ed21412ee157914",
"url": "https://chromium.googlesource.com/catapult.git"
},
"fetcher": "fetchFromGitiles"
@@ -83,8 +83,8 @@
},
"src/third_party/clang-format/script": {
"args": {
"hash": "sha256-f+BbQ6xIubloSzx/MhPSZ8ymCskmS+9+epDGtPjZqXc=",
"rev": "c2725e0622e1a86d55f14514f2177a39efea4a0e",
"hash": "sha256-Cm6BOOlEyD0kdYxMSmk6Fj1Dnfs3zCzXsm+BOXgBme0=",
"rev": "6eddfb5ec5f92127a531eda66c568d3a11e7ec11",
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git"
},
"fetcher": "fetchFromGitiles"
@@ -99,16 +99,16 @@
},
"src/third_party/compiler-rt/src": {
"args": {
"hash": "sha256-ay0gzhNjAah27LQd/i0ex6EcHEdqpsWBT9Tw510coRM=",
"rev": "bb7645f5e11c9c1d719a890fcb09ccfaaa14580f",
"hash": "sha256-PjH+E+6knLw0YSM7XpoC2taCkh89GQX1EDiviO4ZPPM=",
"rev": "b7f9fa6b211b362d3ca07ab2043419ebaf75d1d0",
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/cpuinfo/src": {
"args": {
"hash": "sha256-LnLtCMMRg+DwB7MijBdt/tmCKD/zN5y2oTgXlYw3hTg=",
"rev": "7607ca500436b37ad23fb8d18614bec7796b68a7",
"hash": "sha256-/QsOjDik0TnH3FnK7LOwsJkvX+O+2DRFX4eF3MxD3fc=",
"rev": "ea6b9f1bb6e1001d8b21574d5bc78ddef62e499d",
"url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git"
},
"fetcher": "fetchFromGitiles"
@@ -123,24 +123,24 @@
},
"src/third_party/dav1d/libdav1d": {
"args": {
"hash": "sha256-iKq6TYscIBK4ydv+0msNV3tcs82Ljk5ZNr954Qv2lII=",
"rev": "d69235dd804b24c04ed05639cffcc912cd6cfd75",
"hash": "sha256-uR6zXz1Nk75mKzw1M/MvcD33iV7SbVbncD08yhKdEm0=",
"rev": "1718ff9aded99f0a89f5c7940d6afb8948301e33",
"url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/depot_tools": {
"args": {
"hash": "sha256-r/mmibfbCBpV9reVbHc/S7FKffrtE729y2Mot/JsHgc=",
"rev": "ce1ebad2c35c9387186f01d77edeea28a254c955",
"hash": "sha256-/edPeYK0WF7AmfaTG2uC9ZFWE7DPn+NUs1tgnR3RzFs=",
"rev": "2f9bc10799af5aeb4a0ed903742ad69bb1d0ef75",
"url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/eigen3/src": {
"args": {
"hash": "sha256-/nzzcoJ87L7EVsRfAeok3UbxNKQeAWOFjmwZ3TYmGmI=",
"rev": "002229ce470065878afb7c2f6f96d22c9a9b7ba0",
"hash": "sha256-YjyAr1sTLF6zlNw9G0RL5kBApmRRYsHpUet3sCCsf14=",
"rev": "fc0f148ab491bf36378c5d527d8f6669ccf21b07",
"url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git"
},
"fetcher": "fetchFromGitiles"
@@ -155,8 +155,8 @@
},
"src/third_party/ffmpeg": {
"args": {
"hash": "sha256-JHAicFKBvtkwmZPRBKYPT6JVqYqF8hyXxU0H7kfgCBs=",
"rev": "b5e18fb9da84e26ceef30d4e4886696bf59337c0",
"hash": "sha256-41qpsOTedB51WMzzHXDiXA19OIzA7wG/Qgbz6IkmWpk=",
"rev": "ad41607c61898cf7150e0fb20fe4bbabd44922a3",
"url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git"
},
"fetcher": "fetchFromGitiles"
@@ -187,16 +187,16 @@
},
"src/third_party/freetype/src": {
"args": {
"hash": "sha256-H5RzBFYWIp/QYKyeBM2wfuX7FvXHPbhCAp7qne5Zvhw=",
"rev": "99b479dc34728936b006679a31e12b8cf432fc55",
"hash": "sha256-QOUIW1p9bh7v100iQn8aPq601bNHz+UDA4esd10nQk0=",
"rev": "7e0e56f84fd53cf38378d33c8fc8f92d12ab9ac6",
"url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/fuzztest/src": {
"args": {
"hash": "sha256-0Fk2W4rS1xB6YcXsDbrMfmZUfMxNlGz29xRcBHZbijA=",
"rev": "dc327134097700121e4ecd6e1d54d1d0a832a18d",
"hash": "sha256-nKdSzMuvjgYEP2sbP5/S5yzrT3FL6OsKMbC/uAsUybo=",
"rev": "36a7acd1a4445a722803cd2d41bcf878ec2831ca",
"url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git"
},
"fetcher": "fetchFromGitiles"
@@ -219,8 +219,8 @@
},
"src/third_party/google_benchmark/src": {
"args": {
"hash": "sha256-GfqY2d+Nd7ovNrXxzTRm/AYWj7GuxIO6FawzUEzwOVA=",
"rev": "188e8278990a9069ffc84441cb5a024fd0bede37",
"hash": "sha256-M8QkA8+bckoRjlcVneYXNetmPEWEvmWy/mca5JA40Ho=",
"rev": "8abf1e701fbd88c8170f48fe0558247e2e5f8e7d",
"url": "https://chromium.googlesource.com/external/github.com/google/benchmark.git"
},
"fetcher": "fetchFromGitiles"
@@ -235,8 +235,8 @@
},
"src/third_party/grpc/src": {
"args": {
"hash": "sha256-LQrig9/ceXS1LclfN9b9DoAvwltIA1R5fSpmHTmaN8s=",
"rev": "5e9fb9cbfb12a10ff9c16fbc360328d224b838d6",
"hash": "sha256-XzKPeOHb7yf0CZdz2/P5CwUiEi5Cquiqqj8nBQ+xkqI=",
"rev": "05ffa9265bd5f4846a5e3dc46d91ba739ad17ef6",
"url": "https://chromium.googlesource.com/external/github.com/grpc/grpc.git"
},
"fetcher": "fetchFromGitiles"
@@ -249,34 +249,34 @@
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/harfbuzz-ng/src": {
"src/third_party/harfbuzz/src": {
"args": {
"hash": "sha256-jQZElINbJgiVj1IHhkrtBCL5jGYzZrjJkO7gt+bgMA4=",
"rev": "6f4c5cec306d31e6822303f5ba248a14293d588e",
"hash": "sha256-tSap704OcadjsEUx+K1bTCrqvluH2F0oFW6Aio+Wgn4=",
"rev": "b90b89feb9aad05065b2edfb10aaa969b164275a",
"url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/icu": {
"args": {
"hash": "sha256-hKIzBQVs4C/QJ4BdP3DTm6au9hq8BE0kG1VphtbtHVE=",
"rev": "b4aae6832c06df9d538d41b249403cf0678f16b4",
"hash": "sha256-rNErsn11FZUh8GXAl7jK+NyLHIKrQR3LuoM1qFFGtmM=",
"rev": "3859e64eed5d34544b27fbcab0ac1685ce83df3c",
"url": "https://chromium.googlesource.com/chromium/deps/icu.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/instrumented_libs": {
"args": {
"hash": "sha256-8kokdsnn5jD9KgM/6g0NuITBbKkGXWEM4BMr1nCrfdU=",
"rev": "69015643b3f68dbd438c010439c59adc52cac808",
"hash": "sha256-5cb9qhSEzb941pF5HH0Br+x9wEH7MiGwQttvErb2mZo=",
"rev": "e8cb570a9a2ee9128e2214c73417ad2a3c47780b",
"url": "https://chromium.googlesource.com/chromium/third_party/instrumented_libraries.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/jsoncpp/source": {
"args": {
"hash": "sha256-bSLNcoYBz3QCt5VuTR056V9mU2PmBuYBa0W6hFg2m8Q=",
"rev": "42e892d96e47b1f6e29844cc705e148ec4856448",
"hash": "sha256-q+DOwkjRlHacgfWf5UVY02aqfnKK9M/1YRBX6aMce9g=",
"rev": "d4d072177213b117fb81d4cfda140de090616161",
"url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git"
},
"fetcher": "fetchFromGitiles"
@@ -291,16 +291,16 @@
},
"src/third_party/libaom/source/libaom": {
"args": {
"hash": "sha256-uO+zjmt0g5m780WR823UJ0AmQA+dfVFOjPChTLAciTM=",
"rev": "f3dddebddd0dba76fbfb97b96b6336bcf1d3a30c",
"hash": "sha256-qvwmcnA3dls89y4Uy79c2Lt0W5iT6ASD/MKS5LLzO/A=",
"rev": "c213343c8d32bcae729fe09fcba16e1f371cb23b",
"url": "https://aomedia.googlesource.com/aom.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libc++/src": {
"args": {
"hash": "sha256-7O/X2JW8ghkPTjmFZmT9cgG3Ui5zk3gUb436KlPww34=",
"rev": "7ab65651aed6802d2599dcb7a73b1f82d5179d05",
"hash": "sha256-vT1km7JgVpotDoNK+ae1gplSHcwrVNLsv/QAFUrDsIM=",
"rev": "5abc7f839700f0f17338434e1c1c6a8c87c00c11",
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git"
},
"fetcher": "fetchFromGitiles"
@@ -315,64 +315,64 @@
},
"src/third_party/libgav1/src": {
"args": {
"hash": "sha256-gisU0p0HDL7Po/ZXIIZVOTnxnOuVvSE/FYo9DaEUFfo=",
"rev": "40f58ed32ff39071c3f2a51056dbc49a070af0dc",
"hash": "sha256-6/zMaX2DPSKpsaqirhrgi3nL/88Qr2VXacmyL5IyJ3U=",
"rev": "66ac17620652635392f6ab24065c77b035e281c9",
"url": "https://chromium.googlesource.com/codecs/libgav1.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libjpeg_turbo": {
"args": {
"hash": "sha256-KGeB/lTjhm8DQBDZVSPENvZEGSHeLTkviJrYsFh5vEM=",
"rev": "d1f5f2393e0d51f840207342ae86e55a86443288",
"hash": "sha256-wor4RTF3/5BFL9EWcGEofY+M4HN2+/KJUaOY+u86K5Q=",
"rev": "640f254ad0fa03f6b1f29f89b7dd9366f2f6e533",
"url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libpfm4/src": {
"args": {
"hash": "sha256-6YaPJcI6Qk0F1Dv5evfFq3MVSsBpsQ7sIreSuHZmOUo=",
"rev": "41878eab48c50bb9ec5f741a013e971bb5a9dff2",
"hash": "sha256-t4LMG38GksMEM5DktyJ0qLUX1biXErQ57MaMtd7hoeo=",
"rev": "977a25bb3dfe45f653a6cee71ffaae9a92fc3095",
"url": "https://chromium.googlesource.com/external/git.code.sf.net/p/perfmon2/libpfm4.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libsrtp": {
"args": {
"hash": "sha256-xC//VEFrI94nCkyLnRa6uQ+hJQqe41v0Qjm4LJ7K84I=",
"rev": "e8383771af8aa4096f5bcfe3743a5ea128f88a9a",
"hash": "sha256-6tIbthIcUw58AgaNzvSenZPp/e5vHVTp5K2bpPF+Zg0=",
"rev": "cd5d177bf1fde755ddb4c7f0d9ff7693f8b49e5e",
"url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libunwind/src": {
"args": {
"hash": "sha256-miwz3+/fq+7Ohsn8J6xrLsQn/VqyezS9vZO9XzEuZZA=",
"rev": "db838d918570d4e381ecf9f5cc70a0098c9c2cd6",
"hash": "sha256-EuaVSYiR7qrlYqBR0UqdWCvwdzJSn0RS2wC/lnP19AE=",
"rev": "d6c7a21e978f0adaa43accaad53bc64f0b64f6ec",
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libvpx/source/libvpx": {
"args": {
"hash": "sha256-8vej9g9+L73eOIuXZNfOWe6pV/cNr4JZOihZUtRxbFA=",
"rev": "3fce57ecc905d95a4619f33d09851d68c5a88663",
"hash": "sha256-fCwegoFUwDg5/tGBH4SlO3YeAR2wkYgIoajXVtt0eYk=",
"rev": "31af37b1bd2774d11a932c1cd9a3849328375f64",
"url": "https://chromium.googlesource.com/webm/libvpx.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libyuv": {
"args": {
"hash": "sha256-DW7PuRqA1x0K8/uJbxBJ4Cn9YEPFhZ9vhuGVVyGKK98=",
"rev": "30809ff64a9ca5e45f86439c0d474c2d3eef3d05",
"hash": "sha256-Bq9LM+9sdFzKzbTzrW2cloSOFUhCfyvYqwBweIhiDQI=",
"rev": "de63bd90f4396313f864ad58b65279e7894451a9",
"url": "https://chromium.googlesource.com/libyuv/libyuv.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/llvm-libc/src": {
"args": {
"hash": "sha256-nrd+E7LRTclF/Qa3wBvlutJ/wbLQKr73LOBk9k0qFOI=",
"rev": "adccc443070c58badd6414fd9a4380ca8c78e7c4",
"hash": "sha256-NaQb2UvNqIL4LL5PSshRRMKWdXFjWPnf2YJpVegGtag=",
"rev": "be95a36286a288c9437f5ed991720ccece1a6391",
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git"
},
"fetcher": "fetchFromGitiles"
@@ -387,16 +387,16 @@
},
"src/third_party/nasm": {
"args": {
"hash": "sha256-0KsHYi76IaVNwk0dBhem2AnUXd9PpeS+jUsY+zPmeJ8=",
"rev": "45252858722aad12e545819b2d0f370eb865431b",
"hash": "sha256-uC6bGxSdz1V2SXIQjMsDd6555b3gAPN1Y0ZQtWoqDww=",
"rev": "525a09a813be0f75b646ee93fc2a31c27b87d722",
"url": "https://chromium.googlesource.com/chromium/deps/nasm.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/neon_2_sse/src": {
"args": {
"hash": "sha256-4OzG4wIPwnKbFD9LG+stxHt5O4qB85ZIXVeSrNqDAyM=",
"rev": "662a85912e8f86ec808f9b15ce77f8715ba53316",
"hash": "sha256-ydHSMPJS+axvW7KIR/9SLWNFq/lP67dpg9Yt7shLCng=",
"rev": "ed59be8546632d5126ff69c87122ae5de20ffe4f",
"url": "https://chromium.googlesource.com/external/github.com/intel/ARM_NEON_2_x86_SSE.git"
},
"fetcher": "fetchFromGitiles"
@@ -411,8 +411,8 @@
},
"src/third_party/perfetto": {
"args": {
"hash": "sha256-ZDQsBVFq9TgGGf5r2vv8nsHvFy03NM+SkbaXPoa345Q=",
"rev": "40b1342aa7bd47d9c963c3617fd98ec1551528f9",
"hash": "sha256-2RXnxNmF5ZSWs7H4slVVTSLh9bfQMMfMRrELVZUN/Vo=",
"rev": "82ad4b69cbaf64e26c639061b1712756a9cc5e20",
"url": "https://chromium.googlesource.com/external/github.com/google/perfetto.git"
},
"fetcher": "fetchFromGitiles"
@@ -427,8 +427,8 @@
},
"src/third_party/pthreadpool/src": {
"args": {
"hash": "sha256-Es9QNblzo5b+x4K7myQJwIiUKvqyP16QExWPhGqqDO8=",
"rev": "9003ee6c137cea3b94161bd5c614fb43be523ee1",
"hash": "sha256-4EHJzZT+Gbhs8SkOhjSvDIPEqIQU93oJmtF3c/T+qjw=",
"rev": "02460584c6092e527c8b89f7df4de143d70e801f",
"url": "https://chromium.googlesource.com/external/github.com/google/pthreadpool.git"
},
"fetcher": "fetchFromGitiles"
@@ -449,26 +449,34 @@
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/sframe/src": {
"args": {
"hash": "sha256-bw+6ycUpnFZJhtXFUzr7XTOljNrs+7oFdVY+LN0Rqek=",
"rev": "b14090904433bed0d4ec3f875b9b39f3e0555930",
"url": "https://chromium.googlesource.com/external/github.com/cisco/sframe"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/tflite/src": {
"args": {
"hash": "sha256-nvU3p6TzEqBkDtZEoxCZGPsQA0oZNJID8raqHBDS0ko=",
"rev": "8fd527849069a358ad6c2980b9a9b34a53c53717",
"hash": "sha256-eSqaWXtzZ4Bi9ilaJYGdZamzUjmo+AtDZ9KeZhsc/fY=",
"rev": "999d49c10046e240cd5366d349d3a5f6af16a0d4",
"url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/xnnpack/src": {
"args": {
"hash": "sha256-vOUwMXZJbYxTGPpdD5uc9ATfPIpThCDHV/YTlWN0ajw=",
"rev": "97f3177fd836fff03b48a886bb130591866ad7ca",
"hash": "sha256-uw3r5g5rWamlFubBkXDb4KRx3hkOAoQyFo8l95GYGZI=",
"rev": "56ac34b3f45fae2eca1f32584f7f0b279be2cf1f",
"url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git"
},
"fetcher": "fetchFromGitiles"
},
"src/tools": {
"args": {
"hash": "sha256-PDjcHq8BTDLD6OsYFfvjw8ffmam/4YSx8SF0G/NvebY=",
"rev": "f363a79871a91f36322e845e3134e2f04e1fc18a",
"hash": "sha256-Et9KyslSik7y5v2Jzai/vpxogpT0RlZ5b+u7/VwHc28=",
"rev": "8e4d26ef387bfa4c07e66dd1c7399c3d53ef1451",
"url": "https://chromium.googlesource.com/chromium/src/tools"
},
"fetcher": "fetchFromGitiles"

View File

@@ -4,7 +4,7 @@
fetchpatch,
buildPackages,
ninja,
gn,
gn_0-unstable-2026-05-27,
symlinkJoin,
python3,
pkg-config,
@@ -20,6 +20,8 @@
}:
let
gn = gn_0-unstable-2026-05-27;
llvmCcAndBintools = symlinkJoin {
name = "signal-webrtc-llvm-cc-and-bintools";
paths = [
@@ -86,42 +88,32 @@ stdenv.mkDerivation (finalAttrs: {
alsa-lib
];
patches = [
# https://github.com/NixOS/nixpkgs/blob/8e689a91c5b4e47b57dee488dd7e319cc704eb9d/pkgs/applications/networking/browsers/chromium/common.nix#L604-L612
# clang++: error: unknown argument: '-fsanitize-ignore-for-ubsan-feature=array-bounds'
(fetchpatch {
name = "chromium-146-revert-Update-fsanitizer=array-bounds-config.patch";
# https://chromium-review.googlesource.com/c/chromium/src/+/7539408
url = "https://chromium.googlesource.com/chromium/src/+/acb47d9a6b56c4889a2ed4216e9968cfc740086c^!?format=TEXT";
decode = "base64 -d";
revert = true;
hash = "sha256-WZsN2qm6lX121bDf7SoN75flXtCTmPPpwtHK0ayjkPc=";
})
env = {
BUILD_CC = "$CC_FOR_BUILD";
BUILD_CXX = "$CXX_FOR_BUILD";
BUILD_AR = "$AR_FOR_BUILD";
BUILD_NM = "$NM_FOR_BUILD";
NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isLinux "-Wno-changes-meaning";
};
# https://github.com/NixOS/nixpkgs/blob/8e689a91c5b4e47b57dee488dd7e319cc704eb9d/pkgs/applications/networking/browsers/chromium/common.nix#L620-L623
patches = [
# clang++: error: unknown argument: '-fno-lifetime-dse'
./chromium-147-llvm-22.patch
# https://github.com/NixOS/nixpkgs/blob/8e689a91c5b4e47b57dee488dd7e319cc704eb9d/pkgs/applications/networking/browsers/chromium/common.nix#L624-L644
# Keep in sync with Chromium's LLVM 22 compatibility patches.
# clang++: error: unknown argument: '-fdiagnostics-show-inlining-chain'
# clang++: error: unknown argument: '-fsanitize-ignore-for-ubsan-feature=array-bounds'
# clang++: error: unknown argument: '-fsanitize-ignore-for-ubsan-feature=return'
./chromium-149-llvm-22.patch
# ninja: error: 'ar', needed by 'obj/third_party/protobuf/libprotoc_lib.a',
# missing and no known rule to make it
(fetchpatch {
name = "chromium-148-revert-build-Add--fsanitizer=return-config.patch";
# https://chromium-review.googlesource.com/c/chromium/src/+/7629257
url = "https://chromium.googlesource.com/chromium/src/+/99ba1f5302f9433efdb4df302cb7b7de56c72e4c^!?format=TEXT";
name = "chromium-150-backport-build--Omit-ar-from-inputs-when-resolved-via--PATH.patch";
# https://chromium-review.googlesource.com/c/chromium/src/+/7904982
url = "https://chromium.googlesource.com/chromium/src/+/60f987d8d5f7272793a40290d060b8f50933f825^!?format=TEXT";
decode = "base64 -d";
revert = true;
hash = "sha256-/qzzxwTdPMwIdsqD/G02S7kKHCj3QxECL+g1WYEaWmU=";
})
# ERROR Unresolved dependencies.
# //apps:apps(//build/toolchain/linux/unbundle:default)
# needs //build/config/compiler:sanitize_return(//build/toolchain/linux/unbundle:default)
(fetchpatch {
name = "chromium-148-revert-build-Enable--fsanitizer=return-config.patch";
# https://chromium-review.googlesource.com/c/chromium/src/+/7629258
url = "https://chromium.googlesource.com/chromium/src/+/9357bfbea03753fe52264c9ec36abe74f48cfef5^!?format=TEXT";
decode = "base64 -d";
revert = true;
hash = "sha256-14fTHNh3vGsf4KgeH8uLX+aK3lrjK0VKd1dfK1g7r0I=";
hash = "sha256-MryWxSwBxSIONhl3X1cDxTWwNWy8a4yt/sqkrueSUNs=";
})
];