feat!: migration to waybar

This commit is contained in:
2026-08-21 15:36:27 +02:00
parent dce6a6cafb
commit 1a97f301c2
22 changed files with 341 additions and 1026 deletions
+2 -1
View File
@@ -51,8 +51,9 @@ require("hyprland.windowrules.idle")
require("hyprland.windowrules.tags")
require("hyprland.windowrules.workspaces")
-- Workspace rules
-- Workspace & Layer rules
require("hyprland.workspacerules.main")(laptop_config, is_docked)
require("hyprland.layerrules")
-- Monitors
require("hyprland.monitors")(laptop_config, is_docked)
+1 -1
View File
@@ -35,7 +35,7 @@ hl.define_submap("device", function()
-- clipboard history
hl.bind("h", function()
hl.dispatch(hl.dsp.exec_cmd("dms ipc call clipboard toggle"))
hl.dispatch(hl.dsp.exec_cmd("cliphist list | rofi -dmenu -display-columns 2 | cliphist decode | wl-copy"))
exit_submap()
end, { description = "Toggle clipboard history panel" })
+5 -1
View File
@@ -8,5 +8,9 @@ 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("hyprlauncher"), { description = "Toggle app launcher" })
hl.bind(
"SUPER + Space",
hl.dsp.exec_cmd('killall rofi || rofi -show combi -modes combi -combi-modes "window,drun,run"'),
{ description = "Toggle app launcher" }
)
hl.bind("SUPER + Escape", hl.dsp.exec_cmd("wlogout"), { description = "Toggle logout screen" })
-1
View File
@@ -18,7 +18,6 @@ return function(is_laptop)
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("wl-paste --watch cliphist store")
+4
View File
@@ -0,0 +1,4 @@
hl.layer_rule({
dim_around = true,
match = { namespace = "rofi" },
})
+1 -1
View File
@@ -1,3 +1,3 @@
ui {
window_size = 800 400
window_size = 400 800
}
+1 -2
View File
@@ -3,8 +3,7 @@
# │ Kitty Config │
# ╰────────────────────────────────────────────────╯
# ────────────────────────────────────────────────────────────────────
include dank-tabs.conf
include dank-theme.conf
include colors.conf
# ┌ ┐
+25 -2
View File
@@ -12,29 +12,52 @@ 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'
[templates.swaync-colors]
input_path = '~/.config/matugen/templates/colors.css'
output_path = "~/.config/swaync/colors.css"
post_hook = "swaync-client -rs"
[templates.waybar-colors]
input_path = '~/.config/matugen/templates/colors.css'
output_path = "~/.config/waybar/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'
[templates.kitty]
input_path = '~/.config/matugen/templates/kitty/colors.conf'
output_path = '~/.config/kitty/colors.conf'
# My own
[templates.hyprland]
input_path = '~/.config/matugen/templates/hyprland/colors.lua'
output_path = '~/.config/hypr/hyprland/colors.lua'
[templates.waybar]
input_path = '~/.config/matugen/templates/waybar/style.css'
output_path = '~/.config/waybar/style.css'
post_hook = 'pkill -SIGUSR2 waybar'
[templates.hyprlock]
input_path = '~/.config/matugen/templates/hyprland/hyprlock-colors.conf'
output_path = '~/.config/hypr/hyprlock-colors.conf'
[templates.hyprpaper]
input_path = '~/.config/matugen/templates/hyprland/hyprpaper.conf'
output_path = '~/.config/hypr/hyprpaper.conf'
post_hook = 'pkill -SIGUSR2 hyprpaper'
[templates.wlogout]
input_path = '~/.config/matugen/templates/wlogout/style.css'
output_path = '~/.config/wlogout/style.css'
[templates.rofi]
input_path = '~/.config/matugen/templates/rofi/style.rasi'
output_path = '~/.config/rofi/style.rasi'
[templates.yazi]
input_path = '~/.config/matugen/templates/yazi/theme.toml'
output_path = '~/.config/yazi/theme.toml'
@@ -3,6 +3,7 @@
background = rgba({{colors.background.default.hex_stripped}}FF)
base = rgba({{colors.surface.default.hex_stripped}}FF)
alternate_base = rgba({{colors.surface.default.hex_stripped | lighten: -5.0}}FF)
text = rgba({{colors.on_background.default.hex_stripped}}FF)
accent = rgba({{colors.primary.default.hex_stripped}}FF)
accent_secondary = rgba({{colors.secondary.default.hex_stripped}}FF)
@@ -0,0 +1,71 @@
# --- Main Colors ---
background {{ colors.surface.default.hex | lighten: -2.5 }}
foreground {{ colors.on_surface.default.hex }}
cursor {{ colors.on_surface.default.hex }}
cursor_text_color {{ colors.surface.default.hex }}
selection_background {{ colors.secondary_container.default.hex }}
selection_foreground {{ colors.on_secondary_container.default.hex }}
url_color {{ colors.tertiary.default.hex }}
# --- ANSI Colors ---
color0 {{ colors.surface.default.hex }}
color1 {{ colors.error.default.hex }}
color2 {{ colors.tertiary.default.hex }}
color3 {{ colors.secondary.default.hex }}
color4 {{ colors.primary.default.hex }}
color5 {{ colors.tertiary_fixed_dim.default.hex }}
color6 {{ colors.secondary_fixed_dim.default.hex }}
color7 {{ colors.on_surface.default.hex }}
color8 {{ colors.surface_variant.default.hex }}
color9 {{ colors.error_container.default.hex }}
color10 {{ colors.tertiary_container.default.hex }}
color11 {{ colors.secondary_container.default.hex }}
color12 {{ colors.primary_container.default.hex }}
color13 {{ colors.on_secondary_fixed_variant.default.hex }}
color14 {{ colors.on_tertiary_fixed_variant.default.hex }}
color15 {{ colors.on_surface_variant.default.hex }}
# --- Starship Prompt Bubbles ---
color255 {{ colors.primary_container.default.hex }}
color254 {{ colors.primary.default.hex }}
color253 {{ colors.secondary_container.default.hex }}
color252 {{ colors.secondary.default.hex }}
color251 {{ colors.tertiary_container.default.hex }}
color250 {{ colors.tertiary.default.hex }}
color249 {{ colors.error_container.default.hex }}
color248 {{ colors.error.default.hex }}
color232 {{ colors.on_primary_container.default.hex }}
color233 {{ colors.on_primary.default.hex }}
color234 {{ colors.on_secondary_container.default.hex }}
color235 {{ colors.on_secondary.default.hex }}
color236 {{ colors.on_tertiary_container.default.hex }}
color237 {{ colors.on_tertiary.default.hex }}
color238 {{ colors.on_error_container.default.hex }}
color239 {{ colors.on_error.default.hex }}
color240 {{ colors.on_primary_container.default.hex }}
# Matched with unthemed light/dark
color243 {{ colors.primary.default.hex }}
color244 {{ colors.error.default.hex }}
color245 {{ colors.outline_variant.default.hex }}
# --- UI Elements ---
active_tab_foreground {{ colors.on_primary.default.hex }}
active_tab_background {{ colors.primary.default.hex }}
inactive_tab_foreground {{ colors.on_primary_container.default.hex }}
inactive_tab_background {{ colors.primary_container.default.hex }}
active_border_color {{ colors.primary.default.hex }}
inactive_border_color {{ colors.outline.default.hex }}
# --- Marks ---
mark1_foreground {{ colors.on_primary_fixed.default.hex }}
mark1_background {{ colors.primary_fixed.default.hex }}
mark2_foreground {{ colors.on_secondary_fixed.default.hex }}
mark2_background {{ colors.secondary_fixed.default.hex }}
mark3_foreground {{ colors.on_tertiary_fixed.default.hex }}
mark3_background {{ colors.tertiary_fixed.default.hex }}
+82
View File
@@ -0,0 +1,82 @@
* {
background: {{colors.background.default.hex}};
background-selected: {{colors.primary.default.hex}};
foreground: {{colors.on_background.default.hex}};
foreground-selected: {{colors.on_primary.default.hex}};
accent: {{colors.secondary.default.hex}};
inactive: {{colors.outline.default.hex}};
spacing: 2;
width: 30em;
margin: 0;
padding: 0;
}
#window {
background-color: @background;
border-color: @accent;
border: 1px;
border-radius: 10px;
padding: 0;
location: center;
anchor: center;
margin: 0;
}
#mainbox {
background-color: @background;
spacing: 10px;
margin: 10px 0 0 0;
width: 200px;
}
#inputbar {
children: [prompt,entry];
background-color: @background;
}
#listview {
background-color: @background;
fixed-height: true;
margin: 5px 0 0 10px;
}
#element {
padding: 5px;
background-color: @background;
text-color: @foreground;
}
element selected {
background-color: @background-selected;
text-color: @foreground-selected;
border: 1px;
border-radius: 5px;
}
element-text {
background-color: inherit;
text-color: inherit;
}
element-icon {
background-color: inherit;
margin: 0 4px 0 0;
size: 35px;
}
#entry {
background-color: @background;
text-color: @accent;
placeholder: "Search";
placeholder-color: @inactive;
font: "Comfortaa Regular 20";
}
#prompt {
background-color: @background;
padding: 0 4px;
margin: 0 5px 0 0;
text-color: @foreground;
font: "Adwaita Sans Regular 20";
}
@@ -1,7 +0,0 @@
/*
* Css Colors
* Generated with Matugen
*/
<* for name, value in colors *>
@define-color {{name}} {{value.default.hex}};
<* endfor *>
@@ -3,98 +3,75 @@
* {
border: none;
border-radius: 0;
font-family: 'FluentSystemIcons-Regular,Comfortaa', monospace;
font-family: 'Comfortaa, FiraMono Nerd Font';
font-weight: bold;
font-size: 13px;
font-size: 15px;
min-height: 0;
margin-left: 3px;
margin-right: 3px;
}
window#waybar {
background: rgba(0, 0, 0, 0);
color: #cc5c00;
background-color: {{ colors.shadow.default.rgba | set_alpha: 0.1 }};
color: @primary;
}
tooltip {
background: black;
background-color: @background;
border-radius: 10px;
border-width: 2px;
border-style: solid;
border-color: #cc5c00;
border-color: @outline;
}
#workspaces button {
padding: 3px;
color: #a79f9d;
margin-right: 5px;
}
#workspaces button.active {
color: white;
}
#workspaces button.focused {
color: white;
background: #cc5c00;
background-color: @primary_container;
color: @on_primary_container;
margin-right: 1px;
border-radius: 10px;
}
#workspaces button.active {
color: @on_primary;
background-color: @primary;
}
#workspaces button.focused {
color: @on_secondary;
background-color: @secondary;
}
#workspaces button.urgent {
color: white;
background: #cc5c00;
color: @on_error;
background-color: @error;
border-radius: 10px;
}
#workspaces button:hover {
background: white;
color: #cc5c00;
border-radius: 10px;
color: @on_secondary;
background-color: @secondary;
}
#workspaces {
background: black;
background-color: 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;
#workspaces {
background-color: @surface;
color: @primary;
padding: 3px 9px;
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;
@@ -102,14 +79,30 @@ tooltip {
}
#clock {
color: #009e58;
min-width: 125px;
}
#pulseaudio {
color: #9b1603;
#pulseaudio,
#memory,
#network,
#bluetooth,
#brightness,
#backlight,
#cpu {
padding: 3px 5px;
margin: 3px 0px;
margin-top: 9px;
border-radius: 0;
background-color: @surface;
color: @primary;
}
#cpu {
border-radius: 10px 0px 0px 10px;
padding-left: 9px;
}
#pulseaudio.microphone {
color: rgb(167, 159, 157);
border-radius: 0px 10px 10px 0px;
padding-right: 9px;
}
+12
View File
@@ -0,0 +1,12 @@
/** Basic config file **/
configuration {
show-icons: true;
icon-theme: "Candy";
display-drun: "";
display-run: "🏃🏽‍♂️ ";
display-window: "🗔 ";
display-combi: "🔎 ";
}
@theme "style.rasi"
+83 -49
View File
@@ -7,9 +7,8 @@
"gtk-layer-shell": true,
"height": 0,
"modules-left": [
"hyprland/submap",
"clock",
"cpu",
"memory",
"hyprland/workspaces"
],
"modules-center": [
@@ -17,47 +16,81 @@
],
"modules-right": [
"tray",
"cpu",
"memory",
"network",
"bluetooth",
"backlight",
"battery",
"pulseaudio",
"pulseaudio#microphone",
"custom/powerMenu"
"pulseaudio#microphone"
],
"bluetooth": {
"format": "{icon}",
"format-disabled": "\udb80\udcb2",
"format-off": "\udb80\udcb2",
"format-on": "\udb80\udcaf",
"format-connected": "\udb80\udcb1",
"format-icons": [
"\udb82\udd47",
"\udb82\udd3e",
"\udb82\udd3f",
"\udb82\udd40",
"\udb82\udd41",
"\udb82\udd42",
"\udb82\udd43",
"\udb82\udd44",
"\udb82\udd45",
"\udb82\udd46"
],
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%",
"on-click": "alacritty -e bluetui -T bluetui"
},
"hyprland/submap": {
// "format": "{icon}",
"max-length": 4,
"tooltip": false
// "icons": {
// "device": "\uf4a9",
// "groups": "\udb80\udec3",
// "launch": "\udb85\udcde",
// "notifications": "\uf400",
// "screenshot": "\udb83\ude51",
// "window": "\ueb7f",
// "workspace": "\ueb23",
// "groupedlaunch": "\uf0c0"
// }
},
"hyprland/window": {
"format": "{}"
"format": "{}",
"tooltip-format": "Class: {class}",
"rewrite": {
"(.*) — Librewolf": "🌎 $1",
"nvim - (.*)": "\ue6ae $1",
"Yazi: (.*)": "\udb81\ude45 $1"
}
},
"tray": {
"icon-size": 14,
"spacing": 8
},
"custom/dualsense": {
"tooltip": false,
"return-type": "json",
"exec": "$HOME/.config/waybar/dualsense-notifier.sh",
"on-click": "dualsensectl power-off"
},
"custom/powerMenu": {
"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-disconnected": "\udb80\udf19",
"format-wifi": "{icon} {essid}",
"format-ethernet": " Wired",
"format-ethernet": "\udb80\ude00",
"tooltip-format-ethernet": "<big>Ethernet</big>\nInterface: {ifname}\nIP: {ipaddr}\nUp/Down (bps): {bandwidthUpBits}/{bandwidthDownBits}",
"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",
"on-click": "alacritty -e nmtui -T nmtui",
"format-icons": [
"",
"",
"",
""
"\udb82\udd2f",
"\udb82\udd1f",
"\udb82\udd22",
"\udb82\udd25",
"\udb82\udd28"
]
},
"clock": {
@@ -68,47 +101,48 @@
"hyprland/workspaces": {
"disable-scroll": true,
"all-outputs": true,
"on-click": "activate",
"format": "{icon}"
"tooltips": {
"default": "{name}: {windows}",
"empty": "" // Will result in no tooltip
}
},
"cpu": {
"tooltip-format": "<big>CPU</big>\n<tt>Total: {usage}</tt>",
"format": " {usage}",
"format": "\uf4bc {usage}",
"interval": 5
},
"memory": {
"format": " {percentage}",
"format": "\uefc5 {percentage}",
"interval": 5
},
"pulseaudio": {
"format": "{icon} {volume}",
"format": "{icon} {volume}",
"tooltip": true,
"format-muted": " Off",
"on-click": "pamixer -t",
"on-scroll-up": "pamixer -i 5",
"on-scroll-down": "pamixer -d 5",
"format-muted": "\udb81\udcc4 Off",
"on-click": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle",
"on-scroll-up": "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+",
"on-scroll-down": "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-",
"scroll-step": 5,
"format-icons": {
"headphone": "",
"headphone": "\uf025",
"hands-free": "",
"headset": "",
"phone": "",
"portable": "",
"headset": "\uee59",
"phone": "\udb82\udd70",
"portable": "\udb82\udda2",
"car": "🏎",
"default": [
"",
"",
""
"\udb81\udcc3",
"\udb81\udf1f"
]
}
},
"pulseaudio#microphone": {
"format": "{format_source}",
"format-source": " {volume}",
"format-source-muted": " 0",
"on-click": "pamixer --default-source -t",
"on-scroll-up": "pamixer --default-source -i 5",
"on-scroll-down": "pamixer --default-source -d 5",
"format-source": "\uf130 {volume}",
"format-source-muted": "\uf131 Off",
"on-click": "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle",
"on-scroll-up": "wpctl set-volume @DEFAULT_AUDIO_SOURCE@ 5%+",
"on-scroll-down": "wpctl set-volume @DEFAULT_AUDIO_SOURCE@ 5%-",
"scroll-step": 5
}
}
-28
View File
@@ -1,28 +0,0 @@
<?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>