113 lines
2.7 KiB
Nix
113 lines
2.7 KiB
Nix
{
|
|
pkgs,
|
|
inputs,
|
|
...
|
|
}: {
|
|
imports = [
|
|
inputs.hyprland.homeManagerModules.default
|
|
# ./waybar
|
|
./ironbar
|
|
./wofi.nix
|
|
];
|
|
|
|
home.packages = with pkgs; [
|
|
pavucontrol
|
|
swaynotificationcenter
|
|
];
|
|
|
|
wayland.windowManager.hyprland = {
|
|
enable = true;
|
|
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
|
settings = {
|
|
"$mod" = "SUPER";
|
|
general = {
|
|
gaps_in = 5;
|
|
gaps_out = 10;
|
|
};
|
|
input = {
|
|
follow_mouse = 2;
|
|
};
|
|
exec-once = [
|
|
"hyprctl setcursor Adwaita 24"
|
|
"waybar"
|
|
"swaync"
|
|
];
|
|
bind =
|
|
[
|
|
# Program launcher
|
|
"$mod, SPACE, exec, wofi --show drun"
|
|
# Program shortcuts
|
|
"$mod, F, exec, firefox"
|
|
"$mod, Q, killactive"
|
|
"$mod, T, exec, foot"
|
|
", Print, exec, grimblast copy area"
|
|
# Windows
|
|
"$mod, H, movefocus, l"
|
|
"$mod, J, movefocus, d"
|
|
"$mod, K, movefocus, u"
|
|
"$mod, L, movefocus, r"
|
|
# Moving windows
|
|
"$mod SHIFT, H, movewindow, l"
|
|
"$mod SHIFT, J, movewindow, d"
|
|
"$mod SHIFT, K, movewindow, u"
|
|
"$mod SHIFT, L, movewindow, r"
|
|
]
|
|
++ (
|
|
# workspaces
|
|
# binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
|
|
builtins.concatLists (builtins.genList (
|
|
x: let
|
|
ws = let
|
|
c = (x + 1) / 10;
|
|
in
|
|
builtins.toString (x + 1 - (c * 10));
|
|
in [
|
|
"$mod, ${ws}, workspace, ${toString (x + 1)}"
|
|
"$mod SHIFT, ${ws}, movetoworkspace, ${toString (x + 1)}"
|
|
]
|
|
)
|
|
10)
|
|
);
|
|
};
|
|
extraConfig = ''
|
|
# will switch to a submap called resize
|
|
bind=$mod,R,submap,resize
|
|
|
|
# will start a submap called "resize"
|
|
submap=resize
|
|
|
|
# sets repeatable binds for resizing the active window
|
|
binde=,h,resizeactive,-10 0
|
|
binde=,j,resizeactive,0 10
|
|
binde=,k,resizeactive,0 -10
|
|
binde=,l,resizeactive,10 0
|
|
|
|
# use reset to go back to the global submap
|
|
bind=,escape,submap,reset
|
|
|
|
# will reset the submap, meaning end the current one and return to the global one
|
|
submap=reset
|
|
'';
|
|
};
|
|
|
|
gtk = {
|
|
enable = true;
|
|
font.name = "Inter 11";
|
|
theme = {
|
|
name = "adw-gtk3-dark";
|
|
package = pkgs.adw-gtk3;
|
|
};
|
|
iconTheme = {
|
|
name = "Papirus";
|
|
package = pkgs.papirus-icon-theme;
|
|
};
|
|
};
|
|
|
|
home.pointerCursor = {
|
|
gtk.enable = true;
|
|
name = "Adwaita";
|
|
package = pkgs.gnome.adwaita-icon-theme;
|
|
size = 24;
|
|
};
|
|
}
|