@@ -14,21 +14,19 @@ var APP_PATH = path.join(PACKAGE, NAME + '.app');
14
14
var packager = require ( 'electron-packager' ) ;
15
15
var createDMG = require ( 'electron-installer-dmg' ) ;
16
16
17
- var CONFIG = module . exports = {
17
+ module . exports . ELECTRON = path . join ( APP_PATH , 'Contents' , 'MacOS' , 'Electron' ) ;
18
+ module . exports . RESOURCES = path . join ( APP_PATH , 'Contents' , 'Resources' ) ;
19
+
20
+ var PACKAGER_CONFIG = {
18
21
name : pkg . product_name ,
19
22
dir : path . resolve ( __dirname , '../build' ) ,
20
23
out : path . resolve ( __dirname , '../dist' ) ,
21
- ignore : new RegExp ( '(scout-server.asar|node_modules/scout-server)' ) ,
22
- appPath : APP_PATH ,
23
- PACKAGE : PACKAGE ,
24
- BUILD : path . join ( APP_PATH , 'Contents' , 'Resources' , 'app' ) ,
25
- ELECTRON : path . join ( APP_PATH , 'Contents' , 'MacOS' , 'Electron' ) ,
26
24
platform : 'darwin' ,
27
25
arch : 'x64' ,
28
26
version : pkg . electron_version ,
29
27
icon : path . resolve ( __dirname , '../images/darwin/scout.icns' ) ,
30
- background : path . resolve ( __dirname , '../images/darwin/background.png' ) ,
31
28
overwrite : true ,
29
+ prune : true ,
32
30
'app-bundle-id' : 'com.mongodb.scout' ,
33
31
'app-version' : pkg . version ,
34
32
sign : '90E39AA7832E95369F0FC6DAF823A04DFBD9CF7A' ,
@@ -37,7 +35,23 @@ var CONFIG = module.exports = {
37
35
name : 'MongoDB Prototcol' ,
38
36
schemes : [ 'mongodb' ]
39
37
}
40
- ] ,
38
+ ]
39
+ } ;
40
+
41
+ // Adjust config via environment variables
42
+ if ( process . env . SCOUT_INSTALLER_UNSIGNED !== undefined ) {
43
+ PACKAGER_CONFIG . sign = null ;
44
+ }
45
+
46
+ // @todo (imlucas): Standardize `electron-installer-dmg`
47
+ // options w/ `electron-installer-squirrel-windows`.
48
+ var INSTALLER_CONFIG = {
49
+ name : pkg . product_name ,
50
+ out : path . resolve ( __dirname , '../dist' ) ,
51
+ icon : path . resolve ( __dirname , '../images/darwin/scout.icns' ) ,
52
+ appPath : APP_PATH ,
53
+ overwrite : true ,
54
+ background : path . resolve ( __dirname , '../images/darwin/background.png' ) ,
41
55
// The following only modifies "x","y" values from defaults
42
56
contents : [
43
57
{
@@ -55,28 +69,19 @@ var CONFIG = module.exports = {
55
69
]
56
70
} ;
57
71
58
- module . exports . RESOURCES = path . join ( APP_PATH , 'Contents' , 'Resources' ) ;
59
-
60
- // Adjust config via environment variables
61
- if ( process . env . SCOUT_INSTALLER_UNSIGNED !== undefined ) {
62
- CONFIG . sign = null ;
63
- }
64
-
65
- debug ( 'packager config: ' , JSON . stringify ( CONFIG , null , 2 ) ) ;
66
-
67
72
module . exports . build = function ( done ) {
68
73
fs . exists ( APP_PATH , function ( exists ) {
69
74
if ( exists ) {
70
75
debug ( '.app already exists. skipping packager run.' ) ;
71
76
return done ( ) ;
72
77
}
73
78
debug ( 'running packager to create electron binaries...' ) ;
74
- packager ( CONFIG , done ) ;
79
+ packager ( PACKAGER_CONFIG , done ) ;
75
80
} ) ;
76
81
} ;
77
82
78
83
var verify = function ( done ) {
79
- var cmd = 'codesign --verify "' + CONFIG . appPath + '"' ;
84
+ var cmd = 'codesign --verify "' + PACKAGER_CONFIG . appPath + '"' ;
80
85
debug ( 'Running' , cmd ) ;
81
86
cp . exec ( cmd , done ) ;
82
87
} ;
@@ -85,11 +90,11 @@ module.exports.installer = function(done) {
85
90
debug ( 'creating installer...' ) ;
86
91
87
92
var tasks = [ ] ;
88
- if ( CONFIG . sign ) {
93
+ if ( PACKAGER_CONFIG . sign ) {
89
94
tasks . push ( verify ) ;
90
95
}
91
96
92
- tasks . push ( _ . partial ( createDMG , CONFIG ) ) ;
97
+ tasks . push ( _ . partial ( createDMG , INSTALLER_CONFIG ) ) ;
93
98
94
99
series ( tasks , function ( err ) {
95
100
if ( err ) {
0 commit comments