From a1e4a157b5a240c65865886db858ff5206dcdb32 Mon Sep 17 00:00:00 2001 From: Bitl Date: Sun, 16 Feb 2020 20:48:26 -0700 Subject: [PATCH] auto updater. Done live on dev stream 1! --- NovetusLauncher/NovetusCMD/NovetusCMD.csproj | 13 ++++++ NovetusLauncher/NovetusCMD/packages.config | 3 ++ .../NovetusFuncs/NovetusFuncs.projitems | 1 + NovetusLauncher/NovetusFuncs/Updater.cs | 44 +++++++++++++++++++ .../NovetusLauncher/NovetusLauncher.csproj | 13 ++++++ .../NovetusLauncher/packages.config | 3 ++ README.md | 1 + 7 files changed, 78 insertions(+) create mode 100644 NovetusLauncher/NovetusFuncs/Updater.cs diff --git a/NovetusLauncher/NovetusCMD/NovetusCMD.csproj b/NovetusLauncher/NovetusCMD/NovetusCMD.csproj index a11cabe..0b154e1 100644 --- a/NovetusLauncher/NovetusCMD/NovetusCMD.csproj +++ b/NovetusLauncher/NovetusCMD/NovetusCMD.csproj @@ -51,12 +51,24 @@ false + + ..\packages\GitHubUpdate.1.2.0.0\lib\net45\GitHubUpdate.dll + True + 4.0 ..\packages\Mono.Nat.1.2.24.0\lib\net40\Mono.Nat.dll + + ..\packages\Octokit.0.3.4\lib\net45\Octokit.dll + True + + + ..\packages\semver.1.1.2\lib\net45\Semver.dll + True + 3.5 @@ -68,6 +80,7 @@ + diff --git a/NovetusLauncher/NovetusCMD/packages.config b/NovetusLauncher/NovetusCMD/packages.config index 08e33ab..d7c4187 100644 --- a/NovetusLauncher/NovetusCMD/packages.config +++ b/NovetusLauncher/NovetusCMD/packages.config @@ -1,4 +1,7 @@  + + + \ No newline at end of file diff --git a/NovetusLauncher/NovetusFuncs/NovetusFuncs.projitems b/NovetusLauncher/NovetusFuncs/NovetusFuncs.projitems index 846caf7..f94d9e3 100644 --- a/NovetusLauncher/NovetusFuncs/NovetusFuncs.projitems +++ b/NovetusLauncher/NovetusFuncs/NovetusFuncs.projitems @@ -27,6 +27,7 @@ + diff --git a/NovetusLauncher/NovetusFuncs/Updater.cs b/NovetusLauncher/NovetusFuncs/Updater.cs new file mode 100644 index 0000000..37b5db7 --- /dev/null +++ b/NovetusLauncher/NovetusFuncs/Updater.cs @@ -0,0 +1,44 @@ +using GitHubUpdate; +using System.Windows.Forms; + +public class Updater +{ + private string GitHubName = ""; + private string GitHubRepo = ""; + + public Updater() + { + } + + public void setName(string text) + { + GitHubName = text; + } + + public void setRepo(string text) + { + GitHubRepo = text; + } + + public async void UpdateNovetus() + { + var checker = new UpdateChecker(GitHubName, GitHubRepo, GlobalVars.Version); + + UpdateType update = await checker.CheckUpdate(); + + if (update != UpdateType.None) + { + // Ask the user if he wants to update + // You can use the prebuilt form for this if you want (it's really pretty!) + var result = new UpdateNotifyDialog(checker).ShowDialog(); + if (result == DialogResult.Yes) + { + checker.DownloadAsset("Release-" + checker.getCurrentRelease().TagName + ".zip"); // opens it in the user's browser + if (!string.IsNullOrWhiteSpace(checker.getDownloadOutcome())) + { + MessageBox.Show(checker.getDownloadOutcome(), "Novetus Updater", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + } + } +} diff --git a/NovetusLauncher/NovetusLauncher/NovetusLauncher.csproj b/NovetusLauncher/NovetusLauncher/NovetusLauncher.csproj index 0ad65f6..22db203 100644 --- a/NovetusLauncher/NovetusLauncher/NovetusLauncher.csproj +++ b/NovetusLauncher/NovetusLauncher/NovetusLauncher.csproj @@ -55,9 +55,21 @@ false + + ..\packages\GitHubUpdate.1.2.0.0\lib\net45\GitHubUpdate.dll + True + ..\packages\Mono.Nat.1.2.24.0\lib\net40\Mono.Nat.dll + + ..\packages\Octokit.0.3.4\lib\net45\Octokit.dll + True + + + ..\packages\semver.1.1.2\lib\net45\Semver.dll + True + 3.5 @@ -69,6 +81,7 @@ + diff --git a/NovetusLauncher/NovetusLauncher/packages.config b/NovetusLauncher/NovetusLauncher/packages.config index 08e33ab..d7c4187 100644 --- a/NovetusLauncher/NovetusLauncher/packages.config +++ b/NovetusLauncher/NovetusLauncher/packages.config @@ -1,4 +1,7 @@  + + + \ No newline at end of file diff --git a/README.md b/README.md index b9671a5..a7cd55a 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ ![Logo](https://github.com/Bitl/Novetus_src/raw/master/Graphics/NOVETUS_small.png) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/492ffef06085409ab50b73522e31be4c)](https://www.codacy.com/manual/Bitl/Novetus_src?utm_source=github.com&utm_medium=referral&utm_content=Bitl/Novetus_src&utm_campaign=Badge_Grade) +[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active) Source code for Novetus' launcher, installer, LUA scripts, and server.