Date: Tuesday, September 11, 2018 @ 18:41:06 Author: ffy00 Revision: 379764
upgpkg: code 1.27.1-6 Fix bug where vscode was overwriting the default file manager. Modified: code/trunk/PKGBUILD code/trunk/code.js ----------+ PKGBUILD | 14 ++++++-------- code.js | 26 ++++++++++++++++++++++++-- 2 files changed, 30 insertions(+), 10 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2018-09-11 17:51:25 UTC (rev 379763) +++ PKGBUILD 2018-09-11 18:41:06 UTC (rev 379764) @@ -6,7 +6,7 @@ pkgname=code pkgdesc='The Open Source build of Visual Studio Code (vscode) editor' pkgver=1.27.1 -pkgrel=5 +pkgrel=6 arch=('x86_64') url='https://github.com/Microsoft/vscode' license=('MIT') @@ -13,13 +13,11 @@ depends=('electron' 'libsecret' 'libxkbfile') makedepends=('git' 'gulp' 'npm' 'python2' 'yarn') source=("$pkgname::git+https://github.com/Microsoft/vscode#tag=$_pkgver" - 'code.sh' 'code.js' 'product_json.patch' 'code-liveshare.patch') sha512sums=('SKIP' - '75c1052700eeee80ed28d556b801c5f9d096cc7b0638d331cb8ca4814d9dcb436c2b1aa8772bf6d137503c2f13c3796ce7fe4b9ae83034831cb61bc36474e6ec' - '3d58a4e26767d2a29ff36f6cb41f9ca3c5a3f2608450917bc45db8901fc2b18f38b01e9725c7c381617d284eaaaeb969f531b96bcc48f839bda61bbc36cf6e68' + '8ce619714da6b243ce831a0932266841142c8d88c41b383237e7081a0098a4bee3d9fc80c97bb72bea68edfd9120cca8bacd4aea38694f392aa937e3b79c8c0a' 'dcf52fa373a787cd94ce7ad216a269de3ca90b3f02cea1d635016d980e765a9cc040776ce4b4ef83721ab6f0d74efb7a3a9ca02fbdf3daa06653c766d36cde08' '6080b9d30b2c852a831d4fa98be94e42eb7d94dfd5813bbe28410d031191c20563e4288d6b0062c74b635a962c3eba3533fcebeff1f67b4a8005a167c2f7fbf2') @@ -86,11 +84,10 @@ package() { # Install resource files install -dm 755 "$pkgdir"/usr/lib/$pkgname - cp -r --no-preserve=ownership --preserve=mode VSCode-linux-$_vscode_arch/resources/* "$pkgdir"/usr/lib/$pkgname/ + cp -r --no-preserve=ownership --preserve=mode VSCode-linux-$_vscode_arch/resources/app/* "$pkgdir"/usr/lib/$pkgname/ # Install binary - install -Dm 755 code.js "$pkgdir"/usr/lib/$pkgname/app/code.js - install -Dm 755 code.sh "$pkgdir"/usr/bin/code + install -Dm 755 code.js "$pkgdir"/usr/bin/code # Install appdata and desktop file sed -i 's|/usr/share/@@NAME@@/@@NAME@@|@@NAME@@|g @@ -98,7 +95,8 @@ s|@@NAME_LONG@@|Code|g s|@@NAME@@|code|g s|@@ICON@@|code|g - s|@@LICENSE@@|MIT|g' code/resources/linux/code.{appdata.xml,desktop} + s|@@LICENSE@@|MIT|g + /MimeType/d' code/resources/linux/code.{appdata.xml,desktop} install -Dm 644 code/resources/linux/code.appdata.xml "$pkgdir"/usr/share/metainfo/code.appdata.xml install -Dm 644 code/resources/linux/code.desktop "$pkgdir"/usr/share/applications/code.desktop Modified: code.js =================================================================== --- code.js 2018-09-11 17:51:25 UTC (rev 379763) +++ code.js 2018-09-11 18:41:06 UTC (rev 379764) @@ -1,11 +1,33 @@ #!/usr/bin/electron -const {app} = require('electron'); +const name = 'code' + +const app = require('electron').app; const path = require('path'); +const fs = require("fs"); +const Module = require("module"); +const {join} = require("path"); +const vm = require("vm"); +// 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/bin/electron). process.argv.splice(0, 1); +// Set application paths. +const appPath = path.join(path.dirname(__dirname), 'lib', name); +const packageJson = require(path.join(appPath, 'package.json')); +const productName = 'code-oss' +app.setAppPath(appPath); +app.setDesktopName(name + '.desktop'); +app.setName(productName); +app.setPath('userCache', path.join(app.getPath('cache'), productName)); +app.setPath('userData', path.join(app.getPath('appData'), productName)); +app.setVersion(packageJson.version); + // Run the application. -require('module')._load(__dirname, module, true); +require('module')._load(appPath, module, true);