1 | // koffee 1.14.0
|
2 |
|
3 | /*
|
4 | 0000000 000 000 000 000 0000000
|
5 | 000 000 000 000 000 000 000 000
|
6 | 0000000 000 000 000 000 000 000
|
7 | 000 000 000 000 000 000 000 000
|
8 | 0000000 0000000 000 0000000 0000000
|
9 | */
|
10 | var args, bindir, childp, cmd, config, d, dir, err, exe, exec, exeext, exepth, fs, i, icn, j, karg, kerror, kolor, len, len1, os, pkg, pkgdir, pkgpth, prune, ref, ref1, ref2, ref3, slash;
|
11 |
|
12 | ref = require('kxk'), args = ref.args, childp = ref.childp, fs = ref.fs, karg = ref.karg, kerror = ref.kerror, kolor = ref.kolor, os = ref.os, slash = ref.slash;
|
13 |
|
14 | args = karg("\nbuild\n compile . ? compile sources . = true\n install . ? run npm install . = true\n rebuild . ? electron-rebuild . = true\n package . ? package project . = true\n prune . ? prune package . = true . -P\n start . ? run executable . = true\n verbose . = true");
|
15 |
|
16 | config = require('../js/config');
|
17 |
|
18 | exec = function(msg, cmd, opt) {
|
19 | if (opt == null) {
|
20 | opt = {
|
21 | shell: true,
|
22 | encoding: 'utf8'
|
23 | };
|
24 | }
|
25 | if (args.verbose) {
|
26 | console.log(kolor.y5(msg));
|
27 | }
|
28 | return childp.execSync(cmd, opt);
|
29 | };
|
30 |
|
31 | try {
|
32 | pkgdir = slash.pkg(process.cwd());
|
33 | pkgpth = slash.join(pkgdir, 'package.json');
|
34 | pkg = require(pkgpth);
|
35 | bindir = pkg.name + '-' + ((os.platform()) + "-x64");
|
36 | exeext = (function() {
|
37 | switch (os.platform()) {
|
38 | case 'win32':
|
39 | return '.exe';
|
40 | case 'darwin':
|
41 | return '.app';
|
42 | default:
|
43 | return '';
|
44 | }
|
45 | })();
|
46 | exepth = slash.resolve(slash.join(bindir, "" + pkg.name + exeext));
|
47 | if (args.verbose) {
|
48 | console.log(kolor.y3('cwd '), kolor.w2(slash.tilde(pkgdir)));
|
49 | }
|
50 | process.chdir(pkgdir);
|
51 | if (slash.dirExists(bindir)) {
|
52 | try {
|
53 | if (os.platform() === 'win32') {
|
54 | if (exec('quit', "taskkill /f /im " + (slash.file(exepth)) + " /t")) {
|
55 | childp.execSync('sleep 2');
|
56 | }
|
57 | } else {
|
58 | childp.execSync("killall " + pkg.name);
|
59 | }
|
60 | } catch (error) {
|
61 | err = error;
|
62 | kerror("kill failed: " + err);
|
63 | }
|
64 | if (args.verbose) {
|
65 | console.log(kolor.y4('remove '), kolor.b6(bindir));
|
66 | }
|
67 | fs.removeSync(bindir);
|
68 | }
|
69 | if (args.compile) {
|
70 | exec('compile', 'node --trace-warnings ' + slash.join(__dirname, 'konrad'));
|
71 | }
|
72 | if (args.install) {
|
73 | exec('install', 'npm install');
|
74 | }
|
75 | if (args.rebuild) {
|
76 | exec('rebuild', slash.resolve('./node_modules/.bin/electron-rebuild'));
|
77 | }
|
78 | if (args["package"]) {
|
79 | exe = slash.resolve('./node_modules/.bin/electron-packager');
|
80 | icn = slash.win() && 'ico' || 'icns';
|
81 | cmd = exe + " . --overwrite --icon=img/app." + icn;
|
82 | exec('package', cmd);
|
83 | }
|
84 | if (args.prune) {
|
85 | if (args.verbose) {
|
86 | console.log(kolor.y4('prune'));
|
87 | }
|
88 | ref1 = ['inno', 'x64'];
|
89 | for (i = 0, len = ref1.length; i < len; i++) {
|
90 | d = ref1[i];
|
91 | dir = slash.join(bindir, 'resources', 'app', d);
|
92 | if (slash.dirExists(dir)) {
|
93 | if (args.verbose) {
|
94 | console.log(kolor.r5(dir));
|
95 | }
|
96 | fs.removeSync(dir);
|
97 | }
|
98 | }
|
99 | if (prune = (ref2 = config.obj(pkgpth)) != null ? (ref3 = ref2.build) != null ? ref3.prune : void 0 : void 0) {
|
100 | for (j = 0, len1 = prune.length; j < len1; j++) {
|
101 | d = prune[j];
|
102 | dir = slash.join(bindir, 'resources', 'app', d);
|
103 | if (slash.dirExists(dir)) {
|
104 | if (args.verbose) {
|
105 | console.log(kolor.r5(dir));
|
106 | }
|
107 | fs.removeSync(dir);
|
108 | } else {
|
109 | console.log('no path to prune', dir);
|
110 | }
|
111 | }
|
112 | }
|
113 | }
|
114 | if (args.start) {
|
115 | if (args.verbose) {
|
116 | console.log(kolor.y3('start '), kolor.w2(slash.tilde(exepth)));
|
117 | }
|
118 | if (os.platform() === 'win32') {
|
119 | childp.spawn(exepth, {
|
120 | encoding: 'utf8',
|
121 | detached: true
|
122 | });
|
123 | } else {
|
124 | childp.spawn("open", [exepth], {
|
125 | encoding: 'utf8',
|
126 | shell: true,
|
127 | detached: true,
|
128 | stdio: 'inherit'
|
129 | });
|
130 | }
|
131 | }
|
132 | process.exit(0);
|
133 | } catch (error) {
|
134 | err = error;
|
135 | console.error(String(err));
|
136 | process.exit(1);
|
137 | }
|
138 |
|
139 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQuanMiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiYnVpbGQuY29mZmVlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7Ozs7QUFBQSxJQUFBOztBQVFBLE1BQXVELE9BQUEsQ0FBUSxLQUFSLENBQXZELEVBQUUsZUFBRixFQUFRLG1CQUFSLEVBQWdCLFdBQWhCLEVBQW9CLGVBQXBCLEVBQTBCLG1CQUExQixFQUFrQyxpQkFBbEMsRUFBeUMsV0FBekMsRUFBNkM7O0FBRTdDLElBQUEsR0FBTyxJQUFBLENBQUssa1VBQUw7O0FBWVAsTUFBQSxHQUFTLE9BQUEsQ0FBUSxjQUFSOztBQUVULElBQUEsR0FBTyxTQUFDLEdBQUQsRUFBTSxHQUFOLEVBQVcsR0FBWDs7UUFBVyxNQUFJO1lBQUMsS0FBQSxFQUFNLElBQVA7WUFBWSxRQUFBLEVBQVMsTUFBckI7OztJQUVsQixJQUFHLElBQUksQ0FBQyxPQUFSO1FBQWMsT0FBQSxDQUFPLEdBQVAsQ0FBVyxLQUFLLENBQUMsRUFBTixDQUFTLEdBQVQsQ0FBWCxFQUFkOztXQUNBLE1BQU0sQ0FBQyxRQUFQLENBQWdCLEdBQWhCLEVBQXFCLEdBQXJCO0FBSEc7O0FBS1A7SUFDSSxNQUFBLEdBQVMsS0FBSyxDQUFDLEdBQU4sQ0FBVSxPQUFPLENBQUMsR0FBUixDQUFBLENBQVY7SUFDVCxNQUFBLEdBQVMsS0FBSyxDQUFDLElBQU4sQ0FBVyxNQUFYLEVBQW1CLGNBQW5CO0lBQ1QsR0FBQSxHQUFTLE9BQUEsQ0FBUSxNQUFSO0lBQ1QsTUFBQSxHQUFTLEdBQUcsQ0FBQyxJQUFKLEdBQVcsR0FBWCxHQUFpQixDQUFFLENBQUMsRUFBRSxDQUFDLFFBQUgsQ0FBQSxDQUFELENBQUEsR0FBZSxNQUFqQjtJQUUxQixNQUFBO0FBQVMsZ0JBQU8sRUFBRSxDQUFDLFFBQUgsQ0FBQSxDQUFQO0FBQUEsaUJBQ0EsT0FEQTt1QkFDYztBQURkLGlCQUVBLFFBRkE7dUJBRWM7QUFGZDt1QkFHQTtBQUhBOztJQUlU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MDAwICAgICAgMDAwMDAwMCAgICBcbjAwMCAgIDAwMCAgMDAwICAgMDAwICAwMDAgIDAwMCAgICAgIDAwMCAgIDAwMCAgXG4wMDAwMDAwICAgIDAwMCAgIDAwMCAgMDAwICAwMDAgICAgICAwMDAgICAwMDAgIFxuMDAwICAgMDAwICAwMDAgICAwMDAgIDAwMCAgMDAwICAgICAgMDAwICAgMDAwICBcbjAwMDAwMDAgICAgIDAwMDAwMDAgICAwMDAgIDAwMDAwMDAgIDAwMDAwMDAgICAgXG4jIyNcblxueyBhcmdzLCBjaGlsZHAsIGZzLCBrYXJnLCBrZXJyb3IsIGtvbG9yLCBvcywgc2xhc2ggfSA9IHJlcXVpcmUgJ2t4aydcblxuYXJncyA9IGthcmcgXCJcIlwiXG5cbmJ1aWxkXG4gICAgY29tcGlsZSAgLiA/IGNvbXBpbGUgc291cmNlcyAgLiA9IHRydWVcbiAgICBpbnN0YWxsICAuID8gcnVuIG5wbSBpbnN0YWxsICAuID0gdHJ1ZVxuICAgIHJlYnVpbGQgIC4gPyBlbGVjdHJvbi1yZWJ1aWxkIC4gPSB0cnVlXG4gICAgcGFja2FnZSAgLiA/IHBhY2thZ2UgcHJvamVjdCAgLiA9IHRydWVcbiAgICBwcnVuZSAgICAuID8gcHJ1bmUgcGFja2FnZSAgICAuID0gdHJ1ZSAuIC1QXG4gICAgc3RhcnQgICAgLiA/IHJ1biBleGVjdXRhYmxlICAgLiA9IHRydWVcbiAgICB2ZXJib3NlICAgICAgICAgICAgICAgICAgICAgICAuID0gdHJ1ZVxuXCJcIlwiXG5cbmNvbmZpZyA9IHJlcXVpcmUgJy4uL2pzL2NvbmZpZydcblxuZXhlYyA9IChtc2csIGNtZCwgb3B0PXtzaGVsbDp0cnVlIGVuY29kaW5nOid1dGY4J30pIC0+XG4gICAgXG4gICAgaWYgYXJncy52ZXJib3NlIHRoZW4gbG9nIGtvbG9yLnk1IG1zZ1xuICAgIGNoaWxkcC5leGVjU3luYyBjbWQsIG9wdFxuXG50cnkgICAgXG4gICAgcGtnZGlyID0gc2xhc2gucGtnIHByb2Nlc3MuY3dkKClcbiAgICBwa2dwdGggPSBzbGFzaC5qb2luIHBrZ2RpciwgJ3BhY2thZ2UuanNvbidcbiAgICBwa2cgICAgPSByZXF1aXJlIHBrZ3B0aFxuICAgIGJpbmRpciA9IHBrZy5uYW1lICsgJy0nICsgXCIje29zLnBsYXRmb3JtKCl9LXg2NFwiXG4gICAgXG4gICAgZXhlZXh0ID0gc3dpdGNoIG9zLnBsYXRmb3JtKClcbiAgICAgICAgd2hlbiAnd2luMzInICB0aGVuICcuZXhlJ1xuICAgICAgICB3aGVuICdkYXJ3aW4nIHRoZW4gJy5hcHAnXG4gICAgICAgIGVsc2UgJycgIyBsaW51eD9cbiAgICBleGVwdGggPSBzbGFzaC5yZXNvbHZlIHNsYXNoLmpvaW4gYmluZGlyLCBcIiN7cGtnLm5hbWV9I3tleGVleHR9XCJcbiAgICBcbiAgICBpZiBhcmdzLnZlcmJvc2UgdGhlbiBsb2cga29sb3IueTMoJ2N3ZCAgICAgICcpLCBrb2xvci53MiBzbGFzaC50aWxkZSBwa2dkaXJcbiAgICBwcm9jZXNzLmNoZGlyIHBrZ2RpclxuXG4gICAgaWYgc2xhc2guZGlyRXhpc3RzIGJpbmRpclxuICAgICAgICB0cnlcbiAgICAgICAgICAgIGlmIG9zLnBsYXRmb3JtKCkgPT0gJ3dpbjMyJ1xuICAgICAgICAgICAgICAgIGlmIGV4ZWMgJ3F1aXQnIFwidGFza2tpbGwgL2YgL2ltICN7c2xhc2guZmlsZSBleGVwdGh9IC90XCJcclxuICAgICAgICAgICAgICAgICAgICBjaGlsZHAuZXhlY1N5bmMgJ3NsZWVwIDInXG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgY2hpbGRwLmV4ZWNTeW5jIFwia2lsbGFsbCAje3BrZy5uYW1lfVwiXG4gICAgICAgIGNhdGNoIGVyclxuICAgICAgICAgICAga2Vycm9yIFwia2lsbCBmYWlsZWQ6ICN7ZXJyfVwiXG4gICAgICAgIGlmIGFyZ3MudmVyYm9zZSB0aGVuIGxvZyBrb2xvci55NCgncmVtb3ZlICAgJyksIGtvbG9yLmI2IGJpbmRpclxuICAgICAgICBmcy5yZW1vdmVTeW5jIGJpbmRpclxuICAgIFxuICAgIGlmIGFyZ3MuY29tcGlsZSB0aGVuIGV4ZWMgJ2NvbXBpbGUnICdub2RlIC0tdHJhY2Utd2FybmluZ3MgJyArIHNsYXNoLmpvaW4gX19kaXJuYW1lLCAna29ucmFkJ1xuICAgIGlmIGFyZ3MuaW5zdGFsbCB0aGVuIGV4ZWMgJ2luc3RhbGwnICducG0gaW5zdGFsbCdcbiAgICBpZiBhcmdzLnJlYnVpbGQgdGhlbiBleGVjICdyZWJ1aWxkJyBzbGFzaC5yZXNvbHZlICcuL25vZGVfbW9kdWxlcy8uYmluL2VsZWN0cm9uLXJlYnVpbGQnXG4gICAgaWYgYXJncy5wYWNrYWdlXG4gICAgICAgIGV4ZSA9IHNsYXNoLnJlc29sdmUgJy4vbm9kZV9tb2R1bGVzLy5iaW4vZWxlY3Ryb24tcGFja2FnZXInXG4gICAgICAgIGljbiA9IHNsYXNoLndpbigpIGFuZCAnaWNvJyBvciAnaWNucydcbiAgICAgICAgY21kID0gXCIje2V4ZX0gLiAtLW92ZXJ3cml0ZSAtLWljb249aW1nL2FwcC4je2ljbn1cIlxuICAgICAgICBleGVjICdwYWNrYWdlJyBjbWRcbiAgICBpZiBhcmdzLnBydW5lXG4gICAgICAgIGlmIGFyZ3MudmVyYm9zZSB0aGVuIGxvZyBrb2xvci55NCgncHJ1bmUnKVxuICAgICAgICBmb3IgZCBpbiBbJ2lubm8nICd4NjQnXVxuICAgICAgICAgICAgZGlyID0gc2xhc2guam9pbiBiaW5kaXIsICdyZXNvdXJjZXMnICdhcHAnIGQgIyBuZWVkcyB0byBjaGFuZ2Ugb24gbWFjXG4gICAgICAgICAgICBpZiBzbGFzaC5kaXJFeGlzdHMgZGlyXG4gICAgICAgICAgICAgICAgaWYgYXJncy52ZXJib3NlIHRoZW4gbG9nIGtvbG9yLnI1IGRpclxuICAgICAgICAgICAgICAgIGZzLnJlbW92ZVN5bmMgZGlyXG4gICAgICAgICAgICAgICAgXG4gICAgICAgIGlmIHBydW5lID0gY29uZmlnLm9iaihwa2dwdGgpPy5idWlsZD8ucHJ1bmVcbiAgICAgICAgICAgIGZvciBkIGluIHBydW5lICAgICAgICBcbiAgICAgICAgICAgICAgICBkaXIgPSBzbGFzaC5qb2luIGJpbmRpciwgJ3Jlc291cmNlcycgJ2FwcCcgZCAjIG5lZWRzIHRvIGNoYW5nZSBvbiBtYWNcbiAgICAgICAgICAgICAgICBpZiBzbGFzaC5kaXJFeGlzdHMgZGlyXG4gICAgICAgICAgICAgICAgICAgIGlmIGFyZ3MudmVyYm9zZSB0aGVuIGxvZyBrb2xvci5yNSBkaXJcbiAgICAgICAgICAgICAgICAgICAgZnMucmVtb3ZlU3luYyBkaXJcbiAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGxvZyAnbm8gcGF0aCB0byBwcnVuZScgZGlyXG4gICAgICAgICAgICAgICAgXG4gICAgaWYgYXJncy5zdGFydFxuICAgICAgICBpZiBhcmdzLnZlcmJvc2UgdGhlbiBsb2cga29sb3IueTMoJ3N0YXJ0ICAgICAnKSwga29sb3IudzIgc2xhc2gudGlsZGUgZXhlcHRoXG4gICAgICAgIGlmIG9zLnBsYXRmb3JtKCkgPT0gJ3dpbjMyJ1xuICAgICAgICAgICAgY2hpbGRwLnNwYXduIGV4ZXB0aCwgZW5jb2Rpbmc6J3V0ZjgnIGRldGFjaGVkOnRydWVcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgY2hpbGRwLnNwYXduIFwib3BlblwiIFtleGVwdGhdLCBlbmNvZGluZzondXRmOCcgc2hlbGw6dHJ1ZSBkZXRhY2hlZDp0cnVlIHN0ZGlvOidpbmhlcml0J1xuICAgIHByb2Nlc3MuZXhpdCAwXG4gICAgICAgIFxuY2F0Y2ggZXJyXG4gICAgZXJyb3IgU3RyaW5nIGVyclxuICAgIHByb2Nlc3MuZXhpdCAxXG4gICAgICAgICJdfQ==
|
140 | //# sourceURL=build.coffee |
\ | No newline at end of file |