hyprland: switch to declarative config (again)
This commit is contained in:
parent
14e8b6a8fd
commit
c511f450df
5 changed files with 162 additions and 169 deletions
|
@ -1,159 +0,0 @@
|
|||
{pkgs, ...}: {
|
||||
xdg.configFile."hypr/hyprpaper.conf".text = ''
|
||||
preload = ~/Pictures/wallpapers/city.png
|
||||
wallpaper = HDMI-A-1,~/Pictures/wallpapers/city.png
|
||||
wallpaper = DP-1,~/Pictures/wallpapers/city.png
|
||||
wallpaper = DP-2,~/Pictures/wallpapers/city.png
|
||||
wallpaper = DP-3,~/Pictures/wallpapers/city.png
|
||||
'';
|
||||
|
||||
wayland.windowManager.hyprland.extraConfig = ''
|
||||
|
||||
monitor = HDMI-A-1,1920x1080@60, 3640x560, auto, transform, 3 #right
|
||||
monitor = DP-1,1920x1080@60, 0x560, auto, transform, 1 #left
|
||||
monitor = DP-2,2560x1440@144, 1080x1080, auto #middle
|
||||
monitor = DP-3,1920x1080@144, 1400x0, auto #top
|
||||
|
||||
input {
|
||||
kb_layout = us
|
||||
|
||||
follow_mouse = 1
|
||||
|
||||
sensitivity = -0.5
|
||||
force_no_accel = true
|
||||
}
|
||||
|
||||
general {
|
||||
gaps_in = 10
|
||||
gaps_out = 20
|
||||
border_size = 4
|
||||
col.active_border = rgb(f7768e) rgb(2ac3de)
|
||||
col.inactive_border = rgb(6c7086)
|
||||
|
||||
layout = dwindle
|
||||
}
|
||||
|
||||
decoration {
|
||||
rounding = 12
|
||||
blur {
|
||||
enabled = true
|
||||
size = 6
|
||||
passes = 3
|
||||
new_optimizations = true
|
||||
}
|
||||
inactive_opacity = 1.0
|
||||
active_opacity = 1.0
|
||||
fullscreen_opacity = 1.0
|
||||
|
||||
drop_shadow = yes
|
||||
shadow_range = 60
|
||||
shadow_offset = 0 5
|
||||
shadow_render_power = 4
|
||||
col.shadow = rgba(00000099)
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
|
||||
bezier = fastBezier, 0.05, 1.1, 0.2, 1.0
|
||||
bezier = linear, 0.0, 0.0, 1.0, 1.0
|
||||
bezier = liner, 1, 1, 1, 1
|
||||
|
||||
animation = windows, 1, 7, fastBezier, slide
|
||||
animation = windowsOut, 1, 7, fastBezier, slide
|
||||
animation = border, 1, 10, fastBezier
|
||||
animation = fade, 1, 7, fastBezier
|
||||
animation = workspaces, 1, 6, fastBezier
|
||||
animation = border, 1, 1, liner
|
||||
animation = borderangle, 1, 40, liner, loop
|
||||
animation = borderangle, 1, 100, linear, loop
|
||||
}
|
||||
|
||||
dwindle {
|
||||
pseudotile = yes
|
||||
preserve_split = yes
|
||||
}
|
||||
|
||||
master {
|
||||
new_is_master = true
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = off
|
||||
}
|
||||
|
||||
device:epic mouse V1 {
|
||||
sensitivity = -0.5
|
||||
}
|
||||
|
||||
misc {
|
||||
disable_hyprland_logo = true
|
||||
}
|
||||
|
||||
exec-once = hyprpaper
|
||||
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once = ${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1
|
||||
|
||||
# swayidle / lock
|
||||
exec-once = ~/.local/bin/lock
|
||||
|
||||
#windowrules
|
||||
windowrulev2 = noshadow, floating:0
|
||||
windowrulev2 = float, title:^(Volume Control)$
|
||||
windowrulev2 = float, title:^(Picture in picture)$
|
||||
windowrulev2 = float, title:^(Steam)$
|
||||
windowrulev2 = float, title:^(Friends List)$
|
||||
windowrulev2 = float, title:^(Cryptomator)$
|
||||
windowrulev2 = float, title:^(RuneLite)$
|
||||
windowrulev2 = float, title:^(Lutris)$
|
||||
windowrulev2 = float, title:^(satty)$
|
||||
windowrulev2 = move 850 360, title:^(RuneLite)$
|
||||
windowrulev2 = size 830 600, title:^(RuneLite)$
|
||||
windowrulev2 = size 1200 600, title:^(satty)$
|
||||
windowrulev2 = fullscreen, title:^(cs2)$
|
||||
|
||||
#binds
|
||||
$mainMod = SUPER
|
||||
|
||||
bind = $mainMod, Return, exec, wezterm
|
||||
bind = $mainMod, Q, killactive,
|
||||
bind = $mainMod, V, togglefloating,
|
||||
bind = $mainMod, R, exec, anyrun
|
||||
bind = $mainMod, P, pseudo, # dwindle
|
||||
bind = $mainMod, J, togglesplit, # dwindle
|
||||
bind =, Print, exec, grim -g "$(slurp)" - | satty -f - --fullscreen --output-filename ~/Pictures/screenshots/$(date '+%Y%m%d-%H:%M:%S').png
|
||||
bind = $mainMod, left, movefocus, l
|
||||
bind = $mainMod, right, movefocus, r
|
||||
bind = $mainMod, up, movefocus, u
|
||||
bind = $mainMod, down, movefocus, d
|
||||
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
'';
|
||||
}
|
45
home/wayland/hyprland/config/binds.nix
Normal file
45
home/wayland/hyprland/config/binds.nix
Normal file
|
@ -0,0 +1,45 @@
|
|||
_: {
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
"$mainMod" = "SUPER";
|
||||
bind = [
|
||||
"$mainMod, Return, exec, wezterm"
|
||||
"$mainMod, Q, killactive,"
|
||||
"$mainMod, V, togglefloating,"
|
||||
"$mainMod, R, exec, anyrun"
|
||||
"$mainMod, P, pseudo,"
|
||||
"$mainMod, J, togglesplit,"
|
||||
"$mainMod, left, movefocus, l"
|
||||
"$mainMod, right, movefocus, r"
|
||||
"$mainMod, up, movefocus, u"
|
||||
"$mainMod, down, movefocus, d"
|
||||
|
||||
"$mainMod, 1, workspace, 1"
|
||||
"$mainMod, 2, workspace, 2"
|
||||
"$mainMod, 3, workspace, 3"
|
||||
"$mainMod, 4, workspace, 4"
|
||||
"$mainMod, 5, workspace, 5"
|
||||
"$mainMod, 6, workspace, 6"
|
||||
"$mainMod, 7, workspace, 7"
|
||||
"$mainMod, 8, workspace, 8"
|
||||
"$mainMod, 9, workspace, 9"
|
||||
"$mainMod, 0, workspace, 10"
|
||||
"$mainMod SHIFT, 1, movetoworkspace, 1"
|
||||
"$mainMod SHIFT, 2, movetoworkspace, 2"
|
||||
"$mainMod SHIFT, 3, movetoworkspace, 3"
|
||||
"$mainMod SHIFT, 4, movetoworkspace, 4"
|
||||
"$mainMod SHIFT, 5, movetoworkspace, 5"
|
||||
"$mainMod SHIFT, 6, movetoworkspace, 6"
|
||||
"$mainMod SHIFT, 7, movetoworkspace, 7"
|
||||
"$mainMod SHIFT, 8, movetoworkspace, 8"
|
||||
"$mainMod SHIFT, 9, movetoworkspace, 9"
|
||||
"$mainMod SHIFT, 0, movetoworkspace, 10"
|
||||
|
||||
"$mainMod, mouse_down, workspace, e+1"
|
||||
"$mainMod, mouse_up, workspace, e-1"
|
||||
];
|
||||
bindm = [
|
||||
"$mainMod, mouse:272, movewindow"
|
||||
"$mainMod, mouse:273, resizewindow"
|
||||
];
|
||||
};
|
||||
}
|
95
home/wayland/hyprland/config/general.nix
Normal file
95
home/wayland/hyprland/config/general.nix
Normal file
|
@ -0,0 +1,95 @@
|
|||
{pkgs, ...}: {
|
||||
xdg.configFile."hypr/hyprpaper.conf".text = ''
|
||||
preload = ~/Pictures/wallpapers/city.png
|
||||
wallpaper = HDMI-A-1,~/Pictures/wallpapers/city.png
|
||||
wallpaper = DP-1,~/Pictures/wallpapers/city.png
|
||||
wallpaper = DP-2,~/Pictures/wallpapers/city.png
|
||||
wallpaper = DP-3,~/Pictures/wallpapers/city.png
|
||||
'';
|
||||
wayland.windowManager.hyprland = {
|
||||
settings = {
|
||||
monitor = [
|
||||
"HDMI-A-1,1920x1080@60, 3640x560, auto, transform, 3" #right
|
||||
"DP-1,1920x1080@60, 0x560, auto, transform, 1" #left
|
||||
"DP-2,2560x1440@144, 1080x1080, auto" #middle
|
||||
"monitor = DP-3,1920x1080@144, 1400x0, auto" #top
|
||||
];
|
||||
exec-once = [
|
||||
"hyprpaper"
|
||||
"dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
||||
"${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"
|
||||
"~/.local/bin/lock"
|
||||
];
|
||||
input = {
|
||||
kb_layout = "us";
|
||||
follow_mouse = 1;
|
||||
sensitivity = "-0.5";
|
||||
force_no_accel = true;
|
||||
};
|
||||
general = {
|
||||
gaps_in = 10;
|
||||
gaps_out = 20;
|
||||
border_size = 4;
|
||||
"col.active_border" = "rgb(f7768e) rgb(2ac3de)";
|
||||
"col.inactive_border" = "rgb(6c7086)";
|
||||
|
||||
layout = "dwindle";
|
||||
};
|
||||
decoration = {
|
||||
rounding = 12;
|
||||
blur = {
|
||||
enabled = true;
|
||||
size = 6;
|
||||
passes = 3;
|
||||
new_optimizations = true;
|
||||
};
|
||||
inactive_opacity = 1.0;
|
||||
active_opacity = 1.0;
|
||||
fullscreen_opacity = 1.0;
|
||||
|
||||
drop_shadow = true;
|
||||
shadow_range = 60;
|
||||
shadow_offset = "0 5";
|
||||
shadow_render_power = 4;
|
||||
"col.shadow" = "rgba(00000099)";
|
||||
};
|
||||
animations = {
|
||||
enabled = true;
|
||||
bezier = [
|
||||
"fastBezier, 0.05, 1.1, 0.2, 1.0"
|
||||
"linear, 0.0, 0.0, 1.0, 1.0"
|
||||
"liner, 1, 1, 1, 1"
|
||||
];
|
||||
animation = [
|
||||
"windows, 1, 7, fastBezier, slide"
|
||||
"windowsOut, 1, 7, fastBezier, slide"
|
||||
"border, 1, 10, fastBezier"
|
||||
"fade, 1, 7, fastBezier"
|
||||
"workspaces, 1, 6, fastBezier"
|
||||
"border, 1, 1, liner"
|
||||
"borderangle, 1, 40, liner, loop"
|
||||
"borderangle, 1, 100, linear, loop"
|
||||
];
|
||||
};
|
||||
dwindle = {
|
||||
pseudotile = true;
|
||||
preserve_split = true;
|
||||
};
|
||||
master = {
|
||||
new_is_master = true;
|
||||
};
|
||||
gestures = {
|
||||
workspace_swipe = false;
|
||||
};
|
||||
"device:epic mouse V1" = {
|
||||
sensitivity = "-0.5";
|
||||
};
|
||||
misc = {
|
||||
disable_hyprland_logo = true;
|
||||
};
|
||||
};
|
||||
extraConfig = ''
|
||||
bind =, Print, exec, grim -g "$(slurp)" - | satty -f - --fullscreen --output-filename ~/Pictures/screenshots/$(date '+%Y%m%d-%H:%M:%S').png
|
||||
'';
|
||||
};
|
||||
}
|
19
home/wayland/hyprland/config/rules.nix
Normal file
19
home/wayland/hyprland/config/rules.nix
Normal file
|
@ -0,0 +1,19 @@
|
|||
_: {
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
windowrulev2 = [
|
||||
"noshadow, floating:0"
|
||||
"float, title:^(Volume Control)$"
|
||||
"float, title:^(Picture in picture)$"
|
||||
"float, title:^(Steam)$"
|
||||
"float, title:^(Friends List)$"
|
||||
"float, title:^(Cryptomator)$"
|
||||
"float, title:^(RuneLite)$"
|
||||
"float, title:^(Lutris)$"
|
||||
"float, title:^(satty)$"
|
||||
"move 850 360, title:^(RuneLite)$"
|
||||
"size 830 600, title:^(RuneLite)$"
|
||||
"size 1200 600, title:^(satty)$"
|
||||
" fullscreen, title:^(cs2)$"
|
||||
];
|
||||
};
|
||||
}
|
|
@ -1,19 +1,12 @@
|
|||
_: {
|
||||
imports = [
|
||||
./config.nix
|
||||
./config/general.nix
|
||||
./config/binds.nix
|
||||
./config/rules.nix
|
||||
];
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
systemd.enable = true;
|
||||
xwayland.enable = true;
|
||||
};
|
||||
services.wlsunset = {
|
||||
enable = false;
|
||||
latitude = "40.712776";
|
||||
longitude = "-74.005974";
|
||||
temperature = {
|
||||
day = 6500;
|
||||
night = 3200;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue