aboutsummaryrefslogtreecommitdiff
path: root/src/modules/packages.js
AgeCommit message (Collapse)Author
2024-02-05switch to unzip-stream over unzipperv1.11.00neGal
unzipper apparently has a bug that causes extracted files to be corrupted, switching to unzip-stream may not be the best long term, but it at least solves this corrupting problem!
2024-02-04removed use of "vipertmp" folder0neGal
Previously we downloaded the Northstar archive and packages to a folder named "vipertmp" in the system's cache folder, now that's just moved into "Viper/Temp" (still inside the system's cache folder) With this, all Viper cache is stored in the same folder in the system's cache folder... Wait... Why wasn't it always like this? Oh right, my past stupidity and lack of foresight. Oh well. "vipertmp" still gets deleted when clearing install cache, along with the new folder, so doing so will by itself clean up the old folder.
2024-02-04merge src/modules/window.js into src/win.js0neGal
I intended to do this when creating src/win.js, but wanted it to be in a different commit, as that commit made pretty large changes as well. So no more `main_win`, `win_show` and confusion between what `win` is.
2024-02-04move IPC events into their respective modules0neGal
I've not been able to find anything that breaks from this, as I've gone through every IPC event that got moved, to ensure it still functions, and all the breakage I found has since been fixed. IPC events that dont fit in any particular module is also now in the new file named `src/app/modules/ipc.js` There's also another module `src/win.js`, which lets you get the `BrowserWindow` outside of `src/index.js` I also took the oppertunity to clean up some of the code when moving it around, and adding a couple comments, as some of it was quite horrid.
2024-02-03src/modules/settings.js now provides a function0neGal
This fixes a couple issues where the main process wouldn't actually get changes made to the settings, this fixes that. On top of this, changing settings is now done with `settings.set()` There shouldn't be any breakage from this change, but I suppose it is possible. Especially because the `settings()` function still does contain backup options set, meaning `settings.nsargs` is technically still valid, but dont expect it to actually be updated when that variable is changed, its merely here to avoid any problems.
2023-08-26fixed edge case where packages.list() still broke0neGal
Oopsie woopsie, my badddd, so sowwieeee, i wwwont doww it agaainnn!
2023-08-20fixed packages.list() assuming packages dir exists0neGal
This generally is fine, as the folder is created on startup... IF Northstar is installed! And so, if you start Viper for the first time or Viper as only just extracted/created the R2Northstar folder, then the folder wont exist, but it'll simply assume as such. Now we actually handle this correctly.
2023-07-25fixed packages having a "v" in their version0neGal
This messed with how Northstar searches for packages, as it doesn't conform to it's standard.
2023-07-24fixed packages.js never requiring the lang module0neGal
whoopsie, i made an oopsie, doopsie doo, my bad uwu, im so sowwyyy, whoooppss, i caused an uncauwght exceptwion, ooowps ;w;
2023-07-24make sure profile exists, then create packages dirpackages-dir0neGal
If the gamepath isn't found or unmounted or similar, then the profile doesn't exist either, but we previously just assumed that it did, now we refuse to create the `packages` folder, fixing an error.
2023-07-24largely improve how we convert mods to packages0neGal
Convert is a strong word, in reality, when a user installs (and thereby also updates) a package, we attempt to search for a mod that we can with pretty high confidence, we could theoretically make this even better, but at some point you'll accidentally delete mods that are manually installed and weren't actually the right ones.
2023-07-24properly detect if a package has mods0neGal
2023-07-24fixed updating not removing older packages0neGal
2023-07-24cleanup leftover files when installing packages0neGal
2023-07-24use prettier console logging for packages.js0neGal
2023-07-22added English strings for plugin install prompt0neGal
2023-07-22mostly support installing packages through GUI0neGal
Install toasts, installing overall, dependencies and so forth, all seem to be fully functional, however more bug testing is probably required to concluce whether that is actually the case or not... This also doesn't break `src/modules/mods.js`, i.e dragging mods in to manually install them still functions the same as always.
2023-07-21mods from packages can be removed in the frontend0neGal
I also love how I spent a very long time trying to figure out why Electron's serializer was failing, turns out, it just throws errors when it encounters functions, instead of stripping them out, like `JSON.stringify()` does Oh well...
2023-07-21rename mods.list() properties to use snake case0neGal
I may or may not have missed some properties or something somewhere, perhaps we'll see if something ends up broken in the future...
2023-07-21basic support for showing packages in frontend0neGal
2023-07-16minor changes to packages.install()0neGal
2023-07-16remove mods in old folder if installing to new one0neGal
If you're now installing a mod that's currently in the `mods/` folder it'll remove that, then install the new one to `packages/` with the new naming scheme and everything.
2023-07-16fixed unzipper pre-maturily thinking it's finished0neGal
This caused errors where the folder would already be moved even though it's not entirely done unzipping.
2023-07-16fixed packages without plugins not installing0neGal
2023-07-16initial support for packages dir0neGal
This is missing a lot of things, notably support for detecting and installing dependencies, it also is actually being used by the frontend, that still uses `mods.js`, this'll change soon™️ It should also when done, be capable of removing mods installed in the old `mods/` folder when updating those mods, and then installing in the new `packages/` folder, making the upgrade a smooth ride.