Compare commits

11 Commits
Author SHA1 Message Date
tomasr 04e2554bac hyprland migrate to lua 2026-08-13 16:16:32 +02:00
tomasr 02e2fb2815 usable state. will slowly workout errors 2026-08-13 16:14:52 +02:00
tomasr 84a22e4b22 somewhat workable state 2026-08-13 16:14:52 +02:00
tomasr ca8e4769cc fix escaping binds 2026-08-13 16:14:47 +02:00
tomasr 87354d627e remove old binds 2026-08-13 16:14:23 +02:00
tomasr 3a4ece0a5e Migrate binds 2026-08-13 16:14:23 +02:00
tomasr 9496ed6930 remove temp binds 2026-08-13 16:14:20 +02:00
tomasr 3eba410a3b temp remove animation hyprland 2026-08-13 16:13:09 +02:00
tomasr 105b354da4 hyprland fix hl.on hyprland.start concatenation and remove plugin 2026-08-13 16:13:09 +02:00
tomasr eb40a983a3 switch hyprlang to lua this time it should work 2026-08-13 16:13:09 +02:00
tomasr d7e51d1ba5 hyprland migrate exec-once to hl.exec_cmd 2026-08-13 16:13:05 +02:00
+649 -198
View File
@@ -37,12 +37,20 @@
# Enable the X11 windowing system. # Enable the X11 windowing system.
services.xserver.enable = true; services.xserver.enable = true;
}; };
flake.homeModules.hyprland-laptop = _: { flake.homeModules.hyprland-laptop = {lib, ...}: {
wayland.windowManager.hyprland.settings = { wayland.windowManager.hyprland.settings = {
exec-once = [ on = {
"qtbatticon" # custom battery tray _args = [
"nixpkgs-notifier listen" # tracks PR merge in nixos-unstable "hyprland.start"
]; (lib.generators.mkLuaInline ''
function()
hl.exec_cmd("qtbatticon") --- custom battery tray
hl.exec_cmd("source /run/agenix/ntfy && nixpkgs-notifier listen") --- tracks PR merge in nixos-unstable
end
'')
];
};
monitor = [ monitor = [
"eDP-1, highres@highrr, 0x0, 1" "eDP-1, highres@highrr, 0x0, 1"
]; ];
@@ -67,8 +75,15 @@
]; ];
}; };
}; };
flake.homeModules.hyprland = {pkgs-unstable, ...}: let flake.homeModules.hyprland = {pkgs-unstable, lib, ...}: let
wallpaper = ../../assets/wallpaper1.jpg; wallpaper = ../../assets/wallpaper1.jpg;
mod = "SUPER";
term = "kitty";
editor = "nvim";
notes = "kitty --class \\\"custom-obsidianvaults\\\" --name \\\"Select Obsidian vault\\\" --hold custom-obsidianvaults";
file = "dolphin";
browser = "kitty --class \\\"custom-browserprofiles\\\" --name \\\"Select browser profile\\\" --hold custom-browserprofiles";
in { in {
#refer to https://wiki.hypr.land/Nix/Hyprland-on-Home-Manager/ #refer to https://wiki.hypr.land/Nix/Hyprland-on-Home-Manager/
wayland.windowManager.hyprland.enable = true; wayland.windowManager.hyprland.enable = true;
@@ -79,17 +94,69 @@
#pkgs-unstable.hyprlandPlugins.hyprspace # currently broken #pkgs-unstable.hyprlandPlugins.hyprspace # currently broken
pkgs-unstable.hyprlandPlugins.hypr-dynamic-cursors pkgs-unstable.hyprlandPlugins.hypr-dynamic-cursors
]; ];
wayland.windowManager.hyprland.configType = "hyprlang"; wayland.windowManager.hyprland.configType = "lua";
wayland.windowManager.hyprland.settings = { wayland.windowManager.hyprland.settings = {
"$mod" = "SUPER";
"$term" = "kitty";
"$editor" = "nvim";
"$notes" = "kitty --class \"custom-obsidianvaults\" --name \"Select Obsidian vault\" --hold custom-obsidianvaults";
"$file" = "dolphin";
"$browser" = "kitty --class \"custom-browserprofiles\" --name \"Select browser profile\" --hold custom-browserprofiles";
# ▄▀█ █▄░█ █ █▀▄▀█ ▄▀█ ▀█▀ █ █▀█ █▄░█ # ▄▀█ █▄░█ █ █▀▄▀█ ▄▀█ ▀█▀ █ █▀█ █▄░█
# █▀█ █░▀█ █ █░▀░█ █▀█ ░█░ █ █▄█ █░▀█ # █▀█ █░▀█ █ █░▀░█ █▀█ ░█░ █ █▄█ █░▀█
animations = {
config = {
input = {
kb_layout = "ch";
follow_mouse = 1;
sensitivity = 0;
force_no_accel = 1;
};
# █░░ ▄▀█ █▄█ █▀█ █░█ ▀█▀ █▀
# █▄▄ █▀█ ░█░ █▄█ █▄█ ░█░ ▄█
dwindle = {
preserve_split = true;
};
scrolling = {
column_width = 0.45;
};
# █▀▄▀█ █ █▀ █▀▀
# █░▀░█ █ ▄█ █▄▄
misc = {
vrr = 0;
force_default_wallpaper = 0;
};
xwayland = {
force_zero_scaling = true;
};
decoration = {
dim_special = 0.3;
rounding = 18;
blur = {
special = true;
enabled = true;
size = 4;
passes = 2;
new_optimizations = true;
ignore_opacity = true;
};
};
general = {
gaps_in = 5;
gaps_out = 15;
border_size = 4;
#"col.active_border" = "rgba(ca6702ff) rgba(ecd3a0ff) 45deg";
#"col.inactive_border" = "rgba(f1dca7d9) rgba(ffe1a8d9) 45deg";
layout = "dwindle";
resize_on_border = true;
};
group = {
#"col.border_active" = "rgba(ca6702ff) rgba(ecd3a0ff) 45deg";
#"col.border_inactive" = "rgba(f1dca7d9) rgba(ffe1a8d9) 45deg";
#"col.border_locked_active" = "rgba(ca6702ff) rgba(ecd3a0ff) 45deg";
#"col.border_locked_inactive" = "rgba(f1dca7d9) rgba(ffe1a8d9) 45deg";
};
};
/*animations = {
enabled = true; enabled = true;
bezier = [ bezier = [
"wind, 0.05, 0.9, 0.1, 1.05" "wind, 0.05, 0.9, 0.1, 1.05"
@@ -107,7 +174,7 @@
"fade, 1, 10, default" "fade, 1, 10, default"
"workspaces, 1, 5, wind" "workspaces, 1, 5, wind"
]; ];
}; };*/
# █▀▀ █▄░█ █░█ # █▀▀ █▄░█ █░█
# ██▄ █░▀█ ▀▄▀ # ██▄ █░▀█ ▀▄▀
@@ -128,123 +195,568 @@
# █ █▄░█ █▀█ █░█ ▀█▀ # █ █▄░█ █▀█ █░█ ▀█▀
# █ █░▀█ █▀▀ █▄█ ░█░ # █ █░▀█ █▀▀ █▄█ ░█░
input = {
kb_layout = ["ch"];
follow_mouse = 1;
sensitivity = 0;
force_no_accel = 1;
};
# █▄▀ █▀▀ █▄█ █▄▄ █ █▄░█ █▀▄ █ █▄░█ █▀▀ █▀ # █▄▀ █▀▀ █▄█ █▄▄ █ █▄░█ █▀▄ █ █▄░█ █▀▀ █▀
# █░█ ██▄ ░█░ █▄█ █ █░▀█ █▄▀ █ █░▀█ █▄█ ▄█ # █░█ ██▄ ░█░ █▄█ █ █░▀█ █▄▀ █ █░▀█ █▄█ ▄█
# caelestia shell drawers toggle dashboard # caelestia shell drawers toggle dashboard
# caelestia shell drawers toggle utilities # caelestia shell drawers toggle utilities
bind = [
{
_args = [
"SUPER + W"
(lib.generators.mkLuaInline "hl.dsp.window.float()")
];
}
bind = [ {
_args = [
"SUPER + G"
(lib.generators.mkLuaInline "hl.dsp.group.toggle()")
];
}
{
_args = [
"ALT + RETURN"
(lib.generators.mkLuaInline "hl.dsp.window.fullscreen()")
];
}
{
_args = [
"SUPER + LEFT"
(lib.generators.mkLuaInline ''hl.dsp.focus({ direction = "l" })'')
];
}
{
_args = [
"SUPER + RIGHT"
(lib.generators.mkLuaInline ''hl.dsp.focus({ direction = "r" })'')
];
}
{
_args = [
"SUPER + UP"
(lib.generators.mkLuaInline ''hl.dsp.focus({ direction = "u" })'')
];
}
{
_args = [
"SUPER + DOWN"
(lib.generators.mkLuaInline ''hl.dsp.focus({ direction = "d" })'')
];
}
{
_args = [
"ALT + TAB"
(lib.generators.mkLuaInline ''hl.dsp.focus({ direction = "d" })'')
];
}
{
_args = [
"SUPER + 1"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "1" })'')
];
}
{
_args = [
"SUPER + 2"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "2" })'')
];
}
{
_args = [
"SUPER + 3"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "3" })'')
];
}
{
_args = [
"SUPER + 4"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "4" })'')
];
}
{
_args = [
"SUPER + 5"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "5" })'')
];
}
{
_args = [
"SUPER + 6"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "6" })'')
];
}
{
_args = [
"SUPER + 7"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "7" })'')
];
}
{
_args = [
"SUPER + 8"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "8" })'')
];
}
{
_args = [
"SUPER + 9"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "9" })'')
];
}
{
_args = [
"SUPER + 0"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "10" })'')
];
}
{
_args = [
"SUPER + CTRL + RIGHT"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "r+1" })'')
];
}
{
_args = [
"SUPER + CTRL + LEFT"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "r-1" })'')
];
}
{
_args = [
"SUPER + CTRL + DOWN"
(lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "empty" })'')
];
}
{
_args = [
"SUPER + SHIFT + 1"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "1" })'')
];
}
{
_args = [
"SUPER + SHIFT + 2"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "2" })'')
];
}
{
_args = [
"SUPER + SHIFT + 3"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "3" })'')
];
}
{
_args = [
"SUPER + SHIFT + 4"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "4" })'')
];
}
{
_args = [
"SUPER + SHIFT + 5"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "5" })'')
];
}
{
_args = [
"SUPER + SHIFT + 6"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "6" })'')
];
}
{
_args = [
"SUPER + SHIFT + 7"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "7" })'')
];
}
{
_args = [
"SUPER + SHIFT + 8"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "8" })'')
];
}
{
_args = [
"SUPER + SHIFT + 9"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "9" })'')
];
}
{
_args = [
"SUPER + SHIFT + 0"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "10" })'')
];
}
{
_args = [
"SUPER + CTRL + ALT + RIGHT"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "r+1" })'')
];
}
{
_args = [
"SUPER + CTRL + ALT + LEFT"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ workspace = "r-1" })'')
];
}
{
_args = [
"SUPER + BACKSPACE"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("caelestia shell drawers toggle session")'')
];
}
{
_args = [
"SUPER + SHIFT + CTRL + LEFT"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ direction = "l" })'')
];
}
{
_args = [
"SUPER + SHIFT + CTRL + RIGHT"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ direction = "r" })'')
];
}
{
_args = [
"SUPER + SHIFT + CTRL + UP"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ direction = "u" })'')
];
}
{
_args = [
"SUPER + SHIFT + CTRL + DOWN"
(lib.generators.mkLuaInline ''hl.dsp.window.move({ direction = "d" })'')
];
}
# {
# _args = [
# "SUPER + MOUSE_DOWN"
# (lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "e+1" })'')
# ];
# }
#
# {
# _args = [
# "SUPER + MOUSE_UP"
# (lib.generators.mkLuaInline ''hl.dsp.focus({ workspace = "e-1" })'')
# ];
# }
{
_args = [
"SUPER + V"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("cliphist list | rofi -dmenu | cliphist decode | wl-copy")'')
];
}
{
_args = [
"SUPER + B"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("hyprkeys -bkr | rofi -dmenu")'')
];
}
# {
# _args = [
# "SUPER + S"
# "togglespecialworkspace"
# ];
# }
# {
# _args = [
# "ALT + SUPER + S"
# "movetoworkspace"
# "special"
# ];
# }
# {
# _args = [
# "SUPER + A"
# "layoutmsg"
# "move -col"
# ];
# }
# {
# _args = [
# "SUPER + D"
# "layoutmsg"
# "move +col"
# ];
# }
{
_args = [
"SUPER + T"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("${term}")'')
];
}
{
_args = [
"SUPER + E"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("${file}")'')
];
}
{
_args = [
"SUPER + F"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("${browser}")'')
];
}
{
_args = [
"SUPER + N"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("${notes}")'')
];
}
{
_args = [
"SUPER + SHIFT + A"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("caelestia shell drawers toggle launcher")'')
];
}
{
_args = [
"SUPER + Q"
#(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("custom-dontkillsteam")'')
(lib.generators.mkLuaInline ''hl.dsp.window.kill()'')
];
}
{
_args = [
"CTRL + ALT + W"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("caelestia shell drawers toggle sidebar")'')
];
}
{
_args = [
"SUPER + L"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("caelestia shell lock lock")'')
];
}
{
_args = [
"F11"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("caelestia screenshot")'')
];
}
{
_args = [
"SUPER + SHIFT + S"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("caelestia shell picker open")'')
];
}
{
_args = [
"CTRL + SUPER + 6"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("custom-killall")'')
];
}
{
_args = [
"CTRL + ALT + 7"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("custom-performance")'')
];
}
{
_args = [
"CTRL + ALT + 1"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("caelestia shell drawers toggle sidebar")'')
];
}
{
_args = [
"CTRL + SUPER + 4"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("caelestia shell notifs toggleDnd")'')
];
}
{
_args = [
"CTRL + SUPER + 3"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("pavucontrol")'')
];
}
{
_args = [
"CTRL + SHIFT + ALT + 0"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("kitty --hold --class \"custom-changeAudioOutput\" --name \"Select audio output\" zsh -c \"custom-changeAudioOutput\"")'')
];
}
{
_args = [
"CTRL + SUPER + 5"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("gnome-characters")'')
];
}
{
_args = [
"CTRL + ALT + 8"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("hyprpicker | tee >(wl-copy) | cliphist store")'')
];
}
{
_args = [
"CTRL + ALT + 0"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("custom-tomato")'')
];
}
{
_args = [
"CTRL + ALT + 2"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("custom-bottom")'')
];
}
{
_args = [
"CTRL + ALT + 9"
(lib.generators.mkLuaInline ''hl.dsp.exec_cmd("anki")'')
];
}
];
/*bind = [
#hyprland/utility keybindings #hyprland/utility keybindings
"$mod, W, togglefloating" "${mod}, W, togglefloating"
"$mod, G, togglegroup" "${mod}, G, togglegroup"
"Alt, Return, fullscreen" "Alt, Return, fullscreen"
"$mod, Left, movefocus, l"
"$mod, Right, movefocus, r"
"$mod, Up, movefocus, u"
"$mod, Down, movefocus, d"
"Alt, Tab, movefocus, d" "Alt, Tab, movefocus, d"
"$mod, 1, workspace, 1" "${mod}, Left, movefocus, l"
"$mod, 2, workspace, 2" "${mod}, Right, movefocus, r"
"$mod, 3, workspace, 3" "${mod}, Up, movefocus, u"
"$mod, 4, workspace, 4" "${mod}, Down, movefocus, d"
"$mod, 5, workspace, 5" "${mod}, 1, workspace, 1"
"$mod, 6, workspace, 6" "${mod}, 2, workspace, 2"
"$mod, 7, workspace, 7" "${mod}, 3, workspace, 3"
"$mod, 8, workspace, 8" "${mod}, 4, workspace, 4"
"$mod, 9, workspace, 9" "${mod}, 5, workspace, 5"
"$mod, 0, workspace, 10" "${mod}, 6, workspace, 6"
"$mod+Ctrl, Right, workspace, r+1" "${mod}, 7, workspace, 7"
"$mod+Ctrl, Left, workspace, r-1" "${mod}, 8, workspace, 8"
"$mod+Ctrl, Doown, workspace, empty" "${mod}, 9, workspace, 9"
"$mod+Shift, 1, movetoworkspace, 1" "${mod}, 0, workspace, 10"
"$mod+Shift, 2, movetoworkspace, 2" "${mod}+Ctrl, Right, workspace, r+1"
"$mod+Shift, 3, movetoworkspace, 3" "${mod}+Ctrl, Left, workspace, r-1"
"$mod+Shift, 4, movetoworkspace, 4" "${mod}+Ctrl, Doown, workspace, empty"
"$mod+Shift, 5, movetoworkspace, 5" "${mod}+Shift, 1, movetoworkspace, 1"
"$mod+Shift, 6, movetoworkspace, 6" "${mod}+Shift, 2, movetoworkspace, 2"
"$mod+Shift, 7, movetoworkspace, 7" "${mod}+Shift, 3, movetoworkspace, 3"
"$mod+Shift, 8, movetoworkspace, 8" "${mod}+Shift, 4, movetoworkspace, 4"
"$mod+Shift, 9, movetoworkspace, 9" "${mod}+Shift, 5, movetoworkspace, 5"
"$mod+Shift, 0, movetoworkspace, 10" "${mod}+Shift, 6, movetoworkspace, 6"
"$mod+Ctrl+Alt, Right, movetoworkspace, r+1" "${mod}+Shift, 7, movetoworkspace, 7"
"$mod+Ctrl+Alt, Left, movetoworkspace, r-1" "${mod}+Shift, 8, movetoworkspace, 8"
#"$mod, Backspace, exec, wlogout -b 4 -T 600 -B 600" "${mod}+Shift, 9, movetoworkspace, 9"
"$mod, Backspace, exec, caelestia shell drawers toggle session" "${mod}+Shift, 0, movetoworkspace, 10"
"$mod+Shift+Ctrl, Left, movewindow, l" "${mod}+Ctrl+Alt, Right, movetoworkspace, r+1"
"$mod+Shift+Ctrl, Right, movewindow, r" "${mod}+Ctrl+Alt, Left, movetoworkspace, r-1"
"$mod+Shift+Ctrl, Up, movewindow, u" #"{$mo}d, Backspace, exec, wlogout -b 4 -T 600 -B 600"
"$mod+Shift+Ctrl, Down, movewindow, d" "${mod}, Backspace, exec, caelestia shell drawers toggle session"
"$mod, mouse_down, workspace, e+1" "${mod}+Shift+Ctrl, Left, movewindow, l"
"$mod, mouse_up, workspace, e-1" "${mod}+Shift+Ctrl, Right, movewindow, r"
"$mod, V, exec, cliphist list | rofi -dmenu| cliphist decode | wl-copy" # copy paste "${mod}+Shift+Ctrl, Up, movewindow, u"
"$mod, B, exec, hyprkeys -bkr | rofi -dmenu" "${mod}+Shift+Ctrl, Down, movewindow, d"
"${mod}, mouse_down, workspace, e+1"
"${mod}, mouse_up, workspace, e-1"
"${mod}, V, exec, cliphist list | rofi -dmenu| cliphist decode | wl-copy" # copy paste
"${mod}, B, exec, hyprkeys -bkr | rofi -dmenu"
#"$mod, A, tagwindow, noborder" # used to not apply image border #"$mod, A, tagwindow, noborder" # used to not apply image border
"$mod, S, togglespecialworkspace," "${mod}, S, togglespecialworkspace,"
"Alt+$mod, S, movetoworkspace, special" "Alt+${mod}, S, movetoworkspace, special"
# for the scrolling layout # for the scrolling layout
"$mod, A, layoutmsg, move -col" "${mod}, A, layoutmsg, move -col"
"$mod, D, layoutmsg, move +col" "${mod}, D, layoutmsg, move +col"
#apps keybindings #apps keybindings
"$mod, T, exec, $term" "${mod}, T, exec, ${term}"
"$mod, E, exec, $file" "${mod}, E, exec, ${file}"
"$mod, F, exec, $browser" "${mod}, F, exec, ${browser}"
"$mod, N, exec, $notes" "${mod}, N, exec, ${notes}"
#"$mod+Shift, A, exec, rofi -show drun" #"$mod+Shift, A, exec, rofi -show drun"
"$mod+Shift, A, exec, caelestia shell drawers toggle launcher" "${mod}+Shift, A, exec, caelestia shell drawers toggle launcher"
"$mod, Q, exec, custom-dontkillsteam" "${mod}, Q, exec, custom-dontkillsteam"
#"Ctrl+Alt, W, exec, pkill waybar || waybar" #"Ctrl+Alt, W, exec, pkill waybar || waybar"
"Ctrl+Alt, W, exec, caelestia shell drawers toggle sidebar" "Ctrl+Alt, W, exec, caelestia shell drawers toggle sidebar"
#"$mod, L, exec, swaylock -eFLK -i ${wallpaper}" #"$mod, L, exec, swaylock -eFLK -i ${wallpaper}"
"$mod, L, exec, caelestia shell lock lock" "${mod}, L, exec, caelestia shell lock lock"
#"$mod, F11, exec, hyprshot -m window" #"$mod, F11, exec, hyprshot -m window"
", F11, exec, caelestia screenshot" ", F11, exec, caelestia screenshot"
#"$mod_SHIFT, S, exec, hyprshot -m region --clipboard only" #"$mod_SHIFT, S, exec, hyprshot -m region --clipboard only"
# "$mod_SHIFT, S, exec, qs ipc call screenshot toggle" # "$mod_SHIFT, S, exec, qs ipc call screenshot toggle"
"$mod_SHIFT, S, exec, caelestia shell picker open" "${mod}+Shift, S, exec, caelestia shell picker open"
# framework 16 rgb macropad # framework 16 rgb macropad
"Ctrl+$mod, 6, exec, custom-killall" # pos 1 1 killall apps except focused one "Ctrl+${mod}, 6, exec, custom-killall" # pos 1 1 killall apps except focused one
"Ctrl+Alt, 7, exec, custom-performance" # pos 2 1 start performance mode "Ctrl+Alt, 7, exec, custom-performance" # pos 2 1 start performance mode
#"Ctrl+Alt, 7, exec, caelestia shell gameMode toggle"
# reloads the autostart programs # pos 3 1
# we passed to caelestia-shell and stoped using that
/*
"Ctrl+$mod, 4, exec, sleep 1 && kitty -o font_size=16 -e sh -c 'custom-weather'"
"Ctrl+$mod, 4, exec, sleep 1 && kitty -o font_size=11 -e sh -c 'custom-cowsay'"
"Ctrl+$mod, 4, exec, kitty -e 'custom-launch'"
"Ctrl+$mod, 4, exec, sleep 1 && kitty -o font_size=5 -e btm --theme gruvbox --disable-click --disable_advanced_kill --enable_cache_memory -g -R -T "
"Ctrl+$mod, 4, exec, sleep 1 && kitty -o font_size=1 -e sh -c 'cmatrix -br'"
#"Ctrl+Alt, 1, exec, swaync-client -t" # pos 4 1 notification center
"Ctrl+Alt, 1, exec, qs ipc call notifications toggle"
*/
# pos 4 1 notification center. # pos 4 1 notification center.
"Ctrl+Alt, 1, exec, caelestia shell drawers toggle sidebar" "Ctrl+Alt, 1, exec, caelestia shell drawers toggle sidebar"
"Ctrl+Alt, 1, exec, [[ -f ~/.cache/hypr-battery-saver ]] || swaync-client -t" #"Ctrl+Alt, 1, exec, [[ -f ~/.cache/hypr-battery-saver ]] || swaync-client -t"
"Ctrl+$mod, 4, exec, caelestia shell notifs toggleDnd" "Ctrl+${mod}, 4, exec, caelestia shell notifs toggleDnd"
"Ctrl+$mod, 3, exec, pavucontrol" # pos 1 2 audiocontrol "Ctrl+${mod}, 3, exec, pavucontrol" # pos 1 2 audiocontrol
"Ctrl+Shift+Alt, 0, exec, kitty --hold --class \"custom-changeAudioOutput\" --name \"Select audio output\" zsh -c \"custom-changeAudioOutput\"" # pos 2 2 change audio output fzf "Ctrl+Shift+Alt, 0, exec, kitty --hold --class \"custom-changeAudioOutput\" --name \"Select audio output\" zsh -c \"custom-changeAudioOutput\"" # pos 2 2 change audio output fzf
"Ctrl+$mod, 5, exec, gnome-characters" # pos 3 2 special chars "Ctrl+${mod}, 5, exec, gnome-characters" # pos 3 2 special chars
"Ctrl+Alt, 8, exec, hyprpicker | tee >(wl-copy) | cliphist store" # pos 4 2 colorpicker "Ctrl+Alt, 8, exec, hyprpicker | tee >(wl-copy) | cliphist store" # pos 4 2 colorpicker
"Ctrl+Alt, 0, exec, custom-tomato" # pos 1 3 pomodoro app "Ctrl+Alt, 0, exec, custom-tomato" # pos 1 3 pomodoro app
"Ctrl+Alt, 2, exec, custom-bottom" # pos 2 3 btm (like htop but cleaner) "Ctrl+Alt, 2, exec, custom-bottom" # pos 2 3 btm (like htop but cleaner)
"Ctrl+Alt, 9, exec, anki" "Ctrl+Alt, 9, exec, anki"
# if hyprexpo plugin enabled bind = $mainMod, Space, hyprexpo:expo, toggle ];*/
# maybe exec sudo framework-tools-tui /*binde = [
"${mod}+Shift, Right, resizeactive, 30 0"
#plugins keybindings "${mod}+Shift, Left, resizeactive, -30, 0"
#"$mod, SPACE, overview:toggle, " "${mod}+Shift, Up, resizeactive, 0 -30"
]; "${mod}+Shift, Down, resizeactive,m 0 30"
binde = [
"$mod+Shift, Right, resizeactive, 30 0"
"$mod+Shift, Left, resizeactive, -30, 0"
"$mod+Shift, Up, resizeactive, 0 -30"
"$mod+Shift, Down, resizeactive,m 0 30"
]; ];
bindl = [ bindl = [
", F1, exec, pactl set-sink-mute @DEFAULT_SINK@ toggle" #toggle audio mute ", F1, exec, pactl set-sink-mute @DEFAULT_SINK@ toggle" #toggle audio mute
@@ -259,54 +771,39 @@
", F8, exec, brightnessctl s +10%" # increase brightness ", F8, exec, brightnessctl s +10%" # increase brightness
]; ];
bindm = [ bindm = [
"$mod, mouse:272, movewindow" "${mod}, mouse:272, movewindow"
"$mod, mouse:273, resizewindow" "${mod}, mouse:273, resizewindow"
"$mod, Z, movewindow" "${mod}, Z, movewindow"
"$mod, X, resizewindow" "${mod}, X, resizewindow"
]; ];*/
# █░░ ▄▀█ █░█ █▄░█ █▀▀ █░█ # █░░ ▄▀█ █░█ █▄░█ █▀▀ █░█
# █▄▄ █▀█ █▄█ █░▀█ █▄▄ █▀█ # █▄▄ █▀█ █▄█ █░▀█ █▄▄ █▀█
exec-once = [ on = {
"dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP" # for XDPH _args = [
"dbus-update-activation-environment --systemd --all" # for XDPH "hyprland.start"
"systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP" # for XDPH (lib.generators.mkLuaInline ''
"systemctl --user start xdg-desktop-portal-wlr.service" function()
"blueman-applet" # systray app for Bluetooth hl.exec_cmd("dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP") -- for XDPH
"udiskie --no-automount --smart-tray" # front-end that allows to manage removable media hl.exec_cmd("dbus-update-activation-environment --systemd --all") -- for XDPH
"nm-applet --indicator" # systray app for Network/wifi hl.exec_cmd("systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP") -- for XDPH
#setups clipboard hl.exec_cmd("systemctl --user start xdg-desktop-portal-wlr.service")
"rm -rf ~/.cache/cliphist/ && wl-paste --type text --watch cliphist store & wl-paste --type image --watch cliphist store" hl.exec_cmd("blueman-applet") -- systray app for Bluetooth
#"wl-paste --type text --watch cliphist store" # clipboard store text data hl.exec_cmd("udiskie --no-automount --smart-tray") -- front-end that allows to manage removable media
#"wl-paste --type image --watch cliphist store" # clipboard store image data hl.exec_cmd("nm-applet --indicator") -- systray app for Network/wifi
"custom-batterynotify" hl.exec_cmd("rm -rf ~/.cache/cliphist/ && wl-paste --type text --watch cliphist store & wl-paste --type image --watch cliphist store")
"custom-batterywarning" hl.exec_cmd("custom-batterynotify")
#"birdtray" # thunderbird tray app # curently broken hl.exec_cmd("custom-batterywarning")
#wallpapers/b hl.exec_cmd("awww img ${wallpaper}")
"awww img ${wallpaper}" hl.exec_cmd("awww-daemon")
"awww-daemon" hl.exec_cmd("sleep 1 && custom-wallpaper")
"sleep 1 && custom-wallpaper" hl.exec_cmd("custom-checkKdrive && custom-mountkdrive") -- checks if the remote works and mount it
"custom-checkKdrive && custom-mountkdrive" # checks if the remote works and mount it hl.exec_cmd("custom-gitnotify")
#"waybar" hl.exec_cmd("sleep 4 & caelestia-shell") -- works better if it sleeps a bit before
"custom-gitnotify" hl.exec_cmd("sleep 20 && ngcp pull --automatic") -- see github.com/tomasriveral/nix-git-cherry-picker
#"custom-obsidianbackup" # backups the obsidian notes to kdrive and to a timed hidden dir (~/.Notes.backup/) end
#"QS-notifycache" # builds the cache that will be used for the notification history '')
"sleep 4 & caelestia-shell" #works better if it sleeps a bit before ];
"sleep 20 && ngcp pull --automatic" # see github.com/tomasriveral/nix-git-cherry-picker };
"rm ~/.cache/hypr-battery-saver"
"rm ~/.cache/hypr-battery-saver.brightness"
/*
We stopped using that ######################### maybe we should desactivate those scripts
# login autostart
#######################
"[workspace 1 silent] sleep 1 && kitty -o font_size=16 -e sh -c 'custom-weather'"
"[workspace 1 silent] sleep 1 && kitty -o font_size=11 -e sh -c 'custom-cowsay'"
"[workspace 1 silent] kitty -e 'custom-launch'"
"[workspace 1 silent] sleep 1 && kitty -o font_size=5 -e btm --theme gruvbox --disable-click --disable_advanced_kill --enable_cache_memory -g -R -T "
"[workspace 1 silent] sleep 1 && kitty -o font_size=1 -e sh -c 'cmatrix -br'"
######################
######################
*/
];
splash = true; # remove default background on startup splash = true; # remove default background on startup
# gestures (also keybindings) # gestures (also keybindings)
gesture = [ gesture = [
@@ -314,26 +811,6 @@
"3, left, move, -col" "3, left, move, -col"
]; ];
# █░░ ▄▀█ █▄█ █▀█ █░█ ▀█▀ █▀
# █▄▄ █▀█ ░█░ █▄█ █▄█ ░█░ ▄█
dwindle = {
preserve_split = true;
};
scrolling = {
column_width = 0.45;
};
# █▀▄▀█ █ █▀ █▀▀
# █░▀░█ █ ▄█ █▄▄
misc = {
vrr = 0;
force_default_wallpaper = 0;
};
xwayland = {
force_zero_scaling = true;
};
# █▀▄▀█ █▀█ █▄░█ █ ▀█▀ █▀█ █▀█ # █▀▄▀█ █▀█ █▄░█ █ ▀█▀ █▀█ █▀█
# █░▀░█ █▄█ █#░▀█ █ ░█░ █▄█ █▀▄ # █░▀░█ █▄█ █#░▀█ █ ░█░ █▄█ █▀▄
@@ -349,7 +826,8 @@
#| | | || || |_| || | | | | | _____| | #| | | || || |_| || | | | | | _____| |
#|___| |_______||_______||_______||___| |_| |__||_______| #|___| |_______||_______||_______||___| |_| |__||_______|
# #
"plugin:dynamic-cursors" = {
/*"plugin:dynamic-cursors" = {
enabled = true; enabled = true;
threshold = 2; threshold = 2;
mode = "rotate"; mode = "rotate";
@@ -391,38 +869,11 @@
showEmptyWorkspace = true; showEmptyWorkspace = true;
workspaceActiveBorder = "rgb(ab7746)"; workspaceActiveBorder = "rgb(ab7746)";
disableBlur = true; disableBlur = true;
}; };*/
##################################################### #####################################################
##################################################### #####################################################
# theme # theme
decoration = {
dim_special = 0.3;
rounding = 18;
blur = {
special = true;
enabled = true;
size = 4;
passes = 2;
new_optimizations = true;
ignore_opacity = true;
};
};
general = {
gaps_in = 5;
gaps_out = 15;
border_size = 4;
"col.active_border" = "rgba(ca6702ff) rgba(ecd3a0ff) 45deg";
"col.inactive_border" = "rgba(f1dca7d9) rgba(ffe1a8d9) 45deg";
layout = "dwindle";
resize_on_border = true;
};
group = {
"col.border_active" = "rgba(ca6702ff) rgba(ecd3a0ff) 45deg";
"col.border_inactive" = "rgba(f1dca7d9) rgba(ffe1a8d9) 45deg";
"col.border_locked_active" = "rgba(ca6702ff) rgba(ecd3a0ff) 45deg";
"col.border_locked_inactive" = "rgba(f1dca7d9) rgba(ffe1a8d9) 45deg";
};
#################################################### ####################################################
################################################## ##################################################