From 95c780ca8c931ea8a9ad174d6c5edcf9a67c4bf8 Mon Sep 17 00:00:00 2001 From: bbedward Date: Mon, 8 Dec 2025 20:24:58 -0500 Subject: [PATCH] Revert "dankinstall: remove systemd path for Hyprland" This reverts commit 0435a805c77c63b7d95cf4f84ae1e283d0ee2073. --- core/internal/config/deployer_test.go | 9 +++------ core/internal/config/embedded/hyprland.conf | 12 +----------- core/internal/distros/arch.go | 4 ++-- core/internal/distros/base.go | 21 ++------------------- core/internal/distros/debian.go | 4 ++-- core/internal/distros/fedora.go | 4 ++-- core/internal/distros/gentoo.go | 4 ++-- core/internal/distros/opensuse.go | 4 ++-- core/internal/distros/ubuntu.go | 4 ++-- core/internal/tui/views_install.go | 8 ++------ 10 files changed, 20 insertions(+), 54 deletions(-) diff --git a/core/internal/config/deployer_test.go b/core/internal/config/deployer_test.go index 8bba240d..cb99680d 100644 --- a/core/internal/config/deployer_test.go +++ b/core/internal/config/deployer_test.go @@ -406,7 +406,7 @@ func TestHyprlandConfigDeployment(t *testing.T) { content, err := os.ReadFile(result.Path) require.NoError(t, err) assert.Contains(t, string(content), "# MONITOR CONFIG") - assert.Contains(t, string(content), "bind = $mod, T, exec, ghostty") + assert.Contains(t, string(content), "bind = $mod, T, exec, $TERMINAL") assert.Contains(t, string(content), "exec-once = ") }) @@ -442,7 +442,7 @@ general { require.NoError(t, err) assert.Contains(t, string(newContent), "monitor = DP-1, 1920x1080@144") assert.Contains(t, string(newContent), "monitor = HDMI-A-1, 3840x2160@60") - assert.Contains(t, string(newContent), "bind = $mod, T, exec, kitty") + assert.Contains(t, string(newContent), "bind = $mod, T, exec, $TERMINAL") assert.NotContains(t, string(newContent), "monitor = eDP-2") }) } @@ -460,10 +460,7 @@ func TestHyprlandConfigStructure(t *testing.T) { assert.Contains(t, HyprlandConfig, "# STARTUP APPS") assert.Contains(t, HyprlandConfig, "# INPUT CONFIG") assert.Contains(t, HyprlandConfig, "# KEYBINDINGS") - assert.Contains(t, HyprlandConfig, "# ENVIRONMENT VARS") - assert.Contains(t, HyprlandConfig, "{{TERMINAL_COMMAND}}") - assert.Contains(t, HyprlandConfig, "exec-once = dms run") - assert.Contains(t, HyprlandConfig, "bind = $mod, T, exec,") + assert.Contains(t, HyprlandConfig, "bind = $mod, T, exec, $TERMINAL") assert.Contains(t, HyprlandConfig, "bind = $mod, space, exec, dms ipc call spotlight toggle") assert.Contains(t, HyprlandConfig, "windowrulev2 = noborder, class:^(com\\.mitchellh\\.ghostty)$") } diff --git a/core/internal/config/embedded/hyprland.conf b/core/internal/config/embedded/hyprland.conf index ae11410b..e4eabf24 100644 --- a/core/internal/config/embedded/hyprland.conf +++ b/core/internal/config/embedded/hyprland.conf @@ -7,20 +7,10 @@ # monitor = eDP-2, 2560x1600@239.998993, 2560x0, 1, vrr, 1 monitor = , preferred,auto,auto -# ================== -# ENVIRONMENT VARS -# ================== -env = QT_QPA_PLATFORM,wayland -env = ELECTRON_OZONE_PLATFORM_HINT,auto -env = QT_QPA_PLATFORMTHEME,gtk3 -env = QT_QPA_PLATFORMTHEME_QT6,gtk3 -env = TERMINAL,{{TERMINAL_COMMAND}} - # ================== # STARTUP APPS # ================== exec-once = bash -c "wl-paste --watch cliphist store &" -exec-once = dms run # ================== # INPUT CONFIG @@ -136,7 +126,7 @@ layerrule = noanim, ^(quickshell)$ $mod = SUPER # === Application Launchers === -bind = $mod, T, exec, {{TERMINAL_COMMAND}} +bind = $mod, T, exec, $TERMINAL bind = $mod, space, exec, dms ipc call spotlight toggle bind = $mod, V, exec, dms ipc call clipboard toggle bind = $mod, M, exec, dms ipc call processlist focusOrToggle diff --git a/core/internal/distros/arch.go b/core/internal/distros/arch.go index 33ee90c0..10249128 100644 --- a/core/internal/distros/arch.go +++ b/core/internal/distros/arch.go @@ -359,11 +359,11 @@ func (a *ArchDistribution) InstallPackages(ctx context.Context, dependencies []d } terminal := a.DetectTerminalFromDeps(dependencies) - if err := a.WriteEnvironmentConfig(terminal, wm); err != nil { + if err := a.WriteEnvironmentConfig(terminal); err != nil { a.log(fmt.Sprintf("Warning: failed to write environment config: %v", err)) } - if err := a.EnableDMSService(ctx, wm); err != nil { + if err := a.EnableDMSService(ctx); err != nil { a.log(fmt.Sprintf("Warning: failed to enable dms service: %v", err)) } diff --git a/core/internal/distros/base.go b/core/internal/distros/base.go index a4ed53b6..ee3aa866 100644 --- a/core/internal/distros/base.go +++ b/core/internal/distros/base.go @@ -563,11 +563,7 @@ func (b *BaseDistribution) DetectTerminalFromDeps(dependencies []deps.Dependency return deps.TerminalGhostty } -func (b *BaseDistribution) WriteEnvironmentConfig(terminal deps.Terminal, wm deps.WindowManager) error { - if wm == deps.WindowManagerHyprland { - return nil - } - +func (b *BaseDistribution) WriteEnvironmentConfig(terminal deps.Terminal) error { homeDir, err := os.UserHomeDir() if err != nil { return fmt.Errorf("failed to get home directory: %w", err) @@ -606,25 +602,12 @@ TERMINAL=%s return nil } -func (b *BaseDistribution) EnableDMSService(ctx context.Context, wm deps.WindowManager) error { - if wm == deps.WindowManagerHyprland { - return nil - } - +func (b *BaseDistribution) EnableDMSService(ctx context.Context) error { cmd := exec.CommandContext(ctx, "systemctl", "--user", "enable", "--now", "dms") if err := cmd.Run(); err != nil { return fmt.Errorf("failed to enable dms service: %w", err) } b.log("Enabled dms systemd user service") - - if wm == deps.WindowManagerNiri { - addWantsCmd := exec.CommandContext(ctx, "systemctl", "--user", "add-wants", "niri.service", "dms") - if err := addWantsCmd.Run(); err != nil { - return fmt.Errorf("failed to add dms as niri.service want: %w", err) - } - b.log("Added dms as niri.service want") - } - return nil } diff --git a/core/internal/distros/debian.go b/core/internal/distros/debian.go index a6a6369f..31f00802 100644 --- a/core/internal/distros/debian.go +++ b/core/internal/distros/debian.go @@ -334,11 +334,11 @@ func (d *DebianDistribution) InstallPackages(ctx context.Context, dependencies [ } terminal := d.DetectTerminalFromDeps(dependencies) - if err := d.WriteEnvironmentConfig(terminal, wm); err != nil { + if err := d.WriteEnvironmentConfig(terminal); err != nil { d.log(fmt.Sprintf("Warning: failed to write environment config: %v", err)) } - if err := d.EnableDMSService(ctx, wm); err != nil { + if err := d.EnableDMSService(ctx); err != nil { d.log(fmt.Sprintf("Warning: failed to enable dms service: %v", err)) } diff --git a/core/internal/distros/fedora.go b/core/internal/distros/fedora.go index 06f1434a..39b21ff7 100644 --- a/core/internal/distros/fedora.go +++ b/core/internal/distros/fedora.go @@ -358,11 +358,11 @@ func (f *FedoraDistribution) InstallPackages(ctx context.Context, dependencies [ } terminal := f.DetectTerminalFromDeps(dependencies) - if err := f.WriteEnvironmentConfig(terminal, wm); err != nil { + if err := f.WriteEnvironmentConfig(terminal); err != nil { f.log(fmt.Sprintf("Warning: failed to write environment config: %v", err)) } - if err := f.EnableDMSService(ctx, wm); err != nil { + if err := f.EnableDMSService(ctx); err != nil { f.log(fmt.Sprintf("Warning: failed to enable dms service: %v", err)) } diff --git a/core/internal/distros/gentoo.go b/core/internal/distros/gentoo.go index 15f9548a..1ddbf589 100644 --- a/core/internal/distros/gentoo.go +++ b/core/internal/distros/gentoo.go @@ -436,11 +436,11 @@ func (g *GentooDistribution) InstallPackages(ctx context.Context, dependencies [ } terminal := g.DetectTerminalFromDeps(dependencies) - if err := g.WriteEnvironmentConfig(terminal, wm); err != nil { + if err := g.WriteEnvironmentConfig(terminal); err != nil { g.log(fmt.Sprintf("Warning: failed to write environment config: %v", err)) } - if err := g.EnableDMSService(ctx, wm); err != nil { + if err := g.EnableDMSService(ctx); err != nil { g.log(fmt.Sprintf("Warning: failed to enable dms service: %v", err)) } diff --git a/core/internal/distros/opensuse.go b/core/internal/distros/opensuse.go index 2ba7f51e..4fc40c15 100644 --- a/core/internal/distros/opensuse.go +++ b/core/internal/distros/opensuse.go @@ -373,11 +373,11 @@ func (o *OpenSUSEDistribution) InstallPackages(ctx context.Context, dependencies } terminal := o.DetectTerminalFromDeps(dependencies) - if err := o.WriteEnvironmentConfig(terminal, wm); err != nil { + if err := o.WriteEnvironmentConfig(terminal); err != nil { o.log(fmt.Sprintf("Warning: failed to write environment config: %v", err)) } - if err := o.EnableDMSService(ctx, wm); err != nil { + if err := o.EnableDMSService(ctx); err != nil { o.log(fmt.Sprintf("Warning: failed to enable dms service: %v", err)) } diff --git a/core/internal/distros/ubuntu.go b/core/internal/distros/ubuntu.go index d23027c4..f69e0552 100644 --- a/core/internal/distros/ubuntu.go +++ b/core/internal/distros/ubuntu.go @@ -353,11 +353,11 @@ func (u *UbuntuDistribution) InstallPackages(ctx context.Context, dependencies [ } terminal := u.DetectTerminalFromDeps(dependencies) - if err := u.WriteEnvironmentConfig(terminal, wm); err != nil { + if err := u.WriteEnvironmentConfig(terminal); err != nil { u.log(fmt.Sprintf("Warning: failed to write environment config: %v", err)) } - if err := u.EnableDMSService(ctx, wm); err != nil { + if err := u.EnableDMSService(ctx); err != nil { u.log(fmt.Sprintf("Warning: failed to enable dms service: %v", err)) } diff --git a/core/internal/tui/views_install.go b/core/internal/tui/views_install.go index 9088d81b..c61c3373 100644 --- a/core/internal/tui/views_install.go +++ b/core/internal/tui/views_install.go @@ -209,12 +209,8 @@ func (m Model) viewInstallComplete() string { labelStyle := lipgloss.NewStyle().Foreground(lipgloss.Color(theme.Subtle)) b.WriteString(labelStyle.Render("Troubleshooting:") + "\n") - if m.selectedWM == 1 { - b.WriteString(labelStyle.Render(" Disable autostart: ") + cmdStyle.Render("remove 'exec-once = dms run' from hyprland.conf") + "\n") - } else { - b.WriteString(labelStyle.Render(" Disable autostart: ") + cmdStyle.Render("systemctl --user disable dms") + "\n") - b.WriteString(labelStyle.Render(" View logs: ") + cmdStyle.Render("journalctl --user -u dms") + "\n") - } + b.WriteString(labelStyle.Render(" Disable autostart: ") + cmdStyle.Render("systemctl --user disable dms") + "\n") + b.WriteString(labelStyle.Render(" View logs: ") + cmdStyle.Render("journalctl --user -u dms") + "\n") if m.osInfo != nil { if cmd := uninstallCommand(m.osInfo.Distribution.ID, m.dependencies); cmd != "" {