From 39ad85f346baf80b4bde174e39d8f08d5baa62de Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Fri, 9 May 2025 10:23:18 -0400 Subject: [PATCH 1/6] backports/electron: upgrade to 35.2.2 --- backports/electron/APKBUILD | 48 ++--- .../electron_system-zlib-headers.patch | 18 +- .../electron/electron_unbundle-node.patch | 179 ++++++++++++------ backports/electron/fix-opus.patch | 7 +- backports/electron/gperf-3.2-fix.patch | 29 +++ backports/electron/pipewire-1.4.patch | 23 +++ 6 files changed, 207 insertions(+), 97 deletions(-) create mode 100644 backports/electron/gperf-3.2-fix.patch create mode 100644 backports/electron/pipewire-1.4.patch diff --git a/backports/electron/APKBUILD b/backports/electron/APKBUILD index e246abf..5c698af 100644 --- a/backports/electron/APKBUILD +++ b/backports/electron/APKBUILD @@ -1,11 +1,11 @@ # Contributor: lauren n. liberda # Maintainer: Antoine Martin (ayakael) pkgname=electron -pkgver=34.4.1 +pkgver=35.2.2 _gittag=v"${pkgver/_beta/-beta.}" pkgrel=0 -_chromium=132.0.6834.210 -_copium_tag=131.2 +_chromium=134.0.6998.205 +_copium_tag=134.0 _depot_tools=495b23b39aaba2ca3b55dd27cadc523f1cb17ee6 pkgdesc="Electron cross-platform desktop toolkit" url="https://github.com/electron/electron" @@ -17,7 +17,6 @@ makedepends=" ada-dev alsa-lib-dev aom-dev - base64-dev bash brotli-dev bsd-compat-headers @@ -59,7 +58,6 @@ makedepends=" libbsd-dev libcap-dev libdrm-dev - libevent-dev libexif-dev libgcrypt-dev libjpeg-turbo-dev @@ -77,6 +75,7 @@ makedepends=" libxslt-dev linux-headers lld + llhttp-dev llvm$_llvmver mesa-dev minizip-dev @@ -102,6 +101,7 @@ makedepends=" rust rust-bindgen samurai + simdutf-dev snappy-dev speex-dev spirv-tools-dev @@ -129,7 +129,6 @@ source=" musl-auxv.patch musl-sandbox.patch musl-tid-caching.patch - musl-v8-monotonic-pthread-cont_timedwait.patch no-execinfo.patch no-mallinfo.patch no-res-ninit-nclose.patch @@ -137,7 +136,6 @@ source=" partalloc-no-tagging-arm64.patch pvalloc.patch temp-failure-retry.patch - yes-musl.patch electron_icon.patch electron_python-jinja-3.10.patch @@ -150,8 +148,11 @@ source=" electron-launcher.sh " _copium_patches=" - cr129-ffmpeg-no-noh264parse.patch cr131-v8-non4k-pages.patch + cr133-ffmpeg-no-noh264parse.patch + cr133-is-musl-libcxx.patch + cr133-mv2-still-not-dead.patch + cr134-unbundle-simdutf.patch " # Avoid conflicting providers sonameprefix="$pkgname:" @@ -312,6 +313,7 @@ prepare() { # libaom - https://aomedia.googlesource.com/aom/+/706ee36dcc82%5E%21/ # but watch this space: https://aomedia-review.googlesource.com/c/aom/+/188606 # jsoncpp, re2, snappy, swiftshader-*, woff2 - requires use_custom_libcxx=false + # icu 76 does not build - https://bugs.gentoo.org/943216 local chromium_use_system=" brotli crc32c @@ -322,9 +324,7 @@ prepare() { fontconfig freetype harfbuzz-ng - icu libdrm - libevent libjpeg libsecret libusb @@ -333,6 +333,7 @@ prepare() { libxslt openh264 opus + simdutf zlib zstd " @@ -352,10 +353,9 @@ prepare() { -delete done - # llhttp - 9.x needed, 8.x in repo (2023-12-17) # ada - needs use_custom_libcxx=false local node_use_system=" - base64 + llhttp brotli cares corepack @@ -432,10 +432,14 @@ _configure() { local symbol_level=0 local vaapi=true + # added_rust_stdlib_libs and removed_rust_stdlib_libs workaround change in Rust 1.86, + # feel free to remove after upgrading rust + # shellcheck disable=2089 local gn_config=" import(\"//electron/build/args/release.gn\") + added_rust_stdlib_libs=[\"adler\"] blink_enable_generated_code_formatting=false cc_wrapper=\"$cc_wrapper\" chrome_pgo_phase=0 @@ -458,9 +462,11 @@ _configure() { is_clang=true is_component_ffmpeg=true is_debug=false + is_musl=true is_official_build=true link_pulseaudio=true proprietary_codecs=true + removed_rust_stdlib_libs=[\"adler2\"] rtc_link_pipewire=true rtc_use_pipewire=true rustc_version=\"yes\" @@ -471,6 +477,7 @@ _configure() { treat_warnings_as_errors=false use_custom_libcxx=true use_lld=true + use_qt5=false use_pulseaudio=true use_safe_libstdcxx=false use_system_libffi=true @@ -482,12 +489,11 @@ _configure() { skia_use_dawn=false use_dawn=false use_system_ada=false - use_system_base64=true use_system_cares=true use_system_histogram=true use_system_lcms2=true use_system_libffi=true - use_system_llhttp=false + use_system_llhttp=true use_system_nghttp2=true " @@ -498,13 +504,13 @@ _configure() { build() { export PATH="$PATH:/usr/lib/qt5/bin" + export ELECTRON_OUT_DIR="$builddir"/out/Release/ ninja -C out/Release \ copy_node_headers \ electron_dist_zip \ node_gypi_headers \ node_version_header - } package() { @@ -544,21 +550,20 @@ lang() { } sha512sums=" -ac1bdc1b248d36dc68f12b6c7b7feffc9796fa38b4008f591b488657f992a46ccfc78c431505ea156d42037454b0b1b7b5295cda0f4ee256a51ec3db1fa30814 electron-v34.4.1-132.0.6834.210.tar.zst -a5217c70ad3c40bbbe75b8c9c62158c69d64bc1e17338b6395718e03baba962fb9bf3bf610f9e569c3c38b5bb1dd7972b1da413776c6ec2afdd42cbbf051cfb1 copium-131.2.tar.gz +23866839e1eda87f0f6ead930cc984018b849db0f409a82b9168dc8baf77670689bf49ee90e6b52cd883fc3f3d26339b80258e90bf9aa13893f47eadf2d5e0d2 electron-v35.2.2-134.0.6998.205.tar.zst +c1857b5d6975650f915f3db552666f521822b857e39958ccfb54129f3878f272deaafc3dd446bc8441a5e84f075791feeeb62841b74bb555d8c546bfe231d164 copium-134.0.tar.gz 29bb685e03356a77df5fd347cdf55194cc8b3265c421cc76e54d64edefc329dbcb052deb26b22e8f587ce68456876c071de1b7d258dd0fcc6ee66c875ec4a020 chromium-revert-drop-of-system-java.patch d9cc4a37a0311d23ae315a8d8124f8dbf60db8cc4a3943818638174b20387f1d770d00871f6608957b246ad956abca43c22ea0b072724287f2947e1909e47323 compiler.patch 4057cc78f10bfd64092bc35a373869abb1d68b880cdbca70422f39ffd78a929c19c7728d4d4c40709aaba25581148a93ae5343e724849fd35323062ed68753fa disable-dns_config_service.patch 2470904846e3adde2c9506f9e78220daca0932320b628dd3d427bf2b7c17a8f7880cb97e787b046c28de7aca642e1a8d30824d6049905976da77e7473baa64da disable-failing-tests.patch 5fc5c012c1db6cf1ba82f38c6f3f4f5ca3a209e47ac708a74de379b018e0649b7694877c9571ef79002dde875ffc07b458a3355425f1c01867f362c66c2bc1bf fc-cache-version.patch -b24563e9a738c00fce7ff2fbdee3d7c024d9125d7c74d9ab90af6bdb16f7ec8419f2c8aa78c0640f6d5d81c17dc2c673a194401d354f466749672729b48ed068 fix-opus.patch +f7fe8a8e5eee17310fb4c3e5de621b4b89ea0567f75033c65be970950cca62b50c5fbd004735e4ad39bdb2e1638b3b73ea614203d323f8181ae18c71edf302a0 fix-opus.patch c63dee5044353eb306a39ca1526158c0f003ab310ecb03d1c368dc2a979454590c84b8d3c15484517d5e66bb8add9b231da9abbadf2e50850abd72ac1345c4ab fstatat-32bit.patch 33ee60863cc438ef57ffef92ba4cf67a856a5ffc16138bce241bcf87e47b15154aa86918e793c26f7ec4dc62a445257ad5673ed7001daf22c4043cf6cc57da7f gdbinit.patch 36a764fa73443b47d38050b52dbe6ad2fa8d67201ff4ccdbad13b52308ef165ca046aac6f9609fe35890a6485f0f3e672e78cc41e3e44f3cdc7f145e540524e8 generic-sensor-include.patch 99bcc7dd485b404a90c606a96addab1d900852128d44fb8cea8acc7303189ef87c89a7b0e749fd0e10c5ef5f6bf1fadeb5c16a34503cab6a59938ce2653d887e musl-auxv.patch 51f1959bd622af26a1c3a1f4b0ad9a5bfa461057aa4cf9960c568dddf8ac47d55989c277f5d5ab5db040a04c54925a531af7a1cc767559218b408eaa6bdd7577 musl-sandbox.patch e7163ac5810ac85366cef2447412287c856e3d67c6b77f219a6e5a418b1965b98e449c409424ad0704a5bded9355dd0aec3dc4585918ce5a2ab36c079707afe2 musl-tid-caching.patch -92eb002718026611f5542362ad69b67f0a398ff71b3fca5c05d55cb5c6f9f29334e5e127bb4860cfaa3fba0f0d4c901e2b98808217e7dc02e254a64a5c9521aa musl-v8-monotonic-pthread-cont_timedwait.patch a250cff50d282b02ce0f28880d0a2b4fb8e7df51bc072bfeeddc561c29a7c76453dbcbc7b17b82966a7b30a31409d2555720d1dcf963e1b3fb8a2a06a6abcf46 no-execinfo.patch 0b41aeb6b212f9c3f61aa0a8d3085c9e865a2e68f3270ceec2376aab67f337ac46eaea7da36d3fd7219e2a1cb731b7aa2d3fb619a374d2b7653976b9f4f384bb no-mallinfo.patch e4c4e5bc6f828f9c883dd418c0ba01887949c29c311f76206a1ec29f620b0c0ba0452949dc2778a9c46ea066405857536964a36436a68eecf7da7952736333cf no-res-ninit-nclose.patch @@ -566,12 +571,11 @@ e4c4e5bc6f828f9c883dd418c0ba01887949c29c311f76206a1ec29f620b0c0ba0452949dc2778a9 f2b08538ff57c50b3772a07ca91845f9d45f4a5112f608b6192d4fb5d7be48f478c0c36194d95ab7bbf933e0278e5c6d578619d8643895cdc40386eebc5b975f partalloc-no-tagging-arm64.patch 03f829a2da633533ef3fd0f287f5ec602d936a97a98b53cd2415553c2537ae9d571f35397ca7c9fb3f4b0806c300e3b189569f8d979ca132e1a2a4dae7206396 pvalloc.patch e48693e6b7aeebf69a5acbf80d9a35defe4c23835121dfeb58b051ac7c527e758a41004f4d193274fe1b01c0bfb1dbc77b09cb6a404a3fdee507a2918afb0edb temp-failure-retry.patch -914ccf649d7771f19f209ab97f99c481aebc6f66174d68e8b539f6ad4a70bc8cb0fae2df6dadbf0415958ffb3574c420fe029079dcce45f5e5add4db2e903566 yes-musl.patch 465107da7818b237e3c144a318ab80c3c9343b51ed38b8971ef204692d13346929becbe94cefad4c153788d3a200642143584d5ca070f6304e768ba2139c19ec electron_icon.patch e05180199ee1d559e4e577cedd3e589844ecf40d98a86321bf1bea5607b02eeb5feb486deddae40e1005b644550331f6b8500177aa7e79bcb3750d3c1ceb76c3 electron_python-jinja-3.10.patch 2aa340854316f1284217c0ca17cbf44953684ad6c7da90815117df30928612eb9fb9ffb734b948dfc309cd25d1a67cd57f77aac2d052a3dd9aca07a3a58cbb30 electron_webpack-hash.patch -57aa81d46b9cc931092d9d9b3cb4a9859f86c183a236bc5cca6abbaeca86b82bf1b537dd9cb3412114fa4e86087c0022ee3f7e88de974d29b309e9d1714df7a5 electron_unbundle-node.patch -1b35edcf0b41e39e20c4d64dbb978bcaab8036f2fe839930709b269c50cb1321458a15b4d0013246f9e03f58f250a1e3a57ea910db1aa0adbd602a6a11ad33b9 electron_system-zlib-headers.patch +1ab45199c5eb896f57407876e9ca435af3ed63a65136f97526f6a07c3a2db223e646ea365630b0eda441ea88dbb0c07ab00b77de25edce07453f038c5339203d electron_unbundle-node.patch +4d9287d4cdfe27fbfb7be3d4b26c0c40edbd6a0c3ff926d60f2093ca09c15bcb58e20c2ccc8c0606aafd66c6d25a54225bc329cb056d8c5b297db4c6d0e768e6 electron_system-zlib-headers.patch e8ea87c547546011c4c8fc2de30e4f443b85cd4cfcff92808e2521d2f9ada03feefb8e1b0cf0f6b460919c146e56ef8d5ad4bb5e2461cc5247c30d92eb4d068e default.conf 191559fc7aa1ea0353c6fb0cc321ee1d5803a0e44848c8be941cfab96277b0de6a59962d373e2a2a1686c8f9be2bcf2d2f33706759a339a959e297d3f7fda463 electron.desktop 5f7ba5ad005f196facec1c0f26108356b64cafb1e5cfa462ff714a33b8a4c757ac00bfcb080da09eb5b65032f8eb245d9676a61ec554515d125ed63912708648 electron-launcher.sh diff --git a/backports/electron/electron_system-zlib-headers.patch b/backports/electron/electron_system-zlib-headers.patch index 0dc5c8e..644f5e7 100644 --- a/backports/electron/electron_system-zlib-headers.patch +++ b/backports/electron/electron_system-zlib-headers.patch @@ -1,10 +1,12 @@ ---- ./electron/BUILD.gn.orig -+++ ./electron/BUILD.gn -@@ -1565,7 +1565,6 @@ - public_deps = header_groups + [ - ":node_gypi_headers", - ":node_version_header", -- ":zlib_headers", - ] +diff --git a/electron/BUILD.gn.orig b/electron/BUILD.gn +index 235c7abd3e8..088c24ac45e 100644 +--- a/electron/BUILD.gn.orig ++++ b/electron/BUILD.gn +@@ -1569,7 +1569,6 @@ group("copy_node_headers") { + ":generate_node_headers", + ":node_gypi_headers", + ":node_version_header", +- ":zlib_headers", + ] } diff --git a/backports/electron/electron_unbundle-node.patch b/backports/electron/electron_unbundle-node.patch index d69f5ae..8392a85 100644 --- a/backports/electron/electron_unbundle-node.patch +++ b/backports/electron/electron_unbundle-node.patch @@ -1,69 +1,122 @@ ---- ./third_party/electron_node/BUILD.gn.orig -+++ ./third_party/electron_node/BUILD.gn -@@ -40,6 +40,8 @@ - node_release_urlbase = "" - - # Allows downstream packagers (eg. Linux distributions) to build Electron against system shared libraries. -+ use_system_ada = false -+ use_system_base64 = false - use_system_cares = false - use_system_nghttp2 = false - use_system_llhttp = false -@@ -48,6 +50,16 @@ - - if (is_linux) { - import("//build/config/linux/pkg_config.gni") -+ if (use_system_ada) { -+ config("ada") { -+ libs = [ "ada" ] -+ } -+ } -+ if (use_system_base64) { -+ pkg_config("base64") { -+ packages = [ "base64" ] -+ } -+ } - if (use_system_cares) { - pkg_config("cares") { - packages = [ "libcares" ] -@@ -258,8 +270,6 @@ - deps = [ - ":node_js2c_exec", - "deps/googletest:gtest", -- "deps/ada", -- "deps/base64", - "deps/simdutf", - "deps/uvwasi", - "//third_party/zlib", -@@ -267,6 +277,16 @@ - "//third_party/brotli:enc", - "//v8:v8_libplatform", - ] -+ if (use_system_ada) { -+ configs += [ ":ada" ] -+ } else { -+ deps += [ "deps/ada" ] -+ } -+ if (use_system_base64) { -+ configs += [ ":base64" ] -+ } else { -+ deps += [ "deps/base64" ] -+ } - if (use_system_cares) { - configs += [ ":cares" ] - } else { -diff --git a/./electron/script/generate-config-gypi.py.orig b/./electron/script/generate-config-gypi.py -index b41cd7eb450..bc4098debb5 100755 ---- a/./electron/script/generate-config-gypi.py.orig -+++ b/./electron/script/generate-config-gypi.py -@@ -62,6 +62,11 @@ def main(target_file, target_cpu): - # Used by certain versions of node-gyp. - v['build_v8_with_gn'] = 'false' - +diff --git a/electron/script/generate-config-gypi.py.orig b/electron/script/generate-config-gypi.py +index 58c973b..c215d90 100755 +--- a/electron/script/generate-config-gypi.py.orig ++++ b/electron/script/generate-config-gypi.py +@@ -64,6 +64,11 @@ def main(target_file, target_cpu): + # in common.gypi + if 'clang' in v: + del v['clang'] ++ + with open(os.path.join(NODE_DIR, 'use_system.txt')) as f: + for dep in f.read().strip().split(' '): + if v.get(f'node_shared_{dep}') is not None: + v[f'node_shared_{dep}'] = 'true' -+ + with open(target_file, 'w+', encoding='utf-8') as file_out: file_out.write(pprint.pformat(config, indent=2)) + +diff --git a/third_party/electron_node/node.gni.orig b/third_party/electron_node/node.gni +index 73bf383..1c80d5a 100644 +--- a/third_party/electron_node/node.gni.orig ++++ b/third_party/electron_node/node.gni +@@ -73,6 +73,7 @@ declare_args() { + node_use_amaro = true + + # Allows downstream packagers (eg. Linux distributions) to build against system shared libraries. ++ use_system_ada = false + use_system_cares = false + use_system_nghttp2 = false + use_system_llhttp = false +diff --git a/third_party/electron_node/unofficial.gni.orig b/third_party/electron_node/unofficial.gni +index d61a9bd..8bf990e 100644 +--- a/third_party/electron_node/unofficial.gni.orig ++++ b/third_party/electron_node/unofficial.gni +@@ -143,7 +143,6 @@ template("node_gn_build") { + "deps/googletest:googletest_config", + ] + public_deps = [ +- "deps/ada", + "deps/uv", + "//electron:electron_js2c", + "deps/simdjson", +@@ -151,10 +150,7 @@ template("node_gn_build") { + ] + deps = [ + ":run_node_js2c", +- "deps/cares", +- "deps/histogram", + "deps/nbytes", +- "deps/nghttp2", + "deps/postject", + "deps/sqlite", + "deps/uvwasi", +@@ -182,12 +178,30 @@ template("node_gn_build") { + if (is_posix) { + configs -= [ "//build/config/gcc:symbol_visibility_hidden" ] + configs += [ "//build/config/gcc:symbol_visibility_default" ] ++ libs = [] ++ include_dirs = [] + } + if (use_system_llhttp) { + libs += [ "llhttp" ] + } else { + deps += [ "deps/llhttp" ] + } ++ if (use_system_cares) { ++ libs += [ "cares" ] ++ } else { ++ deps += [ "deps/cares" ] ++ } ++ if (use_system_nghttp2) { ++ libs += [ "nghttp2" ] ++ } else { ++ deps += [ "deps/nghttp2" ] ++ } ++ if (use_system_ada) { ++ libs += [ "ada" ] ++ include_dirs += [ "/usr/include/ada" ] ++ } else { ++ public_deps += [ "deps/ada" ] ++ } + if (use_system_histogram) { + libs += [ "hdr_histogram" ] + include_dirs += [ "/usr/include/hdr" ] +@@ -208,7 +222,7 @@ template("node_gn_build") { + "src/inspector:node_protocol_generated_sources", + "src/inspector:v8_inspector_compress_protocol_json", + ] +- include_dirs = [ ++ include_dirs += [ + "$target_gen_dir/src", + "$target_gen_dir/src/inspector", + "$node_inspector_protocol_path", +@@ -222,17 +236,18 @@ template("node_gn_build") { + sources += node_inspector.node_inspector_sources + + node_inspector.node_inspector_generated_sources + } +- if (is_linux) { +- import("//build/config/linux/pkg_config.gni") +- if (use_system_cares) { +- pkg_config("cares") { +- packages = [ "libcares" ] +- } +- } +- if (use_system_nghttp2) { +- pkg_config("nghttp2") { +- packages = [ "libnghttp2" ] +- } ++ } ++ ++ if (is_linux) { ++ import("//build/config/linux/pkg_config.gni") ++ if (use_system_cares) { ++ pkg_config("cares") { ++ packages = [ "libcares" ] ++ } ++ } ++ if (use_system_nghttp2) { ++ pkg_config("nghttp2") { ++ packages = [ "libnghttp2" ] + } + } + } diff --git a/backports/electron/fix-opus.patch b/backports/electron/fix-opus.patch index 8841a32..836b719 100644 --- a/backports/electron/fix-opus.patch +++ b/backports/electron/fix-opus.patch @@ -1,6 +1,6 @@ ---- a/media/filters/ffmpeg_glue.cc -+++ b/media/filters/ffmpeg_glue.cc -@@ -142,7 +142,7 @@ const char* FFmpegGlue::GetAllowedAudioDecoders() { +--- a/media/ffmpeg/ffmpeg_common.cc ++++ b/media/ffmpeg/ffmpeg_common.cc +@@ -1025,7 +1025,7 @@ static const base::NoDestructor kAllowedAudioCodecs([]() { // This should match the configured lists in //third_party/ffmpeg. std::string allowed_decoders( @@ -9,4 +9,3 @@ "mp3,pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw"); #if BUILDFLAG(USE_PROPRIETARY_CODECS) allowed_decoders += ",aac"; - diff --git a/backports/electron/gperf-3.2-fix.patch b/backports/electron/gperf-3.2-fix.patch new file mode 100644 index 0000000..fa462e3 --- /dev/null +++ b/backports/electron/gperf-3.2-fix.patch @@ -0,0 +1,29 @@ +diff --git a/third_party/blink/renderer/build/scripts/gperf.py.orig b/third_party/blink/renderer/build/scripts/gperf.py +index 42630d3..d909aee 100644 +--- a/third_party/blink/renderer/build/scripts/gperf.py.orig ++++ b/third_party/blink/renderer/build/scripts/gperf.py +@@ -28,24 +28,6 @@ def generate_gperf(gperf_path, gperf_input, gperf_args): + stdout=subprocess.PIPE, + universal_newlines=True) + gperf_output = gperf.communicate(gperf_input)[0] +- # Massage gperf output to be more palatable for modern compilers. +- # TODO(thakis): Upstream these to gperf so we don't need massaging. +- # `register` is deprecated in C++11 and removed in C++17, so remove +- # it from gperf's output. +- # https://savannah.gnu.org/bugs/index.php?53028 +- gperf_output = re.sub(r'\bregister ', '', gperf_output) +- # -Wimplicit-fallthrough needs an explicit fallthrough statement, +- # so replace gperf's /*FALLTHROUGH*/ comment with the statement. +- # https://savannah.gnu.org/bugs/index.php?53029 +- gperf_output = gperf_output.replace('/*FALLTHROUGH*/', +- ' [[fallthrough]];') +- # -Wpointer-to-int-cast warns about casting pointers to smaller ints +- # Replace {(int)(long)&(foo), bar} with +- # {static_cast(reinterpret_cast(&(foo)), bar} +- gperf_output = re.sub( +- r'\(int\)\(long\)(.*?),', +- r'static_cast(reinterpret_cast(\1)),', +- gperf_output) + script = 'third_party/blink/renderer/build/scripts/gperf.py' + return '// Generated by %s\n' % script + gperf_output + except OSError: diff --git a/backports/electron/pipewire-1.4.patch b/backports/electron/pipewire-1.4.patch new file mode 100644 index 0000000..ab9c37f --- /dev/null +++ b/backports/electron/pipewire-1.4.patch @@ -0,0 +1,23 @@ +Patch-Source: https://webrtc-review.googlesource.com/c/src/+/380500 +--- +--- a/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc ++++ b/third_party/webrtc/modules/video_capture/linux/pipewire_session.cc +@@ -87,7 +87,7 @@ + .param = OnNodeParam, + }; + +- pw_node_add_listener(proxy_, &node_listener_, &node_events, this); ++ pw_node_add_listener(reinterpret_cast(proxy_), &node_listener_, &node_events, this); + } + + // static +@@ -119,7 +119,7 @@ + uint32_t id = info->params[i].id; + if (id == SPA_PARAM_EnumFormat && + info->params[i].flags & SPA_PARAM_INFO_READ) { +- pw_node_enum_params(that->proxy_, 0, id, 0, UINT32_MAX, nullptr); ++ pw_node_enum_params(reinterpret_cast(that->proxy_), 0, id, 0, UINT32_MAX, nullptr); + break; + } + } + -- 2.49.1 From 052f59e6a76dd6a595618041ed5d96fe6e99a15a Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Fri, 9 May 2025 10:23:57 -0400 Subject: [PATCH 2/6] backports/element-desktop: upgrade to 1.11.100 --- backports/element-desktop/APKBUILD | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/backports/element-desktop/APKBUILD b/backports/element-desktop/APKBUILD index 8fa5b17..de6a4d7 100644 --- a/backports/element-desktop/APKBUILD +++ b/backports/element-desktop/APKBUILD @@ -1,13 +1,13 @@ # Contributor: lauren n. liberda maintainer="lauren n. liberda " pkgname=element-desktop -pkgver=1.11.93 +pkgver=1.11.100 pkgrel=1 pkgdesc="Secure and independent communication, connected via Matrix" url="https://element.io/" arch="aarch64 x86_64" # same as electron license="GPL-3.0-only" -_electronver=34 +_electronver=35 depends=" electron~$_electronver font-inconsolata @@ -112,9 +112,6 @@ build() { # hak stands for hack yarn run hak --target "$(uname -m)-alpine-linux-musl" - # stripping in build because it gets into asar - strip node_modules/keytar/build/Release/keytar.node - yarn build:ts yarn build:res @@ -125,6 +122,13 @@ build() { yarn install --frozen-lockfile --ignore-scripts --production + npm rebuild keytar-forked --nodedir=/usr/include/electron/node_headers --build-from-source + find node_modules/keytar-forked/build/ -type f \ + \! -path node_modules/keytar-forked/build/Release/keytar.node \ + -delete + # stripping in build because it gets into asar + strip node_modules/keytar-forked/build/Release/keytar.node + tasje -c electron-builder.mjs pack } @@ -155,8 +159,8 @@ package() { } sha512sums=" -cf9c32bce22ecde504beed6532a59faa6133a362c8379fd615ecb1e3b6ad7fdf51b6a77e8a044a2a9b9f25946ec70245006137b2954c2a941ea172832637f337 element-desktop-1.11.93.tar.gz -1b058ee70d7a7858d40b0b24311e90fb0f51d4ff82f6efb2566ba57c33864c852898ace2223ccaf6eb60de12c469fe5facfe0588617134f430b9361e815689ef element-web-1.11.93.tar.gz +a8ac5180df3b204fb1947ecaa4786c9c5fdd53ffe705f4dfe97a0b051fa371fd9102c41a898e8783cf25f732674da2d987ef315f2facc7b18b20ef214ea0f81d element-desktop-1.11.100.tar.gz +e3e50fd867f9b7388eb22778ccb97d6504a480ab4e2aa9eba10fd0f4d0324a1525c2afe6c80181567d8e554f03086a9e0994a6221cfcb0ca29700754c8f31cac element-web-1.11.100.tar.gz 4747893ed3e43d3074e9afe1cdd668a6be0de073d439205fe8c38c5e0f4091cc76e3cd15d98818bea5139add29501d8d07e83c58e9da230a4ce5bb538d388f80 add-alpine-targets.patch 755b17f7b828eb6920c06a6950ad4e14c32c99d22e9c05fcef7a081b5d2034adb03db3958aa5209c99fb7201f4d888c2383fc9864c5e743dd33f8b5c4925acd7 use-system-headers.patch 92e69817fdc71f60c5c7dcbd3c7b13428cc18141cf5f27720326390f6817bec85fb1c60f8016b3a8fa275f601b16f646cda12b5e379a349368eef2f801b4de7a tasje-one-hak.patch -- 2.49.1 From 3c74fc89f7a15d8078e7c5ded16da26590a08f69 Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Fri, 9 May 2025 10:25:09 -0400 Subject: [PATCH 3/6] backports/caprine: rebuild against electron 35 --- backports/APKBUILD | 58 -------------------------------------- backports/caprine/APKBUILD | 2 +- 2 files changed, 1 insertion(+), 59 deletions(-) delete mode 100644 backports/APKBUILD diff --git a/backports/APKBUILD b/backports/APKBUILD deleted file mode 100644 index af4516d..0000000 --- a/backports/APKBUILD +++ /dev/null @@ -1,58 +0,0 @@ -# Contributor: lauren n. liberda -# Maintainer: lauren n. liberda -pkgname=py3-limits -pkgver=3.14.1 -pkgrel=0 -pkgdesc="Rate limiting using various strategies and storage backends such as redis & memcached" -url="https://github.com/alisaifee/limits" -arch="noarch" -license="MIT" -depends=" - py3-deprecated - python3 - " -makedepends="py3-setuptools py3-gpep517" -checkdepends=" - py3-flaky - py3-mongo - py3-pytest - py3-pytest-asyncio - py3-pytest-benchmark - py3-pytest-cov - py3-pytest-lazy-fixtures - py3-pymemcache - py3-redis - " -subpackages="$pkgname-pyc" -source=" - https://github.com/alisaifee/limits/archive/refs/tags/$pkgver/limits-$pkgver.tar.gz - - our-std-is-good-enough.patch - tests-drop-etcd3-and-k-argument.patch - " -builddir="$srcdir/limits-$pkgver" - -build() { - gpep517 build-wheel \ - --wheel-dir .dist \ - --output-fd 3 3>&1 >&2 -} - -check() { - python3 -m venv --clear --without-pip --system-site-packages .testenv - gpep517 install-wheel --destdir .testenv --prefix '' .dist/*.whl - .testenv/bin/python3 -m pytest -W ignore::DeprecationWarning \ - -m 'not benchmark and not etcd and not integration and not memcached' \ - -k 'not aio and not Storage and not strategy' -v -} - -package() { - gpep517 install-wheel --destdir "$pkgdir" \ - .dist/*.whl -} - -sha512sums=" -f30c7ec19c2d1edad9ed77dc590ae35717efa3956a4d97e465793e1923a4af08dc9921d90ee95d3c54ce3364b867ca67a9de62c61d627e07a3f50da20bdabd0f limits-3.14.1.tar.gz -271e3b0501f9f144eda8d2e96c93b285714e339b9217385e38cdbce1f4dec88f9c949e9419f8be94885092e7977f7dca29b86b5499e9fead678b42a686c337db our-std-is-good-enough.patch -e84f4db49349a6feba0f701b9d4357c5f66d64c4a23f8ce512528b0f44b5bbef55041c02d92aae3a4cc8d5340846f9e909217beb869a5aeb49df166dd29ae9e3 tests-drop-etcd3-and-k-argument.patch -" diff --git a/backports/caprine/APKBUILD b/backports/caprine/APKBUILD index d2b3e23..41f1806 100644 --- a/backports/caprine/APKBUILD +++ b/backports/caprine/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Antoine Martin (ayakael) pkgname=caprine pkgver=2.60.3 -pkgrel=1 +pkgrel=2 pkgdesc="Elegant Facebook Messenger desktop app" arch="x86_64 aarch64" # blocked by electron url="https://github.com/sindresorhus/caprine" -- 2.49.1 From 9dbde4def3da5ed3c56e1cb85a24ddfad50419cb Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Fri, 9 May 2025 10:25:42 -0400 Subject: [PATCH 4/6] backports/freetube: upgrade to 0.23.5 --- backports/freetube/APKBUILD | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/backports/freetube/APKBUILD b/backports/freetube/APKBUILD index 6911eed..19bacf0 100644 --- a/backports/freetube/APKBUILD +++ b/backports/freetube/APKBUILD @@ -1,8 +1,8 @@ # Maintainer: Antoine Martin (ayakael) # Contributor: Antoine Martin (ayakael) pkgname=freetube -pkgver=0.23.3 -pkgrel=0 +pkgver=0.23.5 +pkgrel=1 pkgdesc="An open source desktop YouTube player built with privacy in mind." arch="x86_64 aarch64" # blocked by electron license="AGPL-3.0-only" @@ -50,7 +50,7 @@ package() { } sha512sums=" -ea54b167f88546e672e25b94fe74773110345042135b44bfb1a3f563e287ad13257c10ee115f5536fa4cad48ea5f797b41939b99454fbcad0038f1bd134fa56d freetube-0.23.3.tar.gz +5811ac53788a12f94cbd4cec6f7075350c223865cb4cf4436f131b9d1197b89aa5da128d6c531d1e56a0302aa3d2523c7ba8d48edbf5f328be6fed3fbba02752 freetube-0.23.5.tar.gz 2ce2effc794bb663789cefe968b5899122127983dbfa1b240aa33a2be383720b18204e6d01b4a550df72956f02b6636b79c93a58f470a970b09b770f5b8f2fc4 freetube.sh d27cb896b65a7e8d52ffe86e5f74eed72b6cf976b28e1a13012d34c7eceba5ff6f20298017738dfa93c0336ffa52b8ee4da7e06b02747062898db7e678819526 tasje-dotdash.patch " -- 2.49.1 From b04fa32926511910022959bed2b40e653ebcef96 Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Fri, 9 May 2025 10:26:13 -0400 Subject: [PATCH 5/6] backports/signal-desktop: rebuild against electron 35 --- backports/signal-desktop/APKBUILD | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backports/signal-desktop/APKBUILD b/backports/signal-desktop/APKBUILD index d298832..d6893f9 100644 --- a/backports/signal-desktop/APKBUILD +++ b/backports/signal-desktop/APKBUILD @@ -3,7 +3,7 @@ # Maintainer: Antoine Martin (ayakael) pkgname=signal-desktop pkgver=7.53.0 -pkgrel=1 +pkgrel=2 pkgdesc="A messaging app for simple private communication with friends" url="https://github.com/signalapp/Signal-Desktop/" # same as electron -- 2.49.1 From 7962d32cbc5dd455b0a5b93c1e9650e38b7fcb50 Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Sat, 10 May 2025 13:10:54 -0400 Subject: [PATCH 6/6] backports/gn: new aport --- backports/gn/APKBUILD | 59 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 backports/gn/APKBUILD diff --git a/backports/gn/APKBUILD b/backports/gn/APKBUILD new file mode 100644 index 0000000..b5ec871 --- /dev/null +++ b/backports/gn/APKBUILD @@ -0,0 +1,59 @@ +# Contributor: TBK +maintainer="lauren n. liberda " +pkgname=gn +pkgver=0_git20250311 +pkgrel=0 +_commit=18602f6cf1168cf78302024043edc02e8bad2ffb +pkgdesc="Meta-build system that generates build files for Ninja" +arch="all" +url="https://gn.googlesource.com/gn" +license="BSD-3-Clause" +depends="samurai" +makedepends="python3 zstd" +# gitiles has no clones +source="https://ab-sn.lnl.gay/gn-$_commit.tar.zst + " +builddir="$srcdir/gn" + +_distbucket="sakamoto/lnl-aports-snapshots/" +snapshot() { + clean + deps + mkdir -p "$srcdir" && cd "$srcdir" + git clone https://gn.googlesource.com/gn + ( + cd gn + git checkout -q $_commit + python3 ./build/gen.py + ) + rm -rf gn/.git + tar cf gn-$_commit.tar gn + zstd --auto-threads=logical --ultra --long -22 -T"${ZSTD_LIMIT:-0}" -vv gn-$_commit.tar \ + -o "$SRCDEST"/gn-$_commit.tar.zst + mcli cp "$SRCDEST"/gn-$_commit.tar.zst "$_distbucket" +} + +build() { + unset CFLAGS # all sources C++ but passes both + # Breaks build since upstream passes -Wno-format, + # annotated: "Use of %llx, which is supported by _UCRT, false positive" + CXXFLAGS="${CXXFLAGS/-Werror=format-security} -flto=auto" \ + python3 ./build/gen.py \ + --no-last-commit-position \ + --no-static-libstdc++ \ + --no-strip \ + --allow-warnings + ninja -C out +} + +check() { + ./out/gn_unittests +} + +package() { + install -Dm755 out/gn "$pkgdir"/usr/bin/gn +} + +sha512sums=" +9638e177bfd6eecc6af1a9323efa93dc65d1d1f3599037851d19ba076f3b0c9e91366c143e6b6e334fc63baa0bdad80415dbad4ec96585850b462e2904c836d6 gn-18602f6cf1168cf78302024043edc02e8bad2ffb.tar.zst +" -- 2.49.1