| @@ -1113,7 +1113,28 @@ function __main( selectedinstance ){ | |||
| , installcmd: ['MSIEXEC.exe', ['/i' | |||
| , path.normalize(downloadsdir + '/' + 'python-2.7.18.amd64.msi') | |||
| , 'ACCEPT=YES', '/passive']] | |||
| , preinstallsteps : function() { return Promise.resolve(true) } | |||
| , preinstallsteps: function() { | |||
| var self = this; | |||
| console.log(self.shellcmd + ' preinstall steps') | |||
| console.log(selectedinstance.root + '/.elxr/run-' + runtimestamp + '/download.bat' + ' ' + self.url + ' ' + downloadsdir + '/' + self.installer) | |||
| var steps = []; | |||
| steps.push( | |||
| function(){ | |||
| if (!existsSync(downloadsdir + '/' + self.installer)) { | |||
| console.log(selectedinstance.root + '/.elxr/run-' + runtimestamp + '/download.bat', [self.url, downloadsdir + '/' + self.installer]) | |||
| return nodeShellExec(selectedinstance.root + '/.elxr/run-' + runtimestamp + '/download.bat', [self.url, downloadsdir + '/' + self.installer] | |||
| , { waitmsg : 'downloading ' + self.shellcmd + ' please wait' }) | |||
| } | |||
| else { | |||
| console.log(self.installer + ' Already exits Download skipped.') | |||
| return Promise.resolve(true) | |||
| } | |||
| } | |||
| ) | |||
| return any(steps) | |||
| // return any([any(steps), any(prompts)]) | |||
| } | |||
| , install : function() { | |||
| var self = this; | |||
| var ifns = [self.installcmd] | |||
| @@ -1134,14 +1155,35 @@ function __main( selectedinstance ){ | |||
| , { | |||
| shellcmd: 'code' | |||
| , optional : true | |||
| , url: 'https://vscode-update.azurewebsites.net/latest/win32-x64/stable' | |||
| , installer: 'vscode-win32-x64-latest-stable.exe' | |||
| , url: 'https://az764295.vo.msecnd.net/stable/c722ca6c7eed3d7987c0d5c3df5c45f6b15e77d1/VSCodeUserSetup-x64-1.65.2.exe' | |||
| , installer: 'VSCodeUserSetup-x64-1.65.2.exe' | |||
| , installcmd: ['cmd', ['/c', 'start', | |||
| '/WAIT', downloadsdir + '/' + 'Git-2.33.0.2-64-bit.exe' | |||
| '/WAIT', downloadsdir + '/' + 'VSCodeUserSetup-x64-1.65.2.exe' | |||
| , '/VERYSILENT' | |||
| // , '/MERGETASKS=!runcode' // This is required only for vscode... | |||
| ]] | |||
| , preinstallsteps : function() { return Promise.resolve(true) } | |||
| , preinstallsteps: function() { | |||
| var self = this; | |||
| console.log(self.shellcmd + ' preinstall steps') | |||
| console.log(selectedinstance.root + '/.elxr/run-' + runtimestamp + '/download.bat' + ' ' + self.url + ' ' + downloadsdir + '/' + self.installer) | |||
| var steps = []; | |||
| steps.push( | |||
| function(){ | |||
| if (!existsSync(downloadsdir + '/' + self.installer)) { | |||
| console.log(selectedinstance.root + '/.elxr/run-' + runtimestamp + '/download.bat', [self.url, downloadsdir + '/' + self.installer]) | |||
| return nodeShellExec(selectedinstance.root + '/.elxr/run-' + runtimestamp + '/download.bat', [self.url, downloadsdir + '/' + self.installer] | |||
| , { waitmsg : 'downloading ' + self.shellcmd + ' please wait' }) | |||
| } | |||
| else { | |||
| console.log(self.installer + ' Already exits Download skipped.') | |||
| return Promise.resolve(true) | |||
| } | |||
| } | |||
| ) | |||
| return any(steps) | |||
| // return any([any(steps), any(prompts)]) | |||
| } | |||
| , install : function() { | |||
| var self = this; | |||
| var ifns = [self.installcmd] | |||