mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2025-12-06 05:25:41 -05:00
cli: fix greeter enable, and color sync
This commit is contained in:
@@ -277,9 +277,9 @@ func enableGreeter() error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
wrapperCmd := "dms-greeter"
|
wrapperCmd, err := findCommandPath("dms-greeter")
|
||||||
if !commandExists("dms-greeter") {
|
if err != nil {
|
||||||
wrapperCmd = "/usr/local/bin/dms-greeter"
|
return fmt.Errorf("dms-greeter not found in PATH. Please ensure it is installed and accessible")
|
||||||
}
|
}
|
||||||
|
|
||||||
compositorLower := strings.ToLower(selectedCompositor)
|
compositorLower := strings.ToLower(selectedCompositor)
|
||||||
@@ -444,7 +444,7 @@ func checkGreeterStatus() error {
|
|||||||
desc: "Session state",
|
desc: "Session state",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
source: filepath.Join(homeDir, ".cache", "quickshell", "dankshell", "dms-colors.json"),
|
source: filepath.Join(homeDir, ".cache", "DankMaterialShell", "dms-colors.json"),
|
||||||
target: filepath.Join(cacheDir, "colors.json"),
|
target: filepath.Join(cacheDir, "colors.json"),
|
||||||
desc: "Color theme",
|
desc: "Color theme",
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,12 +1,24 @@
|
|||||||
package main
|
package main
|
||||||
|
|
||||||
import "os/exec"
|
import (
|
||||||
|
"fmt"
|
||||||
|
"os/exec"
|
||||||
|
)
|
||||||
|
|
||||||
func commandExists(cmd string) bool {
|
func commandExists(cmd string) bool {
|
||||||
_, err := exec.LookPath(cmd)
|
_, err := exec.LookPath(cmd)
|
||||||
return err == nil
|
return err == nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// findCommandPath returns the absolute path to a command in PATH
|
||||||
|
func findCommandPath(cmd string) (string, error) {
|
||||||
|
path, err := exec.LookPath(cmd)
|
||||||
|
if err != nil {
|
||||||
|
return "", fmt.Errorf("command '%s' not found in PATH", cmd)
|
||||||
|
}
|
||||||
|
return path, nil
|
||||||
|
}
|
||||||
|
|
||||||
func isArchPackageInstalled(packageName string) bool {
|
func isArchPackageInstalled(packageName string) bool {
|
||||||
cmd := exec.Command("pacman", "-Q", packageName)
|
cmd := exec.Command("pacman", "-Q", packageName)
|
||||||
err := cmd.Run()
|
err := cmd.Run()
|
||||||
|
|||||||
@@ -342,7 +342,7 @@ func SyncDMSConfigs(dmsPath string, logFunc func(string), sudoPassword string) e
|
|||||||
desc: "state (wallpaper configuration)",
|
desc: "state (wallpaper configuration)",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
source: filepath.Join(homeDir, ".cache", "quickshell", "dankshell", "dms-colors.json"),
|
source: filepath.Join(homeDir, ".cache", "DankMaterialShell", "dms-colors.json"),
|
||||||
target: filepath.Join(cacheDir, "colors.json"),
|
target: filepath.Join(cacheDir, "colors.json"),
|
||||||
desc: "wallpaper based theming",
|
desc: "wallpaper based theming",
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -46,8 +46,8 @@ setfacl -m u:greeter:x ~ ~/.config ~/.local ~/.cache ~/.local/state
|
|||||||
# Set group ownership on config directories
|
# Set group ownership on config directories
|
||||||
sudo chgrp -R greeter ~/.config/DankMaterialShell
|
sudo chgrp -R greeter ~/.config/DankMaterialShell
|
||||||
sudo chgrp -R greeter ~/.local/state/DankMaterialShell
|
sudo chgrp -R greeter ~/.local/state/DankMaterialShell
|
||||||
sudo chgrp -R greeter ~/.cache/quickshell
|
sudo chgrp -R greeter ~/.cache/DankMaterialShell
|
||||||
sudo chmod -R g+rX ~/.config/DankMaterialShell ~/.local/state/DankMaterialShell ~/.cache/quickshell
|
sudo chmod -R g+rX ~/.config/DankMaterialShell ~/.cache/DankMaterialShell ~/.cache/quickshell
|
||||||
|
|
||||||
# Create symlinks
|
# Create symlinks
|
||||||
sudo ln -sf ~/.config/DankMaterialShell/settings.json /var/cache/dms-greeter/settings.json
|
sudo ln -sf ~/.config/DankMaterialShell/settings.json /var/cache/dms-greeter/settings.json
|
||||||
|
|||||||
Reference in New Issue
Block a user