Declared hyprland configs

This commit is contained in:
2026-04-08 17:50:06 +02:00
parent 284016a9bd
commit 6616d8bc0e
14 changed files with 1681 additions and 21 deletions

View File

@@ -0,0 +1,83 @@
{
wayland.windowManager.hyprland.settings = {
general = {
gaps_in = 12;
gaps_out = 20;
border_size = 2;
col.active_border = "rgba(ebdbb2ff) rgba(ebdbb2ff)";
col.inactive_border = "rgba(595959ff)";
resize_on_border = true;
layout = "dwindle";
};
decoration = {
rounding = 0;
rounding_power = 0;
active_opacity = 1.0;
inactive_opacity = 1.0;
shadow = {
enabled = true;
range = 1;
render_power = 10;
sharp = true;
offset = "20, 20";
color = "rgba(0, 0, 0, 0.5)";
};
blur = {
enabled = false;
size = 3;
passes = 5;
vibrancy = 0.18;
noise = 0;
special = true;
};
};
animations = {
enabled = "no";
bezier = [
"easeOutQuint,0.23,1,0.32,1"
"easeInOutCubic,0.65,0.05,0.36,1"
"linear,0,0,1,1"
"almostLinear,0.5,0.5,0.75,1.0"
"quick,0.15,0,0.1,1"
];
animation = [
"global, 1, 10, default"
"border, 1, 5.39, easeOutQuint"
"windows, 1, 4.79, easeOutQuint"
"windowsIn, 1, 4.1, easeOutQuint, popin 87%"
"windowsOut, 1, 1.49, linear, popin 87%"
"fadeIn, 1, 1.73, almostLinear"
"fadeOut, 1, 1.46, almostLinear"
"fade, 1, 3.03, quick"
"layers, 1, 3.81, easeOutQuint"
"layersIn, 1, 4, easeOutQuint, fade"
"layersOut, 1, 1.5, linear, fade"
"fadeLayersIn, 1, 1.79, almostLinear"
"fadeLayersOut, 1, 1.39, almostLinear"
"workspaces, 1, 1.94, almostLinear, fade"
"workspacesIn, 1, 1.71, almostLinear, slide"
"workspacesOut, 1, 1.71, almostLinear, slide"
];
};
dwindle = {
pseudotile = true;
preserve_split = true;
split_width_multiplier = 1.2;
};
master = {
new_status = "slave";
};
misc = {
force_default_wallpaper = 0;
disable_hyprland_logo = true;
};
};
}

View File

@@ -0,0 +1,24 @@
{
wayland.windowManager.hyprland.settings = {
exec-once = [
"hyprpm reload -n"
"awww-daemon && awww restore"
"hypridle"
"systemctl --user start hyprpolkitagent"
"swaync"
"waybar"
"swayosd-server"
"hyprctl setcursor Qogir 24"
"play /usr/share/sounds/freedesktop/stereo/service-login.oga"
"dconf write /org/gnome/desktop/wm/preferences/button-layout \"''\""
"dconf write /org/gnome/desktop/interface/enable-animations "false""
"emacs --daemon"
];
exec-shutdown = [
"play /usr/share/sounds/freedesktop/stereo/service-logout.oga"
"dconf write /org/gnome/desktop/wm/preferences/button-layout \"'appmenu:minimize,maximize,close'\""
"dconf write /org/gnome/desktop/interface/enable-animations \"true\""
];
};
}

20
hyprland/hypr/input.nix Normal file
View File

@@ -0,0 +1,20 @@
{
wayland.windowManager.hyprland.settings = {
input = {
kb_layout = "hu";
follow_mouse = 1;
sensitivity = 0.1; # -1.0 - 1.0, 0 means no modification.
touchpad = {
natural_scroll = true;
clickfinger_behavior = 1;
};
};
gesture = [
"3, horizontal, workspace"
"3, up, dispatcher, overview:open"
];
hyprexpo-gesture = "3, down, expo";
};
}

View File

@@ -0,0 +1,71 @@
let
programs = import ./programs.nix;
in
{
wayland.windowManager.hyprland.settings = {
bind = [
"SUPER, RETURN, exec, ${programs.terminal}"
"SUPER, Q, killactive,"
"SUPER, X, exec, ${programs.powerMenu}"
"SUPER SHIFT, L, exec, ${programs.lockScreen}"
"SUPER, E, exec, ${programs.fileManager}"
"SUPER, D, exec, ${programs.menu}"
"SUPER, Print, exec, ${programs.colorPicker}"
"SUPER, P, exec, ${programs.passwordManager}"
", Print, exec, ${programs.screenshot}"
"SUPER, h, movefocus, l"
"SUPER, l, movefocus, r"
"SUPER, k, movefocus, u"
"SUPER, j, movefocus, d"
"ALT, Tab, cyclenext"
"ALT, Tab, bringactivetotop"
"SUPER, V, exec, ${programs.floatingModeToggle}"
"SUPER, g, togglegroup"
"SUPER, 1, workspace, 1"
"SUPER, 2, workspace, 2"
"SUPER, 3, workspace, 3"
"SUPER, 4, workspace, 4"
"SUPER, 5, workspace, 5"
"SUPER, 6, workspace, 6"
"SUPER, 7, workspace, 7"
"SUPER, 8, workspace, 8"
"SUPER, 9, workspace, 9"
"SUPER, 0, workspace, 10"
"SUPER SHIFT, 1, movetoworkspace, 1"
"SUPER SHIFT, 2, movetoworkspace, 2"
"SUPER SHIFT, 3, movetoworkspace, 3"
"SUPER SHIFT, 4, movetoworkspace, 4"
"SUPER SHIFT, 5, movetoworkspace, 5"
"SUPER SHIFT, 6, movetoworkspace, 6"
"SUPER SHIFT, 7, movetoworkspace, 7"
"SUPER SHIFT, 8, movetoworkspace, 8"
"SUPER SHIFT, 9, movetoworkspace, 9"
"SUPER SHIFT, 0, movetoworkspace, 10"
"SUPER, S, togglespecialworkspace, magic"
"SUPER SHIFT, S, movetoworkspace, special:magic"
"SUPER, mouse_down, workspace, e+1"
"SUPER, mouse_up, workspace, e-1"
];
bindm = [
"SUPER, mouse:272, movewindow"
"SUPER, mouse:273, resizewindow"
];
bindel = [
",XF86AudioRaiseVolume, exec, swayosd-client --output-volume raise"
",XF86AudioLowerVolume, exec, swayosd-client --output-volume lower"
",XF86AudioMute, exec, swayosd-client --output-volume mute-toggle"
",XF86AudioMicMute, exec, swayosd-client --input-volume mute-toggle"
",XF86MonBrightnessUp, exec, swayosd-client --brightness raise"
",XF86MonBrightnessDown, exec, swayosd-client --brightness lower"
];
bindl = [
", XF86AudioNext, exec, playerctl next"
", XF86AudioPause, exec, playerctl play-pause"
", XF86AudioPlay, exec, playerctl play-pause"
", XF86AudioPrev, exec, playerctl previous"
];
};
}

View File

@@ -0,0 +1,5 @@
{
wayland.windowManager.hyprland.settings = {
monitor=",preferred,auto,auto";
};
}

View File

@@ -0,0 +1,7 @@
{
wayland.windowManager.hyprland.settings = {
misc = {
vfr = true;
};
};
}

View File

@@ -0,0 +1,7 @@
{
wayland.windowManager.hyprland.settings = {
ecosystem = {
enforce_permissions = true;
};
};
}

70
hyprland/hypr/plugins.nix Normal file
View File

@@ -0,0 +1,70 @@
{ pkgs, ... }:
{
wayland.windowManager.hyprland = {
plugins = with pkgs.hyprlandPlugins; [
hyprexpo
hyprbars
hyprwinwrap
hyprscrolling
];
settings = {
plugin = {
hyprexpo = {
columns = 3;
gap_size = 5;
enable_gesture = true;
gesture_fingers = 3;
gesture_positive = false;
gesture_distance = 300;
workspace_method = "first 1";
};
hyprbars = {
bar_buttons_alignment = "right";
bar_height = 40;
icon_on_hover = true;
bar_color = "rgba(46, 46, 50, 1.0)";
bar_blur = true;
bar_part_of_window = true;
hyprbars-button = [
"rgb(424246), 20, 󰖭, hyprctl dispatch killactive"
"rgb(424246), 20, , hyprctl dispatch fullscreen 0"
"rgb(424246), 20, , hyprctl dispatch togglefloating"
];
};
hyprwinwrap = {
class = "cava-bg";
};
overview = {
onBottom = false;
switchOnDrop = false;
exitOnSwitch = false;
showNewWorkspace = true;
showEmptyWorkspace = true;
reverseSwipe = false;
panelHeight = 150;
};
hyprscrolling = {
fullscreen_on_one_column = true;
column_width = 0.45;
};
imgborders = {
enabled = true;
image = "~/.border.png";
sizes = "6,6,6,6 # left, right, top, bottom";
insets = "4,4,4,4 # left, right, top, bottom";
scale = 3.5;
smooth = false;
blur = false;
};
};
};
};
}

View File

@@ -0,0 +1,13 @@
{
colorPicker = "hyprpicker --autocopy";
fileManager = "nautilus";
fileManagerTUI = "kitty -e ranger";
floatingModeToggle = "htt ~/.cache/htt/rules";
lockScreen = "hyprlock";
menu = "fuzzel";
passwordManager = "pass-autotype";
powerMenu = "~/.config/hypr/hyprland/scripts/powermenu.sh";
screenshot = "~/.config/hypr/hyprland/scripts/screenshot.sh";
terminal = "kitty";
themeSwitcher = "~/.config/hypr/hyprland/scripts/themeswitch.sh";
}

147
hyprland/hypr/rules.nix Normal file
View File

@@ -0,0 +1,147 @@
{
wayland.windowManager.hyprland.settings = {
windowrule = [
{
name = "windowrule-1";
suppress_event = "maximize";
"match:class" = ".*";
}
{
name = "open_new_floating_with_sensible_size";
size = "(monitor_w*0.5) (monitor_h*0.5)";
"match:class" = ".*";
}
{
name = "windowrule-2";
size = "(monitor_w*0.3) (monitor_h*0.1)";
"match:class" = "org.gnome.FileRoller";
}
{
name = "windowrule-3";
size = "(monitor_w*0.45) (monitor_h*0.65)";
"match:class" = "waypaper";
}
{
name = "windowrule-14";
size = "(monitor_w*0.7) (monitor_h*0.7)";
"match:class" = "io.github.nokse22.high-tide";
}
{
name = "windowrule-15";
size = "(monitor_w*0.7) (monitor_h*0.7)";
"match:class" = "firefox";
}
{
name = "windowrule-17";
no_focus = "on";
"match:class" = "^$";
"match:title" = "^$";
"match:xwayland" = 1;
"match:float" = 1;
"match:fullscreen" = 0;
"match:pin" = 0;
}
{
name = "windowrule-18";
idle_inhibit = "fullscreen";
"match:class" = "^(*)$";
}
{
name = "windowrule-19";
idle_inhibit = "fullscreen";
"match:title" = "^(*)$";
}
{
name = "windowrule-20";
idle_inhibit = "fullscreen";
"match:fullscreen" = 1;
}
];
layerrule = [
{
name = "layerrule-1";
blur = "on";
"match:namespace" = "gtk-layer-shell";
}
{
name = "layerrule-2";
ignore_alpha = 0.5;
animation = "slide";
"match:namespace" = "gtk-layer-shell";
}
{
name = "layerrule-3";
blur = "on";
"match:namespace" = "waybar";
}
{
name = "layerrule-4";
blur = "on";
"match:namespace" = "launcher";
}
{
name = "layerrule-5";
ignore_alpha = 0;
"match:namespace" = "launcher";
}
{
name = "layerrule-6";
blur = "on";
"match:namespace" = "nwg-drawer";
}
{
name = "layerrule-7";
blur = "on";
ignore_alpha = 0.4;
animation = "slide";
"match:namespace" = "swaync-control-center";
}
{
name = "layerrule-8";
blur = "on";
ignore_alpha = 0.5;
animation = "slide";
"match:namespace" = "swaync-notification-window";
}
{
name = "layerrule-9";
blur = "on";
ignore_alpha = 0;
"match:namespace" = "nwg-dock";
}
{
name = "layerrule-10";
blur = "on";
ignore_alpha = 0;
animation = "slide";
"match:namespace" = "swayosd";
}
{
name = "layerrule-11";
blur = "on";
ignore_alpha = 0;
"match:namespace" = "rofi";
}
];
};
}

1206
hyprland/raw/waybar.nix Normal file

File diff suppressed because it is too large Load Diff