Packing logic changed

This commit is contained in:
Karoid
2020-02-25 19:21:22 +09:00
parent 00b6b34f3a
commit ba18e5b185
5 changed files with 51 additions and 8 deletions

View File

@@ -2,6 +2,25 @@
이 프로젝트는 ZXPInstaller를 포크하여 뮤팟 PProPanel을 설치하는 프로그램으로 변경시킨 프로젝트입니다. GPL 라이선스에 따라 소스코드가 공개되어 있습니다. 이 프로젝트는 ZXPInstaller를 포크하여 뮤팟 PProPanel을 설치하는 프로그램으로 변경시킨 프로젝트입니다. GPL 라이선스에 따라 소스코드가 공개되어 있습니다.
# DMG, EXE 만들기
시도를 하다하다 실패해서 결국 DMG파일은 Mac OS에서, EXE는 윈도우에서 생성했다
우선 DMG 파일 생성하는 방법
```
npm install
npm run pack:osx
```
이러면 app 파일이 release/osx 폴더에 생긴다. 이제 이걸 Disk Utility를 이용해서 DMG Image를 만들면 끝!
EXE파일은 더 복잡하다.
```
npm run build:win
```
이후 [nsis](https://nsis.sourceforge.io/Download)를 설치해야 한다. 그리고 EXE 파일을 이 프로그램을 이용해 만든다
```
makensis assets/win/installer.nsi
```
파일명이 매칭이 안되면 제대로 안만들어진다. nsi파일을 수정해라
# How it works # How it works
ZXPInstaller uses Electron (http://electron.atom.io) to create a cross platform HTML/node.js app. The app spawns a child process for the Adobe Extension Manager command line utility to install the ZXP. ZXPInstaller uses Electron (http://electron.atom.io) to create a cross platform HTML/node.js app. The app spawns a child process for the Adobe Extension Manager command line utility to install the ZXP.

Binary file not shown.

View File

@@ -31,13 +31,13 @@ global.Messages = function() {
message: 'Installation failed because the extension does not contain a valid code signature.' message: 'Installation failed because the extension does not contain a valid code signature.'
},{ },{
codes: [403,411], codes: [403,411],
message: 'Installation failed because the extension is not compatible with the installed applications.' message: '플러그인과 설치된 프리미어 프로가 호환되지 않아 설치에 실패함'
},{ },{
codes: [407,408], codes: [407,408],
message: 'Installation failed because this extension requires another extension.' message: 'Installation failed because this extension requires another extension.'
},{ },{
codes: [412], codes: [412],
message: 'Installation failed because an extension of the same name exists.' message: '이미 플러그인이 설치되어 있습니다.'
},{ },{
codes: [418], codes: [418],
message: 'Installation failed because a newer version of the extension is installed.' message: 'Installation failed because a newer version of the extension is installed.'
@@ -46,10 +46,10 @@ global.Messages = function() {
message: 'Please close all Adobe applications before installing extensions.' message: 'Please close all Adobe applications before installing extensions.'
},{ },{
codes: [458], codes: [458],
message: 'Installation failed because none of the required applications are installed' message: '프리미어 프로가 설치되어 있지 않아 플러그인 설치에 실패함'
},{ },{
codes: [459], codes: [459],
message: 'Installation failed because the extension is not compatible with the installed applications.' message: '플러그인과 설치된 프리미어 프로가 호환되지 않아 설치에 실패함'
} }
]; ];

24
assets/win/installer.nsi Normal file
View File

@@ -0,0 +1,24 @@
!define APP_NAME "Mewpot_Plugin_Installer"
!include MUI.nsh
!define MUI_PAGE_HEADER_TEXT "${APP_NAME}"
!define MUI_ICON "D:\1.pj\mewpot-ppropanel-installer\assets\win\icon.ico"
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "Korean"
OutFile "D:\1.pj\mewpot-ppropanel-installer\release\win\${APP_NAME} Setup.exe"
ShowInstDetails "nevershow"
Section
# Check files
Push "$TEMP\${APP_NAME}"
Call isEmptyDir
Pop $0
SetOutPath "$TEMP\${APP_NAME}"
File /r "D:\1.pj\mewpot-ppropanel-installer\release\win\Mewpot_Plugin_Installer-win32\*"
exec '"$TEMP\${APP_NAME}\${APP_NAME}.exe"'
Quit
SectionEnd

View File

@@ -15,11 +15,11 @@
"clean:osx": "rm -rf ./release/osx", "clean:osx": "rm -rf ./release/osx",
"clean:win": "rm -rf ./release/win", "clean:win": "rm -rf ./release/win",
"build": "npm run clean && npm run build:osx && npm run build:win", "build": "npm run clean && npm run build:osx && npm run build:win",
"build:osx": "npm run clean:osx && ./node_modules/.bin/electron-packager ./app \"ZXPInstaller\" --out=release/osx --platform=darwin --arch=x64 --version=0.25.3 --icon=assets/osx/icon.icns", "build:osx": "npm run clean:osx && ./node_modules/.bin/electron-packager ./app \"Mewpot_Plugin_Installer\" --out=release/osx --platform=darwin --arch=x64 --version=0.25.3 --icon=assets/osx/icon.icns",
"build:win": "npm run clean:win && ./node_modules/.bin/electron-packager ./app \"ZXPInstaller\" --out=release/win --platform=win32 --arch=ia32 --version=0.25.3 --icon=assets/win/icon.ico", "build:win": "./node_modules/.bin/electron-packager ./app \"Mewpot_Plugin_Installer\" --out=release/win --platform=win32 --arch=ia32 --version=0.25.3 --icon=assets/win/icon.ico",
"pack": "npm run pack:osx && npm run pack:win", "pack": "npm run pack:osx && npm run pack:win",
"pack:osx": "npm run build:osx && ./node_modules/.bin/electron-builder \"release/osx/ZXPInstaller.app\" --platform=macos --out=\"release/osx\" --config=packager.json", "pack:osx": "npm run build:osx && ./node_modules/.bin/electron-builder \"release/osx/Mewpot_Plugin_Installer.app\" --platform=macos --out=\"release/osx\" --config=packager.json",
"pack:win": "./node_modules/.bin/electron-builder \"release/win/ZXPInstaller-win32\" --platform=win --out=\"release/win\" --config=packager.json" "pack:win": "./node_modules/.bin/electron-builder \"release/win/Mewpot_Plugin_Installer-win32\" --platform=win --out=\"release/win\" --config=packager.json"
}, },
"repository": { "repository": {
"type": "git", "type": "git",