summaryrefslogtreecommitdiff
path: root/nonfree/min/min.js
diff options
context:
space:
mode:
authorAndreas Grapentin <andreas@grapentin.org>2019-02-08 23:01:04 +0100
committerAndreas Grapentin <andreas@grapentin.org>2019-02-08 23:01:04 +0100
commit04fc41a7d944dcc5b7b7be265aa4982ea5a4db2e (patch)
tree9bbf1919272207780662c82a4dd4fda85302a106 /nonfree/min/min.js
parent63a2fd1c33db9410d56321f76182f6e92cedf216 (diff)
libre/min: moved to nonfree (depends on electron)
Diffstat (limited to 'nonfree/min/min.js')
-rw-r--r--nonfree/min/min.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/nonfree/min/min.js b/nonfree/min/min.js
new file mode 100644
index 000000000..e3bfeba0f
--- /dev/null
+++ b/nonfree/min/min.js
@@ -0,0 +1,29 @@
+#!/usr/bin/electron
+
+const name = 'min';
+
+const {app} = require('electron');
+const fs = require('fs');
+const path = require('path');
+
+// 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 = packageJson.productName;
+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(appPath, module, true);