From 945a6081120277654bca230e862cbd8807208b7a Mon Sep 17 00:00:00 2001
From: comp500 <comp500@users.noreply.github.com>
Date: Fri, 20 Jan 2023 17:13:40 +0000
Subject: [PATCH] Modrinth: add support for Canvas shaders

---
 modrinth/modrinth.go | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/modrinth/modrinth.go b/modrinth/modrinth.go
index 5b0627a..868a66b 100644
--- a/modrinth/modrinth.go
+++ b/modrinth/modrinth.go
@@ -51,7 +51,8 @@ func getProjectIdsViaSearch(query string, versions []string) ([]*modrinthApi.Sea
 
 // "Loaders" that are supported regardless of the configured mod loaders
 var defaultMRLoaders = []string{
-	// TODO: check if Iris/Optifine are installed? suggest installing them?
+	// TODO: check if Canvas/Iris/Optifine are installed? suggest installing them?
+	"canvas",
 	"iris",
 	"optifine",
 	"vanilla",   // Core shaders
@@ -59,6 +60,7 @@ var defaultMRLoaders = []string{
 }
 
 var withDatapackPathMRLoaders = []string{
+	"canvas",
 	"iris",
 	"optifine",
 	"vanilla",   // Core shaders
@@ -82,6 +84,7 @@ var loaderFolders = map[string]string{
 	"bungeecord": "plugins",
 	"waterfall":  "plugins",
 	"velocity":   "plugins",
+	"canvas":     "resourcepacks",
 	"iris":       "shaderpacks",
 	"optifine":   "shaderpacks",
 	"vanilla":    "resourcepacks",
@@ -107,7 +110,8 @@ var loaderPreferenceList = []string{
 	// Prefer newer BungeeCord forks
 	"waterfall",
 	"bungeecord",
-	// Prefer Iris shaders to Optifine shaders to core shaders
+	// Prefer Canvas shaders to Iris shaders to Optifine shaders to core shaders
+	"canvas",
 	"iris",
 	"optifine",
 	"vanilla",