initial commit
This commit is contained in:
commit
1f9e5e17af
19 changed files with 1515 additions and 0 deletions
63
modules/rice/hyprland/binds.nix
Normal file
63
modules/rice/hyprland/binds.nix
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
mod = "SUPER";
|
||||
modshift = "${mod}SHIFT";
|
||||
|
||||
# binds $mod + [shift +] {1..10} to [move to] workspace {1..10} (stolen from fufie)
|
||||
workspaces = 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);
|
||||
in {
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
bind =
|
||||
[
|
||||
''${mod},RETURN,exec,kitty''
|
||||
|
||||
"${mod},R,exec,wofi"
|
||||
"${mod},Q,killactive"
|
||||
"${mod},P,pseudo"
|
||||
|
||||
"${mod},H,movefocus,l"
|
||||
"${mod},L,movefocus,r"
|
||||
"${mod},K,movefocus,u"
|
||||
"${mod},J,movefocus,d"
|
||||
|
||||
"${mod},T,togglegroup," # group focused window
|
||||
"${modshift},G,changegroupactive," # switch within the active group
|
||||
"${mod},V,togglefloating," # toggle floating for the focused window
|
||||
"${mod},F,fullscreen," # fullscreen focused window
|
||||
|
||||
# workspace controls
|
||||
"${modshift},right,movetoworkspace,+1" # move focused window to the next ws
|
||||
"${modshift},left,movetoworkspace,-1" # move focused window to the previous ws
|
||||
"${mod},mouse_down,workspace,e+1" # move to the next ws
|
||||
"${mod},mouse_up,workspace,e-1" # move to the previous ws
|
||||
|
||||
"${mod},Print,exec, pauseshot"
|
||||
",Print,exec, grim - | wl-copy"
|
||||
"${modshift},O,exec,wl-ocr"
|
||||
|
||||
"${mod},Period,exec, tofi-emoji"
|
||||
|
||||
"${modshift},L,exec,swaylock --grace 0" # lock screen
|
||||
]
|
||||
++ workspaces;
|
||||
|
||||
bindm = [
|
||||
"${mod},mouse:272,movewindow"
|
||||
"${mod},mouse:273,resizewindow"
|
||||
];
|
||||
};
|
||||
}
|
||||
56
modules/rice/hyprland/config.nix
Normal file
56
modules/rice/hyprland/config.nix
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
# home.nix
|
||||
{
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
exec-once = [
|
||||
"dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
||||
];
|
||||
|
||||
general = {
|
||||
# gaps
|
||||
gaps_in = 6;
|
||||
gaps_out = 11;
|
||||
|
||||
# border thiccness
|
||||
border_size = 2;
|
||||
|
||||
|
||||
# whether to apply the sensitivity to raw input (e.g. used by games where you aim using your mouse)
|
||||
apply_sens_to_raw = 0;
|
||||
};
|
||||
|
||||
input = {
|
||||
kb_layout = "us";
|
||||
sensitivity = 0; # -1.0 - 1.0, 0 means no modification.
|
||||
accel_profile = "flat";
|
||||
force_no_accel = true;
|
||||
};
|
||||
|
||||
decoration = {
|
||||
# fancy corners
|
||||
rounding = 7;
|
||||
# blur
|
||||
blur = {
|
||||
enabled = true;
|
||||
size = 3;
|
||||
passes = 3;
|
||||
ignore_opacity = false;
|
||||
new_optimizations = 1;
|
||||
xray = true;
|
||||
contrast = 0.7;
|
||||
brightness = 0.8;
|
||||
};
|
||||
|
||||
# shadow config
|
||||
drop_shadow = "no";
|
||||
shadow_range = 20;
|
||||
shadow_render_power = 5;
|
||||
"col.shadow" = "rgba(292c3cee)";
|
||||
};
|
||||
|
||||
xwayland = {
|
||||
force_zero_scaling = true;
|
||||
};
|
||||
|
||||
monitor = "DP-1,2560x1440@240,0x0,1";
|
||||
};
|
||||
}
|
||||
19
modules/rice/hyprland/default.nix
Normal file
19
modules/rice/hyprland/default.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
imports = [./config.nix ./binds.nix];
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
package = inputs.hyprland.packages.${pkgs.system}.default;
|
||||
systemd = {
|
||||
variables = ["--all"];
|
||||
extraCommands = [
|
||||
"systemctl --user stop graphical-session.target"
|
||||
"systemctl --user start hyprland-session.target"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
43
modules/rice/hyprland/rules.nix
Normal file
43
modules/rice/hyprland/rules.nix
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
{...}: {
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
layerrule = [
|
||||
"blur, ^(gtk-layer-shell)$"
|
||||
"blur, ^(launcher)$"
|
||||
"ignorezero, ^(gtk-layer-shell)$"
|
||||
"ignorezero, ^(launcher)$"
|
||||
"blur, notifications"
|
||||
"ignorezero, notifications"
|
||||
"blur, bar"
|
||||
"ignorezero, bar"
|
||||
"ignorezero, ^(gtk-layer-shell|anyrun)$"
|
||||
"blur, ^(gtk-layer-shell|anyrun)$"
|
||||
"noanim, launcher"
|
||||
"noanim, bar"
|
||||
];
|
||||
windowrulev2 = [
|
||||
# only allow shadows for floating windows
|
||||
"noshadow, floating:0"
|
||||
"tile, title:Spotify"
|
||||
|
||||
"idleinhibit focus, class:^(mpv)$"
|
||||
"idleinhibit focus,class:foot"
|
||||
"idleinhibit fullscreen, class:^(firefox)$"
|
||||
|
||||
"float, title:^(Picture-in-Picture)$"
|
||||
"pin, title:^(Picture-in-Picture)$"
|
||||
|
||||
"float,class:udiskie"
|
||||
|
||||
"workspace special silent,class:^(pavucontrol)$"
|
||||
|
||||
"float, class:^(imv)$"
|
||||
|
||||
# throw sharing indicators away
|
||||
"workspace special silent, title:^(Firefox — Sharing Indicator)$"
|
||||
"workspace special silent, title:^(.*is sharing (your screen|a window)\.)$"
|
||||
|
||||
"workspace 4, title:^(.*(Disc|WebC)ord.*)$"
|
||||
"workspace 2, class:^(firefox)$"
|
||||
];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue