app download + building script
This commit is contained in:
parent
45b9d2cf19
commit
6fb5fbc708
|
@ -149,7 +149,8 @@ $RECYCLE.BIN/
|
||||||
.LSOverride
|
.LSOverride
|
||||||
|
|
||||||
# Icon must end with two \r
|
# Icon must end with two \r
|
||||||
Icon
|
Icon
|
||||||
|
|
||||||
|
|
||||||
# Thumbnails
|
# Thumbnails
|
||||||
._*
|
._*
|
||||||
|
@ -170,3 +171,5 @@ Network Trash Folder
|
||||||
Temporary Items
|
Temporary Items
|
||||||
.apdisk
|
.apdisk
|
||||||
|
|
||||||
|
app.zip
|
||||||
|
/appcode
|
|
@ -0,0 +1,14 @@
|
||||||
|
const axios = require('axios').default;
|
||||||
|
const unzip = require('unzip-stream');
|
||||||
|
const fs = require('fs');
|
||||||
|
const download = require('download');
|
||||||
|
|
||||||
|
axios.get('https://git.odit.services/api/v1/repos/lfk/scanclient/releases').then(({ data }) => {
|
||||||
|
(async () => {
|
||||||
|
const download_file = data[0].assets.find((a) => a.name === 'dist.zip').browser_download_url;
|
||||||
|
fs.writeFileSync('app.zip', await download(download_file));
|
||||||
|
fs.createReadStream('app.zip').pipe(unzip.Parse()).on('entry', () => {
|
||||||
|
fs.createReadStream('app.zip').pipe(unzip.Extract({ path: './appcode/' }));
|
||||||
|
});
|
||||||
|
})();
|
||||||
|
});
|
|
@ -0,0 +1,39 @@
|
||||||
|
const { app, BrowserWindow } = require('electron');
|
||||||
|
const path = require('path');
|
||||||
|
|
||||||
|
function createWindow() {
|
||||||
|
const mainWindow = new BrowserWindow({
|
||||||
|
width: 800,
|
||||||
|
height: 600,
|
||||||
|
fullscreen: true
|
||||||
|
// webPreferences: {
|
||||||
|
// preload: path.join(__dirname, 'preload.js')
|
||||||
|
// }
|
||||||
|
});
|
||||||
|
mainWindow.loadFile('appcode/dist/index.html');
|
||||||
|
// mainWindow.removeMenu();
|
||||||
|
// mainWindow.webContents.openDevTools()
|
||||||
|
}
|
||||||
|
|
||||||
|
// This method will be called when Electron has finished
|
||||||
|
// initialization and is ready to create browser windows.
|
||||||
|
// Some APIs can only be used after this event occurs.
|
||||||
|
app.whenReady().then(() => {
|
||||||
|
createWindow();
|
||||||
|
|
||||||
|
app.on('activate', function() {
|
||||||
|
// On macOS it's common to re-create a window in the app when the
|
||||||
|
// dock icon is clicked and there are no other windows open.
|
||||||
|
if (BrowserWindow.getAllWindows().length === 0) createWindow();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
// Quit when all windows are closed, except on macOS. There, it's common
|
||||||
|
// for applications and their menu bar to stay active until the user quits
|
||||||
|
// explicitly with Cmd + Q.
|
||||||
|
app.on('window-all-closed', function() {
|
||||||
|
if (process.platform !== 'darwin') app.quit();
|
||||||
|
});
|
||||||
|
|
||||||
|
// In this file you can include the rest of your app's specific main process
|
||||||
|
// code. You can also put them in separate files and require them here.
|
|
@ -0,0 +1,53 @@
|
||||||
|
{
|
||||||
|
"name": "@lfk/scanclient-electron",
|
||||||
|
"version": "0.0.0",
|
||||||
|
"description": "minimal electron application",
|
||||||
|
"main": "main.js",
|
||||||
|
"scripts": {
|
||||||
|
"download": "node download.js",
|
||||||
|
"build": "yarn download && yarn electron:package",
|
||||||
|
"electron:start": "electron-forge start",
|
||||||
|
"electron:package": "electron-forge package"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@electron-forge/cli": "^6.0.0-beta.54",
|
||||||
|
"@electron-forge/maker-deb": "^6.0.0-beta.54",
|
||||||
|
"@electron-forge/maker-rpm": "^6.0.0-beta.54",
|
||||||
|
"@electron-forge/maker-squirrel": "^6.0.0-beta.54",
|
||||||
|
"@electron-forge/maker-zip": "^6.0.0-beta.54",
|
||||||
|
"@taraus-he/tdunzip": "^1.0.4",
|
||||||
|
"axios": "^0.21.1",
|
||||||
|
"download": "^8.0.0",
|
||||||
|
"electron-nightly": "14.0.0-nightly.20210319",
|
||||||
|
"extract-zip": "^2.0.1",
|
||||||
|
"js-file-downloader": "^1.1.16",
|
||||||
|
"unzip-stream": "^0.3.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"electron-squirrel-startup": "1.0.0"
|
||||||
|
},
|
||||||
|
"config": {
|
||||||
|
"forge": {
|
||||||
|
"packagerConfig": {},
|
||||||
|
"makers": [
|
||||||
|
{
|
||||||
|
"name": "@electron-forge/maker-zip",
|
||||||
|
"platforms": [
|
||||||
|
"darwin"
|
||||||
|
],
|
||||||
|
"config": {
|
||||||
|
"name": "lfk__scanclient"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "@electron-forge/maker-deb",
|
||||||
|
"config": {}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "@electron-forge/maker-rpm",
|
||||||
|
"config": {}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue