|
@@ -7,48 +7,52 @@
|
|
# https://releases.electronjs.org/
|
|
# https://releases.electronjs.org/
|
|
# https://github.com/stha09/chromium-patches/releases
|
|
# https://github.com/stha09/chromium-patches/releases
|
|
|
|
|
|
-_use_suffix=1
|
|
|
|
-pkgver=25.6.0
|
|
|
|
-_chromiumver=114.0.5735.134
|
|
|
|
-# shellcheck disable=SC2034
|
|
|
|
-pkgrel=3
|
|
|
|
|
|
+pkgver=25.9.6
|
|
|
|
+_chromiumver=114.0.5735.289
|
|
|
|
+pkgrel=1
|
|
|
|
|
|
_major_ver=${pkgver%%.*}
|
|
_major_ver=${pkgver%%.*}
|
|
-if [[ ${_use_suffix} != 0 ]]; then
|
|
|
|
- pkgname="electron${_major_ver}-xdg"
|
|
|
|
-else
|
|
|
|
- pkgbase="electron${_major_ver}-xdg"
|
|
|
|
- pkgname=electron-xdg
|
|
|
|
-fi
|
|
|
|
-# shellcheck disable=SC2034
|
|
|
|
|
|
+pkgname="electron${_major_ver}"
|
|
pkgdesc='Build cross platform desktop apps with web technologies - without creating a useless ~/.pki directory'
|
|
pkgdesc='Build cross platform desktop apps with web technologies - without creating a useless ~/.pki directory'
|
|
-# shellcheck disable=SC2034
|
|
|
|
arch=('x86_64')
|
|
arch=('x86_64')
|
|
-# shellcheck disable=SC2034
|
|
|
|
url='https://electronjs.org/'
|
|
url='https://electronjs.org/'
|
|
-# shellcheck disable=SC2034
|
|
|
|
-license=('MIT' 'custom')
|
|
|
|
-# shellcheck disable=SC2034
|
|
|
|
-depends=('c-ares' 'gtk3' 'libevent' 'nss' 'libffi')
|
|
|
|
-# shellcheck disable=SC2034
|
|
|
|
-makedepends=('clang' 'git' 'gn' 'gperf' 'harfbuzz-icu' 'http-parser'
|
|
|
|
- 'qt5-base' 'java-runtime-headless' 'libnotify' 'lld' 'llvm'
|
|
|
|
- 'ninja' 'npm' 'pciutils' 'pipewire' 'python' 'python-httplib2'
|
|
|
|
- 'python-requests' 'python-pyparsing' 'python-six' 'wget' 'yarn')
|
|
|
|
-# shellcheck disable=SC2034
|
|
|
|
|
|
+license=(MIT custom)
|
|
|
|
+depends=(c-ares
|
|
|
|
+ gtk3
|
|
|
|
+ libevent
|
|
|
|
+ nss
|
|
|
|
+ libffi)
|
|
|
|
+makedepends=(clang
|
|
|
|
+ git
|
|
|
|
+ gn
|
|
|
|
+ gperf
|
|
|
|
+ harfbuzz-icu
|
|
|
|
+ http-parser
|
|
|
|
+ java-runtime-headless
|
|
|
|
+ libnotify
|
|
|
|
+ lld
|
|
|
|
+ llvm
|
|
|
|
+ ninja
|
|
|
|
+ npm
|
|
|
|
+ pciutils
|
|
|
|
+ pipewire
|
|
|
|
+ python
|
|
|
|
+ python-httplib2
|
|
|
|
+ python-pyparsing
|
|
|
|
+ python-requests
|
|
|
|
+ python-six
|
|
|
|
+ qt5-base
|
|
|
|
+ wget
|
|
|
|
+ yarn)
|
|
optdepends=('kde-cli-tools: file deletion support (kioclient5)'
|
|
optdepends=('kde-cli-tools: file deletion support (kioclient5)'
|
|
'pipewire: WebRTC desktop sharing under Wayland'
|
|
'pipewire: WebRTC desktop sharing under Wayland'
|
|
'qt5-base: enable Qt5 with --enable-features=AllowQt'
|
|
'qt5-base: enable Qt5 with --enable-features=AllowQt'
|
|
'trash-cli: file deletion support (trash-put)'
|
|
'trash-cli: file deletion support (trash-put)'
|
|
'xdg-utils: open URLs with desktop’s default (xdg-email, xdg-open)')
|
|
'xdg-utils: open URLs with desktop’s default (xdg-email, xdg-open)')
|
|
-# shellcheck disable=SC2034
|
|
|
|
conflicts=("electron${_major_ver}")
|
|
conflicts=("electron${_major_ver}")
|
|
-# shellcheck disable=SC2034
|
|
|
|
provides=("electron${_major_ver}")
|
|
provides=("electron${_major_ver}")
|
|
replaces=("electron${_major_ver}")
|
|
replaces=("electron${_major_ver}")
|
|
-# shellcheck disable=SC2034
|
|
|
|
options=('!lto') # Electron adds its own flags for ThinLTO
|
|
options=('!lto') # Electron adds its own flags for ThinLTO
|
|
-# shellcheck disable=SC2034
|
|
|
|
source=("git+https://github.com/electron/electron.git#tag=v$pkgver"
|
|
source=("git+https://github.com/electron/electron.git#tag=v$pkgver"
|
|
'git+https://chromium.googlesource.com/chromium/tools/depot_tools.git#branch=main'
|
|
'git+https://chromium.googlesource.com/chromium/tools/depot_tools.git#branch=main'
|
|
"chromium-mirror::git+https://github.com/chromium/chromium.git#tag=$_chromiumver"
|
|
"chromium-mirror::git+https://github.com/chromium/chromium.git#tag=$_chromiumver"
|
|
@@ -58,12 +62,13 @@ source=("git+https://github.com/electron/electron.git#tag=v$pkgver"
|
|
'jinja-python-3.10.patch'
|
|
'jinja-python-3.10.patch'
|
|
'use-system-libraries-in-node.patch'
|
|
'use-system-libraries-in-node.patch'
|
|
'std-vector-non-const.patch'
|
|
'std-vector-non-const.patch'
|
|
|
|
+ 'libxml2-2.12.patch'
|
|
|
|
+ 'icu-74.patch'
|
|
'add-some-typename-s-that-are-required-in-C-17.patch'
|
|
'add-some-typename-s-that-are-required-in-C-17.patch'
|
|
'REVERT-disable-autoupgrading-debug-info.patch'
|
|
'REVERT-disable-autoupgrading-debug-info.patch'
|
|
'random-fixes-for-gcc13.patch'
|
|
'random-fixes-for-gcc13.patch'
|
|
|
|
|
|
)
|
|
)
|
|
-# shellcheck disable=SC2034
|
|
|
|
sha256sums=('SKIP'
|
|
sha256sums=('SKIP'
|
|
'SKIP'
|
|
'SKIP'
|
|
'SKIP'
|
|
'SKIP'
|
|
@@ -73,6 +78,8 @@ sha256sums=('SKIP'
|
|
'55dbe71dbc1f3ab60bf1fa79f7aea7ef1fe76436b1d7df48728a1f8227d2134e'
|
|
'55dbe71dbc1f3ab60bf1fa79f7aea7ef1fe76436b1d7df48728a1f8227d2134e'
|
|
'ff588a8a4fd2f79eb8a4f11cf1aa151298ffb895be566c57cc355d47f161f53f'
|
|
'ff588a8a4fd2f79eb8a4f11cf1aa151298ffb895be566c57cc355d47f161f53f'
|
|
'893bc04c7fceba2f0a7195ed48551d55f066bbc530ec934c89c55768e6f3949c'
|
|
'893bc04c7fceba2f0a7195ed48551d55f066bbc530ec934c89c55768e6f3949c'
|
|
|
|
+ 'bfae9e773edfd0ddbc617777fdd4c0609cba2b048be7afe40f97768e4eb6117e'
|
|
|
|
+ '547e092f6a20ebd15e486b31111145bc94b8709ec230da89c591963001378845'
|
|
'621ed210d75d0e846192c1571bb30db988721224a41572c27769c0288d361c11'
|
|
'621ed210d75d0e846192c1571bb30db988721224a41572c27769c0288d361c11'
|
|
'1b782b0f6d4f645e4e0daa8a4852d63f0c972aa0473319216ff04613a0592a69'
|
|
'1b782b0f6d4f645e4e0daa8a4852d63f0c972aa0473319216ff04613a0592a69'
|
|
'ba4dd0a25a4fc3267ed19ccb39f28b28176ca3f97f53a4e9f5e9215280040ea0')
|
|
'ba4dd0a25a4fc3267ed19ccb39f28b28176ca3f97f53a4e9f5e9215280040ea0')
|
|
@@ -121,11 +128,7 @@ sha256sums=(${sha256sums[@]}
|
|
prepare() {
|
|
prepare() {
|
|
sed -i "s|@ELECTRON@|${pkgname%-*}|" electron-launcher.sh
|
|
sed -i "s|@ELECTRON@|${pkgname%-*}|" electron-launcher.sh
|
|
sed -i "s|@ELECTRON@|${pkgname%-*}|" electron.desktop
|
|
sed -i "s|@ELECTRON@|${pkgname%-*}|" electron.desktop
|
|
- if [[ ${_use_suffix} != 0 ]]; then
|
|
|
|
- sed -i "s|@ELECTRON_NAME@|Electron ${_major_ver}|" electron.desktop
|
|
|
|
- else
|
|
|
|
- sed -i "s|@ELECTRON_NAME@|Electron|" electron.desktop
|
|
|
|
- fi
|
|
|
|
|
|
+ sed -i "s|@ELECTRON_NAME@|Electron ${_major_ver}|" electron.desktop
|
|
|
|
|
|
sed --in-place "/'chromium_version':/{n;s/'[0-9.]\+',/'${_chromiumver}',/}" "${srcdir}/electron/DEPS"
|
|
sed --in-place "/'chromium_version':/{n;s/'[0-9.]\+',/'${_chromiumver}',/}" "${srcdir}/electron/DEPS"
|
|
|
|
|
|
@@ -155,10 +158,9 @@ EOF
|
|
--with_branch_heads \
|
|
--with_branch_heads \
|
|
--with_tags
|
|
--with_tags
|
|
|
|
|
|
- (
|
|
|
|
- cd src/electron || exit
|
|
|
|
- patch -Np1 -i ../../std-vector-non-const.patch
|
|
|
|
- )
|
|
|
|
|
|
+ pushd src/electron
|
|
|
|
+ patch -Np1 -i ../../std-vector-non-const.patch
|
|
|
|
+ popd
|
|
|
|
|
|
echo "Running hooks..."
|
|
echo "Running hooks..."
|
|
# python "${srcdir}/depot_tools/gclient.py" runhooks
|
|
# python "${srcdir}/depot_tools/gclient.py" runhooks
|
|
@@ -181,9 +183,9 @@ EOF
|
|
ln -sf /usr/bin/node src/third_party/node/linux/node-linux-x64/bin
|
|
ln -sf /usr/bin/node src/third_party/node/linux/node-linux-x64/bin
|
|
src/electron/script/apply_all_patches.py \
|
|
src/electron/script/apply_all_patches.py \
|
|
src/electron/patches/config.json
|
|
src/electron/patches/config.json
|
|
- cd src/electron || exit
|
|
|
|
|
|
+ pushd src/electron
|
|
yarn install --frozen-lockfile
|
|
yarn install --frozen-lockfile
|
|
- cd ..
|
|
|
|
|
|
+ pushd ..
|
|
|
|
|
|
echo "Applying local patches..."
|
|
echo "Applying local patches..."
|
|
|
|
|
|
@@ -204,6 +206,13 @@ EOF
|
|
patch -Np1 -i "${srcdir}/use-system-libraries-in-node.patch"
|
|
patch -Np1 -i "${srcdir}/use-system-libraries-in-node.patch"
|
|
patch -Np1 -i "${srcdir}/default_app-icon.patch" # Icon from .desktop file
|
|
patch -Np1 -i "${srcdir}/default_app-icon.patch" # Icon from .desktop file
|
|
|
|
|
|
|
|
+ # Fix build with libxml2 2.12
|
|
|
|
+ patch -Np1 -i ../libxml2-2.12.patch
|
|
|
|
+
|
|
|
|
+ # Fix build with ICU 74
|
|
|
|
+ patch -Np1 -i ../icu-74.patch
|
|
|
|
+
|
|
|
|
+
|
|
# Allow building against system libraries in official builds
|
|
# Allow building against system libraries in official builds
|
|
echo "Patching Chromium for using system libraries..."
|
|
echo "Patching Chromium for using system libraries..."
|
|
sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
|
|
sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
|
|
@@ -262,7 +271,7 @@ build() {
|
|
CFLAGS+=' -Wno-unknown-warning-option'
|
|
CFLAGS+=' -Wno-unknown-warning-option'
|
|
CXXFLAGS+=' -Wno-unknown-warning-option'
|
|
CXXFLAGS+=' -Wno-unknown-warning-option'
|
|
|
|
|
|
- cd src || exit
|
|
|
|
|
|
+ pushd src
|
|
export CHROMIUM_BUILDTOOLS_PATH="${PWD}/buildtools"
|
|
export CHROMIUM_BUILDTOOLS_PATH="${PWD}/buildtools"
|
|
GN_EXTRA_ARGS='
|
|
GN_EXTRA_ARGS='
|
|
custom_toolchain = "//build/toolchain/linux/unbundle:default"
|
|
custom_toolchain = "//build/toolchain/linux/unbundle:default"
|
|
@@ -308,10 +317,6 @@ package() {
|
|
|
|
|
|
install -Dm755 "${srcdir}/electron-launcher.sh" \
|
|
install -Dm755 "${srcdir}/electron-launcher.sh" \
|
|
"${pkgdir}/usr/bin/${pkgname%-*}"
|
|
"${pkgdir}/usr/bin/${pkgname%-*}"
|
|
- if [[ "${_use_suffix}" == 0 ]]; then
|
|
|
|
- ln -s "/usr/bin/${pkgname%-*}" "${pkgdir}/usr/bin/${pkgname%-*}${_major_ver}"
|
|
|
|
- ln -s "/usr/lib/${pkgname%-*}" "${pkgdir}/usr/lib/${pkgname%-*}${_major_ver}"
|
|
|
|
- fi
|
|
|
|
|
|
|
|
# Install .desktop and icon file (see default_app-icon.patch)
|
|
# Install .desktop and icon file (see default_app-icon.patch)
|
|
install -Dm644 electron.desktop \
|
|
install -Dm644 electron.desktop \
|