1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-01-30 00:12:50 -05:00

Compare commits

..

2 Commits

Author SHA1 Message Date
LuckShiba
da006b883e doctor: use console.warn for quickshell feature logs 2025-12-28 04:56:15 -03:00
LuckShiba
e71fb09cbd feat: doctor command 2025-12-28 04:50:39 -03:00
11 changed files with 14 additions and 187 deletions

View File

@@ -169,22 +169,12 @@ func readOSRelease() map[string]string {
}
func checkVersions(qsMissingFeatures bool) []checkResult {
dmsCliPath, _ := os.Executable()
dmsCliDetails := ""
if doctorVerbose {
dmsCliDetails = dmsCliPath
}
results := []checkResult{
{catVersions, "DMS CLI", "ok", formatVersion(Version), dmsCliDetails},
{catVersions, "DMS CLI", "info", formatVersion(Version), ""},
}
qsVersion, qsStatus, qsPath := getQuickshellVersionInfo(qsMissingFeatures)
qsDetails := ""
if doctorVerbose && qsPath != "" {
qsDetails = qsPath
}
results = append(results, checkResult{catVersions, "Quickshell", qsStatus, qsVersion, qsDetails})
qsVersion, qsStatus := getQuickshellVersionInfo(qsMissingFeatures)
results = append(results, checkResult{catVersions, "Quickshell", qsStatus, qsVersion, ""})
dmsVersion, dmsPath := getDMSShellVersion()
if dmsVersion != "" {
@@ -216,30 +206,28 @@ func getDMSShellVersion() (version, path string) {
return "", ""
}
func getQuickshellVersionInfo(missingFeatures bool) (string, string, string) {
func getQuickshellVersionInfo(missingFeatures bool) (string, string) {
if !utils.CommandExists("qs") {
return "Not installed", "error", ""
return "Not installed", "error"
}
qsPath, _ := exec.LookPath("qs")
output, err := exec.Command("qs", "--version").Output()
if err != nil {
return "Installed (version check failed)", "warn", qsPath
return "Installed (version check failed)", "warn"
}
fullVersion := strings.TrimSpace(string(output))
if matches := regexp.MustCompile(`quickshell (\d+\.\d+\.\d+)`).FindStringSubmatch(fullVersion); len(matches) >= 2 {
if version.CompareVersions(matches[1], "0.2.0") < 0 {
return fmt.Sprintf("%s (needs >= 0.2.0)", fullVersion), "error", qsPath
return fmt.Sprintf("%s (needs >= 0.2.0)", fullVersion), "error"
}
if missingFeatures {
return fullVersion, "warn", qsPath
return fullVersion, "warn"
}
return fullVersion, "ok", qsPath
return fullVersion, "ok"
}
return fullVersion, "warn", qsPath
return fullVersion, "warn"
}
func checkDMSInstallation() []checkResult {
@@ -299,20 +287,9 @@ func checkWindowManagers() []checkResult {
for _, c := range compositors {
if slices.ContainsFunc(c.commands, utils.CommandExists) {
foundAny = true
var compositorPath string
for _, cmd := range c.commands {
if path, err := exec.LookPath(cmd); err == nil {
compositorPath = path
break
}
}
details := ""
if doctorVerbose && compositorPath != "" {
details = compositorPath
}
results = append(results, checkResult{
catCompositor, c.name, "ok",
getVersionFromCommand(c.versionCmd, c.versionArg, c.versionRe), details,
getVersionFromCommand(c.versionCmd, c.versionArg, c.versionRe), "",
})
}
}

View File

@@ -255,9 +255,6 @@ output_path = '%s'
if !opts.ShouldSkipTemplate("pywalfox") {
appendConfig(opts, cfgFile, "pywalfox", "pywalfox.toml")
}
if !opts.ShouldSkipTemplate("zenbrowser") {
appendConfig(opts, cfgFile, "zen", "zenbrowser.toml")
}
if !opts.ShouldSkipTemplate("vesktop") {
appendConfig(opts, cfgFile, "vesktop", "vesktop.toml")
}

View File

@@ -11,16 +11,14 @@ import (
"io"
"os"
"path/filepath"
"slices"
"strings"
"syscall"
"time"
"hash/fnv"
"github.com/fsnotify/fsnotify"
_ "golang.org/x/image/bmp"
_ "golang.org/x/image/tiff"
"hash/fnv"
bolt "go.etcd.io/bbolt"
@@ -30,11 +28,6 @@ import (
wlclient "github.com/AvengeMedia/DankMaterialShell/core/pkg/go-wayland/wayland/client"
)
// These mime types wont be stored in history
var sensitiveMimeTypes = []string{
"x-kde-passwordManagerHint",
}
func NewManager(wlCtx wlcontext.WaylandContext, config Config) (*Manager, error) {
if config.Disabled {
return nil, fmt.Errorf("clipboard disabled in config")
@@ -260,10 +253,6 @@ func (m *Manager) setupDataDeviceSync() {
return
}
if m.hasSensitiveMimeType(mimes) {
return
}
preferredMime := m.selectMimeType(mimes)
if preferredMime == "" {
return
@@ -503,12 +492,6 @@ func extractHash(data []byte) uint64 {
return binary.BigEndian.Uint64(data[len(data)-8:])
}
func (m *Manager) hasSensitiveMimeType(mimes []string) bool {
return slices.ContainsFunc(mimes, func(mime string) bool {
return slices.Contains(sensitiveMimeTypes, mime)
})
}
func (m *Manager) selectMimeType(mimes []string) string {
preferredTypes := []string{
"text/plain;charset=utf-8",

View File

@@ -37,7 +37,7 @@ in
};
dgop = {
package = lib.mkPackageOption pkgs "dgop" {};
package = lib.mkPackageOption pkgs "dgop";
};
enableSystemMonitoring = lib.mkOption {

View File

@@ -288,7 +288,6 @@ Singleton {
property bool matugenTemplateQt6ct: true
property bool matugenTemplateFirefox: true
property bool matugenTemplatePywalfox: true
property bool matugenTemplateZenBrowser: true
property bool matugenTemplateVesktop: true
property bool matugenTemplateEquibop: true
property bool matugenTemplateGhostty: true

View File

@@ -876,7 +876,7 @@ Singleton {
if (typeof SettingsData !== "undefined") {
const skipTemplates = [];
if (!SettingsData.runDmsMatugenTemplates) {
skipTemplates.push("gtk", "neovim", "niri", "qt5ct", "qt6ct", "firefox", "pywalfox", "zenbrowser", "vesktop", "equibop", "ghostty", "kitty", "foot", "alacritty", "wezterm", "dgop", "kcolorscheme", "vscode");
skipTemplates.push("gtk", "neovim", "niri", "qt5ct", "qt6ct", "firefox", "pywalfox", "vesktop", "equibop", "ghostty", "kitty", "foot", "alacritty", "wezterm", "dgop", "kcolorscheme", "vscode");
} else {
if (!SettingsData.matugenTemplateGtk)
skipTemplates.push("gtk");
@@ -890,8 +890,6 @@ Singleton {
skipTemplates.push("firefox");
if (!SettingsData.matugenTemplatePywalfox)
skipTemplates.push("pywalfox");
if (!SettingsData.matugenTemplateZenBrowser)
skipTemplates.push("zenbrowser");
if (!SettingsData.matugenTemplateVesktop)
skipTemplates.push("vesktop");
if (!SettingsData.matugenTemplateEquibop)

View File

@@ -187,7 +187,6 @@ var SPEC = {
matugenTemplateQt6ct: { def: true },
matugenTemplateFirefox: { def: true },
matugenTemplatePywalfox: { def: true },
matugenTemplateZenBrowser: { def: true },
matugenTemplateVesktop: { def: true },
matugenTemplateEquibop: { def: true },
matugenTemplateGhostty: { def: true },

View File

@@ -1127,17 +1127,6 @@ Item {
onToggled: checked => SettingsData.set("matugenTemplatePywalfox", checked)
}
SettingsToggleRow {
tab: "theme"
tags: ["matugen", "zenbrowser", "template"]
settingKey: "matugenTemplateZenBrowser"
text: "zenbrowser"
description: ""
visible: SettingsData.runDmsMatugenTemplates
checked: SettingsData.matugenTemplateZenBrowser
onToggled: checked => SettingsData.set("matugenTemplateZenBrowser", checked)
}
SettingsToggleRow {
tab: "theme"
tags: ["matugen", "vesktop", "discord", "template"]

View File

@@ -1,3 +0,0 @@
[templates.dmszenbrowser]
input_path = 'SHELL_DIR/matugen/templates/zen-userchrome.css'
output_path = '~/.config/DankMaterialShell/zen.css'

View File

@@ -1,94 +0,0 @@
/* DMS Matugen Zen Browser Theme */
:root {
--zen-primary-color: {{colors.primary_container.default.hex}} !important;
--toolbarbutton-icon-fill: {{colors.primary.default.hex}} !important;
--toolbar-field-color: {{colors.on_background.default.hex}} !important;
--tab-selected-textcolor: {{colors.primary.default.hex}} !important;
--toolbar-color: {{colors.on_background.default.hex}} !important;
--arrowpanel-color: {{colors.on_surface.default.hex}} !important;
--arrowpanel-background: {{colors.surface_container.default.hex}} !important;
--sidebar-text-color: {{colors.on_background.default.hex}} !important;
--zen-main-browser-background: {{colors.background.default.hex}} !important;
}
.sidebar-placesTree {
background-color: {{colors.surface_container.default.hex}} !important;
}
#zen-workspaces-button {
background-color: {{colors.on_surface_variant.default.hex}} !important;
}
#TabsToolbar {
background-color: {{colors.background.default.hex}} !important;
}
.urlbar-background {
background-color: {{colors.surface_container.default.hex}} !important;
}
.urlbar-input::selection {
color: {{colors.on_primary.default.hex}} !important;
background-color: {{colors.primary.default.hex}} !important;
}
.urlbarView-url {
color: {{colors.on_surface_variant.default.hex}} !important;
}
toolbar .toolbarbutton-1 {
&:not([disabled]) {
&:is([open], [checked])
> :is(
.toolbarbutton-icon,
.toolbarbutton-text,
.toolbarbutton-badge-stack
) {
fill: {{colors.primary.default.hex}}
}
}
}
.identity-color-blue {
--identity-tab-color: {{dank16.color12.default.hex}} !important;
--identity-icon-color: {{dank16.color12.default.hex}} !important;
}
.identity-color-turquoise {
--identity-tab-color: {{dank16.color6.default.hex}} !important;
--identity-icon-color: {{dank16.color6.default.hex}} !important;
}
.identity-color-green {
--identity-tab-color: {{dank16.color10.default.hex}} !important;
--identity-icon-color: {{dank16.color10.default.hex}} !important;
}
.identity-color-yellow {
--identity-tab-color: {{dank16.color11.default.hex}} !important;
--identity-icon-color: {{dank16.color11.default.hex}} !important;
}
.identity-color-orange {
--identity-tab-color: {{dank16.color3.default.hex}} !important;
--identity-icon-color: {{dank16.color3.default.hex}} !important;
}
.identity-color-red {
--identity-tab-color: {{dank16.color9.default.hex}} !important;
--identity-icon-color: {{dank16.color9.default.hex}} !important;
}
.identity-color-pink {
--identity-tab-color: {{dank16.color13.default.hex}} !important;
--identity-icon-color: {{dank16.color13.default.hex}} !important;
}
.identity-color-purple {
--identity-tab-color: {{dank16.color5.default.hex}} !important;
--identity-icon-color: {{dank16.color5.default.hex}} !important;
}
#zen-appcontent-navbar-container {
background-color: {{colors.background.default.hex}} !important;
}

View File

@@ -1565,24 +1565,6 @@
"theme"
]
},
{
"section": "matugenTemplateZenBrowser",
"label": "Zen Browser",
"tabIndex": 10,
"category": "Theme & Colors",
"keywords": [
"appearance",
"colors",
"zen",
"zenbrowser",
"look",
"matugen",
"scheme",
"style",
"template",
"theme"
]
},
{
"section": "matugenTemplateGtk",
"label": "GTK",