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.


Reply via email to