From 1e2935d4f5d6138875521f5fcaace49d540531c2 Mon Sep 17 00:00:00 2001 From: Lino Schmidt Date: Sun, 15 May 2022 21:05:08 +0200 Subject: [PATCH] Upgradet to electron-packager --- README.md | 12 +++++------- {src/assets => assets}/blenderScript.py | 0 {src/assets => assets}/template.blend | Bin installer-builder.iss | 21 ++++++--------------- package-lock.json | 3 ++- package.json | 12 +++++++----- src/js/render.js | 2 +- 7 files changed, 21 insertions(+), 29 deletions(-) rename {src/assets => assets}/blenderScript.py (100%) rename {src/assets => assets}/template.blend (100%) diff --git a/README.md b/README.md index fae4774..9e9dbd1 100644 --- a/README.md +++ b/README.md @@ -4,21 +4,19 @@ A 3D Sticks Exporter for EdgeTX/OpenTX logs. Setup: ------ -- Lade [Blender Portable](https://www.blender.org/download) Version herunter und Entpacke es mit dem Namen `blender` in den Ordner `/src/assets`. +- Lade [Blender Portable](https://www.blender.org/download) Version herunter und Entpacke es mit dem Namen `blender` in den Ordner `/assets`. Wenn dieser nicht existiert, erstellen sie den Ordner. -- Kopieren sie die Dateien im Ordner `/src/assets` in den Ordner `%appdata%/stickexportertx/assets`. - Starte eine Console in dem Projektordner und führe den Befehl `npm install` aus um alle notwendingen packages zu installieren. Start: ------ -Kopieren sie die Dateien im Ordner `/src/assets` in den Ordner `%appdata%/stickexportertx/assets`. Um das Programm zu starten, führe den Befehl `npm start` im Projektordner aus. -Build: +Build Windows: ------ -(Noch Nicht Funktionsfähig) -Um das Programm zu Builden, führe den Befehl `npm run package` im Projektordner aus. -Um es dann in einen EXE-Installer zu laden, öffne die Datei `installer-builder.iss` mit dem Programm [Inno Setup Compiler](https://jrsoftware.org/isdl.php#stable) und Führe das Script aus. Der Fertige installer sollte nach dem Compilen im Projektordner/output liegen. +Um das Programm zu Builden, führe den Befehl `npm run package-win` im Projektordner aus. +Öffne die Datei `installer-builder.iss` mit dem Programm [Inno Setup Compiler](https://jrsoftware.org/isdl.php#stable) und Compile das Programm. +Der Fertige installer sollte nach dem Compilen in `/output` landen. Copyright © 2022 Lino Schmidt. All rights reserved. \ No newline at end of file diff --git a/src/assets/blenderScript.py b/assets/blenderScript.py similarity index 100% rename from src/assets/blenderScript.py rename to assets/blenderScript.py diff --git a/src/assets/template.blend b/assets/template.blend similarity index 100% rename from src/assets/template.blend rename to assets/template.blend diff --git a/installer-builder.iss b/installer-builder.iss index 768a54d..94fddf1 100644 --- a/installer-builder.iss +++ b/installer-builder.iss @@ -2,7 +2,7 @@ ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! #define MyAppName "StickExporterTX" -#define MyAppVersion "0.5" +#define MyAppVersion "0.6" #define MyAppPublisher "Lino Schmidt" #define MyAppURL "https://stickexportertx.lino3d.de" #define MyAppExeName "stickexportertx.exe" @@ -22,9 +22,9 @@ DefaultDirName={autopf}\{#MyAppName} DisableProgramGroupPage=yes ; Uncomment the following line to run in non administrative install mode (install for current user only.) ;PrivilegesRequired=lowest -OutputDir=D:\Git\stickexportertx\output +OutputDir=output OutputBaseFilename=stickexportertx-setup -SetupIconFile=D:\Git\stickexportertx\icon.ico +SetupIconFile=icon.ico Compression=lzma SolidCompression=yes WizardStyle=modern @@ -37,16 +37,8 @@ Name: "german"; MessagesFile: "compiler:Languages\German.isl" Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked [Files] -Source: "D:\Git\stickexportertx\out\stickexportertx-win32-x64\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion -Source: "D:\Git\stickexportertx\out\stickexportertx-win32-x64\locales\*"; DestDir: "{app}\locales"; Flags: ignoreversion recursesubdirs createallsubdirs -Source: "D:\Git\stickexportertx\out\stickexportertx-win32-x64\swiftshader\*"; DestDir: "{app}\swiftshader"; Flags: ignoreversion recursesubdirs createallsubdirs -Source: "D:\Git\stickexportertx\out\stickexportertx-win32-x64\*"; DestDir: "{app}"; Flags: ignoreversion -Source: "D:\Git\stickexportertx\out\stickexportertx-win32-x64\resources\app\package.json"; DestDir: "{app}\resources\app"; Flags: ignoreversion -Source: "D:\Git\stickexportertx\out\stickexportertx-win32-x64\resources\app\src\*"; DestDir: "{app}\resources\app\src"; Flags: ignoreversion -Source: "D:\Git\stickexportertx\out\stickexportertx-win32-x64\resources\app\src\js\*"; DestDir: "{app}\resources\app\src\js"; Flags: ignoreversion -Source: "D:\Git\stickexportertx\out\stickexportertx-win32-x64\resources\app\src\css\*"; DestDir: "{app}\resources\app\src\css"; Flags: ignoreversion -Source: "D:\Git\stickexportertx\out\stickexportertx-win32-x64\resources\app\node_modules\*"; DestDir: "{app}\resources\app\node_modules"; Flags: ignoreversion recursesubdirs createallsubdirs -Source: "D:\Git\stickexportertx\out\stickexportertx-win32-x64\resources\app\src\assets\*"; DestDir: "{userappdata}\stickexportertx\assets"; Flags: ignoreversion recursesubdirs createallsubdirs +Source: "release-builds\stickexportertx-win32-ia32\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs +Source: "assets\*"; DestDir: "{app}\assets"; Flags: ignoreversion recursesubdirs createallsubdirs ; NOTE: Don't use "Flags: ignoreversion" on any shared system files [Icons] @@ -54,5 +46,4 @@ Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon [Run] -Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent - +Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 2fe9f23..e4fe5e9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,8 @@ "@electron-forge/maker-rpm": "^6.0.0-beta.63", "@electron-forge/maker-squirrel": "^6.0.0-beta.63", "@electron-forge/maker-zip": "^6.0.0-beta.63", - "electron": "18.1.0" + "electron": "18.1.0", + "electron-packager": "^15.5.1" } }, "node_modules/@electron-forge/async-ora": { diff --git a/package.json b/package.json index f89668e..4b189d1 100644 --- a/package.json +++ b/package.json @@ -1,15 +1,16 @@ { "name": "stickexportertx", - "productName": "stickexportertx", - "version": "0.5", - "description": "A 3D Sticks Exporter for EdgeTX/OpenTX logs.", + "productName": "StickExporterTX", + "version": "0.6", + "description": "A 3D Stick Exporter for EdgeTX/OpenTX Logs.", "main": "src/index.js", "scripts": { "start": "electron-forge start", "package": "electron-forge package", "make": "electron-forge make", "publish": "electron-forge publish", - "lint": "echo \"No linting configured\"" + "lint": "echo \"No linting configured\"", + "package-win": "electron-packager . stickexportertx --overwrite --asar=true --platform=win32 --arch=ia32 --icon=icon.ico --prune=true --out=release-builds --version-string.CompanyName=\"Lino Schmidt\" --version-string.FileDescription=\"3D Stick Exporter for EdgeTX/OpenTX Logs\" --version-string.ProductName=StickExporterTX" }, "keywords": [], "author": { @@ -56,6 +57,7 @@ "@electron-forge/maker-rpm": "^6.0.0-beta.63", "@electron-forge/maker-squirrel": "^6.0.0-beta.63", "@electron-forge/maker-zip": "^6.0.0-beta.63", - "electron": "18.1.0" + "electron": "18.1.0", + "electron-packager": "^15.5.1" } } diff --git a/src/js/render.js b/src/js/render.js index 5618e7e..b34059c 100644 --- a/src/js/render.js +++ b/src/js/render.js @@ -35,7 +35,7 @@ logger.transports.file.resolvePath = () => path.join(dataFolder, "logs", "main.l function startRender() { const {exec} = require("child_process"); - var blenderCons = exec('"' + dataFolder + '\\assets\\blender\\blender" "' + dataFolder + '\\assets\\template.blend" --background --python "' + dataFolder + '\\assets\\blenderScript.py"', {maxBuffer: Infinity}); + var blenderCons = exec('"assets\\blender\\blender" "assets\\template.blend" --background --python "assets\\blenderScript.py"', {maxBuffer: Infinity}); frames = "0"; lastFrame = "0";