성준영

패키징 과정 추가

1 +//handle setupevents as quickly as possible
2 +if (setupEvents.handleSquirrelEvent()) {
3 + // squirrel event handled and app will exit in 1000ms, so don't do anything else
4 + return;
5 +}
6 +
7 +
1 const {app, BrowserWindow} = require('electron') 8 const {app, BrowserWindow} = require('electron')
2 const path = require('path') 9 const path = require('path')
3 const url = require('url') 10 const url = require('url')
......
1 -const createWindowsInstaller = require('electron-winstaller').createWindowsInstaller
2 -const path = require('path')
3 -
4 -getInstallerConfig()
5 - .then(createWindowsInstaller)
6 - .catch((error) => {
7 - console.error(error.message || error)
8 - process.exit(1)
9 - })
10 -
11 -function getInstallerConfig () {
12 - console.log('creating windows installer')
13 - const rootPath = path.join('./')
14 - const outPath = path.join(rootPath, 'release-builds')
15 -
16 - return Promise.resolve({
17 - appDirectory: path.join(outPath, 'KLAS파일다운로더'),
18 - authors: 'Sung Junyoung',
19 - noMsi: true,
20 - outputDirectory: path.join(outPath, 'windows-installer'),
21 - exe: 'KLAS파일다운로더.exe',
22 - setupExe: 'KLAS파일다운로더-Installer.exe',
23 - setupIcon: path.join(rootPath, 'assets', 'icons', 'win', 'logo_256.ico')
24 - })
25 -}
...\ No newline at end of file ...\ No newline at end of file
1 +var electronInstaller = require('electron-winstaller');
2 +
3 +resultPromise = electronInstaller.createWindowsInstaller({
4 + appDirectory: './release-builds/klasfd-desktop-app-win32-x64',
5 + outputDirectory: './release-builds/klasfd-desktop-app-installer',
6 + exe: 'klasfd-desktop-app.exe',
7 + setupExe: 'KLASFD-Setup.exe',
8 + author: '성준영',
9 + description: 'KLAS 강의자료 손쉽게 다운받기'
10 +});
11 +
12 +resultPromise.then(function () {
13 + console.log("It worked!");
14 +}, function (e) {
15 + console.log('No dice: ' + e.message);
16 + console.log(e);
17 +});
...@@ -4,8 +4,10 @@ ...@@ -4,8 +4,10 @@
4 "main": "app.js", 4 "main": "app.js",
5 "devDependencies": { 5 "devDependencies": {
6 "electron": "^1.6.10", 6 "electron": "^1.6.10",
7 + "electron-builder": "^18.6.2",
7 "electron-connect": "^0.6.1", 8 "electron-connect": "^0.6.1",
8 "electron-installer-dmg": "^0.2.1", 9 "electron-installer-dmg": "^0.2.1",
10 + "electron-winstaller": "^2.6.1",
9 "gulp": "^3.9.1" 11 "gulp": "^3.9.1"
10 }, 12 },
11 "dependencies": { 13 "dependencies": {
...@@ -16,6 +18,7 @@ ...@@ -16,6 +18,7 @@
16 "scripts": { 18 "scripts": {
17 "package-mac": "electron-packager . KLAS파일다운로더 --overwrite --platform=darwin --arch=x64 --icon=./public/images/logo_1024.icns prune=true --out=release-builds", 19 "package-mac": "electron-packager . KLAS파일다운로더 --overwrite --platform=darwin --arch=x64 --icon=./public/images/logo_1024.icns prune=true --out=release-builds",
18 "create-installer-mac": "electron-installer-dmg ./release-builds/KLAS파일다운로더-darwin-x64/KLAS파일다운로더.app KLAS파일다운로더", 20 "create-installer-mac": "electron-installer-dmg ./release-builds/KLAS파일다운로더-darwin-x64/KLAS파일다운로더.app KLAS파일다운로더",
19 - "package-windows":"electron-packager . --overwrite --asar=true --platform=win32 --arch=ia32 --icon=./public/images/logo_256.ico --prune=true --out=release-builds --version-string.CompanyName='CE' --version-string.FileDescription=‘KLAS파일다운로더’ --version-string.ProductName=‘KLAS파일다운로더’" 21 + "package-windows": "electron-packager . --overwrite --asar=true --platform=win32 --arch=x64 --icon=./public/images/logo_256.ico --prune=true --out=release-builds --version-string.CompanyName='CE' --version-string.FileDescription=‘KLAS파일다운로더’ --version-string.ProductName=‘KLAS파일다운로더’",
22 + "create-installer-windows": "node installers/installer-win.js"
20 } 23 }
21 } 24 }
......