Skip to content
Snippets Groups Projects

Avoid downloading electron and browsers, add riscv cases

Merged Levi Zim requested to merge kxxt/code:main into main
All threads resolved!
1 file
+ 20
3
Compare changes
  • Side-by-side
  • Inline
+ 20
3
@@ -15,7 +15,7 @@ depends=($_electron 'libsecret' 'libx11' 'libxkbfile' 'ripgrep')
optdepends=('bash-completion: Bash completions'
'zsh-completions: ZSH completitons'
'x11-ssh-askpass: SSH authentication')
makedepends=('gulp' 'git' 'npm' 'python' 'yarn' 'nodejs-lts-hydrogen' 'desktop-file-utils')
makedepends=('gulp' 'git' 'npm' 'python' 'yarn' 'nodejs-lts-hydrogen' 'desktop-file-utils' 'zip')
provides=('vscode')
source=(vscode::"git+https://github.com/microsoft/vscode.git#tag=$pkgver"
'code.js'
@@ -34,16 +34,24 @@ sha512sums=('0b19bf505f4c8fbe5eec91ad82e1cb6a42a6ff6abba9c1955a96a113e0127769e22
case "$CARCH" in
i686)
_vscode_arch=ia32
_electron_arch=ia32
;;
x86_64)
_vscode_arch=x64
_electron_arch=x64
;;
armv7h)
_vscode_arch=arm
_electron_arch=armv7l
;;
riscv64)
_vscode_arch=riscv64
_electron_arch=riscv64
;;
*)
# Needed for mksrcinfo
_vscode_arch=DUMMY
_electron_arch=DUMMY
;;
esac
@@ -99,12 +107,21 @@ prepare() {
patch -p1 -i "$srcdir/clipath.patch"
# electron checksum
echo -e "\n4bf72ce27cb3098024395462c40ebe88c8a105d1db36861c443a0495703fa4ab *electron-v28.2.10-linux-x64.zip" >> build/checksums/electron.txt
# The build process wants a zipped electron, let's construct one from system electron and put it in cache.
local _electron_ver=$(</usr/lib/$_electron/version)
local _hash=$(echo -n "https://github.com/electron/electron/releases/download/v$_electron_ver" | sha256sum | cut -d ' ' -f 1)
export XDG_CACHE_HOME="$srcdir" # Don't let our manually created electron zip appear in users' cache dir
local _cache_dir="$XDG_CACHE_HOME/electron/$_hash"
mkdir -p "$_cache_dir"
local _electron_zip="electron-v$_electron_ver-linux-$_electron_arch.zip"
cd "/usr/lib/$_electron" && zip -r "$_cache_dir/$_electron_zip" . && cd -
echo "$(sha256sum "$_cache_dir/$_electron_zip" | cut -d " " -f 1) *$_electron_zip" > build/checksums/electron.txt
}
build() {
cd vscode
export ELECTRON_SKIP_BINARY_DOWNLOAD=1 PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1
export XDG_CACHE_HOME="$srcdir"
yarn install --arch=$_vscode_arch
gulp --max_old_space_size=8192 \
--openssl-legacy-provider \
Loading