aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author0neGal <mail@0negal.com>2023-03-09 16:11:18 +0100
committer0neGal <mail@0negal.com>2023-03-09 16:13:50 +0100
commitd59cbd05f3d238b69458df458b58b67b439f0590 (patch)
tree40fefe6e57da4069c81c386816dd586974b0769c
parente666a607a66b560036c853b3a163aedc1b5ab638 (diff)
downloadViper-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.js3
-rw-r--r--src/modules/settings.js2
-rw-r--r--src/modules/update.js17
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);