moved hyprland to lua
This commit is contained in:
parent
4967d61461
commit
6e7427b1be
1
.gitignore
vendored
1
.gitignore
vendored
@ -6,6 +6,7 @@
|
|||||||
/.git
|
/.git
|
||||||
/.yolk_git
|
/.yolk_git
|
||||||
**/Cache*
|
**/Cache*
|
||||||
|
**.backup
|
||||||
|
|
||||||
eggs/i2p_librewolf/profile/*
|
eggs/i2p_librewolf/profile/*
|
||||||
!eggs/i2p_librewolf/profile/settings
|
!eggs/i2p_librewolf/profile/settings
|
||||||
|
|||||||
5
.luarc.json
Normal file
5
.luarc.json
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"diagnostics.globals": [
|
||||||
|
"hl"
|
||||||
|
]
|
||||||
|
}
|
||||||
Binary file not shown.
1
eggs/hypr/.luarc.json
Symbolic link
1
eggs/hypr/.luarc.json
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/nix/store/44xc7k2v4avg6xl1nramh4nndlznyszz-home-manager-files/.config/hypr/.luarc.json
|
||||||
@ -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
|
|
||||||
1
eggs/hypr/hyprland.lua
Symbolic link
1
eggs/hypr/hyprland.lua
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/nix/store/44xc7k2v4avg6xl1nramh4nndlznyszz-home-manager-files/.config/hypr/hyprland.lua
|
||||||
@ -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
|
|
||||||
}
|
|
||||||
20
eggs/hypr/hyprland/appearance.lua
Normal file
20
eggs/hypr/hyprland/appearance.lua
Normal file
@ -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" })
|
||||||
@ -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
|
|
||||||
102
eggs/hypr/hyprland/binds.lua
Normal file
102
eggs/hypr/hyprland/binds.lua
Normal file
@ -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)
|
||||||
31
eggs/hypr/hyprland/constants.lua
Normal file
31
eggs/hypr/hyprland/constants.lua
Normal file
@ -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")
|
||||||
|
}
|
||||||
@ -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
|
|
||||||
15
eggs/hypr/hyprland/env.lua
Normal file
15
eggs/hypr/hyprland/env.lua
Normal file
@ -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
|
||||||
@ -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 &
|
|
||||||
16
eggs/hypr/hyprland/exec.lua
Normal file
16
eggs/hypr/hyprland/exec.lua
Normal file
@ -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)
|
||||||
@ -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
|
|
||||||
}
|
|
||||||
}
|
|
||||||
27
eggs/hypr/hyprland/general.lua
Normal file
27
eggs/hypr/hyprland/general.lua
Normal file
@ -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,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
@ -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
|
|
||||||
}
|
|
||||||
15
eggs/hypr/hyprland/input.lua
Normal file
15
eggs/hypr/hyprland/input.lua
Normal file
@ -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,
|
||||||
|
},
|
||||||
|
})
|
||||||
@ -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
|
|
||||||
29
eggs/hypr/hyprland/monitors.lua
Normal file
29
eggs/hypr/hyprland/monitors.lua
Normal file
@ -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,
|
||||||
|
|
||||||
|
-- }
|
||||||
|
},
|
||||||
|
})
|
||||||
@ -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
|
|
||||||
50
eggs/hypr/hyprland/windowrules.lua
Normal file
50
eggs/hypr/hyprland/windowrules.lua
Normal file
@ -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" })
|
||||||
@ -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
|
|
||||||
14
eggs/hypr/hyprland/workspaces.lua
Normal file
14
eggs/hypr/hyprland/workspaces.lua
Normal file
@ -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" })
|
||||||
@ -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<monitors; dp++));
|
|
||||||
do
|
|
||||||
absolute_ws_id=$((($dp * $desired_workspaces) + $relative_ws_id))
|
|
||||||
if [ $(echo $curent_state | jq ".[$dp].activeWorkspace.id") = $absolute_ws_id ]; then
|
|
||||||
# This is the monitor we already changed the displat on
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
#echo "Switching to (abs.) WS $absolute_ws_id on monitor $dp"
|
|
||||||
hyprctl dispatch focusmonitor $dp
|
|
||||||
hyprctl dispatch workspace $absolute_ws_id
|
|
||||||
transaction_occured=true
|
|
||||||
done
|
|
||||||
if [ $transaction_occured = "true" ]; then
|
|
||||||
#echo "Focusing monitor $ws_group"
|
|
||||||
hyprctl dispatch focusmonitor $ws_group
|
|
||||||
fi
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
nc -U $XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock | while read -r line; do
|
|
||||||
cmd="${line%%>>*}"
|
|
||||||
# Extract everything after ">>" and split at commas
|
|
||||||
|
|
||||||
IFS=',' read -ra params <<< "${line#*>>}"
|
|
||||||
case $cmd in
|
|
||||||
"workspacev2")
|
|
||||||
handle_workspace_change ${params[@]}
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
done;
|
|
||||||
@ -6,10 +6,10 @@ for (( i = 0; i < $(jq '. | length' <<< "$any_special_workspace"); i++ )); do
|
|||||||
echo "$(jq ".[$i].specialWorkspace.name" <<< $any_special_workspace)"
|
echo "$(jq ".[$i].specialWorkspace.name" <<< $any_special_workspace)"
|
||||||
echo "\"special:${1}\""
|
echo "\"special:${1}\""
|
||||||
if [ "$(jq ".[$i].specialWorkspace.name" <<< $any_special_workspace)" = "\"special:${1}\"" ] ; then
|
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
|
exit
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
#else
|
#else
|
||||||
hyprctl dispatch movetoworkspacesilent special:${1}
|
hyprctl dispatch "hl.dsp.window.move({workspace=\"special:${1}\", follow=false})"
|
||||||
|
|||||||
@ -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
|
|
||||||
@ -46,9 +46,9 @@ user_pref("browser.safebrowsing.provider.mozilla.lastupdatetime", "1778261332854
|
|||||||
user_pref("browser.safebrowsing.provider.mozilla.nextupdatetime", "1778282932854");
|
user_pref("browser.safebrowsing.provider.mozilla.nextupdatetime", "1778282932854");
|
||||||
user_pref("browser.search.totalSearches", 98);
|
user_pref("browser.search.totalSearches", 98);
|
||||||
user_pref("browser.sessionstore.upgradeBackup.latestBuildID", "20251027123126");
|
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.couldRestoreSession.count", 2);
|
||||||
user_pref("browser.startup.lastColdStartupCheck", 1779365323);
|
user_pref("browser.startup.lastColdStartupCheck", 1779471059);
|
||||||
user_pref("browser.termsofuse.prefMigrationCheck", true);
|
user_pref("browser.termsofuse.prefMigrationCheck", true);
|
||||||
user_pref("browser.toolbarbuttons.introduced.sidebar-button", true);
|
user_pref("browser.toolbarbuttons.introduced.sidebar-button", true);
|
||||||
user_pref("browser.toolbars.bookmarks.visibility", "never");
|
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.index", 2);
|
||||||
user_pref("storage.vacuum.last.places.sqlite", 1777853354);
|
user_pref("storage.vacuum.last.places.sqlite", 1777853354);
|
||||||
user_pref("toolkit.profiles.storeID", "956ac82f");
|
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.cachedClientID", "39febed9-00b0-4794-9a65-91eb9f8a0e22");
|
||||||
user_pref("toolkit.telemetry.cachedProfileGroupID", "d82d992e-64b6-451c-a9ef-522b45109ba9");
|
user_pref("toolkit.telemetry.cachedProfileGroupID", "d82d992e-64b6-451c-a9ef-522b45109ba9");
|
||||||
user_pref("toolkit.telemetry.reportingpolicy.firstRun", false);
|
user_pref("toolkit.telemetry.reportingpolicy.firstRun", false);
|
||||||
|
|||||||
@ -2220,7 +2220,7 @@
|
|||||||
"theme": "auto"
|
"theme": "auto"
|
||||||
},
|
},
|
||||||
"UserInterface": {
|
"UserInterface": {
|
||||||
"RunZoneChecks": true,
|
"RunZoneChecks": false,
|
||||||
"autoload_profiles": {
|
"autoload_profiles": {
|
||||||
"exit_profile": {
|
"exit_profile": {
|
||||||
"enabled": false,
|
"enabled": false,
|
||||||
|
|||||||
@ -4,6 +4,7 @@ configuration{
|
|||||||
show-icons: true;
|
show-icons: true;
|
||||||
terminal: "kitty";
|
terminal: "kitty";
|
||||||
drun-display-format: "{icon} {name}";
|
drun-display-format: "{icon} {name}";
|
||||||
|
run-command: "uwsm app -- {cmd}";
|
||||||
location: 0;
|
location: 0;
|
||||||
disable-history: false;
|
disable-history: false;
|
||||||
scroll-method: 0;
|
scroll-method: 0;
|
||||||
@ -18,7 +19,7 @@ configuration{
|
|||||||
|
|
||||||
kb-move-front: "";
|
kb-move-front: "";
|
||||||
kb-remove-char-forward: "";
|
kb-remove-char-forward: "";
|
||||||
|
|
||||||
kb-mode-next: "Control+Alt+e";
|
kb-mode-next: "Control+Alt+e";
|
||||||
kb-mode-previous: "Control+Alt+q";
|
kb-mode-previous: "Control+Alt+q";
|
||||||
|
|
||||||
@ -28,4 +29,3 @@ configuration{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
@theme "catppuccin-frappe"
|
@theme "catppuccin-frappe"
|
||||||
|
|
||||||
|
|||||||
71
eggs/swaylock/config
Executable file
71
eggs/swaylock/config
Executable file
@ -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
|
||||||
@ -31,8 +31,8 @@
|
|||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/restore" "")
|
; (gtk_accel_path "<Actions>/ThunarActionManager/restore" "")
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-location-alt" "<Alt>d")
|
; (gtk_accel_path "<Actions>/ThunarWindow/open-location-alt" "<Alt>d")
|
||||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/7b974f04fe696fe4ab4967eebde3d256" "")
|
; (gtk_accel_path "<Actions>/ThunarBookmarks/7b974f04fe696fe4ab4967eebde3d256" "")
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out-alt" "<Primary>KP_Subtract")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/select-by-pattern" "<Primary>s")
|
; (gtk_accel_path "<Actions>/ThunarStandardView/select-by-pattern" "<Primary>s")
|
||||||
|
; (gtk_accel_path "<Actions>/ThunarWindow/zoom-out-alt" "<Primary>KP_Subtract")
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-menu" "F10")
|
; (gtk_accel_path "<Actions>/ThunarWindow/open-file-menu" "F10")
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/contents" "F1")
|
; (gtk_accel_path "<Actions>/ThunarWindow/contents" "F1")
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/show-highlight" "")
|
; (gtk_accel_path "<Actions>/ThunarWindow/show-highlight" "")
|
||||||
@ -72,13 +72,13 @@
|
|||||||
; (gtk_accel_path "<Actions>/ThunarWindow/remove-from-recent" "")
|
; (gtk_accel_path "<Actions>/ThunarWindow/remove-from-recent" "")
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/open-with-other" "")
|
; (gtk_accel_path "<Actions>/ThunarActionManager/open-with-other" "")
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/invert-selection" "<Primary><Shift>i")
|
; (gtk_accel_path "<Actions>/ThunarStandardView/invert-selection" "<Primary><Shift>i")
|
||||||
; (gtk_accel_path "<Actions>/ThunarBookmarks/9127cb22cbba11a90521bb66107f7d88" "")
|
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-shortcuts" "<Primary>b")
|
; (gtk_accel_path "<Actions>/ThunarWindow/view-side-pane-shortcuts" "<Primary>b")
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt-2" "Reload")
|
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt-2" "Reload")
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-menu" "")
|
; (gtk_accel_path "<Actions>/ThunarWindow/view-location-selector-menu" "")
|
||||||
|
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-mtime" "")
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/edit-menu" "")
|
; (gtk_accel_path "<Actions>/ThunarWindow/edit-menu" "")
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/copy" "<Primary>c")
|
; (gtk_accel_path "<Actions>/ThunarActionManager/copy" "<Primary>c")
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/sort-by-mtime" "")
|
; (gtk_accel_path "<Actions>/ThunarBookmarks/9127cb22cbba11a90521bb66107f7d88" "")
|
||||||
; (gtk_accel_path "<Actions>/ThunarStandardView/forward-alt" "Forward")
|
; (gtk_accel_path "<Actions>/ThunarStandardView/forward-alt" "Forward")
|
||||||
; (gtk_accel_path "<Actions>/ThunarActionManager/move-to-trash" "")
|
; (gtk_accel_path "<Actions>/ThunarActionManager/move-to-trash" "")
|
||||||
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt-1" "F5")
|
; (gtk_accel_path "<Actions>/ThunarWindow/reload-alt-1" "F5")
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
<property name="last-window-maximized" type="bool" value="true"/>
|
<property name="last-window-maximized" type="bool" value="true"/>
|
||||||
<property name="last-details-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_38_PERCENT"/>
|
<property name="last-details-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_38_PERCENT"/>
|
||||||
<property name="last-details-view-visible-columns" type="string" value="THUNAR_COLUMN_DATE_CREATED,THUNAR_COLUMN_DATE_MODIFIED,THUNAR_COLUMN_GROUP,THUNAR_COLUMN_MIME_TYPE,THUNAR_COLUMN_NAME,THUNAR_COLUMN_OWNER,THUNAR_COLUMN_PERMISSIONS,THUNAR_COLUMN_SIZE"/>
|
<property name="last-details-view-visible-columns" type="string" value="THUNAR_COLUMN_DATE_CREATED,THUNAR_COLUMN_DATE_MODIFIED,THUNAR_COLUMN_GROUP,THUNAR_COLUMN_MIME_TYPE,THUNAR_COLUMN_NAME,THUNAR_COLUMN_OWNER,THUNAR_COLUMN_PERMISSIONS,THUNAR_COLUMN_SIZE"/>
|
||||||
<property name="last-details-view-column-widths" type="string" value="159,159,159,127,159,886,74,345,514,214,118,81,126,156"/>
|
<property name="last-details-view-column-widths" type="string" value="159,159,159,127,159,886,74,312,549,214,118,87,126,156"/>
|
||||||
<property name="last-separator-position" type="int" value="216"/>
|
<property name="last-separator-position" type="int" value="216"/>
|
||||||
<property name="last-show-hidden" type="bool" value="true"/>
|
<property name="last-show-hidden" type="bool" value="true"/>
|
||||||
<property name="misc-single-click" type="bool" value="false"/>
|
<property name="misc-single-click" type="bool" value="false"/>
|
||||||
|
|||||||
@ -81,7 +81,7 @@
|
|||||||
"trayIconPath": "",
|
"trayIconPath": "",
|
||||||
"updateFrequency": 500,
|
"updateFrequency": 500,
|
||||||
"windowBounds": {
|
"windowBounds": {
|
||||||
"width": 2090,
|
"width": 1830,
|
||||||
"height": 1416
|
"height": 1416
|
||||||
},
|
},
|
||||||
"__internal__": {
|
"__internal__": {
|
||||||
@ -89,3 +89,4 @@
|
|||||||
"version": "6.3.1"
|
"version": "6.3.1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
@ -65,7 +65,7 @@
|
|||||||
"format-icons": " ",
|
"format-icons": " ",
|
||||||
"exec-on-event": "true",
|
"exec-on-event": "true",
|
||||||
"tooltip": false,
|
"tooltip": false,
|
||||||
"on-click": "hyprctl dispatch exit",
|
"on-click": "hyprctl dispatch 'hl.dsp.exit()'",
|
||||||
},
|
},
|
||||||
"custom/restart": {
|
"custom/restart": {
|
||||||
"format": "{icon}",
|
"format": "{icon}",
|
||||||
@ -110,7 +110,7 @@
|
|||||||
"custom/specialWs": {
|
"custom/specialWs": {
|
||||||
"format": "S",
|
"format": "S",
|
||||||
"exec-on-event": "true",
|
"exec-on-event": "true",
|
||||||
"on-click": "hyprctl dispatch togglespecialworkspace scratchpad",
|
"on-click": "hyprctl dispatch 'hl.dsp.workspace.toggle_special(\"scratchpad\")'",
|
||||||
},
|
},
|
||||||
"group/activeApp": {
|
"group/activeApp": {
|
||||||
"orientation": "vertical",
|
"orientation": "vertical",
|
||||||
@ -142,7 +142,7 @@
|
|||||||
"exec-on-event": "true",
|
"exec-on-event": "true",
|
||||||
"justify": "center",
|
"justify": "center",
|
||||||
"tooltip": false,
|
"tooltip": false,
|
||||||
"on-click": "hyprctl dispatch killactive",
|
"on-click": "hyprctl dispatch 'hl.dsp.window.kill()'",
|
||||||
},
|
},
|
||||||
"custom/activeWindowMaximize": {
|
"custom/activeWindowMaximize": {
|
||||||
"format": "{icon}",
|
"format": "{icon}",
|
||||||
@ -150,7 +150,7 @@
|
|||||||
"justify": "center",
|
"justify": "center",
|
||||||
"exec-on-event": "true",
|
"exec-on-event": "true",
|
||||||
"tooltip": false,
|
"tooltip": false,
|
||||||
"on-click": "hyprctl dispatch fullscreen 1",
|
"on-click": "hyprctl dispatch 'hl.dsp.window.fullscreen({ mode = \"fullscreen\", action = \"toggle\" }'",
|
||||||
},
|
},
|
||||||
"custom/activeWindowFloating": {
|
"custom/activeWindowFloating": {
|
||||||
"format": "{icon}",
|
"format": "{icon}",
|
||||||
@ -158,7 +158,7 @@
|
|||||||
"justify": "center",
|
"justify": "center",
|
||||||
"exec-on-event": "true",
|
"exec-on-event": "true",
|
||||||
"tooltip": false,
|
"tooltip": false,
|
||||||
"on-click": "hyprctl dispatch togglefloating",
|
"on-click": "hyprctl dispatch 'hl.dsp.window.float({ action = \"toggle\" })'",
|
||||||
},
|
},
|
||||||
|
|
||||||
"clock": {
|
"clock": {
|
||||||
@ -225,7 +225,7 @@
|
|||||||
"tooltip": true,
|
"tooltip": true,
|
||||||
"tooltip-format": "Submap: {}",
|
"tooltip-format": "Submap: {}",
|
||||||
"justify": "center",
|
"justify": "center",
|
||||||
"on-click": "hyprctl dispatch submap reset",
|
"on-click": "hyprctl dispatch 'hl.dsp.submap(\"reset\")'",
|
||||||
},
|
},
|
||||||
|
|
||||||
"cpu#avrage": {
|
"cpu#avrage": {
|
||||||
@ -377,7 +377,7 @@
|
|||||||
"car": "",
|
"car": "",
|
||||||
"default": ["", "", ""],
|
"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": "",
|
"on-click-middle": "",
|
||||||
},
|
},
|
||||||
"group/net": {
|
"group/net": {
|
||||||
|
|||||||
@ -19,7 +19,8 @@ export let base_config = #{
|
|||||||
//"xfce": "~/.config/xfce4"
|
//"xfce": "~/.config/xfce4"
|
||||||
},
|
},
|
||||||
enabled: true},
|
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},
|
yazi: #{ targets: "~/.config/yazi", enabled: true},
|
||||||
minecraft: #{ targets: "~/.local/share/PrismLauncher/instances", enabled: true},
|
minecraft: #{ targets: "~/.local/share/PrismLauncher/instances", enabled: true},
|
||||||
i2p_librewolf: #{ targets: #{
|
i2p_librewolf: #{ targets: #{
|
||||||
|
|||||||
47
root-conf/nixos/flake.lock
generated
47
root-conf/nixos/flake.lock
generated
@ -161,7 +161,9 @@
|
|||||||
"hyprutils": "hyprutils",
|
"hyprutils": "hyprutils",
|
||||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||||
"hyprwire": "hyprwire",
|
"hyprwire": "hyprwire",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
"pre-commit-hooks": "pre-commit-hooks",
|
"pre-commit-hooks": "pre-commit-hooks",
|
||||||
"systems": "systems",
|
"systems": "systems",
|
||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
@ -281,6 +283,27 @@
|
|||||||
"type": "github"
|
"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": {
|
"hyprlang": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprutils": [
|
"hyprutils": [
|
||||||
@ -441,23 +464,22 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nix-filter": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1778443072,
|
"lastModified": 1693833173,
|
||||||
"narHash": "sha256-zi7/fsqM/kFdNuED//4WOCUtezGtKKqRNORjMvfwjnA=",
|
"narHash": "sha256-hlMABKrGbEiJD5dwUSfnw1CQ3bG7KKwDV+Nx3bEZd7U=",
|
||||||
"owner": "NixOS",
|
"owner": "numtide",
|
||||||
"repo": "nixpkgs",
|
"repo": "nix-filter",
|
||||||
"rev": "da5ad661ba4e5ef59ba743f0d112cbc30e474f32",
|
"rev": "ac030bd9ba98e318e1f4c4328d60766ade8ebe8b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "numtide",
|
||||||
"ref": "nixos-unstable",
|
"repo": "nix-filter",
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1778869304,
|
"lastModified": 1778869304,
|
||||||
"narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=",
|
"narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=",
|
||||||
@ -517,7 +539,8 @@
|
|||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
"hyprland-plugins": "hyprland-plugins",
|
"hyprland-plugins": "hyprland-plugins",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"hyprland-split-monitor-workspaces": "hyprland-split-monitor-workspaces",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
"pkgs-unstable": "pkgs-unstable"
|
"pkgs-unstable": "pkgs-unstable"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@ -8,14 +8,27 @@
|
|||||||
url = "github:nix-community/home-manager/master";
|
url = "github:nix-community/home-manager/master";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
hyprland.url = "github:hyprwm/Hyprland";
|
|
||||||
|
hyprland = {
|
||||||
|
url = "github:hyprwm/Hyprland";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
hyprland-plugins = {
|
hyprland-plugins = {
|
||||||
url = "github:hyprwm/hyprland-plugins";
|
url = "github:hyprwm/hyprland-plugins";
|
||||||
inputs.hyprland.follows = "hyprland";
|
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
|
let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
in {
|
in {
|
||||||
@ -23,7 +36,7 @@
|
|||||||
inherit system;
|
inherit system;
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
pkgs-unstable = import pkgs-unstable { inherit system; };
|
pkgs-unstable = import pkgs-unstable { inherit system; };
|
||||||
inputs = inputs;
|
inputs = inputs;
|
||||||
};
|
};
|
||||||
modules = [
|
modules = [
|
||||||
./nixMain/configuration.nix
|
./nixMain/configuration.nix
|
||||||
|
|||||||
@ -1,11 +1,11 @@
|
|||||||
# home.nix
|
# home.nix
|
||||||
{ config, pkgs, pkgs-unstable, inputs, ... }:
|
{ config, pkgs, inputs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
home.stateVersion = "25.05";
|
home.stateVersion = "25.05";
|
||||||
home.username = "someone";
|
home.username = "someone";
|
||||||
home.homeDirectory = "/home/someone";
|
home.homeDirectory = "/home/someone";
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
|
|
||||||
imports =
|
imports =
|
||||||
[
|
[
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
{ config, pkgs, pkgs-unstable, ... }:
|
{ config, pkgs, pkgs-unstable, inputs, ... }:
|
||||||
let
|
let
|
||||||
optionalPkgs = import ../optional-packages.nix { inherit pkgs; };
|
optionalPkgs = import ../optional-packages.nix { inherit pkgs; };
|
||||||
in
|
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.gpio = {};
|
||||||
users.groups.wireshark = {};
|
users.groups.wireshark = {};
|
||||||
users.users.someone = {
|
users.users.someone = {
|
||||||
@ -112,23 +102,27 @@ in
|
|||||||
enable = true;
|
enable = true;
|
||||||
user = "someone";
|
user = "someone";
|
||||||
};
|
};
|
||||||
|
sessionPackages = [
|
||||||
|
config.home-manager.users.someone.wayland.windowManager.hyprland.package
|
||||||
|
];
|
||||||
defaultSession = "hyprland";
|
defaultSession = "hyprland";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
xdg.portal = {
|
||||||
|
enable = true;
|
||||||
|
configPackages = [
|
||||||
|
config.home-manager.users.someone.wayland.windowManager.hyprland.portalPackage
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
# Docker
|
# Docker
|
||||||
virtualisation.docker.enable = true;
|
virtualisation.docker.enable = true;
|
||||||
virtualisation.docker.storageDriver = "btrfs";
|
virtualisation.docker.storageDriver = "btrfs";
|
||||||
# Added docker group to user
|
# Added docker group to user
|
||||||
|
|
||||||
|
|
||||||
# Desktop enviorment
|
# Additional steam settings
|
||||||
programs.hyprland = {
|
|
||||||
enable = true;
|
|
||||||
withUWSM = false; # Universal Wayland Session Manage, ly dosnt like this
|
|
||||||
xwayland.enable = true; # Xwayland can be disabled.
|
|
||||||
};
|
|
||||||
|
|
||||||
# Additional steam settings
|
|
||||||
programs.steam = {
|
programs.steam = {
|
||||||
enable = true;
|
enable = true;
|
||||||
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
|
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
|
||||||
@ -214,7 +208,8 @@ in
|
|||||||
prismlauncher
|
prismlauncher
|
||||||
|
|
||||||
# Monitoring
|
# Monitoring
|
||||||
kdePackages.plasma-systemmonitor
|
mission-center
|
||||||
|
nethogs
|
||||||
# nvtopPackages.full
|
# nvtopPackages.full
|
||||||
# btop
|
# btop
|
||||||
|
|
||||||
@ -236,6 +231,15 @@ in
|
|||||||
# nerdfonts wher seperated into different packages, so nerdfonts dosnt work
|
# nerdfonts wher seperated into different packages, so nerdfonts dosnt work
|
||||||
fonts.packages = with pkgs; [] ++ builtins.filter lib.attrsets.isDerivation (builtins.attrValues pkgs.nerd-fonts);
|
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
|
#Enviormant
|
||||||
# needet for electron apps under wayland
|
# needet for electron apps under wayland
|
||||||
@ -245,8 +249,9 @@ in
|
|||||||
security.polkit.enable = true;
|
security.polkit.enable = true;
|
||||||
# Walet, needet for nextcloud login
|
# Walet, needet for nextcloud login
|
||||||
services.gnome.gnome-keyring.enable = true;
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
# Otherwise keyring would automaticly reset password on login
|
||||||
security.pam.services.ly.enableGnomeKeyring = true;
|
security.pam.services.ly.enableGnomeKeyring = false;
|
||||||
|
security.pam.services.swaylock.enableGnomeKeyring = false;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -5,31 +5,41 @@
|
|||||||
home.stateVersion = "25.05";
|
home.stateVersion = "25.05";
|
||||||
home.username = "someone";
|
home.username = "someone";
|
||||||
home.homeDirectory = "/home/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 =
|
imports =
|
||||||
[
|
[
|
||||||
../../homemanager/shared-conf.nix
|
../../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'';
|
|
||||||
#};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -13,13 +13,14 @@
|
|||||||
experimental-features = ["nix-command" "flakes" ];
|
experimental-features = ["nix-command" "flakes" ];
|
||||||
trusted-users = [ "root" "someone" ];
|
trusted-users = [ "root" "someone" ];
|
||||||
};
|
};
|
||||||
|
environment.pathsToLink = [ "/share/applications" "/share/xdg-desktop-portal" ];
|
||||||
|
|
||||||
# Set your time zone.
|
# Set your time zone.
|
||||||
time.timeZone = "Europe/Berlin";
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
# Select internationalisation properties.
|
# Select internationalisation properties.
|
||||||
|
console.keyMap = "de";
|
||||||
i18n.defaultLocale = "en_GB.UTF-8";
|
i18n.defaultLocale = "en_GB.UTF-8";
|
||||||
|
|
||||||
i18n.extraLocaleSettings = {
|
i18n.extraLocaleSettings = {
|
||||||
LC_ADDRESS = "de_DE.UTF-8";
|
LC_ADDRESS = "de_DE.UTF-8";
|
||||||
LC_IDENTIFICATION = "de_DE.UTF-8";
|
LC_IDENTIFICATION = "de_DE.UTF-8";
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user