Age | Commit message (Collapse) | Author |
|
Smoothly updates and works flawlessly, the only thing that really needs
improvements is the design and on top of that installing mods from a Zip
file over folder.
|
|
Mostly, the installing part needs a bit more look at, to support
archives and different layouts for the mod. Such as searching through an
archive to find the right folder because some mods don't use a proper
layout. I also somewhat mitigated the whole issue of JSON files not
being formatted properly by the mod developer (please just fix your
formatting, I beg you.) by simply assigning the absolute basics, however
we can't know the versions of the mods.
I am not going to go out of my way to write code which can parse a file
that wasn't made to be parsed because whoever wrote it doesn't know what
a JSON file is made of. Simply not happening.
I also added a few locatiolization related things, along with more info
for --mods, so besides the normal counter for "Installed mods" you also
have "Enabled mods" and "Disabled mods", very useful.
The GUI also has a new added "Disabled" tag to mods that are disabled,
however this is a temporary, it looks bad and I don't want it in
release, I just needed a way to distinquish when testing.
Because you can now also enable and disable mods, mods.list() gives back
an Object that goes more or less something like:
{all: ..., enabled: ..., disabled: ... }, take your guesses as to what
everything means, you might even get it in the first try.
|
|
|
|
* [chore] adding electron-updater dependency
* [feat] adding auto-updating mechanism
* [chore] setting package version to v0.8.0
* [fix] restoring original repo URL
* [docs] adding some documentation about publishing new releases
* [chore] adding publish:windows command
* [docs] updating publish instructions with new publish command
* [chore] adding publish:linux command
* [docs] updating publish instructions
* --updatevp, and option to disable auto updates
If you want you can set "autoupdates" to false in your config, no GUI
tools to do this yet. For the CLI auto updates is off by default and
you'll have to use --updatevp.
I also removed the snap package, tho whether this stays as a change is
still to be discussed.
And with the new option I updated the help menu, the man page and
everything along else that needs it.
* removed "soon" parts of README for auto-updates
* [feat] adding French translation for cli.help.updatevp key
* confirmation for restarting the app
Now instead of automatically updating and restarting the app, which may
be slightly confusing to some users, (the app opens then closes and then
opens), it now asks whether you want to restart and open the new
version. If you say no, instead next time you launch it, it'll be on the
new version.
If you want to completely disable updates you can disable it in the
viper.json file...
* [feat] adding French translation for gui.update.available key
* added configuration instruction in README
Co-authored-by: 0neGal <mail@0negal.com>
|
|
|
|
|
|
|
|
The buttons in the GUI disable whilst you're updating Northstar and
potentionally doing other things in the future, I also added a way to
log things in the app, albeit it just prints it in the "Welcome to
Viper!" part of the app, which is just fine.
I also added all the needed language strings for the GUI logs and
removed "gui.missinggamepath" as we use it for both the CLI and GUI even
tho "general.missinggamepath" exists, and so we now use the general one
for both, as the messages are the same.
|
|
The version now refreshes when you update/install Northstar, I renamed
vpVersion/nsVersion to just vpversion/nsversion and
getInstalledVersion() to getNSVersion(), removed uses of
getElementById() with just the ID. I also added English localization.
The versions text color is now bound by a CSS variable (we may use it in
the future again).
I'm also not sure what the point of `style="white-space: nowrap;"` was,
as I don't see much of a difference? Rather instead use `<nobr>` in the
lang file if needed.
Besides that I did tiny code cleanup.
|
|
|
|
That is, it's now using our localization module...
|
|
|
|
|
|
feat: Updates downloading
|
|
|
|
I'm not quite sure what the purpose of this function is considering we
only use it once, and there's not much reason to export it or anything.
|
|
|
|
After game path was set on Windows in first launch, the settings
object would not be written to viper.json file, meaning that on
next start, settings.gamepath variable would be loaded with a ""
value, leading to errors.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
We now just use a fixed string ("viper.json")
|
|
However, I can't figure out a way to directly exclude it in the unzip
package, hence, it just renames the original to "<file>.excluded" when
the extraction is done it then renames it back to it's original aka
"<file>", overwriting what was extracted, which essentially excludes
some files.
If there exists an unzip library/package that has options for excluding
files we should move to that, but until something as such is found the
current way is how we'll do it.
|
|
A bug stopped the settings.zip variable from being set after choosing
the path, this resulted in Viper trying to save the zip to root.
This was only on first launch, relaunching would fix this. For obvious
reasons.
|
|
Northstar requires you to be in the gamepath when launching, so we now
change the current directory when launching.
|
|
I haven't tested this on Windows... And I will in a bit...
|
|
|
|
I think?
|
|
Everything is now in utils.js and simply gets called through IPC calls
which make it quite simple to add CLI arguments...
|