Date: Friday, June 28, 2019 @ 21:26:13 Author: eschwartz Revision: 485688
archrelease: copy trunk to community-staging-x86_64 Added: code/repos/community-staging-x86_64/ code/repos/community-staging-x86_64/PKGBUILD (from rev 485687, code/trunk/PKGBUILD) code/repos/community-staging-x86_64/code-liveshare.diff (from rev 485687, code/trunk/code-liveshare.diff) code/repos/community-staging-x86_64/code.js (from rev 485687, code/trunk/code.js) code/repos/community-staging-x86_64/code.sh (from rev 485687, code/trunk/code.sh) code/repos/community-staging-x86_64/enable-proposed-apis.diff (from rev 485687, code/trunk/enable-proposed-apis.diff) code/repos/community-staging-x86_64/product_json.diff (from rev 485687, code/trunk/product_json.diff) ---------------------------+ PKGBUILD | 142 ++++++++++++++++++++++++++++++++++++++++++++ code-liveshare.diff | 12 +++ code.js | 29 ++++++++ code.sh | 3 enable-proposed-apis.diff | 13 ++++ product_json.diff | 20 ++++++ 6 files changed, 219 insertions(+) Copied: code/repos/community-staging-x86_64/PKGBUILD (from rev 485687, code/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2019-06-28 21:26:13 UTC (rev 485688) @@ -0,0 +1,142 @@ +# Maintainer: Filipe Laíns (FFY00) <la...@archlinux.org> +# Contributor: Michael Hansen <zrax0111 gmail com> +# Contributor: Francisco Magalhães <franmagneto gmail com> + +pkgname=code +pkgdesc='The Open Source build of Visual Studio Code (vscode) editor' +# Remember to check https://github.com/microsoft/vscode/wiki/How-to-Contribute#prerequisites for target node version +pkgver=1.35.1 +pkgrel=2 +arch=('x86_64') +url='https://github.com/microsoft/vscode' +license=('MIT') +depends=('electron4' 'libsecret' 'libx11' 'libxkbfile' 'ripgrep') +optdepends=('bash-completion: Bash completions' + 'zsh-completions: ZSH completitons') +makedepends=('git' 'gulp' 'npm' 'python2' 'yarn' 'nodejs-lts-dubnium') +source=("$pkgname::git+https://github.com/Microsoft/vscode.git#tag=$pkgver" + 'code.js' + 'code.sh' + 'product_json.diff' + 'enable-proposed-apis.diff') +sha512sums=('SKIP' + '814c9554427183cd893a33cd2cbe91f6e0ea71921ef0717c86217b1d3058d265f9ff7a9ace3e7b76f122e60b7686475cf4d999e581a1845face3033afb9f745f' + 'dfd9ca38e6510c9ad59fb24c1141fdfeb136f457392aee79b0bc2ff378c4c54d81a06728ba3ec4039d57dfcd730c26686585de9b4032a21ee8151a4f05195c15' + '8ec47e497287d67f37e7b669af416f43d5cdbd4574892867d7b95996ef5de53640b5bc919b06b177e1fd91cb005579d6ed0c17325117b9914ba7cf28f5f06e40' + 'b267dcedaf51067a782d0f14007663b706973c1538f7fb91f093475134c2145fd0ffd5ed2b47ad7f01c6167a78a4af285d2818d7850fc67a7f7a473324824664') + +# Even though we don't officially support other archs, let's +# allow the user to use this PKGBUILD to compile the package +# for his architecture +case "$CARCH" in + i686) + _vscode_arch=ia32 + ;; + x86_64) + _vscode_arch=x64 + ;; + armv7h) + _vscode_arch=arm + ;; + *) + # Needed for mksrcinfo + _vscode_arch=DUMMY + ;; +esac + +prepare() { + cd $pkgname + + # This patch no longer contains proprietary modifications. + # See https://github.com/Microsoft/vscode/issues/31168 for details. + patch -p0 < ../product_json.diff + + # Set the commit and build date + local _commit=$(git rev-parse HEAD) + local _datestamp=$(date -u -Is | sed 's/\+00:00/Z/') + sed -e "s/@COMMIT@/$_commit/" -e "s/@DATE@/$_datestamp/" -i product.json + + # See https://github.com/MicrosoftDocs/live-share/issues/262 for details + # Also, https://github.com/microsoft/vscode/issues/48946 + patch -p1 < ../enable-proposed-apis.diff + + # Build native modules for system electron + local _target=$(</usr/lib/electron4/version) + sed -i "s/^target .*/target \"${_target//v/}\"/" .yarnrc + + # Patch appdata and desktop file + sed -i 's|/usr/share/@@NAME@@/@@NAME@@|@@NAME@@|g + s|@@NAME_SHORT@@|Code|g + s|@@NAME_LONG@@|Code - OSS|g + s|@@NAME@@|code-oss|g + s|@@ICON@@|code-oss|g + s|@@LICENSE@@|MIT|g + s|inode/directory;||' resources/linux/code{.appdata.xml,.desktop,-url-handler.desktop} + + # Add missing exectable name to bash completion + sed -i 's|complete -F _code code|complete -F _code code code-oss|' resources/completions/bash/code + # Create new zsh completion file for our binary + cp resources/completions/zsh/_code resources/completions/zsh/_code-oss + sed -i 's|#compdef code|#compdef code-oss|' resources/completions/zsh/_code-oss + + # Fix bin path + sed -i "s|return path.join(path.dirname(execPath), 'bin', \`\${product.applicationName}\`);|return '/usr/bin/code';|g + s|return path.join(appRoot, 'scripts', 'code-cli.sh');|return '/usr/bin/code';|g" \ + src/vs/platform/environment/node/environmentService.ts +} + +build() { + # https://github.com/mapbox/node-sqlite3/issues/1044 + mkdir -p path + ln -sf /usr/bin/python2 path/python + export PATH="$PWD/path:$PATH" + + cd $pkgname + + yarn install --arch=$_vscode_arch + + # The default memory limit may be too low for current versions of node + # to successfully build vscode. Change it if this number still doesn't + # work for your system. + mem_limit="--max_old_space_size=4096" + + if ! /usr/bin/node $mem_limit /usr/bin/gulp vscode-linux-$_vscode_arch-min + then + echo + echo "*** NOTE: If the build failed due to running out of file handles (EMFILE)," + echo "*** you will need to raise your max open file limit." + echo "*** You can check this for more information on how to increase this limit:" + echo "*** https://ro-che.info/articles/2017-03-26-increase-open-files-limit" + exit 1 + fi +} + +package() { + # Install resource files + install -dm 755 "$pkgdir"/usr/lib/$pkgname + cp -r --no-preserve=ownership --preserve=mode VSCode-linux-$_vscode_arch/resources/app/* "$pkgdir"/usr/lib/$pkgname/ + + # replace statically included binary with system copy + ln -sf /usr/bin/rg "$pkgdir"/usr/lib/code/node_modules.asar.unpacked/vscode-ripgrep/bin/rg + + # Install binary + install -Dm 755 code.sh "$pkgdir"/usr/bin/code-oss + install -Dm 755 code.js "$pkgdir"/usr/lib/$pkgname/code.js + ln -sf /usr/bin/code-oss "$pkgdir"/usr/bin/code + + # Install appdata and desktop file + install -Dm 644 $pkgname/resources/linux/code.appdata.xml "$pkgdir"/usr/share/metainfo/code-oss.appdata.xml + install -Dm 644 $pkgname/resources/linux/code.desktop "$pkgdir"/usr/share/applications/code-oss.desktop + install -Dm 644 $pkgname/resources/linux/code-url-handler.desktop "$pkgdir"/usr/share/applications/code-oss-url-handler.desktop + install -Dm 644 VSCode-linux-$_vscode_arch/resources/app/resources/linux/code.png "$pkgdir"/usr/share/pixmaps/code-oss.png + + # Install bash and zsh completions + install -Dm 644 $pkgname/resources/completions/bash/code "$pkgdir"/usr/share/bash-completion/completions/code-oss + ln -sf /usr/share/bash-completion/completions/code-oss "$pkgdir"/usr/share/bash-completion/completions/code + install -Dm 644 $pkgname/resources/completions/zsh/_code-oss "$pkgdir"/usr/share/zsh/vendor-completions/_code-oss + install -Dm 644 $pkgname/resources/completions/zsh/_code "$pkgdir"/usr/share/zsh/vendor-completions/_code + + # Install license files + install -Dm 644 VSCode-linux-$_vscode_arch/resources/app/LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE + install -Dm 644 VSCode-linux-$_vscode_arch/resources/app/ThirdPartyNotices.txt "$pkgdir"/usr/share/licenses/$pkgname/ThirdPartyNotices.txt +} Copied: code/repos/community-staging-x86_64/code-liveshare.diff (from rev 485687, code/trunk/code-liveshare.diff) =================================================================== --- community-staging-x86_64/code-liveshare.diff (rev 0) +++ community-staging-x86_64/code-liveshare.diff 2019-06-28 21:26:13 UTC (rev 485688) @@ -0,0 +1,12 @@ +diff --git a/product.json b/product.json +index b250c66fc4..8a9befcfbb 100644 +--- a/product.json ++++ b/product.json +@@ -19,6 +19,7 @@ + "reportIssueUrl": "https://github.com/Microsoft/vscode/issues/new", + "urlProtocol": "code-oss", + "extensionAllowedProposedApi": [ ++ "ms-vsliveshare.vsliveshare", + "ms-vscode.references-view" + ], + "quality": "stable", Copied: code/repos/community-staging-x86_64/code.js (from rev 485687, code/trunk/code.js) =================================================================== --- community-staging-x86_64/code.js (rev 0) +++ community-staging-x86_64/code.js 2019-06-28 21:26:13 UTC (rev 485688) @@ -0,0 +1,29 @@ +#!/usr/bin/electron + +const name = 'code-oss'; + +const app = require('electron').app; +const path = require('path'); +const fs = require("fs"); + +// Change command name. +const fd = fs.openSync("/proc/self/comm", fs.constants.O_WRONLY); +fs.writeSync(fd, name); +fs.closeSync(fd); + +// Remove first command line argument (/usr/lib/code/code.js). - We call the CLI file first +process.argv.splice(0, 1); + +// Set application paths. +const appPath = __dirname; +const packageJson = require(path.join(appPath, 'package.json')); +app.setAppPath(appPath); +app.setDesktopName(name + '.desktop'); +app.setName(name); +app.setPath('userCache', path.join(app.getPath('cache'), name)); +app.setPath('userData', path.join(app.getPath('appData'), name)); +app.setVersion(packageJson.version); + +// Run the application. +require('module')._load(appPath, module, true); + Copied: code/repos/community-staging-x86_64/code.sh (from rev 485687, code/trunk/code.sh) =================================================================== --- community-staging-x86_64/code.sh (rev 0) +++ community-staging-x86_64/code.sh 2019-06-28 21:26:13 UTC (rev 485688) @@ -0,0 +1,3 @@ +#!/bin/bash + +ELECTRON_RUN_AS_NODE=1 exec electron4 /usr/lib/code/out/cli.js /usr/lib/code/code.js "$@" Copied: code/repos/community-staging-x86_64/enable-proposed-apis.diff (from rev 485687, code/trunk/enable-proposed-apis.diff) =================================================================== --- community-staging-x86_64/enable-proposed-apis.diff (rev 0) +++ community-staging-x86_64/enable-proposed-apis.diff 2019-06-28 21:26:13 UTC (rev 485688) @@ -0,0 +1,13 @@ +diff --git a/product.json b/product.json +index b250c66fc4..8a9befcfbb 100644 +--- a/product.json ++++ b/product.json +@@ -19,6 +19,8 @@ + "reportIssueUrl": "https://github.com/Microsoft/vscode/issues/new", + "urlProtocol": "code-oss", + "extensionAllowedProposedApi": [ ++ "ms-vsliveshare.vsliveshare", ++ "ms-vscode-remote.remote-ssh", + "ms-vscode.references-view" + ], + "quality": "stable", Copied: code/repos/community-staging-x86_64/product_json.diff (from rev 485687, code/trunk/product_json.diff) =================================================================== --- community-staging-x86_64/product_json.diff (rev 0) +++ community-staging-x86_64/product_json.diff 2019-06-28 21:26:13 UTC (rev 485688) @@ -0,0 +1,20 @@ +--- product.json 2019-04-06 13:26:49.879655883 +0100 ++++ product.json 2019-04-06 13:26:37.399656243 +0100 +@@ -1,4 +1,17 @@ + { ++ "quality": "stable", ++ "extensionsGallery": { ++ "serviceUrl": "https://marketplace.visualstudio.com/_apis/public/gallery", ++ "cacheUrl": "https://vscode.blob.core.windows.net/gallery/index", ++ "itemUrl": "https://marketplace.visualstudio.com/items" ++ }, ++ "documentationUrl": "https://code.visualstudio.com/docs", ++ "requestFeatureUrl": "https://github.com/Microsoft/vscode/issues", ++ "introductoryVideosUrl": "https://go.microsoft.com/fwlink/?linkid=832146", ++ "tipsAndTricksUrl": "https://go.microsoft.com/fwlink/?linkid=852118", ++ "keyboardShortcutsUrlLinux": "https://go.microsoft.com/fwlink/?linkid=832144", ++ "commit": "@COMMIT@", ++ "date": "@DATE@", + "nameShort": "Code - OSS", + "nameLong": "Code - OSS", + "applicationName": "code-oss",