mirror of
https://github.com/lightly-toasted/nix-config.git
synced 2025-10-04 11:35:41 +00:00
feat: refactor home-manager configuration for multi-host support
This commit is contained in:
parent
f20c875a48
commit
6d1fd47bea
47 changed files with 51 additions and 14 deletions
191
home/modules/graphical/hyprland.nix
Normal file
191
home/modules/graphical/hyprland.nix
Normal file
|
@ -0,0 +1,191 @@
|
|||
{ pkgs, ... }: {
|
||||
home.packages = [
|
||||
pkgs.playerctl
|
||||
pkgs.hyprshot
|
||||
pkgs.tofi
|
||||
];
|
||||
|
||||
programs.mouse-actions.enable = true;
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
package = pkgs.hyprland;
|
||||
systemd.enable = false;
|
||||
settings = {
|
||||
exec-once = [ "waybar" "uwsm app -- keepassxc" "uwsm app -- firefox" ];
|
||||
|
||||
"$terminal" = "uwsm app -- kitty";
|
||||
"$fileManager" = "uwsm app -- thunar";
|
||||
"$menu" = "uwsm app -- $(tofi-drun)";
|
||||
"$mod" = "SUPER";
|
||||
|
||||
env = [
|
||||
"LIBVA_DRIVER_NAME,nvidia"
|
||||
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
|
||||
"QT_QPA_PLATFORM,wayland"
|
||||
"GTK_IM_MODULE,kime"
|
||||
"QT_IM_MODULE,kime"
|
||||
"XMODIFIERS,@im=kime"
|
||||
];
|
||||
|
||||
bind = [
|
||||
"$mod, Q, exec, $terminal"
|
||||
"$mod, C, killactive"
|
||||
"$mod, M, exit"
|
||||
"$mod, E, exec, $fileManager"
|
||||
"$mod, R, exec, $menu"
|
||||
"$mod, Y, togglesplit"
|
||||
"$mod, F, fullscreen"
|
||||
|
||||
"$mod, H, movefocus, l"
|
||||
"$mod, J, movefocus, d"
|
||||
"$mod, K, movefocus, u"
|
||||
"$mod, L, movefocus, r"
|
||||
|
||||
"$mod SHIFT, H, movewindow, l"
|
||||
"$mod SHIFT, J, movewindow, d"
|
||||
"$mod SHIFT, K, movewindow, u"
|
||||
"$mod SHIFT, L, movewindow, r"
|
||||
|
||||
"$mod ALT, H, resizeactive, -50 0"
|
||||
"$mod ALT, J, resizeactive, 0 50"
|
||||
"$mod ALT, K, resizeactive, 0 -50"
|
||||
"$mod ALT, L, resizeactive, 50 0"
|
||||
|
||||
"$mod, 1, workspace, 1"
|
||||
"$mod, 2, workspace, 2"
|
||||
"$mod, 3, workspace, 3"
|
||||
"$mod, 4, workspace, 4"
|
||||
"$mod, 5, workspace, 5"
|
||||
"$mod, 6, workspace, 6"
|
||||
"$mod, 7, workspace, 7"
|
||||
"$mod, 8, workspace, 8"
|
||||
"$mod, 9, workspace, 9"
|
||||
"$mod, 0, workspace, 10"
|
||||
|
||||
"$mod SHIFT, 1, movetoworkspace, 1"
|
||||
"$mod SHIFT, 2, movetoworkspace, 2"
|
||||
"$mod SHIFT, 3, movetoworkspace, 3"
|
||||
"$mod SHIFT, 4, movetoworkspace, 4"
|
||||
"$mod SHIFT, 5, movetoworkspace, 5"
|
||||
"$mod SHIFT, 6, movetoworkspace, 6"
|
||||
"$mod SHIFT, 7, movetoworkspace, 7"
|
||||
"$mod SHIFT, 8, movetoworkspace, 8"
|
||||
"$mod SHIFT, 9, movetoworkspace, 9"
|
||||
"$mod SHIFT, 0, movetoworkspace, 10"
|
||||
|
||||
"$mod SHIFT, S, exec, env HYPRSHOT_DIR=/data/Backup/Screenshots hyprshot -m region"
|
||||
"$mod SHIFT, E, exec, powermenu"
|
||||
|
||||
"$mod, mouse:277, exec, cycle-mouse-action"
|
||||
", mouse:277, exec, run-mouse-action"
|
||||
];
|
||||
|
||||
bindel = [
|
||||
",XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+"
|
||||
",XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
|
||||
",XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
||||
",XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
|
||||
];
|
||||
|
||||
bindl = [
|
||||
", XF86AudioNext, exec, playerctl next"
|
||||
", XF86AudioPause, exec, playerctl play-pause"
|
||||
", XF86AudioPlay, exec, playerctl play-pause"
|
||||
", XF86AudioPrev, exec, playerctl previous"
|
||||
", XF86Tools, exec, playerctl play-pause"
|
||||
];
|
||||
|
||||
bindm = [
|
||||
"$mod, mouse:272, movewindow"
|
||||
"$mod, mouse:273, resizewindow"
|
||||
];
|
||||
|
||||
general = {
|
||||
gaps_in = 5;
|
||||
gaps_out = 20;
|
||||
border_size = 2;
|
||||
"col.active_border" = "rgba(ffffffaa)";
|
||||
"col.inactive_border" = "rgba(595959aa)";
|
||||
resize_on_border = false;
|
||||
allow_tearing = false;
|
||||
layout = "dwindle";
|
||||
};
|
||||
|
||||
decoration = {
|
||||
rounding = 10;
|
||||
rounding_power = 2;
|
||||
|
||||
active_opacity = 1.0;
|
||||
inactive_opacity = 1.0;
|
||||
|
||||
shadow = {
|
||||
enabled = true;
|
||||
range = 4;
|
||||
render_power = 3;
|
||||
color = "rgba(1a1a1aee)";
|
||||
};
|
||||
};
|
||||
|
||||
animations = {
|
||||
enabled = true;
|
||||
first_launch_animation = false;
|
||||
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.21,almostLinear,fade"
|
||||
"workspacesOut,1,1.94,almostLinear,fade"
|
||||
];
|
||||
};
|
||||
|
||||
dwindle = {
|
||||
pseudotile = true;
|
||||
preserve_split = true;
|
||||
};
|
||||
|
||||
misc = {
|
||||
force_default_wallpaper = 0;
|
||||
disable_hyprland_logo = true;
|
||||
};
|
||||
|
||||
input = {
|
||||
kb_layout = "us,kr";
|
||||
kb_options = "grp:alt_shift_toggle";
|
||||
sensitivity = -0.6;
|
||||
};
|
||||
|
||||
windowrule = [
|
||||
"suppressevent maximize, class:.*"
|
||||
"nofocus,class:^%,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
home.pointerCursor = {
|
||||
package = pkgs.rose-pine-cursor;
|
||||
name = "BreezeX-RosePine-Linux";
|
||||
size = 24;
|
||||
|
||||
gtk.enable = true;
|
||||
x11.enable = true;
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue