diff options
| author | Nantha Sorubakanthan <nantha@mielota.com> | 2026-05-15 18:36:24 +0200 |
|---|---|---|
| committer | Nantha Sorubakanthan <nantha@mielota.com> | 2026-05-16 09:41:40 +0200 |
| commit | 1a7a5090b84d9eb8ff6a4f5dc0c833d4b9e717b0 (patch) | |
| tree | a1c263d989a863962aa21628af371c0e2c43ee34 /artix/home/.config/hypr | |
| parent | 63ca893729aa0436c9eeab96e0934b143dc53d17 (diff) | |
???
Diffstat (limited to 'artix/home/.config/hypr')
| -rw-r--r-- | artix/home/.config/hypr/.luarc.json | 7 | ||||
| -rw-r--r-- | artix/home/.config/hypr/hyprland.conf | 180 | ||||
| -rw-r--r-- | artix/home/.config/hypr/hyprland.lua | 175 |
3 files changed, 182 insertions, 180 deletions
diff --git a/artix/home/.config/hypr/.luarc.json b/artix/home/.config/hypr/.luarc.json new file mode 100644 index 0000000..b4ecec0 --- /dev/null +++ b/artix/home/.config/hypr/.luarc.json @@ -0,0 +1,7 @@ +{ + "workspace": { + "library": [ + "/usr/share/hypr/stubs" + ] + } +} diff --git a/artix/home/.config/hypr/hyprland.conf b/artix/home/.config/hypr/hyprland.conf deleted file mode 100644 index 4da2848..0000000 --- a/artix/home/.config/hypr/hyprland.conf +++ /dev/null @@ -1,180 +0,0 @@ -env = GDK_BACKEND,wayland,x11,* -env = XDG_CURRENT_DESKTOP,Hyprland -env = XDG_SESSION_TYPE,wayland -env = XDG_SESSION_DESKTOP,Hyprland - -exec-once = dunst -exec-once = waybar -exec-once = ~/.config/hypr/xdg-portal-hyprland -exec-once = /usr/lib/hyprpolkitagent/hyprpolkitagent - -exec-once = gsettings set org.gnome.desktop.interface gtk-theme "Adwaita-dark" -exec-once = gsettings set org.gnome.desktop.interface color-scheme "prefer-dark" -env = QT_QPA_PLATFORMTHEME,gtk3 - -$mainMod = SUPER - -monitor=HDMI-A-1, 2560x1440@100,0x0,1 -#monitor=eDP-1, 1920x1080@60, 0x0, 1 -#monitor=HDMI-A-1, preferred, auto, 1, mirror, eDP-1 - -bind = $mainMod, A, fullscreen, -bind = $mainMod, C, killactive, -bind = $mainMod, D, exec, hyprpicker -naq -bind = $mainMod, F, exec, firefox -bind = $mainMod, M, exit, -bind = $mainMod, P, pseudo, # dwindle -bind = $mainMod, Q, exec, alacritty -bind = $mainMod, RETURN, exec, ~/.local/bin/spawn-alacritty-cwd -bind = $mainMod, R, exec, rofi -show drun -bind = $mainMod, U, exec, pkill waybar ; waybar -bind = $mainMod, V, togglefloating, - -bind = , Print, exec, grim -g "$(slurp)" - | wl-copy -bind = $mainMod, Print, exec, grim - | wl-copy - -bind = $mainMod, h, movefocus, l -bind = $mainMod, l, movefocus, r -bind = $mainMod, k, movefocus, u -bind = $mainMod, j ,movefocus, d - -bind = $mainMod SHIFT, H, movewindow, l -bind = $mainMod SHIFT, L, movewindow, r -bind = $mainMod SHIFT, K, movewindow, u -bind = $mainMod SHIFT, J, movewindow, d - -bind = $mainMod, code:10, workspace, 1 -bind = $mainMod, code:11, workspace, 2 -bind = $mainMod, code:12, workspace, 3 -bind = $mainMod, code:13, workspace, 4 -bind = $mainMod, code:14, workspace, 5 -bind = $mainMod, code:15, workspace, 6 -bind = $mainMod, code:16, workspace, 7 -bind = $mainMod, code:17, workspace, 8 -bind = $mainMod, code:18, workspace, 9 -bind = $mainMod, code:19, workspace, 10 - -bind = $mainMod SHIFT, code:10, movetoworkspace, 1 -bind = $mainMod SHIFT, code:11, movetoworkspace, 2 -bind = $mainMod SHIFT, code:12, movetoworkspace, 3 -bind = $mainMod SHIFT, code:13, movetoworkspace, 4 -bind = $mainMod SHIFT, code:14, movetoworkspace, 5 -bind = $mainMod SHIFT, code:15, movetoworkspace, 6 -bind = $mainMod SHIFT, code:16, movetoworkspace, 7 -bind = $mainMod SHIFT, code:17, movetoworkspace, 8 -bind = $mainMod SHIFT, code:18, movetoworkspace, 9 -bind = $mainMod SHIFT, code:19, movetoworkspace, 10 - -bind = $mainMod, S, togglespecialworkspace, magic -bind = $mainMod SHIFT, S, movetoworkspace, special:magic - -bindm = $mainMod, mouse:272, movewindow -bindm = $mainMod, mouse:273, resizewindow - -bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+ -bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- -bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle -bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle -bindel = ,XF86MonBrightnessUp, exec, brightnessctl -e4 -n2 set 5%+ -bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%- - -bindl = , XF86AudioNext, exec, playerctl next -bindl = , XF86AudioPause, exec, playerctl play-pause -bindl = , XF86AudioPlay, exec, playerctl play-pause -bindl = , XF86AudioPrev, exec, playerctl previous - -misc { - force_default_wallpaper = 0 - disable_hyprland_logo = true - disable_splash_rendering = true - background_color = rgb(000000) -} - -general { - gaps_in = 10 - gaps_out = 15 - - border_size = 0 - - col.active_border = rgba(b800e6ee) rgba(e699ffee) 45deg - col.inactive_border = rgba(595959aa) - - resize_on_border = false - allow_tearing = false - - layout = dwindle -} - -decoration { - rounding = 0 - rounding_power = 10 - - active_opacity = 1.0 - inactive_opacity = 1.0 - - shadow { - enabled = true - range = 4 - render_power = 3 - color = rgba(1a1a1aee) - } - - blur { - enabled = false - size = 10 - passes = 3 - - vibrancy = 0.1696 - } -} - -animations { - #enabled = yes, please :) - enabled = no - - bezier = easeOutQuint,0.23,1,0.32,1 - bezier = easeInOutCubic,0.65,0.05,0.36,1 - bezier = linear,0,0,1,1 - bezier = almostLinear,0.5,0.5,0.75,1.0 - bezier = quick,0.15,0,0.1,1 - - animation = global, 1, 10, default - animation = border, 1, 5.39, easeOutQuint - animation = windows, 1, 4.79, easeOutQuint - animation = windowsIn, 1, 4.1, easeOutQuint, popin 87% - animation = windowsOut, 1, 1.49, linear, popin 87% - animation = fadeIn, 1, 1.73, almostLinear - animation = fadeOut, 1, 1.46, almostLinear - animation = fade, 1, 3.03, quick - animation = layers, 1, 3.81, easeOutQuint - animation = layersIn, 1, 4, easeOutQuint, fade - animation = layersOut, 1, 1.5, linear, fade - animation = fadeLayersIn, 1, 1.79, almostLinear - animation = fadeLayersOut, 1, 1.39, almostLinear - animation = workspaces, 1, 1.94, almostLinear, fade - animation = workspacesIn, 1, 1.21, almostLinear, fade - animation = workspacesOut, 1, 1.94, almostLinear, fade -} - -dwindle { - preserve_split = true -} - -master { - new_status = master -} - -misc { - force_default_wallpaper = -1 - disable_hyprland_logo = true -} -env = XCURSOR_SIZE,24 -env = XCURSOR_THEME,whiteglass - -input { - kb_layout = fr - kb_model = pc105 - kb_options = terminate:ctrl_amt_bksp - - follow_mouse = 1 -} diff --git a/artix/home/.config/hypr/hyprland.lua b/artix/home/.config/hypr/hyprland.lua new file mode 100644 index 0000000..b270bde --- /dev/null +++ b/artix/home/.config/hypr/hyprland.lua @@ -0,0 +1,175 @@ +if 1 then + hl.monitor({ output = "HDMI-A-1", mode = "2560x1440@100", position = "0x0", scale = "1", }) +else + hl.monitor({ output = "eDP-1", mode = "1920x1080@60", position = "0x0", scale = "1", }) + hl.monitor({ output = "HDMI-A-1", mode = "preferred", position = "auto", scale = "1", mirror = "eDP-1" }) +end + + +local terminal = os.getenv("TERMINAL") +local browser = os.getenv("BROWSER") +local menu = "exec $(tofi-drun -c ~/.config/tofi.ini)" + +hl.on("hyprland.start", function() + hl.exec_cmd("dunst") + hl.exec_cmd("waybar") + hl.exec_cmd("~/.config/hypr/xdg-portal-hyprland") + hl.exec_cmd("/usr/lib/hyprpolkitagent/hyprpolkitagent") + hl.exec_cmd("gsettings set org.gnome.desktop.interface gtk-theme \"Adwaita-dark\"") + hl.exec_cmd("gsettings set org.gnome.desktop.interface color-scheme \"prefer-dark\"") +end) + +hl.env("GDK_BACKEND", "wayland,x11,*") +hl.env("XDG_CURRENT_DESKTOP", "Hyprland") +hl.env("XDG_SESSION_TYPE", "wayland") +hl.env("XDG_SESSION_DESKTOP", "Hyprland") + +hl.config({ + general = { + gaps_in = 0, + gaps_out = 0, + border_size = 0, + col = { + active_border = { colors = { "rgba(33ccffee)", "rgba(00ff99ee)" }, angle = 45 }, + inactive_border = "rgba(595959aa)", + }, + resize_on_border = false, + allow_tearing = false, + layout = "dwindle", + }, + + decoration = { + rounding = 0, + rounding_power = 0, + active_opacity = 1.0, + inactive_opacity = 1.0, + shadow = { enabled = false, }, + blur = { enabled = false, }, + }, + + animations = { enabled = false, }, +}) + +hl.config({ dwindle = { preserve_split = true, }, }) +hl.config({ master = { new_status = "master", }, }) +hl.config({ scrolling = { fullscreen_on_one_column = true, }, }) + +hl.config({ + misc = { + force_default_wallpaper = 0, + disable_hyprland_logo = true, + disable_splash_rendering = true, + background_color = "#000000" + }, +}) + + +hl.config({ + input = { + kb_layout = "fr", + kb_variant = "", + kb_model = "pc105", + kb_options = "", + kb_rules = "", + + follow_mouse = 1, + + sensitivity = 0, -- -1.0 - 1.0, 0 means no modification. + + touchpad = { + natural_scroll = true, + }, + }, +}) + +hl.gesture({ + fingers = 3, + direction = "horizontal", + action = "workspace" +}) + +hl.device({ + name = "epic-mouse-v1", + sensitivity = -0.5, +}) + + +local mainMod = "SUPER" + +hl.bind(mainMod .. " + A", hl.dsp.window.fullscreen()) +hl.bind(mainMod .. " + C", hl.dsp.window.close()) +hl.bind(mainMod .. " + D", hl.dsp.exec_cmd("hyprpicker -naq")) +hl.bind(mainMod .. " + F", hl.dsp.exec_cmd(browser)) +hl.bind(mainMod .. " + J", hl.dsp.layout("togglesplit")) +hl.bind(mainMod .. " + M", + hl.dsp.exec_cmd("command -v hyprshutdown >/dev/null 2>&1 && hyprshutdown || hyprctl dispatch 'hl.dsp.exit()'")) +hl.bind(mainMod .. " + P", hl.dsp.window.pseudo()) +hl.bind(mainMod .. " + Q", hl.dsp.exec_cmd(terminal)) +hl.bind(mainMod .. " + return", hl.dsp.exec_cmd("~/.local/bin/spawn-alacritty-cwd")) +hl.bind(mainMod .. " + R", hl.dsp.exec_cmd(menu)) +hl.bind(mainMod .. " + U", hl.dsp.exec_cmd("pkill waybar ; waybar")) +hl.bind(mainMod .. " + V", hl.dsp.window.float({ action = "toggle" })) + +hl.bind(mainMod .. " + h", hl.dsp.focus({ direction = "left" })) +hl.bind(mainMod .. " + j", hl.dsp.focus({ direction = "right" })) +hl.bind(mainMod .. " + k", hl.dsp.focus({ direction = "up" })) +hl.bind(mainMod .. " + l", hl.dsp.focus({ direction = "down" })) + +for i = 1, 10 do + local key = i % 11 + hl.bind(mainMod .. " + code:" .. key + 9, hl.dsp.focus({ workspace = i })) + hl.bind(mainMod .. " + SHIFT + code:" .. key + 9, hl.dsp.window.move({ workspace = i })) +end + +hl.bind(mainMod .. " + S", hl.dsp.workspace.toggle_special("magic")) +hl.bind(mainMod .. " + SHIFT + S", hl.dsp.window.move({ workspace = "special:magic" })) + +hl.bind(mainMod .. " + mouse:272", hl.dsp.window.drag(), { mouse = true }) +hl.bind(mainMod .. " + mouse:273", hl.dsp.window.resize(), { mouse = true }) + +hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+"), + { locked = true, repeating = true }) +hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"), + { locked = true, repeating = true }) +hl.bind("XF86AudioMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"), + { locked = true, repeating = true }) +hl.bind("XF86AudioMicMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"), + { locked = true, repeating = true }) +hl.bind("XF86MonBrightnessUp", hl.dsp.exec_cmd("brightnessctl -e4 -n2 set 5%+"), { locked = true, repeating = true }) +hl.bind("XF86MonBrightnessDown", hl.dsp.exec_cmd("brightnessctl -e4 -n2 set 5%-"), { locked = true, repeating = true }) +hl.bind("XF86AudioNext", hl.dsp.exec_cmd("playerctl next"), { locked = true }) +hl.bind("XF86AudioPause", hl.dsp.exec_cmd("playerctl play-pause"), { locked = true }) +hl.bind("XF86AudioPlay", hl.dsp.exec_cmd("playerctl play-pause"), { locked = true }) +hl.bind("XF86AudioPrev", hl.dsp.exec_cmd("playerctl previous"), { locked = true }) + + +local suppressMaximizeRule = hl.window_rule({ + -- Ignore maximize requests from all apps. You'll probably like this. + name = "suppress-maximize-events", + match = { class = ".*" }, + suppress_event = "maximize", +}) + +-- suppressMaximizeRule:set_enabled(false) + +hl.window_rule({ + name = "fix-xwayland-drags", + match = { + class = "^$", + title = "^$", + xwayland = true, + float = true, + fullscreen = false, + pin = false, + }, + + no_focus = true, +}) + +hl.window_rule({ + name = "move-hyprland-run", + match = { class = "hyprland-run" }, + + move = "20 monitor_h-120", + float = true, +}) |
