feat: finish migrate
@@ -12,8 +12,6 @@ For my neovim config, see [here](https://git.janishutz.com/janishutz/nvim)
|
|||||||
|
|
||||||
## Features
|
## Features
|
||||||
- DankMaterialShell
|
- DankMaterialShell
|
||||||
- `hyprlauncher` for the app launcher
|
|
||||||
- Wlogout config
|
|
||||||
- Automatically generated GTK Theme and theming of the rest of the desktop using `matugen`
|
- Automatically generated GTK Theme and theming of the rest of the desktop using `matugen`
|
||||||
- Fish config (with some handy aliases, based on one from ohh-my-fish)
|
- Fish config (with some handy aliases, based on one from ohh-my-fish)
|
||||||
- Fastfetch config
|
- Fastfetch config
|
||||||
|
|||||||
@@ -1,17 +1,14 @@
|
|||||||
# TODOs
|
# TODOs
|
||||||
- [ ] Notifications management via dms
|
- [X] Notifications management via dms
|
||||||
- [ ] Launcher via dms
|
- [X] Launcher via dms
|
||||||
- [ ] DMS screenshots
|
- [X] DMS screenshots
|
||||||
- [ ] Hyprland theming using mutagen with dms integration
|
- [ ] Hyprland theming using mutagen with dms integration
|
||||||
- [ ] Copy the DMS configs here
|
|
||||||
- [ ] DMS config sync to here using script
|
- [ ] DMS config sync to here using script
|
||||||
- [ ] Binds for other DMS features (with subcommand)
|
- [X] Binds for other DMS features (with subcommand)
|
||||||
- [ ] Finish decman config
|
- [X] Finish decman config
|
||||||
- [ ] Remove wlogout and replace with dms setup
|
- [X] Remove wlogout and replace with dms setup
|
||||||
- [ ] Yazi theming
|
- [ ] Yazi theming
|
||||||
- [ ] Kitty theming
|
- [X] Kitty theming
|
||||||
- [ ] Fish theming
|
- [ ] Fish theming
|
||||||
- [ ] Fastfetch theming
|
- [ ] Fastfetch theming
|
||||||
- [ ] DMS instead of Hyprlock for locker?
|
- [ ] DMS instead of Hyprlock for locker?
|
||||||
- [ ] Zathura theming possible?
|
|
||||||
- [ ] Librewolf theme
|
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ require("hyprland.core.misc")
|
|||||||
require("hyprland.core.style")
|
require("hyprland.core.style")
|
||||||
|
|
||||||
-- Binds
|
-- Binds
|
||||||
require("hyprland.binds.device")(laptop_config)
|
require("hyprland.binds.device")
|
||||||
require("hyprland.binds.groups")
|
require("hyprland.binds.groups")
|
||||||
require("hyprland.binds.launch")
|
require("hyprland.binds.launch")
|
||||||
require("hyprland.binds.main")
|
require("hyprland.binds.main")
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
return function(is_laptop)
|
|
||||||
local function exit_submap()
|
local function exit_submap()
|
||||||
hl.dispatch(hl.dsp.submap("reset"))
|
hl.dispatch(hl.dsp.submap("reset"))
|
||||||
end
|
end
|
||||||
@@ -9,42 +8,42 @@ return function(is_laptop)
|
|||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
if is_laptop then
|
-- Touchpad
|
||||||
hl.bind("d", function()
|
|
||||||
hl.dispatch(hl.dsp.exec_cmd("notify-send 'Set to mirror internal display' --app-name'Hyprctl'"))
|
|
||||||
hl.monitor({
|
|
||||||
output = "HDMI-A-1",
|
|
||||||
mirror = "eDP-1",
|
|
||||||
})
|
|
||||||
exit_submap()
|
|
||||||
end)
|
|
||||||
hl.bind("e", function()
|
|
||||||
hl.dispatch(hl.dsp.exec_cmd("notify-send 'Set to expand internal display' --app-name'Hyprctl'"))
|
|
||||||
hl.monitor({
|
|
||||||
output = "HDMI-A-1",
|
|
||||||
mirror = "",
|
|
||||||
})
|
|
||||||
exit_submap()
|
|
||||||
end)
|
|
||||||
end
|
|
||||||
|
|
||||||
hl.bind("Shift + T", function()
|
hl.bind("Shift + T", function()
|
||||||
hl.device({
|
hl.device({
|
||||||
name = "pnp0c50:00-093a:0255-touchpad",
|
name = "pnp0c50:00-093a:0255-touchpad",
|
||||||
enabled = false
|
enabled = false,
|
||||||
})
|
})
|
||||||
hl.dispatch(hl.dsp.exec_cmd("notify-send 'Disabled Trackpad' --app-name='Hyprctl'"))
|
hl.dispatch(hl.dsp.exec_cmd("notify-send 'Disabled Trackpad' --app-name='Hyprctl'"))
|
||||||
end)
|
end)
|
||||||
hl.bind("T", function()
|
hl.bind("T", function()
|
||||||
hl.device({
|
hl.device({
|
||||||
name = "pnp0c50:00-093a:0255-touchpad",
|
name = "pnp0c50:00-093a:0255-touchpad",
|
||||||
enabled = true
|
enabled = true,
|
||||||
})
|
})
|
||||||
hl.dispatch(hl.dsp.exec_cmd("notify-send 'Enabled Trackpad' --app-name='Hyprctl'"))
|
hl.dispatch(hl.dsp.exec_cmd("notify-send 'Enabled Trackpad' --app-name='Hyprctl'"))
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
-- ── DMS controls ─────────────────────────────────────────────────
|
||||||
|
-- clipboard history
|
||||||
|
hl.bind("h", function()
|
||||||
|
hl.dispatch(hl.dsp.exec_cmd("dms ipc call clipboard toggle"))
|
||||||
|
exit_submap()
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- Dash
|
||||||
|
hl.bind("d", function()
|
||||||
|
hl.dispatch(hl.dsp.exec_cmd("dms ipc call dash toggle"))
|
||||||
|
exit_submap()
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- Settings
|
||||||
|
hl.bind("s", function()
|
||||||
|
hl.dispatch(hl.dsp.exec_cmd("dms ipc call settings toggle"))
|
||||||
|
exit_submap()
|
||||||
|
end)
|
||||||
|
|
||||||
hl.bind("Escape", function()
|
hl.bind("Escape", function()
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
end)
|
end)
|
||||||
end
|
|
||||||
|
|||||||
@@ -5,5 +5,8 @@ hl.bind("Super + G", hl.dsp.submap("groups"))
|
|||||||
hl.bind("Super + S", hl.dsp.submap("screenshot"))
|
hl.bind("Super + S", hl.dsp.submap("screenshot"))
|
||||||
hl.bind("Super + W", hl.dsp.submap("window"))
|
hl.bind("Super + W", hl.dsp.submap("window"))
|
||||||
hl.bind("Super + A", hl.dsp.submap("workspace"))
|
hl.bind("Super + A", hl.dsp.submap("workspace"))
|
||||||
hl.bind("Super + Space", hl.dsp.exec_cmd("hyprlauncher"))
|
|
||||||
hl.bind("Super + Escape", hl.dsp.exec_cmd("wlogout"))
|
hl.bind("Super + Space", hl.dsp.exec_cmd("dms ipc call spotlight toggle"))
|
||||||
|
hl.bind("Super + Escape", hl.dsp.exec_cmd("dms ipc call powermenu open"))
|
||||||
|
hl.bind("Super + I", hl.dsp.exec_cmd("dms ipc call control-center open"))
|
||||||
|
hl.bind("Super + ?", hl.dsp.exec_cmd("dms ipc call keybinds toggle hyprland"))
|
||||||
|
|||||||
@@ -4,27 +4,32 @@ end
|
|||||||
|
|
||||||
hl.define_submap("notifications", function()
|
hl.define_submap("notifications", function()
|
||||||
hl.bind("c", function()
|
hl.bind("c", function()
|
||||||
hl.dispatch(hl.dsp.exec_cmd("swaync-client --hide-all"))
|
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications dismissAllPopups"))
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hl.bind("d", function()
|
hl.bind("d", function()
|
||||||
hl.dispatch(hl.dsp.exec_cmd("swaync-client --clear-all"))
|
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications clearAll"))
|
||||||
|
exit_submap()
|
||||||
|
end)
|
||||||
|
|
||||||
|
hl.bind("m", function()
|
||||||
|
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications toggleDoNotDisturb"))
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hl.bind("h", function()
|
hl.bind("h", function()
|
||||||
hl.dispatch(hl.dsp.exec_cmd("swaync-client -cp"))
|
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications close"))
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hl.bind("s", function()
|
hl.bind("s", function()
|
||||||
hl.dispatch(hl.dsp.exec_cmd("swaync-client -op"))
|
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications open"))
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hl.bind("t", function()
|
hl.bind("t", function()
|
||||||
hl.dispatch(hl.dsp.exec_cmd("swaync-client -t"))
|
hl.dispatch(hl.dsp.exec_cmd("dms ipc call notifications toggle"))
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
|||||||
@@ -4,32 +4,32 @@ end
|
|||||||
|
|
||||||
hl.define_submap("screenshot", function()
|
hl.define_submap("screenshot", function()
|
||||||
hl.bind("y", function()
|
hl.bind("y", function()
|
||||||
hl.dispatch(hl.dsp.exec_cmd("grimblast --notify copy area"))
|
hl.dispatch(hl.dsp.exec_cmd("dms screenshot --no-file"))
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hl.bind("c", function()
|
hl.bind("c", function()
|
||||||
hl.dispatch(hl.dsp.exec_cmd("grimblast --notify copysave area"))
|
hl.dispatch(hl.dsp.exec_cmd("dms screenshot"))
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hl.bind("s", function()
|
hl.bind("s", function()
|
||||||
hl.dispatch(hl.dsp.exec_cmd("grimblast --notify save area"))
|
hl.dispatch(hl.dsp.exec_cmd("dms screenshot --no-copy"))
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hl.bind("Shift + y", function()
|
hl.bind("Shift + y", function()
|
||||||
hl.dispatch(hl.dsp.exec_cmd("grimblast --notify copy screen"))
|
hl.dispatch(hl.dsp.exec_cmd("dms screenshot full --no-file"))
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hl.bind("Shift + c", function()
|
hl.bind("Shift + c", function()
|
||||||
hl.dispatch(hl.dsp.exec_cmd("grimblast --notify copysave screen"))
|
hl.dispatch(hl.dsp.exec_cmd("dms screenshot full"))
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
hl.bind("Shift + s", function()
|
hl.bind("Shift + s", function()
|
||||||
hl.dispatch(hl.dsp.exec_cmd("grimblast --notify save screen"))
|
hl.dispatch(hl.dsp.exec_cmd("dms screenshot full --no-copy"))
|
||||||
exit_submap()
|
exit_submap()
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
|||||||
@@ -23,12 +23,6 @@ hl.window_rule({
|
|||||||
},
|
},
|
||||||
fullscreen = true,
|
fullscreen = true,
|
||||||
})
|
})
|
||||||
hl.window_rule({
|
|
||||||
match = {
|
|
||||||
class = "wlogout",
|
|
||||||
},
|
|
||||||
fullscreen = true,
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Termfilechooser
|
-- Termfilechooser
|
||||||
hl.window_rule({
|
hl.window_rule({
|
||||||
|
|||||||
@@ -3,6 +3,8 @@
|
|||||||
# │ Kitty Config │
|
# │ Kitty Config │
|
||||||
# ╰────────────────────────────────────────────────╯
|
# ╰────────────────────────────────────────────────╯
|
||||||
# ────────────────────────────────────────────────────────────────────
|
# ────────────────────────────────────────────────────────────────────
|
||||||
|
include dank-tabs.conf
|
||||||
|
include dank-theme.conf
|
||||||
|
|
||||||
|
|
||||||
# ┌ ┐
|
# ┌ ┐
|
||||||
|
|||||||
@@ -8,15 +8,3 @@ output_path = '~/.config/hypr/hyprland/colors.lua'
|
|||||||
[templates.hyprlock]
|
[templates.hyprlock]
|
||||||
input_path = '~/.config/matugen/templates/hyprland/hyprlock-colors.conf'
|
input_path = '~/.config/matugen/templates/hyprland/hyprlock-colors.conf'
|
||||||
output_path = '~/.config/hypr/hyprlock/colors.conf'
|
output_path = '~/.config/hypr/hyprlock/colors.conf'
|
||||||
|
|
||||||
# [templates.gtk3]
|
|
||||||
# input_path = '~/.config/matugen/templates/gtk-3.0/gtk.css'
|
|
||||||
# output_path = '~/.config/gtk-3.0/gtk.css'
|
|
||||||
#
|
|
||||||
# [templates.gtk4]
|
|
||||||
# input_path = '~/.config/matugen/templates/gtk-4.0/gtk.css'
|
|
||||||
# output_path = '~/.config/gtk-4.0/gtk.css'
|
|
||||||
#
|
|
||||||
# [templates.wlogout]
|
|
||||||
# input_path = '~/.config/matugen/templates/wlogout/style.css'
|
|
||||||
# output_path = '~/.config/wlogout/style.css'
|
|
||||||
|
|||||||
@@ -1,66 +0,0 @@
|
|||||||
/*
|
|
||||||
* ╭───────────────────────────────────────────────╮
|
|
||||||
* │ WLOGOUT │
|
|
||||||
* ╰───────────────────────────────────────────────╯
|
|
||||||
*/
|
|
||||||
window {
|
|
||||||
font-family: monospace;
|
|
||||||
font-size: 14pt;
|
|
||||||
color: {{colors.on_background.default.hex}}; /* text */
|
|
||||||
background-color: {{colors.primary.background.hex}}60;
|
|
||||||
}
|
|
||||||
|
|
||||||
button {
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
background-position: center;
|
|
||||||
background-size: 25%;
|
|
||||||
border: none;
|
|
||||||
background-color: transparent;
|
|
||||||
margin: 5px;
|
|
||||||
transition: box-shadow 0.2s ease-in-out, background-color 0.2s ease-in-out;
|
|
||||||
border-radius: 40px;
|
|
||||||
}
|
|
||||||
|
|
||||||
button:hover {
|
|
||||||
background-color: {{colors.primary.default.hex}};
|
|
||||||
}
|
|
||||||
|
|
||||||
button:focus {
|
|
||||||
background-color: {{colors.primary.default.hex}}80;
|
|
||||||
color: {{colors.on_primary.default.hex}};
|
|
||||||
}
|
|
||||||
|
|
||||||
#lock {
|
|
||||||
background-image: image(url("./lock.png"));
|
|
||||||
}
|
|
||||||
#lock:focus {
|
|
||||||
background-image: image(url("./lock-hover.png"));
|
|
||||||
}
|
|
||||||
|
|
||||||
#logout {
|
|
||||||
background-image: image(url("./logout.png"));
|
|
||||||
}
|
|
||||||
#logout:focus {
|
|
||||||
background-image: image(url("./logout-hover.png"));
|
|
||||||
}
|
|
||||||
|
|
||||||
#suspend {
|
|
||||||
background-image: image(url("./sleep.png"));
|
|
||||||
}
|
|
||||||
#suspend:focus {
|
|
||||||
background-image: image(url("./sleep-hover.png"));
|
|
||||||
}
|
|
||||||
|
|
||||||
#shutdown {
|
|
||||||
background-image: image(url("./power.png"));
|
|
||||||
}
|
|
||||||
#shutdown:focus {
|
|
||||||
background-image: image(url("./power-hover.png"));
|
|
||||||
}
|
|
||||||
|
|
||||||
#reboot {
|
|
||||||
background-image: image(url("./restart.png"));
|
|
||||||
}
|
|
||||||
#reboot:focus {
|
|
||||||
background-image: image(url("./restart-hover.png"));
|
|
||||||
}
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
{
|
|
||||||
"label" : "lock",
|
|
||||||
"action" : "hyprlock",
|
|
||||||
"text" : "Lock",
|
|
||||||
"keybind" : "l"
|
|
||||||
}
|
|
||||||
{
|
|
||||||
"label" : "reboot",
|
|
||||||
"action" : "systemctl reboot",
|
|
||||||
"text" : "Reboot",
|
|
||||||
"keybind" : "r"
|
|
||||||
}
|
|
||||||
{
|
|
||||||
"label" : "shutdown",
|
|
||||||
"action" : "systemctl poweroff",
|
|
||||||
"text" : "Shutdown",
|
|
||||||
"keybind" : "s"
|
|
||||||
}
|
|
||||||
{
|
|
||||||
"label" : "logout",
|
|
||||||
"action" : "hyprctl dispatch exit 0",
|
|
||||||
"text" : "Logout",
|
|
||||||
"keybind" : "e"
|
|
||||||
}
|
|
||||||
{
|
|
||||||
"label" : "suspend",
|
|
||||||
"action" : "systemctl suspend",
|
|
||||||
"text" : "Suspend",
|
|
||||||
"keybind" : "u"
|
|
||||||
}
|
|
||||||
|
Before Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 3.7 KiB |
|
Before Width: | Height: | Size: 3.7 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 7.6 KiB |
|
Before Width: | Height: | Size: 7.6 KiB |
|
Before Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 5.6 KiB |
@@ -42,6 +42,8 @@ class Latex(decman.Module):
|
|||||||
}
|
}
|
||||||
|
|
||||||
def on_enable(self, store: decman.Store):
|
def on_enable(self, store: decman.Store):
|
||||||
|
out = decman.prg(["cd ~/projects/latex/"], user=self._user)
|
||||||
|
if out == "":
|
||||||
decman.prg(
|
decman.prg(
|
||||||
[
|
[
|
||||||
"cd",
|
"cd",
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ class DesktopShell(decman.Module):
|
|||||||
|
|
||||||
@pacman.packages
|
@pacman.packages
|
||||||
def pkgs(self) -> set[str]:
|
def pkgs(self) -> set[str]:
|
||||||
return {"dms-shell", "cava", "matugen"}
|
return {"dms-shell", "cava", "matugen", "papirus-icon-theme", "adw-gtk-theme"}
|
||||||
|
|
||||||
# TODO: Copy the config of dms, once done
|
# TODO: Copy the config of dms, once done
|
||||||
def directories(self) -> dict[str, decman.Directory]:
|
def directories(self) -> dict[str, decman.Directory]:
|
||||||
|
|||||||