summaryrefslogtreecommitdiff
path: root/raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/deps
diff options
context:
space:
mode:
Diffstat (limited to 'raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/deps')
-rw-r--r--raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/deps/detector.go51
1 files changed, 51 insertions, 0 deletions
diff --git a/raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/deps/detector.go b/raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/deps/detector.go
new file mode 100644
index 0000000..e4f54a7
--- /dev/null
+++ b/raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/deps/detector.go
@@ -0,0 +1,51 @@
+package deps
+
+import (
+ "context"
+)
+
+type DependencyStatus int
+
+const (
+ StatusMissing DependencyStatus = iota
+ StatusInstalled
+ StatusNeedsUpdate
+ StatusNeedsReinstall
+)
+
+type PackageVariant int
+
+const (
+ VariantStable PackageVariant = iota
+ VariantGit
+)
+
+type Dependency struct {
+ Name string
+ Status DependencyStatus
+ Version string
+ Description string
+ Required bool
+ Variant PackageVariant
+ CanToggle bool
+}
+
+type WindowManager int
+
+const (
+ WindowManagerHyprland WindowManager = iota
+ WindowManagerNiri
+)
+
+type Terminal int
+
+const (
+ TerminalGhostty Terminal = iota
+ TerminalKitty
+ TerminalAlacritty
+)
+
+type DependencyDetector interface {
+ DetectDependencies(ctx context.Context, wm WindowManager) ([]Dependency, error)
+ DetectDependenciesWithTerminal(ctx context.Context, wm WindowManager, terminal Terminal) ([]Dependency, error)
+}