diff --git a/Code/Form1.cs b/Code/Form1.cs index 05d0a25..c7e2baa 100644 --- a/Code/Form1.cs +++ b/Code/Form1.cs @@ -70,6 +70,7 @@ namespace Flowframes GetWebInfo.LoadNews(newsLabel); GetWebInfo.LoadPatronListCsv(patronsLabel); Updater.AsyncUpdateCheck(); + Updater.UpdateModelList(); Python.CheckCompression(); } catch (Exception e) diff --git a/Code/Forms/SettingsForm.Designer.cs b/Code/Forms/SettingsForm.Designer.cs index 6f4e110..399e10e 100644 --- a/Code/Forms/SettingsForm.Designer.cs +++ b/Code/Forms/SettingsForm.Designer.cs @@ -1670,6 +1670,7 @@ this.modelsBaseUrl.ForeColor = System.Drawing.Color.White; this.modelsBaseUrl.FormattingEnabled = true; this.modelsBaseUrl.Items.AddRange(new object[] { + "https://raw.githubusercontent.com/n00mkrad/flowframes/main/Models/", "https://dl.nmkd.de/flowframes/mdl/", "http://45.132.246.240/dl/flowframes/mdl/", "http://104.225.145.33/models/"}); diff --git a/Code/IO/Config.cs b/Code/IO/Config.cs index d3ef38c..4237d03 100644 --- a/Code/IO/Config.cs +++ b/Code/IO/Config.cs @@ -156,7 +156,7 @@ namespace Flowframes.IO if (key == "ncnnThreads") return WriteDefault(key, "1"); if (key == "dainNcnnTilesize") return WriteDefault(key, "768"); // Debug / Other / Experimental - if (key == "modelsBaseUrl") return WriteDefault(key, "https://dl.nmkd.de/flowframes/mdl/"); + if (key == "modelsBaseUrl") return WriteDefault(key, "https://raw.githubusercontent.com/n00mkrad/flowframes/main/Models/"); if (key == "ffEncPreset") return WriteDefault(key, "medium"); if (key == "ffEncArgs") return WriteDefault(key, ""); diff --git a/Code/OS/Updater.cs b/Code/OS/Updater.cs index 12d56d9..a8cf937 100644 --- a/Code/OS/Updater.cs +++ b/Code/OS/Updater.cs @@ -2,11 +2,8 @@ using Flowframes.Forms; using Flowframes.IO; using System; -using System.Collections.Generic; using System.IO; -using System.Linq; using System.Net; -using System.Text; using System.Threading.Tasks; using System.Windows.Forms; @@ -132,5 +129,26 @@ namespace Flowframes.OS Logger.Log($"You are running Flowframes {installed}. The latest Patreon version is {latestPat}, the latest free version is {latestFree}."); } + + public static async Task UpdateModelList() + { + try + { + Networks.networks.ForEach(ai => + { + var client = new WebClient(); + string aiName = Path.GetFileNameWithoutExtension(ai.pkg.fileName); + string url = $"https://raw.githubusercontent.com/n00mkrad/flowframes/main/Pkgs/{aiName}/models.txt"; + string savePath = Path.Combine(Paths.GetPkgPath(), aiName, "models.txt"); + if(File.Exists(savePath)) File.Delete(savePath); + client.DownloadFile(url, savePath); + }); + } + catch (Exception e) + { + Logger.Log("Non-critical error while performing model list update. See logs for details."); + Logger.Log($"{e.Message}\n{e.StackTrace}", true); + } + } } }