nix
This commit is contained in:
16
nix/modules/hyprland/home.nix
Normal file
16
nix/modules/hyprland/home.nix
Normal file
@@ -0,0 +1,16 @@
|
||||
{ inputs, pkgs, ... }:
|
||||
let
|
||||
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./settings.nix
|
||||
];
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
# set the flake package
|
||||
# settings = { };
|
||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||
portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||
};
|
||||
}
|
||||
136
nix/modules/hyprland/settings.nix
Normal file
136
nix/modules/hyprland/settings.nix
Normal file
@@ -0,0 +1,136 @@
|
||||
{ inputs, ... }:
|
||||
{
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
monitor = [
|
||||
"HDMI-A-1, 1920x1080@60, 0x0, 1"
|
||||
"DP-3, 1920x1080@144, 1920x0, 1"
|
||||
];
|
||||
env = [
|
||||
"XCURSOR_SIZE,24"
|
||||
"HYPRCURSOR_SIZE,24"
|
||||
"LIBVA_DRIVER_NAME,nvidia"
|
||||
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
|
||||
"WEBKIT_DISABLE_DMABUF_RENDERER,1" # maybe disable if nixos fixes alcom
|
||||
];
|
||||
general = {
|
||||
gaps_in = 1;
|
||||
gaps_out = 1;
|
||||
border_size = 1;
|
||||
# col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||
# col.inactive_border = rgba(595959aa)
|
||||
resize_on_border = false;
|
||||
allow_tearing = true;
|
||||
layout = dwindle;
|
||||
}
|
||||
decoration = {
|
||||
rounding = 0;
|
||||
rounding_power = 1;
|
||||
active_opacity = 1.0;
|
||||
inactive_opacity = 1.0;
|
||||
|
||||
shadow = {
|
||||
enable = false;
|
||||
}
|
||||
|
||||
blur = {
|
||||
enable = false;
|
||||
}
|
||||
}
|
||||
animations = {
|
||||
enabled = yes;
|
||||
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, 2.79, easeOutQuint"
|
||||
"windowsIn, 1, 1.1, easeOutQuint, popin 87%"
|
||||
"windowsOut, 1, 1.49, linear, popin 87%"
|
||||
"fadeIn, 1, 1.73, almostLinear"
|
||||
"fadeOut, 1, 1.46, almostLinear"
|
||||
"fade, 1, 2.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"
|
||||
"zoomFactor, 1, 7, quick"
|
||||
]
|
||||
}
|
||||
dwindle = {
|
||||
pseudotile = true;
|
||||
preserve_split = true;
|
||||
}
|
||||
master = {
|
||||
new_status = master
|
||||
}
|
||||
misc = {
|
||||
force_default_wallpaper = -1;
|
||||
disable_hyprland_logo = false;
|
||||
enable_anr_dialog = false;
|
||||
}
|
||||
input = {
|
||||
kb_layout = gb;
|
||||
follow_mouse = 2;
|
||||
sensitivity = -0.5;
|
||||
}
|
||||
"$mainMod = SUPER"
|
||||
binds = [
|
||||
"$mainMod, Q, exec, $terminal"
|
||||
"$mainMod, C, killactive,"
|
||||
"$mainMod, M, exit,"
|
||||
"$mainMod, E, exec, $fileManager"
|
||||
"$mainMod, V, togglefloating,"
|
||||
"$mainMod, R, exec, $menu"
|
||||
"$mainMod, P, pseudo, # dwindle"
|
||||
"$mainMod, J, togglesplit, # dwindle"
|
||||
"$mainMod, left, movefocus, l"
|
||||
"$mainMod, right, movefocus, r"
|
||||
"$mainMod, up, movefocus, u"
|
||||
"$mainMod, down, movefocus, d"
|
||||
"$mainMod, S, exec, $screenShot"
|
||||
"$mainMod, F, fullscreen"
|
||||
", home, exec, $toggleSpeaker"
|
||||
", end, exec, $toggleMic"
|
||||
"$mainMod, mouse_down, workspace, e+1"
|
||||
"$mainMod, mouse_up, workspace, e-1"
|
||||
"$mainMod, mouse:272, movewindow"
|
||||
"$mainMod, mouse:273, resizewindow"
|
||||
", F8, sendshortcut, , F8, class:^(com\.obsproject\.Studio)$"
|
||||
] ++ (
|
||||
builtins.concatLists (
|
||||
builtins.genLists(i: let ws = i + 1 in [
|
||||
"$mainMod, ${toString i}, workspace, ${toString ws}"
|
||||
"$mainMod SHIFT, ${toString i}, movetoworkspace, ${toString ws}"
|
||||
]
|
||||
) 9
|
||||
)
|
||||
);
|
||||
workspace = [
|
||||
"name:2, monitor:DP-3"
|
||||
]
|
||||
windowrule = [
|
||||
"suppressevent maximize, class:.*"
|
||||
"workspace 5 silent, class:^(gamescope)$"
|
||||
"immediate, class:^(gamescope)$"
|
||||
"workspace 6 silent, class:^(steam)$"
|
||||
"workspace 8 silent, class:^(vesktop)$"
|
||||
"workspace 8 silent, class:^(org.telegram.desktop)$"
|
||||
"workspace 10 silent, class:^(com\.obsproject\.Studio)$"
|
||||
]
|
||||
windowrulev2 = [
|
||||
"noinitialfocus, class:.*"
|
||||
]
|
||||
# exec-once = [
|
||||
# ];
|
||||
# we need to auto launch: quickshell, steam, ar_rpc (maybe), vesktop, telegram, qbit, and obs
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user