From 53a47ebba038a83c876e12a2dcc548ce28ecbb46 Mon Sep 17 00:00:00 2001 From: Kyattsukuro Date: Fri, 22 May 2026 21:31:15 +0200 Subject: [PATCH] moved hyprland to lua --- .gitignore | 1 + .luarc.json | 5 + eggs/dconfNixMain/user | Bin 15707 -> 17855 bytes eggs/hypr/.luarc.json | 1 + eggs/hypr/hyprland.conf | 54 --------- eggs/hypr/hyprland.lua | 1 + eggs/hypr/hyprland/appearance.conf | 22 ---- eggs/hypr/hyprland/appearance.lua | 20 ++++ eggs/hypr/hyprland/binds.conf | 103 ------------------ eggs/hypr/hyprland/binds.lua | 102 +++++++++++++++++ eggs/hypr/hyprland/constants.lua | 31 ++++++ eggs/hypr/hyprland/env.conf | 15 --- eggs/hypr/hyprland/env.lua | 15 +++ eggs/hypr/hyprland/exec.conf | 16 --- eggs/hypr/hyprland/exec.lua | 16 +++ eggs/hypr/hyprland/general.conf | 30 ----- eggs/hypr/hyprland/general.lua | 27 +++++ eggs/hypr/hyprland/input.conf | 13 --- eggs/hypr/hyprland/input.lua | 15 +++ eggs/hypr/hyprland/monitors.conf | 5 - eggs/hypr/hyprland/monitors.lua | 29 +++++ eggs/hypr/hyprland/windowrules.conf | 50 --------- eggs/hypr/hyprland/windowrules.lua | 50 +++++++++ eggs/hypr/hyprland/workspaces.conf | 14 --- eggs/hypr/hyprland/workspaces.lua | 14 +++ eggs/hypr/scripts/follow_workspace.sh | 55 ---------- .../specia-workspace-movment-toggle.sh | 4 +- eggs/hypr/scripts/workspace_manager.sh | 57 ---------- eggs/i2p_librewolf/profile/prefs.js | 6 +- eggs/openrgb/OpenRGB.json | 2 +- eggs/rofi/config.rasi | 4 +- eggs/swaylock/config | 71 ++++++++++++ eggs/thunar/thunar/accels.scm | 6 +- .../xfconf/xfce-perchannel-xml/thunar.xml | 2 +- eggs/tidal/config.json | 3 +- eggs/waybar/bar/config.jsonc | 14 +-- eggs/zed/settings.json | 2 +- nixMain/base.rhai | 3 +- root-conf/nixos/flake.lock | 47 ++++++-- root-conf/nixos/flake.nix | 19 +++- .../nixos/nixLap/homemanager/someone.nix | 4 +- root-conf/nixos/nixMain/configuration.nix | 47 ++++---- .../nixos/nixMain/homemanager/someone.nix | 54 +++++---- root-conf/nixos/shared-conf.nix | 3 +- 44 files changed, 534 insertions(+), 518 deletions(-) create mode 100644 .luarc.json create mode 120000 eggs/hypr/.luarc.json delete mode 100755 eggs/hypr/hyprland.conf create mode 120000 eggs/hypr/hyprland.lua delete mode 100644 eggs/hypr/hyprland/appearance.conf create mode 100644 eggs/hypr/hyprland/appearance.lua delete mode 100644 eggs/hypr/hyprland/binds.conf create mode 100644 eggs/hypr/hyprland/binds.lua create mode 100644 eggs/hypr/hyprland/constants.lua delete mode 100644 eggs/hypr/hyprland/env.conf create mode 100644 eggs/hypr/hyprland/env.lua delete mode 100644 eggs/hypr/hyprland/exec.conf create mode 100644 eggs/hypr/hyprland/exec.lua delete mode 100644 eggs/hypr/hyprland/general.conf create mode 100644 eggs/hypr/hyprland/general.lua delete mode 100644 eggs/hypr/hyprland/input.conf create mode 100644 eggs/hypr/hyprland/input.lua delete mode 100644 eggs/hypr/hyprland/monitors.conf create mode 100644 eggs/hypr/hyprland/monitors.lua delete mode 100644 eggs/hypr/hyprland/windowrules.conf create mode 100644 eggs/hypr/hyprland/windowrules.lua delete mode 100644 eggs/hypr/hyprland/workspaces.conf create mode 100644 eggs/hypr/hyprland/workspaces.lua delete mode 100755 eggs/hypr/scripts/follow_workspace.sh delete mode 100755 eggs/hypr/scripts/workspace_manager.sh create mode 100755 eggs/swaylock/config diff --git a/.gitignore b/.gitignore index c7de4619..125c7ee3 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ /.git /.yolk_git **/Cache* +**.backup eggs/i2p_librewolf/profile/* !eggs/i2p_librewolf/profile/settings diff --git a/.luarc.json b/.luarc.json new file mode 100644 index 00000000..ca8025c1 --- /dev/null +++ b/.luarc.json @@ -0,0 +1,5 @@ +{ + "diagnostics.globals": [ + "hl" + ] +} \ No newline at end of file diff --git a/eggs/dconfNixMain/user b/eggs/dconfNixMain/user index 632e2e0906451285fd5bead4ea850f9e518919d9..41b21daeef4b3d73fd7678b8ca67f0252c1ee12b 100644 GIT binary patch literal 17855 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 M7A~aQ`n}ly0rl@@82|tP literal 15707 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 diff --git a/eggs/hypr/.luarc.json b/eggs/hypr/.luarc.json new file mode 120000 index 00000000..976a52e7 --- /dev/null +++ b/eggs/hypr/.luarc.json @@ -0,0 +1 @@ +/nix/store/44xc7k2v4avg6xl1nramh4nndlznyszz-home-manager-files/.config/hypr/.luarc.json \ No newline at end of file diff --git a/eggs/hypr/hyprland.conf b/eggs/hypr/hyprland.conf deleted file mode 100755 index b798cba6..00000000 --- a/eggs/hypr/hyprland.conf +++ /dev/null @@ -1,54 +0,0 @@ - -autogenerated = 0 - -# ── Program variables ── -$terminal = kitty -$browser = librewolf -$fileManager = thunar -$menu = rofi - -$workspace-switcher = /home/someone/Builds/microscripts/workspace_manager -$special-workspace-movment = /home/someone/Builds/microscripts/specia-workspace-movment-toggle -$kill-on-unfocus = /home/someone/Builds/microscripts/kill-on-unfocus - -# ── Modifier variables ── -$mainMod = SUPER -$subMod = SUPERCONTROL -$focusMod = ALT -$resizeMod = ALTSHIFT -$moveMod = CONTROLALT - -# ── Plugin (disabled) ── -#plugin = /run/current-system/sw/lib/libhyprspace.so -#plugin { -# overview { -# drawActiveWorkspace = true -# centerAligned = true -# autoDrag = true -# autoScroll = false -# showEmptyWorkspace = false -# } -#} -#bind = SUPER, code:65, overview:toggle, all -#plugin { -# overview { -# workspaceBorderSize = 4 -# workspaceActiveBorder = rgba(ca9ee6ff) -# workspaceInactiveBorder = rgba(232634ff) -# switchOnDrop = true -# exitOnSwitch = false -# showNewWorkspace = false -# disableGestures = true -# } -#} - -# ── Includes ── -source = hyprland/monitors.conf -source = hyprland/env.conf -source = hyprland/input.conf -source = hyprland/general.conf -source = hyprland/appearance.conf -source = hyprland/workspaces.conf -source = hyprland/windowrules.conf -source = hyprland/exec.conf -source = hyprland/binds.conf diff --git a/eggs/hypr/hyprland.lua b/eggs/hypr/hyprland.lua new file mode 120000 index 00000000..d1e9b2d1 --- /dev/null +++ b/eggs/hypr/hyprland.lua @@ -0,0 +1 @@ +/nix/store/44xc7k2v4avg6xl1nramh4nndlznyszz-home-manager-files/.config/hypr/hyprland.lua \ No newline at end of file diff --git a/eggs/hypr/hyprland/appearance.conf b/eggs/hypr/hyprland/appearance.conf deleted file mode 100644 index 716e48aa..00000000 --- a/eggs/hypr/hyprland/appearance.conf +++ /dev/null @@ -1,22 +0,0 @@ -decoration { - rounding = 10 - - blur { - enabled = true - size = 3 - passes = 1 - } -} - -animations { - enabled = yes - - bezier = myBezier, 0.05, 0.9, 0.1, 1.05 - - animation = windows, 1, 7, myBezier - animation = windowsOut, 1, 7, default, popin 80% - animation = border, 1, 10, default - animation = borderangle, 1, 8, default - animation = fade, 1, 7, default - animation = workspaces, 1, 6, default -} diff --git a/eggs/hypr/hyprland/appearance.lua b/eggs/hypr/hyprland/appearance.lua new file mode 100644 index 00000000..af5dc8bd --- /dev/null +++ b/eggs/hypr/hyprland/appearance.lua @@ -0,0 +1,20 @@ +hl.config({ + decoration = { + rounding = 10, + + blur = { + enabled = true, + size = 3, + passes = 1, + }, + }, +}) + +-- FIXME: Unrecognized animations property: enabled = yes +hl.curve("myBezier", { type = "bezier", points = { {0.05, 0.9}, {0.1, 1.05} } }) +hl.animation({ leaf = "windows", enabled = true, speed = 7, bezier = "myBezier" }) +hl.animation({ leaf = "windowsOut", enabled = true, speed = 7, bezier = "default", style = "popin 80%" }) +hl.animation({ leaf = "border", enabled = true, speed = 10, bezier = "default" }) +hl.animation({ leaf = "borderangle", enabled = true, speed = 8, bezier = "default" }) +hl.animation({ leaf = "fade", enabled = true, speed = 7, bezier = "default" }) +hl.animation({ leaf = "workspaces", enabled = true, speed = 6, bezier = "default" }) \ No newline at end of file diff --git a/eggs/hypr/hyprland/binds.conf b/eggs/hypr/hyprland/binds.conf deleted file mode 100644 index 02b137ea..00000000 --- a/eggs/hypr/hyprland/binds.conf +++ /dev/null @@ -1,103 +0,0 @@ -# Dispatchers https://wiki.hyprland.org/Configuring/Dispatchers/ - -# Applications -bind = $mainMod, RETURN, exec, $terminal -bind = $mainMod, code:51, exec, $browser -bind = $mainMod, code:48, exec, $fileManager -bind = $mainMod, V, exec, copyq show -bindr= $mainMod, SUPER_L, exec, if pgrep -x $menu; then kill $(pgrep -x $menu); else $menu -show drun; fi -bind = ,code:107, exec, grim -g "$(slurp)" - | swappy -f - -bind = $mainMod, code:107, exec, grim -o $(hyprctl activeworkspace -j | jq ".monitor" | tr -d "\"") - | swappy -f - -bind = $subMod, code:107, exec, $kill-on-unfocus normcap -bind = $focusMod, code:107, exec, dunstify -a System -r 1000 -t 5000 -i "$HOME/.config/assets/arch-maron.png" "Hyprpicker" "Color: $(hyprpicker -a -r)" -bind = $mainMod, O, exec, $HOME/.local/share/until-scripts/open_uri.sh - -# Media Buttons -bind = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_SINK@ 1%- -bind = ,XF86AudioLowerVolume, exec, dunstify -a System -r 1000 -t 2000 -i $HOME/.config/assets/volume-down.png -h int:value:$(echo "100 * $(wpctl get-volume @DEFAULT_SINK@ | tr -d "Volume: ")" | bc) Volume - -bind = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_SINK@ 1%+ -bind = ,XF86AudioRaiseVolume, exec, dunstify -a System -r 1000 -t 2000 -i $HOME/.config/assets/volume-up.png -h int:value:$(echo "100 * $(wpctl get-volume @DEFAULT_SINK@ | tr -d "Volume: ")" | bc) Volume - -bindl=, XF86AudioPlay, exec, playerctl play-pause -bindl=, XF86AudioPlay, exec, sleep 0.1; if [ "$(playerctl status)" = "Playing" ]; then dunstify -a System -r 1000 -t 2000 -i "$HOME/.config/assets/play.png" "Player" "resumed playback"; else dunstify -a System -r 1000 -t 2000 -i "$HOME/.config/assets/pause.png" "Player" "paused playback"; fi - -bindl=, XF86AudioNext, exec, playerctl next -bindl=, XF86AudioPrev, exec, playerctl previous - -# System ctl -bind =, XF86PowerOff, exec, bash ~/.local/share/until-scripts/sleep.sh hibernate - -# Window management -bind = $mainMod, Q, killactive, -bind = $mainMod, W, fullscreen, 1 -bind = $mainMod, T, fullscreen, 0 -bind = $mainMod, M, forcerendererreload, -bind = $mainMod, F, togglefloating, - -bind = $mainMod, R, togglespecialworkspace, scratchpad -bind = $mainMod, X, togglespecialworkspace, scratchpad2 -bind = $mainMod, code:21, togglespecialworkspace, dump - -bind = $resizeMod, e, layoutmsg, orientationnext -bind = $resizeMod, q, layoutmsg, orientationprev - -# Change Focus -bind = $focusMod, a, movefocus, l -bind = $focusMod, d, movefocus, r -bind = $focusMod, w, movefocus, u -bind = $focusMod, s, movefocus, d - -# Resize Window -binde = $resizeMod, a, resizeactive,-30 0 -binde = $resizeMod, d, resizeactive, 30 0 -binde = $resizeMod, s, resizeactive, 0 30 -binde = $resizeMod, w, resizeactive, 0 -30 - -# Move Window -bind = $moveMod, a, movewindow, l -bind = $moveMod, d, movewindow, r -bind = $moveMod, s, movewindow, d -bind = $moveMod, w, movewindow, u - -bind = $mainMod, code:112, movewindow, mon:DP-2 -bind = $mainMod, code:117, movewindow, mon:DP-3 - -bind = $mainMod, E, exec, $special-workspace-movment scratchpad -bind = $mainMod, Y, exec, $special-workspace-movment scratchpad2 -bind = $mainMod, code:20, exec, $special-workspace-movment dump - -# Switch workspaces with mainMod -bind = $mainMod, code:113, exec, $workspace-switcher 1 -bind = $mainMod, code:114, exec, $workspace-switcher 2 -bind = $mainMod, code:111, exec, $workspace-switcher 3 -bind = $mainMod, code:116, exec, $workspace-switcher 4 - -# Workspaces, carry window -bind = $mainMod SHIFT, code:113, exec, $workspace-switcher 1 carry -bind = $mainMod SHIFT, code:114, exec, $workspace-switcher 2 carry -bind = $mainMod SHIFT, code:111, exec, $workspace-switcher 3 carry -bind = $mainMod SHIFT, code:116, exec, $workspace-switcher 4 carry - -# Workspace management -bind = $mainMod, c, swapactiveworkspaces, DP-2 DP-3 - -# Mousebinds -bindm = $mainMod, mouse:272, movewindow -bindm = $mainMod, mouse:273, resizewindow - -# Submaps -bind = $mainMod, g, submap, gaming - -bind = $subMod, code:112, movecursor, 1720 720 -bind = $subMod, code:117, movecursor, -2560 720 -#bind = $mainMod, code:65, hyprexpo:expo, toggle - -submap=gaming -bind = $mainMod, T, fullscreen, 0 -bind = $mainMod, R, togglespecialworkspace, scratchpad -bind = $mainMod, g, submap,reset -bindm = $mainMod, mouse:272, movewindow -bindm = $mainMod, mouse:273, resizewindow -bind = $mainMod, code:51, exec, $browser -submap=reset diff --git a/eggs/hypr/hyprland/binds.lua b/eggs/hypr/hyprland/binds.lua new file mode 100644 index 00000000..b2aa5b2d --- /dev/null +++ b/eggs/hypr/hyprland/binds.lua @@ -0,0 +1,102 @@ +-- Dispatchers https://wiki.hyprland.org/Configuring/Dispatchers/ +local constants = require("hyprland/constants") + +-- Applications +hl.bind(constants.mainMod .. " + RETURN", hl.dsp.exec_cmd("uwsm app -- " .. constants.terminal)) +hl.bind(constants.mainMod .. " + code:51", hl.dsp.exec_cmd("uwsm app -- " .. constants.browser)) +hl.bind(constants.mainMod .. " + code:48", hl.dsp.exec_cmd("uwsm app -- " .. constants.fileManager)) +hl.bind(constants.mainMod .. " + V", hl.dsp.exec_cmd("copyq show")) +hl.bind(constants.mainMod .. " + SUPER_L", hl.dsp.exec_cmd("if pgrep -x " .. constants.menu .. "; then kill $(pgrep -x " .. constants.menu .. "); else uwsm app -- " .. constants.menu .. " -show drun; fi"), { release = true }) +hl.bind("code:107", hl.dsp.exec_cmd("grim -g \"$(slurp)\" - | swappy -f -")) +hl.bind(constants.mainMod .. " + code:107", hl.dsp.exec_cmd("grim -o $(hyprctl activeworkspace -j | jq \".monitor\" | tr -d \"\\\"\") - | swappy -f -")) +hl.bind(constants.subMod .. " + code:107", hl.dsp.exec_cmd(constants.kill_on_unfocus .. " normcap")) +hl.bind(constants.focusMod .. " + code:107", hl.dsp.exec_cmd("dunstify -a System -r 1000 -t 5000 -i \"" .. os.getenv("HOME") .. "/.config/assets/arch-maron.png\" \"Hyprpicker\" \"Color: $(hyprpicker -a -r)\"")) +hl.bind(constants.mainMod .. " + O", hl.dsp.exec_cmd(os.getenv("HOME") .. "/.local/share/until-scripts/open_uri.sh")) + +-- Media Buttons +hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_SINK@ 1%-")) +hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("dunstify -a System -r 1000 -t 2000 -i " .. os.getenv("HOME") .. "/.config/assets/volume-down.png -h int:value:$(echo \"100 * $(wpctl get-volume @DEFAULT_SINK@ | tr -d \"Volume: \")\" | bc) Volume")) + +hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_SINK@ 1%+")) +hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("dunstify -a System -r 1000 -t 2000 -i " .. os.getenv("HOME") .. "/.config/assets/volume-up.png -h int:value:$(echo \"100 * $(wpctl get-volume @DEFAULT_SINK@ | tr -d \"Volume: \")\" | bc) Volume")) + +hl.bind("XF86AudioPlay", hl.dsp.exec_cmd("playerctl play-pause"), { locked = true }) +hl.bind("XF86AudioPlay", hl.dsp.exec_cmd("sleep 0.1; if [ \"$(playerctl status)\" = \"Playing\" ]; then dunstify -a System -r 1000 -t 2000 -i \"" .. os.getenv("HOME") .. "/.config/assets/play.png\" \"Player\" \"resumed playback\"; else dunstify -a System -r 1000 -t 2000 -i \"" .. os.getenv("HOME") .. "/.config/assets/pause.png\" \"Player\" \"paused playback\"; fi"), { locked = true }) + +hl.bind("XF86AudioNext", hl.dsp.exec_cmd("playerctl next"), { locked = true }) +hl.bind("XF86AudioPrev", hl.dsp.exec_cmd("playerctl previous"), { locked = true }) + +-- System ctl +hl.bind("XF86PowerOff", hl.dsp.exec_cmd("bash ~/.local/share/until-scripts/sleep.sh hibernate")) + +-- Window management +hl.bind(constants.mainMod .. " + Q", hl.dsp.window.close()) +hl.bind(constants.mainMod .. " + W", hl.dsp.window.fullscreen({ mode = "fullscreen", action = "toggle" })) +hl.bind(constants.mainMod .. " + T", hl.dsp.window.fullscreen({ mode = "fullscreen", action = "toggle" })) +-- FIXME: dispatcher 'forcerendererreload' not found in Hyprland 0.55 hl.dsp API. Original bind: $mainMod, M, forcerendererreload, +hl.bind(constants.mainMod .. " + F", hl.dsp.window.float({ action = "toggle" })) + +hl.bind(constants.mainMod .. " + R", hl.dsp.workspace.toggle_special("scratchpad")) +hl.bind(constants.mainMod .. " + X", hl.dsp.workspace.toggle_special("scratchpad2")) +hl.bind(constants.mainMod .. " + code:21", hl.dsp.workspace.toggle_special("dump")) + +-- FIXME: dispatcher 'layoutmsg' not found in Hyprland 0.55 hl.dsp API. Original bind: $resizeMod, e, layoutmsg, orientationnext +-- FIXME: dispatcher 'layoutmsg' not found in Hyprland 0.55 hl.dsp API. Original bind: $resizeMod, q, layoutmsg, orientationprev + +-- Change Focus +hl.bind(constants.focusMod .. " + A", hl.dsp.focus({ direction = "l" })) +hl.bind(constants.focusMod .. " + D", hl.dsp.focus({ direction = "r" })) +hl.bind(constants.focusMod .. " + W", hl.dsp.focus({ direction = "u" })) +hl.bind(constants.focusMod .. " + S", hl.dsp.focus({ direction = "d" })) + +-- Resize Window +hl.bind(constants.resizeMod .. " + A", hl.dsp.window.resize({ x = -30, y = 0, relative = true }), { repeating = true }) +hl.bind(constants.resizeMod .. " + D", hl.dsp.window.resize({ x = 30, y = 0, relative = true }), { repeating = true }) +hl.bind(constants.resizeMod .. " + S", hl.dsp.window.resize({ x = 0, y = 30, relative = true }), { repeating = true }) +hl.bind(constants.resizeMod .. " + W", hl.dsp.window.resize({ x = 0, y = -30, relative = true }), { repeating = true }) + +-- Move Window +hl.bind(constants.moveMod .. " + A", hl.dsp.window.move({ direction = "l" })) +hl.bind(constants.moveMod .. " + D", hl.dsp.window.move({ direction = "r" })) +hl.bind(constants.moveMod .. " + S", hl.dsp.window.move({ direction = "d" })) +hl.bind(constants.moveMod .. " + W", hl.dsp.window.move({ direction = "u" })) + +hl.bind(constants.mainMod .. " + code:112", hl.dsp.window.move({ monitor = "DP-2" })) +hl.bind(constants.mainMod .. " + code:117", hl.dsp.window.move({ monitor = "DP-3" })) + +hl.bind(constants.mainMod .. " + E", hl.dsp.exec_cmd(constants.special_workspace_movment .. " scratchpad")) +hl.bind(constants.mainMod .. " + Y", hl.dsp.exec_cmd(constants.special_workspace_movment .. " scratchpad2")) +hl.bind(constants.mainMod .. " + code:20", hl.dsp.exec_cmd(constants.special_workspace_movment .. " dump")) + +-- Overview +--hl.bind(constants.mainMod .. " + code:65", function() +-- constants.hyprspace.toggle() +-- end +--) + + +-- Switch workspaces with mainMod + +hl.bind(constants.mainMod .. " + code:113", function() constants.smw.workspace("-1") end) +hl.bind(constants.mainMod .. " + code:114", function() constants.smw.workspace("+1") end) + +hl.bind(constants.subMod .. " + code:113", function() constants.smw.move_to_workspace("-1") end) +hl.bind(constants.subMod .. " + code:114", function() constants.smw.move_to_workspace("+1") end) + +-- Workspace management + +-- Mousebinds +hl.bind(constants.mainMod .. " + mouse:272", hl.dsp.window.drag(), { mouse = true }) +hl.bind(constants.mainMod .. " + mouse:273", hl.dsp.window.resize(), { mouse = true }) + +-- Submaps +hl.bind(constants.mainMod .. " + G", hl.dsp.submap("gaming")) + +hl.define_submap("gaming", function() + hl.bind(constants.mainMod .. " + T", hl.dsp.window.fullscreen({ mode = "fullscreen", action = "toggle" })) + hl.bind(constants.mainMod .. " + R", hl.dsp.workspace.toggle_special("scratchpad")) + hl.bind(constants.mainMod .. " + G", hl.dsp.submap("reset"), {long_press = true}) + hl.bind(constants.mainMod .. " + mouse:272", hl.dsp.window.drag(), { mouse = true }) + hl.bind(constants.mainMod .. " + mouse:273", hl.dsp.window.drag(), { mouse = true }) + hl.bind(constants.mainMod .. " + code:51", hl.dsp.exec_cmd(constants.browser)) +end) diff --git a/eggs/hypr/hyprland/constants.lua b/eggs/hypr/hyprland/constants.lua new file mode 100644 index 00000000..a017bb77 --- /dev/null +++ b/eggs/hypr/hyprland/constants.lua @@ -0,0 +1,31 @@ +-- ── Program variables ── +local terminal = "kitty" +local browser = "librewolf" +local fileManager = "thunar" +local menu = "rofi" + +local special_workspace_movment = "~/.config/hypr/scripts/specia-workspace-movment-toggle.sh" +local kill_on_unfocus = "/home/someone/Builds/microscripts/kill-on-unfocus" + +-- ── Modifier variables ── +local mainMod = "SUPER" +local subMod = "SUPER + CONTROL" +local focusMod = "ALT" +local resizeMod = "ALT + SHIFT" +local moveMod = "CONTROL + ALT" + +return { + terminal = terminal, + browser = browser, + fileManager = fileManager, + menu = menu, + special_workspace_movment = special_workspace_movment, + kill_on_unfocus = kill_on_unfocus, + mainMod = mainMod, + subMod = subMod, + focusMod = focusMod, + resizeMod = resizeMod, + moveMod = moveMod, + smw = hl.plugin.split_monitor_workspaces, + -- hyprspace = require("hyprland/Hyprspace") +} diff --git a/eggs/hypr/hyprland/env.conf b/eggs/hypr/hyprland/env.conf deleted file mode 100644 index 57158bff..00000000 --- a/eggs/hypr/hyprland/env.conf +++ /dev/null @@ -1,15 +0,0 @@ -# Some default env vars. -env = XCURSOR_SIZE,16 -env = XCURSOR_THEME,catppuccin-frappe-mauve-cursors -env = QT_QPA_PLATFORMTHEME,qt5ct # should also aply to qt6ct -env = XDG_SESSION_TYPE,wayland -env = GTK_THEME,catppuccin-frappe-mauve-standard+default -env = ICON_THEME,catppuccin-frappe-mauve-cursors - -env = GNOME22_USER_DIR,/home/someone/.config/gnome2 # For nemo and other gnome 2 apps -#env = DESKTOP_SESSION,gnome -# Fix for nvidia -#env = LIBV_DRIVER_NAME,nvidia -#env = GBM_BACKEND,nvidia-drm -#env = __GLX_VENDOR_LYBARY_NAME,nvidia -#env = WLR_NO_HARDWARE_CURSORS,1 diff --git a/eggs/hypr/hyprland/env.lua b/eggs/hypr/hyprland/env.lua new file mode 100644 index 00000000..31c82374 --- /dev/null +++ b/eggs/hypr/hyprland/env.lua @@ -0,0 +1,15 @@ +-- Some default env vars. +hl.env("XCURSOR_SIZE", "16") +hl.env("XCURSOR_THEME", "catppuccin-frappe-mauve-cursors") +hl.env("QT_QPA_PLATFORMTHEME", "qt5ct") -- should also aply to qt6ct +hl.env("XDG_SESSION_TYPE", "wayland") +hl.env("GTK_THEME", "catppuccin-frappe-mauve-standard+default") +hl.env("ICON_THEME", "catppuccin-frappe-mauve-cursors") + +hl.env("GNOME22_USER_DIR", "/home/someone/.config/gnome2") -- For nemo and other gnome 2 apps +-- env = DESKTOP_SESSION,gnome +-- Fix for nvidia +-- env = LIBV_DRIVER_NAME,nvidia +-- env = GBM_BACKEND,nvidia-drm +-- env = __GLX_VENDOR_LYBARY_NAME,nvidia +-- env = WLR_NO_HARDWARE_CURSORS,1 \ No newline at end of file diff --git a/eggs/hypr/hyprland/exec.conf b/eggs/hypr/hyprland/exec.conf deleted file mode 100644 index c4d15e94..00000000 --- a/eggs/hypr/hyprland/exec.conf +++ /dev/null @@ -1,16 +0,0 @@ -# Exec at start -exec-once= ~/.local/share/until-scripts/run-at-start.sh -exec-once= ~/.config/hypr/scripts/follow_workspace.sh - -exec-once= systemctl --user start hyprpolkitagent -exec-once= sleep 3 && copyq --start-server -exec-once= waybar -c $HOME/.config/waybar/bar/config.jsonc -s $HOME/.config/waybar/bar/style.css -exec-once= hyprctl setcursor catppuccin-frappe-mauve-cursors 16 -exec-once= dconf write /org/gnome/desktop/interface/cursor-size "16" -exec-once= dconf write /org/gnome/desktop/interface/cursor-theme "'catppuccin-frappe-mauve-cursors'" -exec-once= dconf write /org/gnome/desktop/interface/gtk-theme "'catppuccin-frappe-mauve-standard+default'" -exec-once= hyprpaper -exec-once= openrgb -p $HOME/.config/OpenRGB/Cat.orp -exec-once= sleep 3 && nextcloud --background -exec-once= $workspace-switcher 1 -exec-once= kdeconnectd & diff --git a/eggs/hypr/hyprland/exec.lua b/eggs/hypr/hyprland/exec.lua new file mode 100644 index 00000000..ad3efbce --- /dev/null +++ b/eggs/hypr/hyprland/exec.lua @@ -0,0 +1,16 @@ +-- Exec at start + +hl.on("hyprland.start", function() + hl.exec_cmd(os.getenv("HOME") .. "/.local/share/until-scripts/run-at-start.sh") + hl.exec_cmd("systemctl --user start hyprpolkitagent") + hl.exec_cmd("sleep 3 && copyq --start-server") + hl.exec_cmd("uwsm app -- waybar -c " .. os.getenv("HOME") .. "/.config/waybar/bar/config.jsonc -s " .. os.getenv("HOME") .. "/.config/waybar/bar/style.css") + hl.exec_cmd("hyprctl setcursor catppuccin-frappe-mauve-cursors 16") + hl.exec_cmd("dconf write /org/gnome/desktop/interface/cursor-size \"16\"") + hl.exec_cmd("dconf write /org/gnome/desktop/interface/cursor-theme \"'catppuccin-frappe-mauve-cursors'\"") + hl.exec_cmd("dconf write /org/gnome/desktop/interface/gtk-theme \"'catppuccin-frappe-mauve-standard+default'\"") + hl.exec_cmd("hyprpaper") + hl.exec_cmd("openrgb -p " .. os.getenv("HOME") .. "/.config/OpenRGB/Cat.orp") + hl.exec_cmd("sleep 3 && uwsm app -- nextcloud --background") + hl.exec_cmd("uwsm app -- kdeconnectd &") +end) diff --git a/eggs/hypr/hyprland/general.conf b/eggs/hypr/hyprland/general.conf deleted file mode 100644 index 4890c0fb..00000000 --- a/eggs/hypr/hyprland/general.conf +++ /dev/null @@ -1,30 +0,0 @@ -general { - gaps_in = 5 - gaps_out = 10 - border_size = 2 - col.active_border = rgba(ca9ee6ff) rgba(8caaeeff) 90deg - col.inactive_border = rgba(232634ff) - - layout = master - - allow_tearing = false -} - -dwindle { - preserve_split = yes -} - -master { - new_status = master -} - -misc { - force_default_wallpaper = -1 - disable_splash_rendering = false -} - -group { - groupbar { - enabled = true - } -} diff --git a/eggs/hypr/hyprland/general.lua b/eggs/hypr/hyprland/general.lua new file mode 100644 index 00000000..c039cd25 --- /dev/null +++ b/eggs/hypr/hyprland/general.lua @@ -0,0 +1,27 @@ +hl.config({ + general = { + gaps_in = 5, + gaps_out = 10, + border_size = 2, + col = { active_border = { colors = { "rgba(ca9ee6ff)", "rgba(8caaeeff)" }, angle = 90 }, + inactive_border = "rgba(232634ff)" }, + layout = "master", + + allow_tearing = false, + }, + dwindle = { + preserve_split = true, + }, + master = { + new_status = "master", + }, + misc = { + force_default_wallpaper = -1, + disable_splash_rendering = false, + }, + group = { + groupbar = { + enabled = true, + }, + }, +}) diff --git a/eggs/hypr/hyprland/input.conf b/eggs/hypr/hyprland/input.conf deleted file mode 100644 index e09b133a..00000000 --- a/eggs/hypr/hyprland/input.conf +++ /dev/null @@ -1,13 +0,0 @@ -input { - kb_layout = de - kb_variant = - kb_model = - kb_options = - kb_rules = - - accel_profile = flat - force_no_accel = false - sensitivity = 0 - - follow_mouse = 2 -} diff --git a/eggs/hypr/hyprland/input.lua b/eggs/hypr/hyprland/input.lua new file mode 100644 index 00000000..67d7af8e --- /dev/null +++ b/eggs/hypr/hyprland/input.lua @@ -0,0 +1,15 @@ +hl.config({ + input = { + kb_layout = "de", + -- FIXME: Unrecognized line: kb_variant = + -- FIXME: Unrecognized line: kb_model = + -- FIXME: Unrecognized line: kb_options = + -- FIXME: Unrecognized line: kb_rules = + + accel_profile = "flat", + force_no_accel = false, + sensitivity = 0, + + follow_mouse = 2, + }, +}) \ No newline at end of file diff --git a/eggs/hypr/hyprland/monitors.conf b/eggs/hypr/hyprland/monitors.conf deleted file mode 100644 index ae7c30fb..00000000 --- a/eggs/hypr/hyprland/monitors.conf +++ /dev/null @@ -1,5 +0,0 @@ -# See https://wiki.hyprland.org/Configuring/Monitors/ -monitor=DP-2, 3440x1440@165, 0x0, 1 -monitor=DP-3, 3440x1440, -3440x0, 1 - -#monitor=HDMI-A-1, 800x480@60, 0x-480, 1 diff --git a/eggs/hypr/hyprland/monitors.lua b/eggs/hypr/hyprland/monitors.lua new file mode 100644 index 00000000..5f2a8bf3 --- /dev/null +++ b/eggs/hypr/hyprland/monitors.lua @@ -0,0 +1,29 @@ +-- See https://wiki.hyprland.org/Configuring/Monitors/ +hl.monitor({ output = "DP-2", mode = "3440x1440@165", position = "0x0", scale = 1 }) +hl.monitor({ output = "DP-3", mode = "3440x1440", position = "-3440x0", scale = 1 }) + +hl.config({ + plugin = { + split_monitor_workspaces = { + count = 4, + enable_wrapping = true, + link_monitors = true, + monitor_priority = { "DP-2", "DP-3" } + }, + -- hyprspace = { + -- center_aligned = false, + -- exit_on_switch = true, + -- disable_gestures = true, + + -- hide_real_layers = true, + -- on_bottom = true, + + -- panel_height = 500, + -- panel_border_width = 2, + -- workspace_margin = 10, + -- reserved_area = 35, + -- workspace_border_size = 1, + + -- } + }, +}) diff --git a/eggs/hypr/hyprland/windowrules.conf b/eggs/hypr/hyprland/windowrules.conf deleted file mode 100644 index e63d7e41..00000000 --- a/eggs/hypr/hyprland/windowrules.conf +++ /dev/null @@ -1,50 +0,0 @@ -# CopyQ - float, size, and position -windowrule = float on, match:initial_class ^(com.github.hluk.copyq)$ -windowrule = size 500 300, match:initial_class ^(com.github.hluk.copyq)$ -windowrule = move onscreen cursor 0 -100%, match:initial_class ^(com.github.hluk.copyq)$ - -# Dialect - fixed position -windowrule = size 600 300, match:title (.*)(Dialect)$ -windowrule = move 0 2840, match:title (.*)(Dialect)$ - -# Thunar / FileRoller - file transfer window, float top right -windowrule = float on, match:initial_title [(Copying )|(Preparing to)|(File Operation Progress)], match:initial_class ^(thunar | org.gnome.FileRoller)$ -windowrule = move 2753 12, match:initial_title [(Copying )|(Preparing to)|(File Operation Progress)], match:initial_class ^(thunar | org.gnome.FileRoller)$ -windowrule = size 450 100, match:initial_title [(Copying )|(Preparing to)|(File Operation Progress)], match:initial_class ^(thunar | org.gnome.FileRoller)$ - -windowrule = float on, match:title ^(Extract*), match:initial_class ^(org.gnome.FileRoller)$ -windowrule = move 2903 13, match:title ^(Extract*), match:initial_class ^(org.gnome.FileRoller)$ -windowrule = size 450 100, match:title ^(Extract*), match:initial_class ^(org.gnome.FileRoller)$ - -# Steam drop down -windowrule = stay_focused on, match:title ^()$, match:class ^(steam)$ -windowrule = min_size 1 1, match:title ^()$, match:class ^(steam)$ - -# XWaylandVideoBridge - hide and disable focus -windowrule = opacity 0.0 override 0.0 override, match:class ^(xwaylandvideobridge)$ -windowrule = no_anim on, match:class ^(xwaylandvideobridge)$ -windowrule = no_focus on, match:class ^(xwaylandvideobridge)$ -windowrule = no_initial_focus on, match:class ^(xwaylandvideobridge)$ - -# Genshin Impact -windowrule = maximize on, match:class ^(genshinimpact.exe)$ -windowrule = monitor 1, match:class ^(genshinimpact.exe)$ -windowrule = no_anim on, match:class ^(genshinimpact.exe)$ -windowrule = float on, match:class ^(genshinimpact.exe)$ - -# Bar popups / Nextcloud - float near bar -windowrule = float on, match:class ^(bar_popup|com.nextcloud.desktopclient.nextcloud)$ -windowrule = move 2690 298, match:title ^(Weather Report)$, match:class ^(bar_popup)$ -windowrule = size 670 850, match:title ^(Weather Report)$, match:class ^(bar_popup)$ - -windowrule = move 2755 608, match:title ^(Connection Editor|Pipewire Volume Control)$, match:class ^(bar_popup|com.saivert.pwvucontrol)$ -windowrule = size 596 819, match:title ^(Connection Editor|Pipewire Volume Control)$, match:class ^(bar_popup|com.saivert.pwvucontrol)$ - -windowrule = move 2765 615, match:title ^(Nextcloud)$, match:class ^(com.nextcloud.desktopclient.nextcloud)$ -windowrule = size 596 819, match:title ^(Nextcloud)$, match:class ^(com.nextcloud.desktopclient.nextcloud)$ - -windowrule = float on, match:class ^(Rofi)$ - -windowrule = float on, match:class FloatingTerminal -windowrule = move -205 15, match:class FloatingTerminal -windowrule = size 190 100, match:class FloatingTerminal diff --git a/eggs/hypr/hyprland/windowrules.lua b/eggs/hypr/hyprland/windowrules.lua new file mode 100644 index 00000000..0101bc2e --- /dev/null +++ b/eggs/hypr/hyprland/windowrules.lua @@ -0,0 +1,50 @@ +-- CopyQ - float, size, and position +hl.window_rule({ name = "rule_1", match = { initial_class = "^(com.github.hluk.copyq)$" }, float = true }) +hl.window_rule({ name = "rule_2", match = { initial_class = "^(com.github.hluk.copyq)$" }, size = "500 300" }) +hl.window_rule({ name = "rule_3", match = { initial_class = "^(com.github.hluk.copyq)$" }, move = "onscreen cursor 0 -100%" }) + +-- Dialect - fixed position +hl.window_rule({ name = "rule_4", match = { title = "(.*)(Dialect)$" }, size = "600 300" }) +hl.window_rule({ name = "rule_5", match = { title = "(.*)(Dialect)$" }, move = "0 2840" }) + +-- Thunar / FileRoller - file transfer window, float top right +hl.window_rule({ name = "rule_6", match = { initial_title = "[(Copying )|(Preparing to)|(File Operation Progress)]", initial_class = "^(thunar | org.gnome.FileRoller)$" }, float = true }) +hl.window_rule({ name = "rule_7", match = { initial_title = "[(Copying )|(Preparing to)|(File Operation Progress)]", initial_class = "^(thunar | org.gnome.FileRoller)$" }, move = "2753 12" }) +hl.window_rule({ name = "rule_8", match = { initial_title = "[(Copying )|(Preparing to)|(File Operation Progress)]", initial_class = "^(thunar | org.gnome.FileRoller)$" }, size = "450 100" }) + +hl.window_rule({ name = "rule_9", match = { title = "^(Extract*)", initial_class = "^(org.gnome.FileRoller)$" }, float = true }) +hl.window_rule({ name = "rule_10", match = { title = "^(Extract*)", initial_class = "^(org.gnome.FileRoller)$" }, move = "2903 13" }) +hl.window_rule({ name = "rule_11", match = { title = "^(Extract*)", initial_class = "^(org.gnome.FileRoller)$" }, size = "450 100" }) + +-- Steam drop down +hl.window_rule({ name = "rule_12", match = { title = "^()$", class = "^(steam)$" }, stay_focused = true }) +hl.window_rule({ name = "rule_13", match = { title = "^()$", class = "^(steam)$" }, min_size = "1 1" }) + +-- XWaylandVideoBridge - hide and disable focus +hl.window_rule({ name = "rule_14", match = { class = "^(xwaylandvideobridge)$" }, opacity = "0.0 override 0.0 override" }) +hl.window_rule({ name = "rule_15", match = { class = "^(xwaylandvideobridge)$" }, no_anim = true }) +hl.window_rule({ name = "rule_16", match = { class = "^(xwaylandvideobridge)$" }, no_focus = true }) +hl.window_rule({ name = "rule_17", match = { class = "^(xwaylandvideobridge)$" }, no_initial_focus = true }) + +-- Genshin Impact +hl.window_rule({ name = "rule_18", match = { class = "^(genshinimpact.exe)$" }, maximize = true }) +hl.window_rule({ name = "rule_19", match = { class = "^(genshinimpact.exe)$" }, monitor = "1" }) +hl.window_rule({ name = "rule_20", match = { class = "^(genshinimpact.exe)$" }, no_anim = true }) +hl.window_rule({ name = "rule_21", match = { class = "^(genshinimpact.exe)$" }, float = true }) + +-- Bar popups / Nextcloud - float near bar +hl.window_rule({ name = "rule_22", match = { class = "^(bar_popup|com.nextcloud.desktopclient.nextcloud)$" }, float = true }) +hl.window_rule({ name = "rule_23", match = { title = "^(Weather Report)$", class = "^(bar_popup)$" }, move = "2690 298" }) +hl.window_rule({ name = "rule_24", match = { title = "^(Weather Report)$", class = "^(bar_popup)$" }, size = "670 850" }) + +hl.window_rule({ name = "rule_25", match = { title = "^(Connection Editor|Pipewire Volume Control)$", class = "^(bar_popup|com.saivert.pwvucontrol)$" }, move = "2755 608" }) +hl.window_rule({ name = "rule_26", match = { title = "^(Connection Editor|Pipewire Volume Control)$", class = "^(bar_popup|com.saivert.pwvucontrol)$" }, size = "596 819" }) + +hl.window_rule({ name = "rule_27", match = { title = "^(Nextcloud)$", class = "^(com.nextcloud.desktopclient.nextcloud)$" }, move = "2765 615" }) +hl.window_rule({ name = "rule_28", match = { title = "^(Nextcloud)$", class = "^(com.nextcloud.desktopclient.nextcloud)$" }, size = "596 819" }) + +hl.window_rule({ name = "rule_29", match = { class = "^(Rofi)$" }, float = true }) + +hl.window_rule({ name = "rule_30", match = { class = "FloatingTerminal" }, float = true }) +hl.window_rule({ name = "rule_31", match = { class = "FloatingTerminal" }, move = "-205 15" }) +hl.window_rule({ name = "rule_32", match = { class = "FloatingTerminal" }, size = "190 100" }) \ No newline at end of file diff --git a/eggs/hypr/hyprland/workspaces.conf b/eggs/hypr/hyprland/workspaces.conf deleted file mode 100644 index deecd2cb..00000000 --- a/eggs/hypr/hyprland/workspaces.conf +++ /dev/null @@ -1,14 +0,0 @@ -# Workspaces -workspace = monitor:0, name:1, default:true -workspace = monitor:0, name:2 -workspace = monitor:0, name:3 -workspace = monitor:0, name:4 - -workspace = monitor:1, name:5, default:true -workspace = monitor:1, name:6 -workspace = monitor:1, name:7 -workspace = monitor:1, name:8 - -workspace = special:scratchpad -workspace = special:scratchpad2 -workspace = special:dump diff --git a/eggs/hypr/hyprland/workspaces.lua b/eggs/hypr/hyprland/workspaces.lua new file mode 100644 index 00000000..115ff339 --- /dev/null +++ b/eggs/hypr/hyprland/workspaces.lua @@ -0,0 +1,14 @@ +-- Workspaces +-- hl.workspace_rule({ workspace = "1", monitor = "0" }) +-- hl.workspace_rule({ workspace = "2", monitor = "0" }) +-- hl.workspace_rule({ workspace = "3", monitor = "0" }) +-- hl.workspace_rule({ workspace = "4", monitor = "0" }) +-- +-- hl.workspace_rule({ workspace = "5", monitor = "1", default = true }) +-- hl.workspace_rule({ workspace = "6", monitor = "1" }) +-- hl.workspace_rule({ workspace = "7", monitor = "1" }) +-- hl.workspace_rule({ workspace = "8", monitor = "1" }) +-- +--hl.workspace_rule({ workspace = "special:scratchpad" }) +--hl.workspace_rule({ workspace = "special:scratchpad2" }) +--hl.workspace_rule({ workspace = "special:dump" }) diff --git a/eggs/hypr/scripts/follow_workspace.sh b/eggs/hypr/scripts/follow_workspace.sh deleted file mode 100755 index 97de1b4e..00000000 --- a/eggs/hypr/scripts/follow_workspace.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/env bash - -instances=$(($(pgrep -f $0 | wc -l) -1)) -if [ "$instances" -gt 1 ]; then - echo "Another instance of this script is already running." - exit 1 -fi - -monitors=$(hyprctl -j monitors | jq "length") -desired_workspaces=4 - - -handle_workspace_change(){ - params=("$@") - workspace_id=$(( ${params[0]} - 1 )) # -1 for we start at 1 - #echo "Workspace ID: $workspace_id" - - - curent_state=$(hyprctl -j monitors) - relative_ws_id=$((($workspace_id % $desired_workspaces) + 1)) # +1 for we start at 1 - ws_group=$(( ($workspace_id - 1) / $desired_workspaces)) - transaction_occured=false - #echo "Following monitor $ws_group to (rel.) WS $relative_ws_id" - for ((dp=0; dp>" and split at commas - - IFS=',' read -ra params <<< "${line#*>>}" - case $cmd in - "workspacev2") - handle_workspace_change ${params[@]} - ;; - esac - -done; \ No newline at end of file diff --git a/eggs/hypr/scripts/specia-workspace-movment-toggle.sh b/eggs/hypr/scripts/specia-workspace-movment-toggle.sh index 27e8f2be..98451813 100755 --- a/eggs/hypr/scripts/specia-workspace-movment-toggle.sh +++ b/eggs/hypr/scripts/specia-workspace-movment-toggle.sh @@ -6,10 +6,10 @@ for (( i = 0; i < $(jq '. | length' <<< "$any_special_workspace"); i++ )); do echo "$(jq ".[$i].specialWorkspace.name" <<< $any_special_workspace)" echo "\"special:${1}\"" if [ "$(jq ".[$i].specialWorkspace.name" <<< $any_special_workspace)" = "\"special:${1}\"" ] ; then - hyprctl dispatch movetoworkspacesilent $(hyprctl activeworkspace -j | jq '.id') + hyprctl dispatch "hl.dsp.window.move({workspace=\"$(hyprctl activeworkspace -j | jq '.id')\", follow=false})" exit fi done #else -hyprctl dispatch movetoworkspacesilent special:${1} +hyprctl dispatch "hl.dsp.window.move({workspace=\"special:${1}\", follow=false})" diff --git a/eggs/hypr/scripts/workspace_manager.sh b/eggs/hypr/scripts/workspace_manager.sh deleted file mode 100755 index f3b884d5..00000000 --- a/eggs/hypr/scripts/workspace_manager.sh +++ /dev/null @@ -1,57 +0,0 @@ -#!/usr/bin/env bash - -# Args: -# $1: destination -# $2: mode - - -# TODO: check if script is running, if so, exit - -WORKSPACES=4 - -function confirm_valid_destination() { - destination=$1 - if [ "${str:0:1}" == "+" ]; then - destination=$(( ${destination:1} + 1 )) - elif [ "${str:0:1}" == "-" ]; then - destination=$(( ${destination:1} - 1 )) - fi - - if [ $destination -lt 1 ]; then - destination=$WORKSPACES - elif [ $destination -gt $WORKSPACES ]; then - destination=1 - fi - echo $destination -} - - - - -active_ws_id=$(hyprctl activeworkspace -j | jq -r '.id') -active_window_monitor_id=$(hyprctl activeworkspace -j | jq -r '.monitorID') -monitors=$(hyprctl monitors -j | jq -r '.[].id') -dp_iterator=0 - -destination=$(confirm_valid_destination $1) -# Adjust destination for monitor -destination_with_monitor=$((($active_window_monitor_id * 4) + $destination)) - -mode=$2 -echo "Destination: $destination" -echo "Destination with monitor: $destination_with_monitor" -for dp in $monitors -do - echo "Display: $dp" - hyprctl dispatch focusmonitor $dp - real_destination=$((($dp_iterator * 4) + $destination)) - echo "Real Destination $real_destination" - if [[ $real_destination -eq $destination_with_monitor && $mode == "carry" ]]; then - echo "Moving window" - hyprctl dispatch movetoworkspace $real_destination - else - echo "Changing workspace" - hyprctl dispatch workspace $real_destination - fi - dp_iterator=$((dp_iterator+1)) -done diff --git a/eggs/i2p_librewolf/profile/prefs.js b/eggs/i2p_librewolf/profile/prefs.js index 5fecf0ad..ec090368 100644 --- a/eggs/i2p_librewolf/profile/prefs.js +++ b/eggs/i2p_librewolf/profile/prefs.js @@ -46,9 +46,9 @@ user_pref("browser.safebrowsing.provider.mozilla.lastupdatetime", "1778261332854 user_pref("browser.safebrowsing.provider.mozilla.nextupdatetime", "1778282932854"); user_pref("browser.search.totalSearches", 98); user_pref("browser.sessionstore.upgradeBackup.latestBuildID", "20251027123126"); -user_pref("browser.shell.mostRecentDateSetAsDefault", "1779365322"); +user_pref("browser.shell.mostRecentDateSetAsDefault", "1779471058"); user_pref("browser.startup.couldRestoreSession.count", 2); -user_pref("browser.startup.lastColdStartupCheck", 1779365323); +user_pref("browser.startup.lastColdStartupCheck", 1779471059); user_pref("browser.termsofuse.prefMigrationCheck", true); user_pref("browser.toolbarbuttons.introduced.sidebar-button", true); user_pref("browser.toolbars.bookmarks.visibility", "never"); @@ -190,7 +190,7 @@ user_pref("storage.vacuum.last.content-prefs.sqlite", 1778077210); user_pref("storage.vacuum.last.index", 2); user_pref("storage.vacuum.last.places.sqlite", 1777853354); user_pref("toolkit.profiles.storeID", "956ac82f"); -user_pref("toolkit.startup.last_success", 1779365321); +user_pref("toolkit.startup.last_success", 1779471057); user_pref("toolkit.telemetry.cachedClientID", "39febed9-00b0-4794-9a65-91eb9f8a0e22"); user_pref("toolkit.telemetry.cachedProfileGroupID", "d82d992e-64b6-451c-a9ef-522b45109ba9"); user_pref("toolkit.telemetry.reportingpolicy.firstRun", false); diff --git a/eggs/openrgb/OpenRGB.json b/eggs/openrgb/OpenRGB.json index bb39e798..cfb047b8 100755 --- a/eggs/openrgb/OpenRGB.json +++ b/eggs/openrgb/OpenRGB.json @@ -2220,7 +2220,7 @@ "theme": "auto" }, "UserInterface": { - "RunZoneChecks": true, + "RunZoneChecks": false, "autoload_profiles": { "exit_profile": { "enabled": false, diff --git a/eggs/rofi/config.rasi b/eggs/rofi/config.rasi index f313c8b8..399d2d42 100755 --- a/eggs/rofi/config.rasi +++ b/eggs/rofi/config.rasi @@ -4,6 +4,7 @@ configuration{ show-icons: true; terminal: "kitty"; drun-display-format: "{icon} {name}"; + run-command: "uwsm app -- {cmd}"; location: 0; disable-history: false; scroll-method: 0; @@ -18,7 +19,7 @@ configuration{ kb-move-front: ""; kb-remove-char-forward: ""; - + kb-mode-next: "Control+Alt+e"; kb-mode-previous: "Control+Alt+q"; @@ -28,4 +29,3 @@ configuration{ } } @theme "catppuccin-frappe" - diff --git a/eggs/swaylock/config b/eggs/swaylock/config new file mode 100755 index 00000000..4b36e33f --- /dev/null +++ b/eggs/swaylock/config @@ -0,0 +1,71 @@ + +# Info see: man swaylock +show-failed-attempts + +#fade-in=2 +#grace=3 + +# Aperance +#indicator + +color=1e1e2e + +image=DP-2:/home/someone/.config/assets/wallpaper/bg-dp1.png +image=DP-3:/home/someone/.config/assets/wallpaper/bg-dp2.png + + + +#indicator-caps-lock + +#scaling=solid_color + +#indicator-image=/home/someone/.config/assets/def_window.png + +inside-color=00000000 +inside-clear-color=a6d189 +inside-caps-lock-color=e5c890 +inside-ver-color=8caaee +inside-wrong-color=e78284 +key-hl-color=ca9ee6 + +layout-bg-color=00000000 +#layout-border-color=ca9ee6 +#layout-text-color=c6d0f5 + +line-color=00000000 +#line-clear-color +#line-caps-lock-color +#line-ver-color +#line-wrong-color + +ring-color=838ba7 +ring-clear-color=a6d189 +ring-caps-lock-color=e5c890 +ring-ver-color=8caaee +ring-wrong-color=e78284 + +separator-color=ca9ee6 + +text-color=e78284 +#text-clear-color +#text-caps-lock +#text-caps-lock-color +#text-ver-color +#text-wrong-color + +font=DejaVuSansM Nerd Font + +text-clear=ᓚᘏᗢ +text-ver=󱥸 +text-wrong= + +indicator-radius=140 +indicator-thickness=24 + +#effect-blur +#effect-pixelate +#effect-scale +#effect-greyscale +#effect-vignette +#effect-compose +#effect-custom diff --git a/eggs/thunar/thunar/accels.scm b/eggs/thunar/thunar/accels.scm index bd3ced01..fc5e61d2 100644 --- a/eggs/thunar/thunar/accels.scm +++ b/eggs/thunar/thunar/accels.scm @@ -31,8 +31,8 @@ ; (gtk_accel_path "/ThunarActionManager/restore" "") ; (gtk_accel_path "/ThunarWindow/open-location-alt" "d") ; (gtk_accel_path "/ThunarBookmarks/7b974f04fe696fe4ab4967eebde3d256" "") -; (gtk_accel_path "/ThunarWindow/zoom-out-alt" "KP_Subtract") ; (gtk_accel_path "/ThunarStandardView/select-by-pattern" "s") +; (gtk_accel_path "/ThunarWindow/zoom-out-alt" "KP_Subtract") ; (gtk_accel_path "/ThunarWindow/open-file-menu" "F10") ; (gtk_accel_path "/ThunarWindow/contents" "F1") ; (gtk_accel_path "/ThunarWindow/show-highlight" "") @@ -72,13 +72,13 @@ ; (gtk_accel_path "/ThunarWindow/remove-from-recent" "") ; (gtk_accel_path "/ThunarActionManager/open-with-other" "") ; (gtk_accel_path "/ThunarStandardView/invert-selection" "i") -; (gtk_accel_path "/ThunarBookmarks/9127cb22cbba11a90521bb66107f7d88" "") ; (gtk_accel_path "/ThunarWindow/view-side-pane-shortcuts" "b") ; (gtk_accel_path "/ThunarWindow/reload-alt-2" "Reload") ; (gtk_accel_path "/ThunarWindow/view-location-selector-menu" "") +; (gtk_accel_path "/ThunarStandardView/sort-by-mtime" "") ; (gtk_accel_path "/ThunarWindow/edit-menu" "") ; (gtk_accel_path "/ThunarActionManager/copy" "c") -; (gtk_accel_path "/ThunarStandardView/sort-by-mtime" "") +; (gtk_accel_path "/ThunarBookmarks/9127cb22cbba11a90521bb66107f7d88" "") ; (gtk_accel_path "/ThunarStandardView/forward-alt" "Forward") ; (gtk_accel_path "/ThunarActionManager/move-to-trash" "") ; (gtk_accel_path "/ThunarWindow/reload-alt-1" "F5") diff --git a/eggs/thunar/xfce/xfconf/xfce-perchannel-xml/thunar.xml b/eggs/thunar/xfce/xfconf/xfce-perchannel-xml/thunar.xml index 0820dfcd..17f472c7 100644 --- a/eggs/thunar/xfce/xfconf/xfce-perchannel-xml/thunar.xml +++ b/eggs/thunar/xfce/xfconf/xfce-perchannel-xml/thunar.xml @@ -6,7 +6,7 @@ - + diff --git a/eggs/tidal/config.json b/eggs/tidal/config.json index 643c9d4c..008ba29d 100644 --- a/eggs/tidal/config.json +++ b/eggs/tidal/config.json @@ -81,7 +81,7 @@ "trayIconPath": "", "updateFrequency": 500, "windowBounds": { - "width": 2090, + "width": 3416, "height": 1416 }, "__internal__": { @@ -89,3 +89,4 @@ "version": "6.3.1" } } +} \ No newline at end of file diff --git a/eggs/waybar/bar/config.jsonc b/eggs/waybar/bar/config.jsonc index 94a73715..caec237f 100755 --- a/eggs/waybar/bar/config.jsonc +++ b/eggs/waybar/bar/config.jsonc @@ -65,7 +65,7 @@ "format-icons": "󰗽 ", "exec-on-event": "true", "tooltip": false, - "on-click": "hyprctl dispatch exit", + "on-click": "hyprctl dispatch 'hl.dsp.exit()'", }, "custom/restart": { "format": "{icon}", @@ -110,7 +110,7 @@ "custom/specialWs": { "format": "S", "exec-on-event": "true", - "on-click": "hyprctl dispatch togglespecialworkspace scratchpad", + "on-click": "hyprctl dispatch 'hl.dsp.workspace.toggle_special(\"scratchpad\")'", }, "group/activeApp": { "orientation": "vertical", @@ -142,7 +142,7 @@ "exec-on-event": "true", "justify": "center", "tooltip": false, - "on-click": "hyprctl dispatch killactive", + "on-click": "hyprctl dispatch 'hl.dsp.window.kill()'", }, "custom/activeWindowMaximize": { "format": "{icon}", @@ -150,7 +150,7 @@ "justify": "center", "exec-on-event": "true", "tooltip": false, - "on-click": "hyprctl dispatch fullscreen 1", + "on-click": "hyprctl dispatch 'hl.dsp.window.fullscreen({ mode = \"fullscreen\", action = \"toggle\" }'", }, "custom/activeWindowFloating": { "format": "{icon}", @@ -158,7 +158,7 @@ "justify": "center", "exec-on-event": "true", "tooltip": false, - "on-click": "hyprctl dispatch togglefloating", + "on-click": "hyprctl dispatch 'hl.dsp.window.float({ action = \"toggle\" })'", }, "clock": { @@ -225,7 +225,7 @@ "tooltip": true, "tooltip-format": "Submap: {}", "justify": "center", - "on-click": "hyprctl dispatch submap reset", + "on-click": "hyprctl dispatch 'hl.dsp.submap(\"reset\")'", }, "cpu#avrage": { @@ -377,7 +377,7 @@ "car": "", "default": ["", "", ""], }, - "on-click": "hyprctl dispatch exec '[float] bash ~/.local/share/until-scripts/kill-on-unfocus.sh pwvucontrol'", + "on-click": "hyprctl dispatch 'hl.dsp.exec_cmd(\"[float] bash ~/.local/share/until-scripts/kill-on-unfocus.sh pwvucontrol\")'", "on-click-middle": "", }, "group/net": { diff --git a/eggs/zed/settings.json b/eggs/zed/settings.json index 5827b7de..8583faf2 100644 --- a/eggs/zed/settings.json +++ b/eggs/zed/settings.json @@ -190,7 +190,7 @@ "debugger": { "dock": "bottom", }, - "disable_ai": true, + "disable_ai": false, "terminal": { "toolbar": { "breadcrumbs": false, diff --git a/nixMain/base.rhai b/nixMain/base.rhai index e4fbbd03..5b9cb556 100644 --- a/nixMain/base.rhai +++ b/nixMain/base.rhai @@ -19,7 +19,8 @@ export let base_config = #{ //"xfce": "~/.config/xfce4" }, enabled: true}, - waybar: #{ targets: "~/.config/waybar", enabled: true} , + waybar: #{ targets: "~/.config/waybar", enabled: true}, + swaylock: #{ targets: "~/.config/swaylock", enabled: true}, yazi: #{ targets: "~/.config/yazi", enabled: true}, minecraft: #{ targets: "~/.local/share/PrismLauncher/instances", enabled: true}, i2p_librewolf: #{ targets: #{ diff --git a/root-conf/nixos/flake.lock b/root-conf/nixos/flake.lock index e54c34e8..0df7db23 100644 --- a/root-conf/nixos/flake.lock +++ b/root-conf/nixos/flake.lock @@ -161,7 +161,9 @@ "hyprutils": "hyprutils", "hyprwayland-scanner": "hyprwayland-scanner", "hyprwire": "hyprwire", - "nixpkgs": "nixpkgs", + "nixpkgs": [ + "nixpkgs" + ], "pre-commit-hooks": "pre-commit-hooks", "systems": "systems", "xdph": "xdph" @@ -281,6 +283,27 @@ "type": "github" } }, + "hyprland-split-monitor-workspaces": { + "inputs": { + "hyprland": [ + "hyprland" + ], + "nix-filter": "nix-filter" + }, + "locked": { + "lastModified": 1778839317, + "narHash": "sha256-fqWPifkCkwkTPrGosPN+wLQcy8AJMD3UIzRcLUN/3rA=", + "owner": "zjeffer", + "repo": "split-monitor-workspaces", + "rev": "7fa10d87b486401549267edb73f6145dd524d6f0", + "type": "github" + }, + "original": { + "owner": "zjeffer", + "repo": "split-monitor-workspaces", + "type": "github" + } + }, "hyprlang": { "inputs": { "hyprutils": [ @@ -441,23 +464,22 @@ "type": "github" } }, - "nixpkgs": { + "nix-filter": { "locked": { - "lastModified": 1778443072, - "narHash": "sha256-zi7/fsqM/kFdNuED//4WOCUtezGtKKqRNORjMvfwjnA=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "da5ad661ba4e5ef59ba743f0d112cbc30e474f32", + "lastModified": 1693833173, + "narHash": "sha256-hlMABKrGbEiJD5dwUSfnw1CQ3bG7KKwDV+Nx3bEZd7U=", + "owner": "numtide", + "repo": "nix-filter", + "rev": "ac030bd9ba98e318e1f4c4328d60766ade8ebe8b", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", + "owner": "numtide", + "repo": "nix-filter", "type": "github" } }, - "nixpkgs_2": { + "nixpkgs": { "locked": { "lastModified": 1778869304, "narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=", @@ -517,7 +539,8 @@ "home-manager": "home-manager", "hyprland": "hyprland", "hyprland-plugins": "hyprland-plugins", - "nixpkgs": "nixpkgs_2", + "hyprland-split-monitor-workspaces": "hyprland-split-monitor-workspaces", + "nixpkgs": "nixpkgs", "pkgs-unstable": "pkgs-unstable" } }, diff --git a/root-conf/nixos/flake.nix b/root-conf/nixos/flake.nix index ed68d4a2..f5583e42 100644 --- a/root-conf/nixos/flake.nix +++ b/root-conf/nixos/flake.nix @@ -8,14 +8,27 @@ url = "github:nix-community/home-manager/master"; inputs.nixpkgs.follows = "nixpkgs"; }; - hyprland.url = "github:hyprwm/Hyprland"; + + hyprland = { + url = "github:hyprwm/Hyprland"; + inputs.nixpkgs.follows = "nixpkgs"; + }; hyprland-plugins = { url = "github:hyprwm/hyprland-plugins"; inputs.hyprland.follows = "hyprland"; }; + hyprland-split-monitor-workspaces = { + url = "github:zjeffer/split-monitor-workspaces"; + inputs.hyprland.follows = "hyprland"; + }; + #hyprland-hyprspace = { + # url = "github:KZDKM/Hyprspace"; + # inputs.hyprland.follows = "hyprland"; + #}; + }; - outputs = { self, nixpkgs, pkgs-unstable, home-manager, ... }@inputs: + outputs = { self, nixpkgs, pkgs-unstable, home-manager, hyprland-split-monitor-workspaces, ... }@inputs: let system = "x86_64-linux"; in { @@ -23,7 +36,7 @@ inherit system; specialArgs = { pkgs-unstable = import pkgs-unstable { inherit system; }; - inputs = inputs; + inputs = inputs; }; modules = [ ./nixMain/configuration.nix diff --git a/root-conf/nixos/nixLap/homemanager/someone.nix b/root-conf/nixos/nixLap/homemanager/someone.nix index 87e3b556..e14071d1 100644 --- a/root-conf/nixos/nixLap/homemanager/someone.nix +++ b/root-conf/nixos/nixLap/homemanager/someone.nix @@ -1,11 +1,11 @@ # home.nix -{ config, pkgs, pkgs-unstable, inputs, ... }: +{ config, pkgs, inputs, ... }: { home.stateVersion = "25.05"; home.username = "someone"; home.homeDirectory = "/home/someone"; - programs.home-manager.enable = true; + programs.home-manager.enable = true; imports = [ diff --git a/root-conf/nixos/nixMain/configuration.nix b/root-conf/nixos/nixMain/configuration.nix index 88479229..d7d6e45b 100644 --- a/root-conf/nixos/nixMain/configuration.nix +++ b/root-conf/nixos/nixMain/configuration.nix @@ -1,4 +1,4 @@ -{ config, pkgs, pkgs-unstable, ... }: +{ config, pkgs, pkgs-unstable, inputs, ... }: let optionalPkgs = import ../optional-packages.nix { inherit pkgs; }; in @@ -71,16 +71,6 @@ in ]; }; - - # Configure keymap in X11 - services.xserver.xkb = { - layout = "gb"; - variant = ""; - }; - - # Configure console keymap - console.keyMap = "uk"; - users.groups.gpio = {}; users.groups.wireshark = {}; users.users.someone = { @@ -112,23 +102,27 @@ in enable = true; user = "someone"; }; + sessionPackages = [ + config.home-manager.users.someone.wayland.windowManager.hyprland.package + ]; defaultSession = "hyprland"; }; + xdg.portal = { + enable = true; + configPackages = [ + config.home-manager.users.someone.wayland.windowManager.hyprland.portalPackage + ]; + }; + + # Docker virtualisation.docker.enable = true; virtualisation.docker.storageDriver = "btrfs"; # Added docker group to user - # Desktop enviorment - programs.hyprland = { - enable = true; - withUWSM = false; # Universal Wayland Session Manage, ly dosnt like this - xwayland.enable = true; # Xwayland can be disabled. - }; - - # Additional steam settings + # Additional steam settings programs.steam = { enable = true; remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play @@ -214,7 +208,8 @@ in prismlauncher # Monitoring - kdePackages.plasma-systemmonitor + mission-center + nethogs # nvtopPackages.full # btop @@ -236,6 +231,15 @@ in # nerdfonts wher seperated into different packages, so nerdfonts dosnt work fonts.packages = with pkgs; [] ++ builtins.filter lib.attrsets.isDerivation (builtins.attrValues pkgs.nerd-fonts); + # Per process network information for mission-center + security.wrappers.nethogs = { + owner = "root"; + group = "root"; + capabilities = "cap_net_admin,cap_net_raw,cap_dac_read_search,cap_sys_ptrace+pe"; + source = "${pkgs.nethogs}/bin/nethogs"; + }; + + security.pam.services.swaylock = {}; #Enviormant # needet for electron apps under wayland @@ -245,8 +249,7 @@ in security.polkit.enable = true; # Walet, needet for nextcloud login services.gnome.gnome-keyring.enable = true; - - security.pam.services.ly.enableGnomeKeyring = true; + # security.pam.services.ly.enableGnomeKeyring = true; diff --git a/root-conf/nixos/nixMain/homemanager/someone.nix b/root-conf/nixos/nixMain/homemanager/someone.nix index 87e3b556..b6201170 100644 --- a/root-conf/nixos/nixMain/homemanager/someone.nix +++ b/root-conf/nixos/nixMain/homemanager/someone.nix @@ -5,31 +5,41 @@ home.stateVersion = "25.05"; home.username = "someone"; home.homeDirectory = "/home/someone"; - programs.home-manager.enable = true; + programs.home-manager.enable = true; + + wayland.windowManager.hyprland = { + enable = true; + configType = "lua"; + extraConfig = " + local constants = require('hyprland/constants') + + hl.config({ + autogenerated = 0, + }) + + -- ── Includes ── + require('hyprland/monitors') + require('hyprland/env') + require('hyprland/input') + require('hyprland/general') + require('hyprland/appearance') + require('hyprland/workspaces') + require('hyprland/windowrules') + require('hyprland/exec') + require('hyprland/binds') + "; + package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland; + portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland; + systemd.enable = true; + xwayland.enable = true; + plugins = [ + inputs.hyprland-split-monitor-workspaces.packages.${pkgs.stdenv.hostPlatform.system}.split-monitor-workspaces + #inputs.hyprland-hyprspace.packages.${pkgs.stdenv.hostPlatform.system}.Hyprspace + ]; + }; imports = [ ../../homemanager/shared-conf.nix ]; - - # wayland.windowManager.hyprland = { - # enable = true; - # plugins = [ - # inputs.hyprland-plugins.packages.${pkgs.system}.hyprexpo - # ]; - # settings = { - # bind = [ -# "SUPER SHIFT, code:65, hyprexpo:expo, toggle" - # ]; - # source = [ - # "~/.config/hypr/general.conf" - # ]; - # debug = { - # disable_logs = false; - # }; - # }; - # extraConfig = '' -# source=~/.config/hypr/hyprland/general.conf -# bind = SUPER SHIFT, code:65, hyprexpo:expo, toggle''; - #}; } diff --git a/root-conf/nixos/shared-conf.nix b/root-conf/nixos/shared-conf.nix index 27180f6b..380542dd 100644 --- a/root-conf/nixos/shared-conf.nix +++ b/root-conf/nixos/shared-conf.nix @@ -13,13 +13,14 @@ experimental-features = ["nix-command" "flakes" ]; trusted-users = [ "root" "someone" ]; }; + environment.pathsToLink = [ "/share/applications" "/share/xdg-desktop-portal" ]; # Set your time zone. time.timeZone = "Europe/Berlin"; # Select internationalisation properties. + console.keyMap = "de"; i18n.defaultLocale = "en_GB.UTF-8"; - i18n.extraLocaleSettings = { LC_ADDRESS = "de_DE.UTF-8"; LC_IDENTIFICATION = "de_DE.UTF-8";