102 lines
2.6 KiB
Nix
102 lines
2.6 KiB
Nix
{
|
|
pkgs,
|
|
lib,
|
|
inputs,
|
|
...
|
|
}:
|
|
let
|
|
inherit (pkgs) rice;
|
|
palette = pkgs.lib.nix-rice.palette.toRGBShortHex rice.palette;
|
|
in
|
|
{
|
|
programs.hyprlock = {
|
|
# enable = true;
|
|
};
|
|
|
|
services.hypridle = {
|
|
# enable = true;
|
|
};
|
|
|
|
services.hyprpaper = {
|
|
# enable = true;
|
|
};
|
|
|
|
wayland.windowManager.hyprland = {
|
|
enable = true;
|
|
package = inputs.hyprland.packages.x86_64-linux.hyprland;
|
|
systemd = {
|
|
enable = true;
|
|
variables = [ "--all" ];
|
|
};
|
|
settings = {
|
|
"$mainMod" = "SUPER";
|
|
general =
|
|
let
|
|
inherit (rice.borders) thickness;
|
|
inherit (palette) normal;
|
|
in
|
|
{
|
|
inherit (rice.borders) gaps_in gaps_out;
|
|
border_size = thickness;
|
|
layout = "dwindle";
|
|
"col.inactive_border" = "rgb(${normal.black})";
|
|
"col.active_border" = "rgb(${normal.yellow})";
|
|
"col.nogroup_border" = "rgb(${normal.black})";
|
|
"col.nogroup_border_active" = "rgb(${normal.yellow})";
|
|
snap.enabled = true;
|
|
};
|
|
cursor = {
|
|
no_hardware_cursors = true;
|
|
};
|
|
decoration = {
|
|
inherit (rice.borders) rounding;
|
|
blur.enabled = false;
|
|
shadow.enabled = false;
|
|
};
|
|
# input.numlock_by_default = true;
|
|
# groups = let
|
|
# inherit (palette) normal;
|
|
# in {
|
|
# "col.border_active" = "rgb(${normal.red})";
|
|
# "col.border_inactive" = "rgb(${normal.black})";
|
|
# "col.border_locked_active" = "rgb(${normal.red})";
|
|
# "col.border_locked_inactive" = "rgb(${normal.black})";
|
|
# };
|
|
misc = {
|
|
disable_hyprland_logo = true;
|
|
disable_splash_rendering = true;
|
|
vrr = 0;
|
|
mouse_move_enables_dpms = true;
|
|
key_press_enables_dpms = true;
|
|
layers_hog_keyboard_focus = true;
|
|
background_color = "rgb(${palette.normal.black})";
|
|
};
|
|
dwindle = {
|
|
pseudotile = true;
|
|
force_split = 2;
|
|
preserve_split = true;
|
|
};
|
|
monitor = [
|
|
"DP-1, 2560x1440@165, 1080x0, 1"
|
|
"HDMI-A-2, 1920x1080@60, auto-left, 1"
|
|
"Unknown-1, disable"
|
|
];
|
|
bind =
|
|
let
|
|
makeDirBind =
|
|
bind: extraMods:
|
|
lib.mapAttrsToList (key: dir: "$mainMod${extraMods}, ${key}, ${bind}, ${dir}") {
|
|
h = "l";
|
|
j = "d";
|
|
k = "u";
|
|
l = "r";
|
|
};
|
|
in
|
|
[
|
|
"$mainMod, Return, exec, ${lib.getExe pkgs.kitty}"
|
|
]
|
|
++ makeDirBind "movefocus" ""
|
|
++ makeDirBind "movewindow" "+SHIFT";
|
|
};
|
|
};
|
|
}
|