diff --git a/hypr/animation.conf b/hypr/animation.conf
deleted file mode 100644
index e2852bc..0000000
--- a/hypr/animation.conf
+++ /dev/null
@@ -1,9 +0,0 @@
-animations {
- enabled = true
- #first_launch_animation = true
- bezier = myBezier, 0.4, 0, 0.2, 1
- animation = windows, 1, 2.5, myBezier, popin 80%
- animation = border, 1, 2.5, myBezier
- animation = fade, 1, 2.5, myBezier
- animation = workspaces, 1, 2.5, myBezier, slidefade 20%
-}
diff --git a/hypr/animation.lua b/hypr/animation.lua
new file mode 100644
index 0000000..28525be
--- /dev/null
+++ b/hypr/animation.lua
@@ -0,0 +1,13 @@
+hl.config({
+ animations = {
+ enabled = true,
+ -- enabled = false
+ -- first_launch_animation = true
+ hl.curve("myBezier",{type = "bezier", points = {{0.4,0},{0.2,1}}}),
+ hl.animation({leaf = "layers", enabled = true, speed = 2, bezier = "myBezier"}),
+ hl.animation({leaf = "windows", enabled = true, speed = 2.5, bezier = "myBezier"}),
+ hl.animation({leaf = "border", enabled = true, speed = 2.5, bezier = "myBezier"}),
+ hl.animation({leaf = "fade", enabled = true, speed = 2.5, bezier = "myBezier"}),
+ hl.animation({leaf = "workspaces", enabled = true, speed = 2.5, bezier = "myBezier", style = "slidefade 20%"})
+ },
+})
diff --git a/hypr/bin/restart-swayosd b/hypr/bin/restart-swayosd
new file mode 100755
index 0000000..b5c7dd4
--- /dev/null
+++ b/hypr/bin/restart-swayosd
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+killall swayosd-server
+swayosd-server &
diff --git a/hypr/decoration.conf b/hypr/decoration.conf
deleted file mode 100644
index 04640f2..0000000
--- a/hypr/decoration.conf
+++ /dev/null
@@ -1,19 +0,0 @@
-decoration {
- rounding = 10
- rounding_power = 2
- dim_inactive = false
-
- shadow {
- enabled = false
- range = 4
- render_power = 3
- color = rgba(1a1a1aee)
- }
-
- blur {
- enabled = false
- size = 10
- passes = 1
- vibrancy = 0.1696
- }
-}
diff --git a/hypr/decoration.lua b/hypr/decoration.lua
new file mode 100644
index 0000000..46b30e0
--- /dev/null
+++ b/hypr/decoration.lua
@@ -0,0 +1,19 @@
+hl.config({
+ decoration = {
+ rounding = 10,
+ rounding_power = 2,
+ dim_inactive = false,
+ shadow = {
+ enabled = false,
+ range = 4,
+ render_power = 3,
+ color = "rgba(1a1a1aee)",
+ },
+ blur = {
+ enabled = false,
+ size = 10,
+ passes = 1,
+ vibrancy = 0.1696,
+ },
+ },
+})
diff --git a/hypr/environment.conf b/hypr/environment.conf
deleted file mode 100644
index 75248e2..0000000
--- a/hypr/environment.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-env = QT_QPA_PLATFORMTHEME,qt6ct
-env = QT_QPA_PLATFORM,wayland
-env = QT_SCALE_FACTOR,1
-env = GTK_THEME,MacTahoe-Dark
-env = GTK2_RC_FILES,/home/tola/dotfiles/gtk-2.0/gtkrc
-env = XDG_DATA_DIRS,/var/lib/flatpak/exports/share:/home/tola/.local/share/flatpak/exports/share:/usr/share
-env = HYPRCURSOR_THEME,Bibata-Modern-Ice
-env = HYPRCURSOR_SIZE,24
diff --git a/hypr/environment.lua b/hypr/environment.lua
new file mode 100644
index 0000000..46ea037
--- /dev/null
+++ b/hypr/environment.lua
@@ -0,0 +1,8 @@
+hl.env("QT_QPA_PLATFORMTHEME", "qt6ct")
+hl.env("QT_QPA_PLATFORM", "wayland")
+hl.env("QT_SCALE_FACTOR", 1)
+hl.env("GTK_THEME", "MacTahoe-Dark")
+hl.env("GTK2_RC_FILES", "/home/tola/dotfiles/gtk-2.0/gtkrc")
+hl.env("XDG_DATA_DIRS", "/var/lib/flatpak/exports/share:/home/tola/.local/share/flatpak/exports/share:/usr/share")
+hl.env("HYPRCURSOR_THEME", "Bibata-Modern-Ice")
+hl.env("HYPRCURSOR_SIZE", 24)
diff --git a/hypr/gestures.conf b/hypr/gestures.conf
deleted file mode 100644
index 4bfe53f..0000000
--- a/hypr/gestures.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-gesture = 3, horizontal, workspace
-gesture = 3, up, fullscreen
-gesture = 3, pinchout, float
diff --git a/hypr/gestures.lua b/hypr/gestures.lua
new file mode 100644
index 0000000..59184aa
--- /dev/null
+++ b/hypr/gestures.lua
@@ -0,0 +1,3 @@
+hl.gesture({fingers = 3, direction = "horizontal", action = "workspace"})
+hl.gesture({fingers = 3, direction = "up", action = "fullscreen"})
+hl.gesture({fingers = 3, direction = "pinchout", action = "float"})
diff --git a/hypr/hypridle.lua b/hypr/hypridle.lua
new file mode 100644
index 0000000..0c1355f
--- /dev/null
+++ b/hypr/hypridle.lua
@@ -0,0 +1,47 @@
+-- Generated by hyprconf2lua v1.4.0
+-- https://github.com/Prateek-squadron/hyprconf2lua
+-- Manual review may be needed for complex directives
+
+---@module 'hl'
+
+hl.config({
+ general = {
+ lock_cmd = "pidof hyprlock || hyprlock",
+ before_sleep_cmd = "loginctl lock-session",
+ after_sleep_cmd = "hyprctl dispatch dpms on",
+ },
+})
+
+hl.config({
+ listener = {
+ timeout = 150,
+ on_timeout = "brightnesctl -s set 10",
+ on_resume = "brightnesctl -r",
+ },
+})
+-- NOTE: Section 'listener' may be a plugin or custom section; verify the output
+
+hl.config({
+ listener = {
+ timeout = 6000,
+ on_timeout = "loginctl lock-session",
+ },
+})
+-- NOTE: Section 'listener' may be a plugin or custom section; verify the output
+
+hl.config({
+ listener = {
+ timeout = 7200,
+ on_timeout = "hyprctl dispatch dpms off",
+ on_resume = "hyprctl dispatch dpms on",
+ },
+})
+-- NOTE: Section 'listener' may be a plugin or custom section; verify the output
+
+hl.config({
+ listener = {
+ timeout = 8000,
+ on_timeout = "systemctl suspend",
+ },
+})
+-- NOTE: Section 'listener' may be a plugin or custom section; verify the output
diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf
deleted file mode 100644
index e9b4a57..0000000
--- a/hypr/hyprland.conf
+++ /dev/null
@@ -1,36 +0,0 @@
-source=~/dotfiles/hypr/programs.conf
-source=~/dotfiles/hypr/keybinds.conf
-source=~/dotfiles/hypr/windowrules.conf
-source=~/dotfiles/hypr/startup.conf
-source=~/dotfiles/hypr/monitors.conf
-source=~/dotfiles/hypr/environment.conf
-source=~/dotfiles/hypr/keyboard.conf
-source=~/dotfiles/hypr/gestures.conf
-general {
- gaps_in = 5
- gaps_out = 5
- border_size = 1
- col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
- col.inactive_border = rgba(595959aa)
- layout = dwindle
- allow_tearing = false
-}
-source=~/dotfiles/hypr/decoration.conf
-source=~/dotfiles/hypr/animation.conf
-dwindle {
-# pseudotile = false
- preserve_split = true
-}
-master {
- new_status = master
-}
-misc {
- force_default_wallpaper = -1
-# vfr = true
-}
-debug {
- damage_tracking = 2
-}
-xwayland {
- force_zero_scaling = true
-}
diff --git a/hypr/hyprland.lua b/hypr/hyprland.lua
new file mode 100644
index 0000000..8e7d7c4
--- /dev/null
+++ b/hypr/hyprland.lua
@@ -0,0 +1,55 @@
+require("keybinds")
+require("windowrules")
+require("startup")
+require("monitors")
+require("environment")
+require("keyboard")
+require("gestures")
+require("decoration")
+require("animation")
+
+hl.config({
+ general = {
+ gaps_in = 5,
+ gaps_out = 5,
+ border_size = 1,
+ layout = "dwindle",
+ allow_tearing = false,
+ col = {
+ active_border = { colors = { "rgba(33ccffee)", "rgba(00ff99ee)" }, angle = 45 },
+ inactive_border = "rgba(595959aa)",
+ },
+ },
+})
+
+hl.config({
+ dwindle = {
+ -- pseudotile = false
+ preserve_split = true,
+ },
+})
+
+hl.config({
+ master = {
+ new_status = "master",
+ },
+})
+
+hl.config({
+ misc = {
+ force_default_wallpaper = -1,
+ -- vfr = true
+ },
+})
+
+hl.config({
+ debug = {
+ damage_tracking = 2,
+ },
+})
+
+hl.config({
+ xwayland = {
+ force_zero_scaling = true,
+ },
+})
diff --git a/hypr/hyprlock.lua b/hypr/hyprlock.lua
new file mode 100644
index 0000000..68de847
--- /dev/null
+++ b/hypr/hyprlock.lua
@@ -0,0 +1,403 @@
+-- Generated by hyprconf2lua v1.4.0
+-- https://github.com/Prateek-squadron/hyprconf2lua
+-- Manual review may be needed for complex directives
+
+---@module 'hl'
+
+hl.config({
+ background = {
+ path = "/home/tola/Pictures/wallpaper/Leonardo_Phoenix_A_serene_majestic_dark_snow_wolf_its_thick_gr_2.jpg",
+ color = { "rgba(25", 20, 20, "1.0)" },
+ blur_passes = 3,
+ blur_size = 3,
+ noise = 0.0117,
+ contrast = 0.8916,
+ brightness = 0.5,
+ vibrancy = 0.0,
+ vibrancy_darkness = 0.0,
+ },
+})
+-- NOTE: Section 'background' may be a plugin or custom section; verify the output
+
+hl.config({
+ general = {
+ no_fade_in = false,
+ grace = 0,
+ disable_loading_bar = false,
+ ignore_empty_input = true,
+ -- hide_cursor = true
+ },
+})
+
+hl.config({
+ animations = {
+ },
+})
+
+hl.config({
+ image = {
+ path = "~/dotfiles/hypr/pictures/user.jpeg",
+ border_size = 2,
+ border_color = { "rgba(255", 255, 255, "0)" },
+ size = 200,
+ rounding = -1,
+ rotate = 0,
+ reload_time = -1,
+ position = { 0, 40 },
+ halign = "center",
+ valign = "center",
+ },
+})
+-- NOTE: Section 'image' may be a plugin or custom section; verify the output
+
+hl.config({
+ label = {
+ text = "cmd[update:1000] echo $(date + %A %d %B %Y )",
+ color = { "rgba(200", 200, 200, "1.0)" },
+ font_size = 25,
+ font_family = "JetBrainsMonoNerd Font Mono Bold",
+ position = { 0, 350 },
+ halign = "center",
+ valign = "center",
+ },
+})
+-- NOTE: Section 'label' may be a plugin or custom section; verify the output
+
+hl.config({
+ label = {
+ text = "cmd[update:1000] echo $(date + %H:%M )",
+ color = { "rgba(200", 200, 200, "1.0)" },
+ font_size = 120,
+ font_family = "JetBrainsMonoNerd Font Mono Bold",
+ position = { 0, 250 },
+ halign = "center",
+ valign = "center",
+ },
+})
+-- NOTE: Section 'label' may be a plugin or custom section; verify the output
+
+hl.config({
+ shape = {
+ size = { 256, 48 },
+ color = { "rgba(0", 0, 0, "1)" },
+ rounding = -1,
+ border_size = 0,
+ border_color = { "rgba(0", 0, 0, "1)" },
+ rotate = 0,
+ xray = false,
+ position = { 0, -130 },
+ halign = "center",
+ valign = "center",
+ },
+})
+-- NOTE: Section 'shape' may be a plugin or custom section; verify the output
+
+hl.config({
+ label = {
+ text = "cmd[update:1000] echo " .. os.getenv("USER") .. "@$(hostname)",
+ color = { "rgba(216", 222, 233, "0.80)" },
+ --outline_thickness = 2
+ --dots_size = 0.2
+ --dots_spacing = 0.2
+ --dots_center = true
+ font_size = 18,
+ font_family = "JetBrainsMonoNerd Font Mono Bold",
+ position = { 0, -130 },
+ halign = "center",
+ valign = "center",
+ },
+})
+-- NOTE: Section 'label' may be a plugin or custom section; verify the output
+
+hl.config({
+ input-field = {
+ size = { 256, 48 },
+ outline_thickness = 0,
+ dots_size = 0.2,
+ dots_spacing = 0.5,
+ dots_center = true,
+ outer_color = { "rgba(0", 0, 0, "0)" },
+ inner_color = { "rgba(0", 0, 0, "1)" },
+ font_color = { "rgb(200", 200, "200)" },
+ fade_on_empty = false,
+ font_family = "JetBrainsMonoNerd Font Mono Bold",
+ placeholder_text = "Enter Pass",
+ hide_input = false,
+ position = { 0, -210 },
+ halign = "center",
+ valign = "center",
+ },
+})
+-- NOTE: Section 'input-field' may be a plugin or custom section; verify the output
+
+-- label {
+
+-- monitor =
+
+-- text = cmd[update:1000] echo "$(~/dotfiles/hypr/bin/songdetail.sh)"
+
+-- color = rgba(255, 255, 255, 0.6)
+
+-- font_size = 18
+
+-- font_family = JetBrainsMonoNerd Font Mono Bold
+
+-- position = 0, 50
+
+-- halign = center
+
+-- valign = bottom
+
+-- }
+
+--image {
+
+-- monitor =
+
+-- path = ~/dotfiles/hypr/pictures/music.webp
+
+-- size = 100
+
+-- rounding = 5
+
+-- burder_size = 3
+
+-- border_color = rgba(216, 222, 233, 0.70)
+
+-- rotate = 0
+
+-- reload_time = 2
+
+-- reload_cmd = ~/dotfiles/hypr/bin/hyprlock-music.sh --art
+
+-- position = 730, 57
+
+-- halign = left
+
+-- valign = bottom
+
+-- zindex = 1
+
+--}
+
+--shape {
+
+-- monitor =
+
+-- color = rgba(100, 114, 125, 0.4)
+
+-- size = 500, 140
+
+-- rounding = 10
+
+-- position = 0, 40
+
+-- halign = center
+
+-- valign = bottom
+
+-- zindex = 0
+
+--}
+
+--label {
+
+-- monitor =
+
+-- text = cmd[update:1000] echo "$(~/dotfiles/hypr/bin/hyprlock-music.sh --title)"
+
+-- color = rgba(216, 222, 233, 0.70)
+
+-- font_size = 16
+
+-- font_family = SF Pro Display Heavy
+
+-- position = 55, 138
+
+-- halign = center
+
+-- valign = bottom
+
+-- zindex = 1
+
+--}
+
+-- Player source (e.g., Spotify, Firefox)
+
+--label {
+
+-- monitor =
+
+-- text = cmd[update:1000] echo "$(~/dotfiles/hypr/bin/hyprlock-music.sh --player)"
+
+-- color = rgba(216, 222, 233, 0.70)
+
+-- font_size = 13
+
+-- font_family = SF Pro Display Bold
+
+-- position = 205, 45
+
+-- halign = center
+
+-- valign = bottom
+
+-- zindex = 1
+
+--}
+
+-- Artist name
+
+--label {
+
+-- monitor =
+
+-- text = cmd[update:1000] echo " $(~/dotfiles/hypr/bin/hyprlock-music.sh --artist)"
+
+-- color = rgba(216, 222, 233, 0.70)
+
+-- font_size = 12
+
+-- font_family = SF Pro Display Semibold
+
+-- position = 55, 118
+
+-- halign = center
+
+-- valign = bottom
+
+-- zindex = 1
+
+--}
+
+-- Previous track button
+
+--label {
+
+-- monitor =
+
+-- text =
+
+-- color = rgba(216, 222, 233, 0.70)
+
+-- font_size = 25
+
+-- onclick = playerctl previous
+
+-- position = -5, 55
+
+-- halign = center
+
+-- valign = bottom
+
+--}
+
+-- Play/Pause button
+
+--label {
+
+-- monitor =
+
+-- text = cmd[update:1000] ~/dotfiles/hypr/bin/hyprlock-music.sh --status
+
+-- color = rgba(216, 222, 233, 0.70)
+
+-- font_size = 25
+
+-- onclick = playerctl play-pause
+
+-- position = 55, 55
+
+-- halign = center
+
+-- valign = bottom
+
+--}
+
+-- Next track button
+
+--label {
+
+-- monitor =
+
+-- text =
+
+-- color = rgba(216, 222, 233, 0.70)
+
+-- font_size = 25
+
+-- onclick = playerctl next
+
+-- position = 110, 55
+
+-- halign = center
+
+-- valign = bottom
+
+--}
+
+-- Current position timestamp
+
+--label {
+
+-- monitor =
+
+-- text = cmd[update:1000] echo "$(~/dotfiles/hypr/bin/hyprlock-music.sh --position)"
+
+-- color = rgba(216, 222, 233, 0.70)
+
+-- font_size = 10
+
+-- font_family = SF Pro Display Medium
+
+-- position = -100, 95
+
+-- halign = center
+
+-- valign = bottom
+
+--}
+
+-- Total length timestamp
+
+--label {
+
+-- monitor =
+
+-- text = cmd[update:1000] echo "$(~/dotfiles/hypr/bin/hyprlock-music.sh --length)"
+
+-- color = rgba(216, 222, 233, 0.70)
+
+-- font_size = 10
+
+-- font_family = SF Pro Display Medium
+
+-- position = 210, 95
+
+-- halign = center
+
+-- valign = bottom
+
+--}
+
+-- Progress bar (with Pango markup for colored segments)
+
+--label {
+
+-- monitor =
+
+-- text = cmd[update:1000] ~/dotfiles/hypr/bin/hyprlock-music.sh --progress-bar
+
+-- color = rgba(216, 222, 233, 0.70)
+
+-- font_size = 12
+
+-- font_family = SF Pro Display Medium
+
+-- position = 55, 95
+
+-- halign = center
+
+-- valign = bottom
+
+--}
diff --git a/hypr/hyprpaper.lua b/hypr/hyprpaper.lua
new file mode 100644
index 0000000..c78843a
--- /dev/null
+++ b/hypr/hyprpaper.lua
@@ -0,0 +1,9 @@
+-- Generated by hyprconf2lua v1.4.0
+-- https://github.com/Prateek-squadron/hyprconf2lua
+-- Manual review may be needed for complex directives
+
+---@module 'hl'
+
+-- TODO: manual review: preload = "~/Pictures/wallpaper/astronaut_jellyfish.jpg"
+
+-- TODO: manual review: wallpaper = "", "~/Pictures/wallpaper/astronaut_jellyfish.jpg"
diff --git a/hypr/keybinds.conf b/hypr/keybinds.conf
deleted file mode 100644
index 6c65133..0000000
--- a/hypr/keybinds.conf
+++ /dev/null
@@ -1,120 +0,0 @@
-$mainMod = ALT
-#$mainMod = SUPER
-bind = $mainMod, Return, exec, $terminal
-bind = $mainMod, T, exec, $fileManager
-bind = $mainMod, D, exec, $launcher
-bind = , XF86LaunchB, exec, $launcher
-bind = $mainMod, B, exec, $locker
-bind = $mainMod, G, exec, $browser
-bind = $mainMod SHIFT, F, exec, firefox
-bind = $mainMod, A, exec, Telegram
-bind = $mainMod, P, exec, $dashboard
-bind = $mainMod, C, exec, [float] $clipboard
-bind = $mainMod SHIFT, P, exec, $powermenu
-bind = $mainMod SHIFT, O, exec, $onscreenkeyboard
-bind = $mainMod, S, exec, spotify-launcher
-bind = $mainMod, Y, exec, $calculator
-bind = $mainMod, E, exec, $emojipicker
-bind = $mainMod, Z, exec, $swaync-toggle
-bind = $mainMod SHIFT, R, exec, $swaync-reload-config
-bind = $mainMod, U, exec, [float] $sysup
-bind = $mainMod, O, exec, $editconfig
-bind = $mainMod SHIFT, A, exec, hyprwall
-bind = $mainMod SHIFT, G, exec, hyprgui
-bind = $mainMod, space, exec, $menu
-bind = $mainMod, F, fullscreen,
-bind = $mainMod, V, togglefloating,
-bind = $mainMod, Q, killactive,
-bind = $mainMod SHIFT, E, exit,
-bind = $mainMod SHIFT, C, exec, $clipboard-screenshot
-bind = $mainMod, P, exec, $file-screenshot
-bind = , Print, exec, $clipboard-screenshot
-# bind = $mainMod, equal, exec, pamixer -i 10
-# bind = $mainMod, minus, exec, pamixer -d 10
-# bind = $mainMod SHIFT, M, exec, pamixer -t
-bind = $mainMod, equal, exec, $volume-raise
-bind = $mainMod, minus, exec, $volume-lower
-bind = $mainMod SHIFT, M, exec, $volume-toggle
-# bind = , XF86AudioLowerVolume, exec, pamixer -d 5
-# bind = , XF86AudioRaiseVolume, exec, pamixer -i 5
-# bind = , XF86AudioMicMute, exec, pamixer --default-source -m
-# bind = , XF86AudioMute, exec, pamixer -t
-bind = , XF86AudioLowerVolume, exec, $volume-lower
-bind = , XF86AudioRaiseVolume, exec, $volume-raise
-bind = , XF86AudioMicMute, exec, $input-volume-toggle
-bind = , XF86AudioMute, exec, $volume-toggle
-bind = , XF86AudioPlay, exec, $music-toggle
-bind = , XF86AudioPause, exec, $music-toggle
-bind = , XF86AudioNext, exec, $music-next
-bind = , XF86AudioPrev, exec, $music-prev
-bind = $mainMod, bracketleft, exec, $music-prev
-bind = $mainMod, bracketright, exec, $music-next
-bind = $mainMod, backslash, exec, $music-toggle
-bind = $mainMod SHIFT, space, exec, $music-toggle
-bind = , Pause, exec, $music-toggle
-# bind = $mainMod SHIFT, minus, exec, brightnessctl s 10%-
-# bind = $mainMod SHIFT, equal, exec, brightnessctl s 10%+
-bind = $mainMod SHIFT, minus, exec, $brightness-lower
-bind = $mainMod SHIFT, equal, exec, $brightness-raise
-# bind = , XF86MonBrightnessDown, exec, brightnessctl s 10%-
-# bind = , XF86MonBrightnessUp, exec, brightnessctl s 10%+
-bind = , XF86MonBrightnessDown, exec, $brightness-lower
-bind = , XF86MonBrightnessUp, exec, $brightness-raise
-bind = , XF86KbdBrightnessUp, exec, $keyboard-brightness-raise
-bind = , XF86KbdBrightnessDown, exec, $keyboard-brightness-lower
-bind = $mainMod, left, movefocus, l
-bind = $mainMod, right, movefocus, r
-bind = $mainMod, up, movefocus, u
-bind = $mainMod, down, movefocus, d
-bind = $mainMod, J, movefocus, d
-bind = $mainMod, K, movefocus, u
-bind = $mainMod, H, movefocus, l
-bind = $mainMod, L, movefocus, r
-bind = $mainMod SHIFT, lift, movewindow, l
-bind = $mainMod SHIFT, right, movewindow, r
-bind = $mainMod SHIFT, up, movewindow, u
-bind = $mainMod SHIFT, down, movewindow, d
-bind = $mainMod SHIFT, J, movewindow, d
-bind = $mainMod SHIFT, K, movewindow, u
-bind = $mainMod SHIFT, H, movewindow, l
-bind = $mainMod SHIFT, L, movewindow, r
-bind = $mainMod, 1, workspace, 1
-bind = $mainMod, 2, workspace, 2
-bind = $mainMod, 3, workspace, 3
-bind = $mainMod, 4, workspace, 4
-bind = $mainMod, 5, workspace, 5
-bind = $mainMod, 6, workspace, 6
-bind = $mainMod, 7, workspace, 7
-bind = $mainMod, 8, workspace, 8
-bind = $mainMod, 9, workspace, 9
-bind = $mainMod, 0, workspace, 10
-bind = $mainMod, mouse_down, workspace, e+1
-bind = $mainMod, mouse_up, workspace, e-1
-bind = Control_L $mainMod, Right, workspace, e+1
-bind = Control_L $mainMod, Left, workspace, e-1
-bind = $mainMod SHIFT, 1, movetoworkspace, 1
-bind = $mainMod SHIFT, 2, movetoworkspace, 2
-bind = $mainMod SHIFT, 3, movetoworkspace, 3
-bind = $mainMod SHIFT, 4, movetoworkspace, 4
-bind = $mainMod SHIFT, 5, movetoworkspace, 5
-bind = $mainMod SHIFT, 6, movetoworkspace, 6
-bind = $mainMod SHIFT, 7, movetoworkspace, 7
-bind = $mainMod SHIFT, 8, movetoworkspace, 8
-bind = $mainMod SHIFT, 9, movetoworkspace, 9
-bind = $mainMod SHIFT, 0, movetoworkspace, 10
-bindm = $mainMod, mouse:272, movewindow
-bindm = $mainMod, mouse:273, resizewindow
-bind=$mainMod, R, submap, resize
-submap=resize
-binde= , H, resizeactive, -30 0
-binde= , L, resizeactive, 30 0
-binde= , J, resizeactive, 0 -30
-binde= , K, resizeactive, 0 30
-binde= , left, resizeactive, -30 0
-binde= , right, resizeactive, 30 0
-binde= , up, resizeactive, 0 -30
-binde= , down, resizeactive, 0 30
-bind= , escape, submap, reset
-submap=reset
-bind = $mainMod, W, togglespecialworkspace, magic
-bind = $mainMod SHIFT, W, movetoworkspace, special:magic
diff --git a/hypr/keybinds.lua b/hypr/keybinds.lua
new file mode 100644
index 0000000..03045b2
--- /dev/null
+++ b/hypr/keybinds.lua
@@ -0,0 +1,94 @@
+require("programs")
+local mainMod = "ALT"
+--$mainMod = SUPER
+hl.bind(mainMod .. " + Return", hl.dsp.exec_cmd(terminal))
+hl.bind(mainMod .. " + " .. "T", hl.dsp.exec_cmd(fileManager))
+hl.bind(mainMod .. " + " .. "D", hl.dsp.exec_cmd(launcher))
+hl.bind("XF86LaunchB", hl.dsp.exec_cmd(launcher))
+hl.bind(mainMod .. " + " .. "B", hl.dsp.exec_cmd(locker))
+hl.bind(mainMod .. " + " .. "G", hl.dsp.exec_cmd(browser))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "F", hl.dsp.exec_cmd("firefox"))
+hl.bind(mainMod .. " + " .. "A", hl.dsp.exec_cmd("Telegram"))
+hl.bind(mainMod .. " + " .. "C", hl.dsp.exec_cmd(clipboard, { float = true }))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "P", hl.dsp.exec_cmd(powermenu))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "O", hl.dsp.exec_cmd(onscreenkeyboard))
+hl.bind(mainMod .. " + " .. "S", hl.dsp.exec_cmd("spotify-launcher"))
+hl.bind(mainMod .. " + " .. "Y", hl.dsp.exec_cmd(calculator))
+hl.bind(mainMod .. " + " .. "E", hl.dsp.exec_cmd(emojipicker))
+hl.bind(mainMod .. " + " .. "Z", hl.dsp.exec_cmd(swaync_toggle))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "R", hl.dsp.exec_cmd(swaync_reload_config))
+hl.bind(mainMod .. " + " .. "U", hl.dsp.exec_cmd(sysup, { float = true }))
+hl.bind(mainMod .. " + " .. "O", hl.dsp.exec_cmd(editconfig))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "A", hl.dsp.exec_cmd("hyprwall"))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "G", hl.dsp.exec_cmd("hyprgui"))
+hl.bind(mainMod .. " + " .. "space", hl.dsp.exec_cmd(menu))
+hl.bind(mainMod .. " + " .. "F", hl.dsp.window.fullscreen())
+hl.bind(mainMod .. " + " .. "V", hl.dsp.window.float())
+hl.bind(mainMod .. " + " .. "Q", hl.dsp.window.close())
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "E", hl.dsp.exit())
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "C", hl.dsp.exec_cmd(clipboard_screenshot))
+hl.bind(mainMod .. " + " .. "P", hl.dsp.exec_cmd(file_screenshot))
+hl.bind("Print", hl.dsp.exec_cmd(clipboard_screenshot))
+hl.bind(mainMod .. " + " .. "equal", hl.dsp.exec_cmd(volume_raise))
+hl.bind(mainMod .. " + " .. "minus", hl.dsp.exec_cmd(volume_lower))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "M", hl.dsp.exec_cmd(volume_toggle))
+hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd(volume_lower))
+hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd(volume_raise))
+hl.bind("XF86AudioMicMute", hl.dsp.exec_cmd(input_volume_toggle))
+hl.bind("XF86AudioMute", hl.dsp.exec_cmd(volume_toggle))
+hl.bind("XF86AudioPlay", hl.dsp.exec_cmd(music_toggle))
+hl.bind("XF86AudioPause", hl.dsp.exec_cmd(music_toggle))
+hl.bind("XF86AudioNext", hl.dsp.exec_cmd(music_next))
+hl.bind("XF86AudioPrev", hl.dsp.exec_cmd(music_prev))
+hl.bind(mainMod .. " + " .. "bracketleft", hl.dsp.exec_cmd(music_prev))
+hl.bind(mainMod .. " + " .. "bracketright", hl.dsp.exec_cmd(music_next))
+hl.bind(mainMod .. " + " .. "backslash", hl.dsp.exec_cmd(music_toggle))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "space", hl.dsp.exec_cmd(music_toggle))
+hl.bind("Pause", hl.dsp.exec_cmd(music_toggle))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "minus", hl.dsp.exec_cmd(brightness_lower))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "equal", hl.dsp.exec_cmd(brightness_raise))
+hl.bind("XF86MonBrightnessDown", hl.dsp.exec_cmd(brightness_lower))
+hl.bind("XF86MonBrightnessUp", hl.dsp.exec_cmd(brightness_raise))
+hl.bind("XF86KbdBrightnessUp", hl.dsp.exec_cmd(keyboard_brightness_raise))
+hl.bind("XF86KbdBrightnessDown", hl.dsp.exec_cmd(keyboard_brightness_lower))
+hl.bind(mainMod .. " + " .. "left", hl.dsp.focus({ direction = "left" }))
+hl.bind(mainMod .. " + " .. "right", hl.dsp.focus({ direction = "right" }))
+hl.bind(mainMod .. " + " .. "up", hl.dsp.focus({ direction = "up" }))
+hl.bind(mainMod .. " + " .. "down", hl.dsp.focus({ direction = "down" }))
+hl.bind(mainMod .. " + " .. "J", hl.dsp.focus({ direction = "down" }))
+hl.bind(mainMod .. " + " .. "K", hl.dsp.focus({ direction = "up" }))
+hl.bind(mainMod .. " + " .. "H", hl.dsp.focus({ direction = "left" }))
+hl.bind(mainMod .. " + " .. "L", hl.dsp.focus({ direction = "right" }))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "left", hl.dsp.window.move({ direction = "left" }))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "right", hl.dsp.window.move({ direction = "right" }))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "up", hl.dsp.window.move({ direction = "up" }))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "down", hl.dsp.window.move({ direction = "down" }))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "J", hl.dsp.window.move({ direction = "down" }))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "K", hl.dsp.window.move({ direction = "up" }))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "H", hl.dsp.window.move({ direction = "left" }))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "L", hl.dsp.window.move({ direction = "right" }))
+for i = 1, 10 do
+ local key = i % 10
+ hl.bind(mainMod .. " + " .. key, hl.dsp.focus({ workspace = i }))
+ hl.bind(mainMod .. " + SHIFT + " .. key, hl.dsp.window.move({ workspace = i }))
+end
+hl.bind(mainMod .. " + " .. "mouse_down", hl.dsp.focus({ workspace = "e+1" }))
+hl.bind(mainMod .. " + " .. "mouse_up", hl.dsp.focus({ workspace = "e-1" }))
+hl.bind(mainMod .. " + CONTROL + Right", hl.dsp.focus({ workspace = "e+1" }))
+hl.bind(mainMod .. " + CONTROL + Left", hl.dsp.focus({ workspace = "e-1" }))
+hl.bind(mainMod .. " + " .. "mouse:272", hl.dsp.window.drag(), { mouse = true })
+hl.bind(mainMod .. " + " .. "mouse:273", hl.dsp.window.resize(), { mouse = true })
+hl.bind(mainMod .. " + " .. "R", hl.dsp.submap("resize"))
+hl.define_submap("resize", function()
+ hl.bind("H", hl.dsp.window.resize({x = -30, y = 0, relative = true}))
+ hl.bind("L", hl.dsp.window.resize({x = 30, y = 0, relative = true}))
+ hl.bind("J", hl.dsp.window.resize({x = 0, y = -30, relative = true}))
+ hl.bind("K", hl.dsp.window.resize({x = 0, y = 30, relative = true}))
+ hl.bind("left", hl.dsp.window.resize({x = -30, y = 0, relative = true}))
+ hl.bind("right", hl.dsp.window.resize({x = 30, y = 0, relative = true}))
+ hl.bind("up", hl.dsp.window.resize({x = 0, y = -30, relative = true}))
+ hl.bind("down", hl.dsp.window.resize({x = 0, y = 30, relative = true}))
+ hl.bind("escape", hl.dsp.submap("reset"))
+end)
+hl.bind(mainMod .. " + " .. "W", hl.dsp.workspace.toggle_special("magic"))
+hl.bind(mainMod .. " + " .. "SHIFT" .. " + " .. "W", hl.dsp.window.move({ workspace = "special:magic" }))
diff --git a/hypr/keyboard.conf b/hypr/keyboard.conf
deleted file mode 100644
index 5c93f91..0000000
--- a/hypr/keyboard.conf
+++ /dev/null
@@ -1,16 +0,0 @@
-input {
- kb_layout = us,ru
- kb_variant =
- kb_model =
- kb_options = grp:win_space_toggle
- kb_rules =
- follow_mouse = 1
- touchpad {
- disable_while_typing = true
- natural_scroll = true
- scroll_factor = 0.2
- }
- repeat_rate = 50
- repeat_delay = 500
- sensitivity = 0
-}
diff --git a/hypr/keyboard.lua b/hypr/keyboard.lua
new file mode 100644
index 0000000..80be693
--- /dev/null
+++ b/hypr/keyboard.lua
@@ -0,0 +1,15 @@
+hl.config({
+ input = {
+ kb_layout = "us,ru",
+ kb_options = "grp:win_space_toggle",
+ follow_mouse = 1,
+ touchpad = {
+ disable_while_typing = true,
+ natural_scroll = true,
+ scroll_factor = 0.2,
+ },
+ repeat_rate = 50,
+ repeat_delay = 500,
+ sensitivity = 0,
+ },
+})
diff --git a/hypr/monitors.conf b/hypr/monitors.conf
deleted file mode 100644
index 5a5ba24..0000000
--- a/hypr/monitors.conf
+++ /dev/null
@@ -1,4 +0,0 @@
-monitor=,preferred,auto,auto
-monitor=DVI-I-1,1920x1200,0x0,1
-monitor=HEADLESS-2,2048x1538,0x0,2
-monitor=vnc,1280x720,0x0,1
diff --git a/hypr/monitors.lua b/hypr/monitors.lua
new file mode 100644
index 0000000..167ccaf
--- /dev/null
+++ b/hypr/monitors.lua
@@ -0,0 +1,5 @@
+hl.monitor({output = "", mode = "preferred", position = "auto", scale = "auto"})
+hl.monitor({output = "DVI-I-1", mode = "1920x1200", position = "0x0", scale = 1})
+hl.monitor({output = "HEADLESS-2", mode = "2048x1538", position = "0x0", scale = 2})
+hl.monitor({output = "vnc", mode = "1280x720", position = "0x0", scale = 1})
+hl.monitor({output = "DP-1", mode = "3440x1440@165", position = "0x0", scale = 1})
diff --git a/hypr/programs.conf b/hypr/programs.conf
deleted file mode 100644
index 85c4cde..0000000
--- a/hypr/programs.conf
+++ /dev/null
@@ -1,28 +0,0 @@
-$powermenu = ~/dotfiles/rofi/powermenu/powermenu.sh
-$terminal = kitty
-$fileManager = thunar
-$launcher = ~/dotfiles/rofi/launcher/launcher.sh
-$menu = sherlock
-$locker = ~/dotfiles/hypr/bin/hyprlock-background.sh
-$browser = google-chrome-stable
-$emojipicker = ~/dotfiles/rofi/emoji/rofimoji.sh
-$onscreenkeyboard = ~/dotfiles/hypr/bin/toggle_keyboard.sh
-$calculator = gnome-calculator
-$sysup = ~/dotfiles/hypr/bin/startupdate.sh
-$clipboard = kitty clipse
-$swaync-toggle = swaync-client -t
-$swaync-reload-config = swaync-client -R
-$editconfig = zed ~/dotfiles
-$clipboard-screenshot = grim -g "$(slurp -d)" - | wl-copy
-$file-screenshot = grim -g "$(slurp)" ~/Pictures/Screenshots/$(date +%Y%m%d-%H%M%S).png
-$volume-raise = swayosd-client --output-volume raise
-$volume-lower = swayosd-client --output-volume lower
-$volume-toggle = swayosd-client --output-volume mute-toggle
-$input-volume-toggle = swayosd-client --input-volume mute-toggle
-$brightness-raise = swayosd-client --brightness raise
-$brightness-lower = swayosd-client --brightness lower
-$keyboard-brightness-raise = brightnessctl --device smc::kbd_backlight s 10%+
-$keyboard-brightness-lower = brightnessctl --device smc::kbd_backlight s 10%-
-$music-toggle = swayosd-client --playerctl play-pause
-$music-next = swayosd-client --playerctl next
-$music-prev = swayosd-client --playerctl previous
\ No newline at end of file
diff --git a/hypr/programs.lua b/hypr/programs.lua
new file mode 100644
index 0000000..b4db7c5
--- /dev/null
+++ b/hypr/programs.lua
@@ -0,0 +1,28 @@
+powermenu = "~/dotfiles/rofi/powermenu/powermenu.sh"
+terminal = "kitty"
+fileManager = "thunar"
+launcher = "~/dotfiles/rofi/launcher/launcher.sh"
+menu = "sherlock"
+locker = "~/dotfiles/hypr/bin/hyprlock-background.sh"
+browser = "google-chrome-stable"
+emojipicker = "~/dotfiles/rofi/emoji/rofimoji.sh"
+onscreenkeyboard = "~/dotfiles/hypr/bin/toggle_keyboard.sh"
+calculator = "gnome-calculator"
+sysup = "~/dotfiles/hypr/bin/startupdate.sh"
+clipboard = "kitty clipse"
+swaync_toggle = "swaync-client -t"
+swaync_reload_config = "swaync-client -R"
+editconfig = "zed ~/dotfiles"
+clipboard_screenshot = "grim -g $(slurp -d)-| wl-copy"
+file_screenshot = "grim -g $(slurp) ~/Pictures/Screenshots/$(date +%Y%m%d-%H%M%S).png"
+volume_raise = "swayosd-client --output-volume raise"
+volume_lower = "swayosd-client --output-volume lower"
+volume_toggle = "swayosd-client --output-volume mute-toggle"
+input_volume_toggle = "swayosd-client --input-volume mute-toggle"
+brightness_raise = "swayosd-client --brightness raise"
+brightness_lower = "swayosd-client --brightness lower"
+keyboard_brightness_raise = "brightnessctl --device smc::kbd_backlight s 10%+"
+keyboard_brightness_lower = "brightnessctl --device smc::kbd_backlight s 10%-"
+music_toggle = "swayosd-client --playerctl play-pause"
+music_next = "swayosd-client --playerctl next"
+music_prev = "swayosd-client --playerctl previous"
diff --git a/hypr/startup.conf b/hypr/startup.conf
deleted file mode 100644
index 2136e45..0000000
--- a/hypr/startup.conf
+++ /dev/null
@@ -1,18 +0,0 @@
-exec-once = hyprpaper
-exec-once = sleep 0.3 && ~/dotfiles/hypr/bin/background.sh
-exec-once = waybar
-exec-once = lxpolkit
-exec-once = gsettings set org.gnome.desktop.interface gtk-theme 'MacTahoe-Dark'
-exec-once = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
-exec-once = gsettings set org.gnome.desktop.interface icon-theme 'MacTahoe-dark'
-exec-once = gsettings set org.gnome.desktop.interface cursor-theme 'Bibata-Modern-Ice'
-exec-once = hyprctl setcursor Bibata-Modern-Ice 24
-exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
-exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
-exec-once = swaync
-exec-once = nm-applet --indicator
-exec-once = uxplay
-exec-once = hypridle
-exec-once = swayosd-server
-exec-once = unclutter --timeout 1 --jitter 5 --ignore-scrolling --idle 1
-exec-once = clipse -listen
diff --git a/hypr/startup.lua b/hypr/startup.lua
new file mode 100644
index 0000000..0fdb721
--- /dev/null
+++ b/hypr/startup.lua
@@ -0,0 +1,20 @@
+hl.on("hyprland.start", function()
+ hl.exec_cmd("hyprpaper")
+ hl.exec_cmd("sleep 0.3 && ~/dotfiles/hypr/bin/background.sh")
+ hl.exec_cmd("waybar")
+ hl.exec_cmd("lxpolkit")
+ hl.exec_cmd("gsettings set org.gnome.desktop.interface gtk-theme 'MacTahoe-Dark'")
+ hl.exec_cmd("gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'")
+ hl.exec_cmd("gsettings set org.gnome.desktop.interface icon-theme 'MacTahoe-dark'")
+ hl.exec_cmd("gsettings set org.gnome.desktop.interface cursor-theme 'Bibata-Modern-Ice'")
+ hl.exec_cmd("hyprctl setcursor Bibata-Modern-Ice 24")
+ hl.exec_cmd("dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP")
+ hl.exec_cmd("systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP")
+ hl.exec_cmd("swaync")
+ hl.exec_cmd("nm-applet --indicator")
+ hl.exec_cmd("uxplay")
+ hl.exec_cmd("hypridle")
+ hl.exec_cmd("swayosd-server")
+ hl.exec_cmd("unclutter --timeout 1 --jitter 5 --ignore-scrolling --idle 1")
+ hl.exec_cmd("clipse -listen")
+end)
diff --git a/hypr/windowrules.conf b/hypr/windowrules.conf
deleted file mode 100644
index 574a514..0000000
--- a/hypr/windowrules.conf
+++ /dev/null
@@ -1,17 +0,0 @@
-windowrule = match:title Properties, float yes
-windowrule = match:class nm-connection-editor, float yes
-windowrule = match:class thunar, match:title File Operation Progress, float yes
-windowrule = match:class thunar, match:title Confirm to replace files, float yes
-windowrule = match:class thunar, match:title Rename*, float yes
-windowrule = match:class GParted, float yes
-windowrule = match:class org.pulseaudio.pavucontrol, float yes
-windowrule = match:title Calculator, float yes
-windowrule = match:title Open Folder, float yes
-windowrule = match:title Open File, float yes
-windowrule = match:class xdg-desktop-portal-gtk, float yes
-#windowrule = opacity 0.80 0.80, match:class org.telegram.desktop
-#windowrule = opacity 0.9, match:class Google-chrome
-#windowrule = opacity 0.9, match:class Code
-#windowrule = opacity 0.9, match:class kitty
-#windowrule = opacity 0.9, match:class com.mitchellh.ghostty
-layerrule = animation popin, match:class rofi
diff --git a/hypr/windowrules.lua b/hypr/windowrules.lua
new file mode 100644
index 0000000..fafbaa9
--- /dev/null
+++ b/hypr/windowrules.lua
@@ -0,0 +1,71 @@
+hl.window_rule({
+ name = "match_title_properties",
+ match = {title = "Properties"},
+ float = true,
+})
+hl.window_rule({
+ name = "match_class_nm-connection-editor",
+ match = {class = "nm-connection-editor"},
+ float = true,
+})
+hl.window_rule({
+ name = "match_class_thunar-fopss",
+ match = {title = "File Operation Progress"},
+ float = true,
+})
+hl.window_rule({
+ name = "match_class_thunar-ctrfs",
+ match = {title = "Confirm to replace files"},
+ float = true,
+})
+hl.window_rule({
+ name = "match_class_thunar-rename",
+ match = {title = "Rename*"},
+ float = true,
+})
+hl.window_rule({
+ name = "match_class_gparted",
+ match = {class = "GPatred"},
+ float = true,
+})
+hl.window_rule({
+ name = "match_class_org_puls",
+ match = {class = "org.pulseaudio.pavucontrol"},
+ float = true,
+})
+hl.window_rule({
+ name = "match_title_calculat",
+ match = {title = "Calculator"},
+ float = true,
+})
+hl.window_rule({
+ name = "match_title_open_fol",
+ match = {title = "Open Folder"},
+ float = true,
+})
+hl.window_rule({
+ name = "match_title_open_fil",
+ match = {title = "Open File"},
+ float = true,
+})
+hl.window_rule({
+ name = "match_class_xdg-desk",
+ match = {class = "xdg-desktop-portal-gtk"},
+ float = true,
+})
+hl.layer_rule({
+ match = {namespace = "rofi"},
+ animation = "popin",
+})
+hl.layer_rule({
+ match = {namespace = "swaync-control-center"},
+ animation = "slide right",
+})
+hl.layer_rule({
+ match = {namespace = "swaync-notification-window"},
+ animation = "slide right",
+})
+hl.layer_rule({
+ match = {namespace = "swayosd"},
+ animation = "slide top",
+})
diff --git a/kitty/kitty.conf b/kitty/kitty.conf
index ca13ae0..d63bcf8 100644
--- a/kitty/kitty.conf
+++ b/kitty/kitty.conf
@@ -4,3 +4,4 @@ italic_font JetBrainsMono
bold_italic_font JetBrainsMono
window_padding_width 5
background_blur 10
+scrollback_lines 1000000
diff --git a/swaync/style.css b/swaync/style.css
index 205ee68..40f7b60 100644
--- a/swaync/style.css
+++ b/swaync/style.css
@@ -3,7 +3,7 @@
--mpris-album-art-icon-size: 60px;
}
-@define-color cc-bg rgba(20, 20, 20, 0.7);
+@define-color cc-bg rgba(0, 0, 0, 0.6);
@define-color noti-border-color rgba(255, 255, 255, 0.15);
@define-color noti-bg rgba(50, 50, 50, 0.8);
@define-color noti-bg-opaque rgb(48, 48, 48);
@@ -18,7 +18,8 @@
@define-color bg-selected rgb(128, 128, 128);
@define-color foreground rgb(100, 100, 100);
-@define-color background #0F161E;
+/*@define-color background #0F161E;*/
+@define-color background rgba(0, 0, 0, 0.6);
@define-color cursor rgb(100, 100, 100);
@define-color color0 #0F161E;
@@ -39,7 +40,7 @@
@define-color color15 white;
.control-center {
- background: black;
+ background: rgba(0, 0, 0, 0.9);
border-radius: 24px;
border: 1px solid @foreground;
margin: 2px;
@@ -165,30 +166,35 @@
/* Volume widget */
trough {
border-radius: 20px;
- background: @background;
+ /*background: @background;*/
+ background: rgba(40, 40, 40, 0.9);
border: 1px solid @background;
}
trough highlight {
/* ´trough´ is the background of the slider, ´highlight´ is the actual slider */
padding-top: 1px;
- background: @color4;
+ /*background: @color4;*/
+ background: rgba(30, 30, 30, 0.9);
border: 1px solid @color4;
border-radius: 20px;
}
trough slider {
padding: 1px;
- background: @color4;
+ /*background: @color4;*/
+ background: rgba(30, 30, 30, 0.9);
border: 1px solid gray;
}
trough slider:hover {
padding: 1px;
- background: @color4;
+ /*background: @color4;*/
+ background: rgba(20, 20, 20, 0.9);
}
.widget-volume {
- background-color: alpha(@background, 0);
+ background: transparent;
+ /*background-color: alpha(@background, 0);*/
border-radius: 20px 20px 0px 0px;
font-size: 15px;
margin-left: 10px;
@@ -199,7 +205,8 @@ trough slider:hover {
.widget-backlight {
padding-left: 5px;
- background-color: alpha(@background, 0);
+ background: transparent;
+ /*background-color: alpha(@background, 0);*/
font-size: 15px;
margin-top: -8px;
margin-left: 10px;
@@ -217,30 +224,36 @@ trough slider:hover {
font-size: initial;
color: white;
text-shadow: none;
- background: @noti-bg;
+ background: transparent;
+ /*background: @noti-bg;*/
border: 1px solid @noti-border-color;
box-shadow: none;
border-radius: 12px;
}
.widget-inhibitors > button:hover {
- background: @noti-bg-hover;
+ background: transparent;
+ /*background: @noti-bg-hover;*/
}
.notification-row {
outline: none;
+ background: transparent;
}
.notification-row:focus,
.notification-row:hover {
- background: alpha(@color14, 0.5); /* @noti-bg-focus */
+ /*background: alpha(@color14, 0.5); /* @noti-bg-focus */
+ background: transparent;
}
.notification-row .notification-background {
padding: 6px 12px;
+ background: transparent;
}
.notification-row .notification-background .close-button {
/* The notification Close Button */
- background: alpha(@color4, 0.5); /* @noti-close-bg */
+ /*background: alpha(@color4, 0.5); /* @noti-close-bg */
+ background: transparent;
color: alpha(@color15, 1); /* @text-color */
text-shadow: none;
padding: 0;
@@ -254,7 +267,8 @@ trough slider:hover {
}
.notification-row .notification-background .close-button:hover {
- background: alpha(@color12, 0.5); /* @noti-close-bg-hover */
+ /*background: alpha(@color12, 0.5); /* @noti-close-bg-hover */
+ background: transparent;
transition: background 0.15s ease-in-out;
}
@@ -264,7 +278,8 @@ trough slider:hover {
border: 2px solid alpha(@color8, 0.5); /* @border */
padding: 0;
transition: background 0.15s ease-in-out;
- background: alpha(@color0, 0.5); /* @noti-bg */
+ /*background: alpha(@color0, 0.5); /* @noti-bg */
+ background: rgba(0, 0, 0, 0.9);
}
.notification-row .notification-background .notification.low {
@@ -301,7 +316,8 @@ trough slider:hover {
.notification-background
.notification
.notification-default-action:hover {
- background: alpha(@color13, 0.5); /* @noti-bg-hover */
+ /*background: alpha(@color13, 0.5); /* @noti-bg-hover */*/
+ background: transparent;
}
.notification-row
@@ -418,7 +434,8 @@ trough slider:hover {
.body-image {
/* The "extra" optional bottom notification image */
margin-top: 4px;
- background-color: alpha(@color15, 0.5);
+ /*background-color: alpha(@color15, 0.5);*/
+ background: transparent;
border-radius: 12px;
}
@@ -439,7 +456,8 @@ trough slider:hover {
.notification-content
.inline-reply
.inline-reply-entry {
- background: alpha(@color1, 0.5); /* @noti-bg-darker */
+ /*background: alpha(@color1, 0.5); /* @noti-bg-darker */*/
+ background: transparent;
color: alpha(@color15, 1); /* @text-color */
caret-color: alpha(@color15, 1); /* @text-color */
border: 1px solid alpha(@color8, 0.5); /* @border */
@@ -454,7 +472,8 @@ trough slider:hover {
.inline-reply
.inline-reply-button {
margin-left: 4px;
- background: alpha(@color0, 0.5); /* @noti-bg */
+ /*background: alpha(@color0, 0.5); /* @noti-bg */*/
+ background: transparent;
border: 1px solid alpha(@color8, 0.5); /* @border */
border-radius: 12px;
color: alpha(@color15, 1); /* @text-color */
@@ -467,7 +486,8 @@ trough slider:hover {
.notification-content
.inline-reply
.inline-reply-button:disabled {
- background: initial;
+ /*background: initial;*/
+ background: transparent;
color: alpha(@color7, 0.5); /* @text-color-disabled */
border: 1px solid alpha(@color8, 0.5); /* @border */
border-color: transparent;
@@ -479,7 +499,8 @@ trough slider:hover {
.notification-default-action
.inline-reply
.inline-reply-button:hover {
- background: alpha(@color13, 0.5); /* @noti-bg-hover */
+ /*background: alpha(@color13, 0.5); /* @noti-bg-hover */*/
+ background: transparent;
}
.notification-row .notification-background .notification .notification-action {
@@ -507,17 +528,22 @@ trough slider:hover {
.notification-group {
/* Styling only for Grouped Notifications */
+ background: transparent;
+ border: 0;
}
.notification-group.low {
+ background: transparent;
/* Low Priority Group */
}
.notification-group.normal {
+ background: transparent;
/* Normal Priority Group */
}
.notification-group.critical {
+ background: transparent;
/* Critical Priority Group */
}
@@ -525,6 +551,7 @@ trough slider:hover {
.notification-group .notification-group-headers {
margin: 0 16px;
color: alpha(@color15, 1); /* @text-color */
+ background: transparent;
}
.notification-group .notification-group-headers {
@@ -540,11 +567,13 @@ trough slider:hover {
}
.notification-group .notification-group-buttons {
+ background: transparent;
/* Notification Group Buttons */
}
.notification-group.collapsed .notification-row .notification {
- background-color: alpha(@color0, 0.5); /* @noti-bg-opaque */
+ /*background-color: alpha(@color0, 0.5); /* @noti-bg-opaque */*/
+ background: transparent;
}
.notification-group.collapsed .notification-row:not(:last-child) {
@@ -564,5 +593,6 @@ trough slider:hover {
.notification-group.collapsed:hover
.notification-row:not(:only-child)
.notification {
- background-color: alpha(@color13, 0.5); /* @noti-bg-hover-opaque */
+ /*background-color: alpha(@color13, 0.5); /* @noti-bg-hover-opaque */*/
+ background: transparent;
}
diff --git a/swayosd/config.toml b/swayosd/config.toml
new file mode 100644
index 0000000..9df4433
--- /dev/null
+++ b/swayosd/config.toml
@@ -0,0 +1,32 @@
+[server]
+## style file for the OSD
+style = "~/dotfiles/swayosd/style.css"
+
+## on which height to show the OSD
+top_margin = 0.083
+
+## The maximum volume that can be reached in %
+# max_volume = 150
+
+## The minimum brightness that can be reached in %
+min_brightness = 5
+
+## show percentage on the right of the OSD
+show_percentage = true
+
+## set format for the media player OSD
+# playerctl_format = "{artist} - {title}"
+## Available values:
+## artist, albumArtist, title, album, trackNumber, discNumber, autoRating
+
+# If SwayOSD should automatically display the OSD when the keyboard backlight changes or not.
+# Note: Only displays the OSD if the hardware changed the keyboard brightness itself
+# (automatically or through a firmware-handled hotkey being pressed)
+keyboard_backlight = true
+
+# OSD display duration in milliseconds (200-60000)
+# Possible values: 200 - 60000
+# Default value: 1000
+# Note: This is the server wide default which can be overridden by every individual client call.
+
+[client]
diff --git a/swayosd/style.css b/swayosd/style.css
new file mode 100644
index 0000000..1106285
--- /dev/null
+++ b/swayosd/style.css
@@ -0,0 +1,48 @@
+window#osd {
+ border-radius: 999px;
+ border: none;
+ background: rgba(0, 0, 0, 0.6);
+
+ #container {
+ margin: 16px;
+ }
+
+ image,
+ label {
+ color: #{"@theme_fg_color"};
+ }
+
+ progressbar:disabled,
+ image:disabled {
+ opacity: 0.5;
+ }
+
+ progressbar,
+ segmentedprogress {
+ min-height: 6px;
+ border-radius: 999px;
+ background: transparent;
+ border: none;
+ }
+ trough,
+ segment {
+ min-height: inherit;
+ border-radius: inherit;
+ border: none;
+ background: #{"alpha(@theme_fg_color, 0.5)"};
+ }
+ progress,
+ segment.active {
+ min-height: inherit;
+ border-radius: inherit;
+ border: none;
+ background: #{"@theme_fg_color"};
+ }
+
+ segment {
+ margin-left: 8px;
+ &:first-child {
+ margin-left: 0;
+ }
+ }
+}