diff options
author | 0neGal <mail@0negal.com> | 2023-03-09 16:11:18 +0100 |
---|---|---|
committer | 0neGal <mail@0negal.com> | 2023-03-09 16:13:50 +0100 |
commit | d59cbd05f3d238b69458df458b58b67b439f0590 (patch) | |
tree | 40fefe6e57da4069c81c386816dd586974b0769c | |
parent | e666a607a66b560036c853b3a163aedc1b5ab638 (diff) | |
download | Viper-d59cbd05f3d238b69458df458b58b67b439f0590.tar.gz Viper-d59cbd05f3d238b69458df458b58b67b439f0590.zip |
download Northstar to <cache_dir>/vipertmp
"cache_dir" being wherever your OS puts it's cache, it's the same place
mods.js uses to download mods.
This prevents cluttering up the gamepath with temporary files.
-rw-r--r-- | src/app/main.js | 3 | ||||
-rw-r--r-- | src/modules/settings.js | 2 | ||||
-rw-r--r-- | src/modules/update.js | 17 |
3 files changed, 17 insertions, 5 deletions
diff --git a/src/app/main.js b/src/app/main.js index 1c846b4..7382a37 100644 --- a/src/app/main.js +++ b/src/app/main.js @@ -1,6 +1,6 @@ const fs = require("fs"); const path = require("path"); -const { ipcRenderer, shell } = require("electron"); +const { app, ipcRenderer, shell } = require("electron"); const lang = require("../lang"); var modsobj = {}; @@ -46,7 +46,6 @@ if (fs.existsSync("viper.json")) { } settings = {...settings, ...json}; - settings.zip = path.join(settings.gamepath + "/northstar.zip"); if (settings.gamepath.length === 0) { setpath(false); diff --git a/src/modules/settings.js b/src/modules/settings.js index d71ea2a..76326cc 100644 --- a/src/modules/settings.js +++ b/src/modules/settings.js @@ -40,7 +40,7 @@ if (fs.existsSync("viper.json")) { ...settings, ...conf } - settings.zip = path.join(settings.gamepath + "/northstar.zip"); + settings.zip = path.join(app.getPath("cache"), "vipertmp/northstar.zip"); let args = path.join(settings.gamepath, "ns_startup_args.txt"); if (fs.existsSync(args)) { diff --git a/src/modules/update.js b/src/modules/update.js index 82a6df1..534a5af 100644 --- a/src/modules/update.js +++ b/src/modules/update.js @@ -161,7 +161,7 @@ update.northstar = async () => { let ns_version = version.northstar(); const latest_version = await requests.getLatestNsVersion(); - console.log(latest_version) + if (latest_version == false) { ipcMain.emit("ns-update-event", "cli.update.noInternet"); return; @@ -187,7 +187,20 @@ update.northstar = async () => { exclude_files(); // start the download of the zip - https.get(requests.getLatestNsVersionLink(), (res) => { + https.get(requests.getLatestNsVersionLink() + "asd", (res) => { + let tmp = path.dirname(settings.zip); + + if (fs.existsSync(tmp)) { + if (! fs.statSync(tmp).isDirectory()) { + fs.rmSync(tmp); + } + } else { + fs.mkdirSync(tmp); + if (fs.existsSync(settings.zip)) { + fs.rmSync(settings.zip); + } + } + let stream = fs.createWriteStream(settings.zip); res.pipe(stream); |