feat: prepare for DMS removal

This commit is contained in:
2026-08-21 11:20:15 +02:00
parent 2ab86906c7
commit dce6a6cafb
24 changed files with 432 additions and 61 deletions
+1
View File
@@ -0,0 +1 @@
@import 'colors.css';
View File
-19
View File
@@ -33,31 +33,12 @@ hl.define_submap("device", function()
hl.dispatch(hl.dsp.exec_cmd("notify-send 'Enabled Trackpad' --app-name='Hyprctl'"))
end, { description = "Enable trackpad" })
-- ── DMS controls ─────────────────────────────────────────────────
-- clipboard history
hl.bind("h", function()
hl.dispatch(hl.dsp.exec_cmd("dms ipc call clipboard toggle"))
exit_submap()
end, { description = "Toggle clipboard history panel" })
-- Dash
hl.bind("d", function()
hl.dispatch(hl.dsp.exec_cmd("dms ipc call dash toggle"))
exit_submap()
end, { description = "Toggle DMS dash (top left)" })
-- Wallpaper
hl.bind("w", function()
hl.dispatch(hl.dsp.exec_cmd("dms ipc call dankdash wallpaper"))
exit_submap()
end, { description = "Open DMS wallpaper picker" })
-- Settings
hl.bind("s", function()
hl.dispatch(hl.dsp.exec_cmd("dms ipc call settings toggle"))
exit_submap()
end, { description = "Toggle DMS settings" })
hl.bind("Escape", function()
exit_submap()
end)
+1 -4
View File
@@ -8,8 +8,5 @@ hl.bind("SUPER + A", hl.dsp.submap("workspace"), { description = "Workspace cont
hl.bind("SUPER + P", hl.dsp.submap("groupedlaunch"), { description = "Launch groups of programs" })
hl.bind("SUPER + Q", hl.dsp.window.close(), { description = "Close active window" })
hl.bind("SUPER + Space", hl.dsp.exec_cmd("dms ipc call spotlight toggle"), { description = "Toggle app launcher" })
hl.bind("SUPER + SHIFT + Space", hl.dsp.exec_cmd("dms ipc call spotlight-bar toggle"), { description = "Toggle app launcher as small bar" })
hl.bind("SUPER + Space", hl.dsp.exec_cmd("hyprlauncher"), { description = "Toggle app launcher" })
hl.bind("SUPER + Escape", hl.dsp.exec_cmd("wlogout"), { description = "Toggle logout screen" })
hl.bind("SUPER + I", hl.dsp.exec_cmd("dms ipc call control-center open"), { description = "Toggle control centre" })
hl.bind("SUPER + CTRL + H", hl.dsp.exec_cmd("dms ipc call keybinds toggle hyprland"), { description = "Toggle keybinds panel" })
+6 -6
View File
@@ -4,32 +4,32 @@ end
hl.define_submap("notifications", function()
hl.bind("c", function()
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications dismissAllPopups"))
hl.dispatch(hl.dsp.exec_cmd("swaync-client --hide-all"))
exit_submap()
end, { description = "Hide notifications" })
hl.bind("d", function()
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications clearAll"))
hl.dispatch(hl.dsp.exec_cmd("swaync-client --close-all"))
exit_submap()
end, { description = "Delete all notifications" })
hl.bind("m", function()
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications toggleDoNotDisturb"))
hl.dispatch(hl.dsp.exec_cmd("swaync-client -d"))
exit_submap()
end, { description = "Toggle Do Not Disturb" })
hl.bind("h", function()
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications close"))
hl.dispatch(hl.dsp.exec_cmd("swaync-client -cp"))
exit_submap()
end, { description = "Close notification panel" })
hl.bind("s", function()
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications open"))
hl.dispatch(hl.dsp.exec_cmd("swaync-client -op"))
exit_submap()
end, { description = "Open notification panel" })
hl.bind("t", function()
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications toggle"))
hl.dispatch(hl.dsp.exec_cmd("swaync-client -t"))
exit_submap()
end, { description = "Toggle notification panel" })
+4 -1
View File
@@ -15,8 +15,11 @@ return function(is_laptop)
-- Start bar and utilities
hl.exec_cmd("hypridle")
hl.exec_cmd("waybar")
hl.exec_cmd("hyprpaper")
hl.exec_cmd("swaync")
hl.exec_cmd("hyprlauncher -d")
hl.exec_cmd("nextcloud --background")
hl.exec_cmd("dms run")
hl.exec_cmd("wl-paste --watch cliphist store")
if is_laptop then
+3
View File
@@ -0,0 +1,3 @@
ui {
window_size = 800 400
}
+14 -7
View File
@@ -1,9 +1,16 @@
# Matugen configs
Shamelessly copied from [End-4's dotfiles](https://github.com/end-4/dots-hyprland/tree/main/dots/.config/matugen)
Sources:
- [End-4's dotfiles](https://github.com/end-4/dots-hyprland/tree/main/dots/.config/matugen)
- [InioX matugen themes](https://github.com/InioX/matugen-themes)
# TODOs
- [ ] Custom yazi theme
- [ ] Qt theme
- [X] Remove unneeded elements
- [ ] Quickshell stuff
## Config files
- Hyprland (my own)
- Hyprlock (my own)
- Hyprtoolkit (my own)
- Yazi (my own)
- Wlogout (Colour template files from InioX)
- Waybar (Colour template files from InioX)
- Discord theme (fully from InioX)
- GTK (From InioX)
- Swaync (from InioX)
- Qt TODO!
+22
View File
@@ -1,6 +1,28 @@
[config]
version_check = false
# From https://github.com/InioX/matugen-themes
[templates.gtk3]
input_path = '~/.config/matugen/templates/gtk/colors.css'
output_path = '~/.config/gtk-3.0/colors.css'
post_hook = 'gsettings set org.gnome.desktop.interface gtk-theme ""; gsettings set org.gnome.desktop.interface gtk-theme adw-gtk3-{{mode}}'
[templates.gtk4]
input_path = '~/.config/matugen/templates/gtk/colors.css'
output_path = '~/.config/gtk-4.0/colors.css'
post_hook = '~/.config/matugen/post-hook-scripts/gtk-themes-reload.sh'
[templates.swaync]
input_path = '~/.config/matugen/templates/swaync/colors.css'
output_path = "~/.config/swaync/colors.css"
post_hook = "swaync-client -rs"
[templates.color-scheme]
input_path = '~/.config/matugen/templates/qt/colors.colors'
output_path = '~/.local/share/color-schemes/Matugen.colors'
# My own
[templates.hyprland]
input_path = '~/.config/matugen/templates/hyprland/colors.lua'
output_path = '~/.config/hypr/hyprland/colors.lua'
@@ -0,0 +1,13 @@
#!/usr/bin/env bash
# Thanks to https://github.com/InioX/matugen-themes/blob/main/post-hook-scripts/gtk-themes-reload.sh
current=$(gsettings get org.gnome.desktop.interface color-scheme)
if [[ "$current" == "'prefer-dark'" ]]; then
gsettings set org.gnome.desktop.interface color-scheme prefer-light
gsettings set org.gnome.desktop.interface color-scheme prefer-dark
else
gsettings set org.gnome.desktop.interface color-scheme prefer-dark
gsettings set org.gnome.desktop.interface color-scheme prefer-light
fi
+22
View File
@@ -0,0 +1,22 @@
/*
* GTK Colors
* Generated with Matugen
*/
@define-color accent_color {{colors.primary_fixed_dim.default.hex}};
@define-color accent_fg_color {{colors.on_primary_fixed.default.hex}};
@define-color accent_bg_color {{colors.primary_fixed_dim.default.hex}};
@define-color window_bg_color {{colors.surface_dim.default.hex}};
@define-color window_fg_color {{colors.on_surface.default.hex}};
@define-color headerbar_bg_color {{colors.surface_dim.default.hex}};
@define-color headerbar_fg_color {{colors.on_surface.default.hex}};
@define-color popover_bg_color {{colors.surface_dim.default.hex}};
@define-color popover_fg_color {{colors.on_surface.default.hex}};
@define-color view_bg_color {{colors.surface.default.hex}};
@define-color view_fg_color {{colors.on_surface.default.hex}};
@define-color card_bg_color {{colors.surface.default.hex}};
@define-color card_fg_color {{colors.on_surface.default.hex}};
@define-color sidebar_bg_color @window_bg_color;
@define-color sidebar_fg_color @window_fg_color;
@define-color sidebar_border_color @window_bg_color;
@define-color sidebar_backdrop_color @window_bg_color;
@@ -0,0 +1,5 @@
wallpaper {
monitor =
path = {{image}}
fit_mode = cover
}
@@ -8,3 +8,7 @@ accent = rgba({{colors.primary.default.hex_stripped}}FF)
accent_secondary = rgba({{colors.secondary.default.hex_stripped}}FF)
font_family = Comfortaa
font_family_monospace = Source Code Pro
font_size = 13
h1_size = 22
h2_size = 18
h3_size = 15
+149
View File
@@ -0,0 +1,149 @@
[ColorEffects:Disabled]
Color={{colors.surface_dim.default.hex}}
ColorAmount=0
ColorEffect=0
ContrastAmount=0.65
ContrastEffect=1
IntensityAmount=0.1
IntensityEffect=2
[ColorEffects:Inactive]
ChangeSelectionColor=true
Color={{colors.surface_variant.default.hex}}
ColorAmount=0.025
ColorEffect=2
ContrastAmount=0.1
ContrastEffect=2
Enable=false
IntensityAmount=0
IntensityEffect=0
[Colors:Button]
BackgroundAlternate={{colors.surface_container_low.default.hex}}
BackgroundNormal={{colors.surface_container_high.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_surface.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Complementary]
BackgroundAlternate={{colors.surface_container_low.default.hex}}
BackgroundNormal={{colors.surface.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_primary_container.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Header]
BackgroundAlternate={{colors.surface.default.hex}}
BackgroundNormal={{colors.surface_container.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_surface.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Header][Inactive]
BackgroundAlternate={{colors.surface_container.default.hex}}
BackgroundNormal={{colors.surface_container.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_surface.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Selection]
BackgroundAlternate={{colors.surface_container_low.default.hex}}
BackgroundNormal={{colors.primary.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.on_primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary_fixed.default.hex}}
ForegroundNegative={{colors.error_container.default.hex}}
ForegroundNeutral={{colors.tertiary_fixed_dim.default.hex}}
ForegroundNormal={{colors.secondary_fixed.default.hex}}
ForegroundPositive={{colors.tertiary_container.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Tooltip]
BackgroundAlternate={{colors.surface.default.hex}}
BackgroundNormal={{colors.surface_container.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_background.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:View]
BackgroundAlternate={{colors.surface_container.default.hex}}
BackgroundNormal={{colors.background.default.hex}}
DecorationFocus={{colors.primary_container.default.hex}}
DecorationHover={{colors.on_primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_background.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[Colors:Window]
BackgroundAlternate={{colors.primary_container.default.hex}}
BackgroundNormal={{colors.surface_container.default.hex}}
DecorationFocus={{colors.primary.default.hex}}
DecorationHover={{colors.primary.default.hex}}
ForegroundActive={{colors.primary.default.hex}}
ForegroundInactive={{colors.on_surface_variant.default.hex}}
ForegroundLink={{colors.secondary.default.hex}}
ForegroundNegative={{colors.error.default.hex}}
ForegroundNeutral={{colors.tertiary.default.hex}}
ForegroundNormal={{colors.on_background.default.hex}}
ForegroundPositive={{colors.tertiary_fixed.default.hex}}
ForegroundVisited={{colors.on_secondary_container.default.hex}}
[General]
ColorScheme=Matugen
Name=Matugen
[Appearance]
color_scheme=Matugen
[KDE]
contrast=4
[WM]
activeBackground={{colors.primary_container.default.hex}}
activeBlend={{colors.on_primary_container.default.hex}}
activeForeground={{colors.on_primary_container.default.hex}}
inactiveBackground={{colors.surface.default.hex}}
inactiveBlend={{colors.on_surface_variant.default.hex}}
inactiveForeground={{colors.on_surface_variant.default.hex}}
@@ -0,0 +1,7 @@
/*
* Css Colors
* Generated with Matugen
*/
<* for name, value in colors *>
@define-color {{name}} {{value.default.hex}};
<* endfor *>
@@ -0,0 +1,7 @@
/*
* Css Colors
* Generated with Matugen
*/
<* for name, value in colors *>
@define-color {{name}} {{value.default.hex}};
<* endfor *>
+4
View File
@@ -0,0 +1,4 @@
color_scheme_path=~/.local/share/color-schemes/Matugen.colors
custom_palette=true
icon_theme=breeze
style=Darkly
+4
View File
@@ -0,0 +1,4 @@
color_scheme_path=~/.local/share/color-schemes/Matugen.colors
custom_palette=true
icon_theme=breeze
style=Darkly
+1
View File
@@ -0,0 +1 @@
@import "colors.css";
+21 -5
View File
@@ -7,16 +7,17 @@
"gtk-layer-shell": true,
"height": 0,
"modules-left": [
"clock",
"clock",
"cpu",
"memory",
"hyprland/workspaces"
],
"modules-center": ["hyprland/window"],
"modules-center": [
"hyprland/window"
],
"modules-right": [
"tray",
"network",
"custom/dualsense",
"pulseaudio",
"pulseaudio#microphone",
"custom/powerMenu"
@@ -38,6 +39,12 @@
"format": "⏻",
"on-click": "rofi -show p -modi p:rofi-power-menu -theme ~/.config/rofi/themes/power.rasi"
},
"custom/quickactions": {
"format": "",
"menu": "on-click",
"menu-file": "~/.config/waybar/quickactions.xml",
"menu-actions": {}
},
"network": {
"format-disconnected": " Net",
"format-wifi": "{icon} {essid}",
@@ -46,7 +53,12 @@
"tooltip-format-wifi": "<big>Wi-Fi</big>\nSSID: {essid}\nIP: {ipaddr}\nSignal strength: {signalStrength}%\nUp/Down (bps): {bandwidthUpBits}/{bandwidthDownBits}\nFrequency: {frequency}GHz",
"tooltip-format-disconnected": "<big>Networking</big>\n{ifname} disconnected",
"on-click": "terminator -x nmtui",
"format-icons": ["", "", "", ""]
"format-icons": [
"",
"",
"",
""
]
},
"clock": {
"format": "{:%a, %d.%m %H:%M:%S}",
@@ -83,7 +95,11 @@
"phone": "",
"portable": "",
"car": "🏎",
"default": ["", "", ""]
"default": [
"",
"",
""
]
}
},
"pulseaudio#microphone": {
+28
View File
@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<object class="GtkMenu" id="menu">
<child>
<object class="GtkMenuItem" id="suspend">
<property name="label">Suspend</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="hibernate">
<property name="label">Hibernate</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="shutdown">
<property name="label">Shutdown</property>
</object>
</child>
<child>
<object class="GtkSeparatorMenuItem" id="delimiter1" />
</child>
<child>
<object class="GtkMenuItem" id="reboot">
<property name="label">Reboot</property>
</object>
</child>
</object>
</interface>
+115
View File
@@ -0,0 +1,115 @@
@import "colors.css";
* {
border: none;
border-radius: 0;
font-family: 'FluentSystemIcons-Regular,Comfortaa', monospace;
font-weight: bold;
font-size: 13px;
min-height: 0;
margin-left: 3px;
margin-right: 3px;
}
window#waybar {
background: rgba(0, 0, 0, 0);
color: #cc5c00;
}
tooltip {
background: black;
border-radius: 10px;
border-width: 2px;
border-style: solid;
border-color: #cc5c00;
}
#workspaces button {
padding: 3px;
color: #a79f9d;
margin-right: 5px;
}
#workspaces button.active {
color: white;
}
#workspaces button.focused {
color: white;
background: #cc5c00;
border-radius: 10px;
}
#workspaces button.urgent {
color: white;
background: #cc5c00;
border-radius: 10px;
}
#workspaces button:hover {
background: white;
color: #cc5c00;
border-radius: 10px;
}
#workspaces {
background: black;
border-radius: 10px;
margin-left: 10px;
padding-right: 0px;
padding-left: 5px;
}
#window,
#clock,
#custom-powerMenu,
#pulseaudio,
#memory,
#tray,
#custom-dualsense,
#network,
#workspaces,
#cpu {
background: black;
padding: 4px 12px;
margin: 3px 2px;
margin-top: 9px;
border: 1px solid rgb(204, 92, 0);
border-radius: 10px;
}
#tray {
border-radius: 10px;
margin-right: 10px;
}
#cpu {
margin-right: 0;
border-radius: 10px 0px 0px 10px;
background-color: #010006;
}
#memory {
margin-left: 0;
border-radius: 0px 10px 10px 0px;
background-color: #010006;
}
#window {
border-radius: 10px;
margin-left: 60px;
margin-right: 60px;
}
#clock {
color: #009e58;
min-width: 125px;
}
#pulseaudio {
color: #9b1603;
}
#pulseaudio.microphone {
color: rgb(167, 159, 157);
}