Massimiliano Torromeo pushed to branch main at Arch Linux / Packaging / Packages / code
Commits: fbc046c2 by Levi Zim at 2024-04-15T03:58:30+02:00 Avoid downloading electron and browsers, add riscv cases - - - - - 986f2030 by Levi Zim at 2024-04-15T14:29:42+02:00 Use custom cachedir and overwrite electron checksum file - - - - - 1 changed file: - PKGBUILD Changes: ===================================== PKGBUILD ===================================== @@ -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 \ View it on GitLab: https://gitlab.archlinux.org/archlinux/packaging/packages/code/-/compare/c3b900e841519e7595bf6564965d396818b5c8eb...986f2030e66ebdc5a16b353179150284de5dc6a7 -- View it on GitLab: https://gitlab.archlinux.org/archlinux/packaging/packages/code/-/compare/c3b900e841519e7595bf6564965d396818b5c8eb...986f2030e66ebdc5a16b353179150284de5dc6a7 You're receiving this email because of your account on gitlab.archlinux.org.