[arch-commits] Commit in code/trunk (PKGBUILD code.js)

Filipe Laíns ffy00 at archlinux.org
Tue Sep 11 18:41:07 UTC 2018


    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);
 



More information about the arch-commits mailing list