148 lines
3.6 KiB
Nix
148 lines
3.6 KiB
Nix
# So best window tiling manager
|
|
{ pkgs, config, inputs, ... }:
|
|
let
|
|
border-size = config.var.theme.border-size;
|
|
gaps-in = config.var.theme.gaps-in;
|
|
gaps-out = config.var.theme.gaps-out;
|
|
active-opacity = config.var.theme.active-opacity;
|
|
inactive-opacity = config.var.theme.inactive-opacity;
|
|
rounding = config.var.theme.rounding;
|
|
blur = config.var.theme.blur;
|
|
keyboardLayout = config.var.keyboardLayout;
|
|
in {
|
|
|
|
imports = [ ./animations.nix ./bindings.nix ];
|
|
|
|
home.packages = with pkgs; [
|
|
qt5.qtwayland
|
|
qt6.qtwayland
|
|
qt5ct
|
|
qt6ct
|
|
hyprshot
|
|
hyprpicker
|
|
swappy
|
|
imv
|
|
wf-recorder
|
|
wlr-randr
|
|
wl-clipboard
|
|
brightnessctl
|
|
gnome-themes-extra
|
|
libva
|
|
dconf
|
|
wayland-utils
|
|
wayland-protocols
|
|
glib
|
|
direnv
|
|
meson
|
|
];
|
|
|
|
wayland.windowManager.hyprland = {
|
|
enable = true;
|
|
xwayland.enable = true;
|
|
systemd.enable = true;
|
|
package = inputs.hyprland.packages."${pkgs.system}".hyprland;
|
|
|
|
settings = {
|
|
"$mod" = "SUPER";
|
|
"$shiftMod" = "SUPER_SHIFT";
|
|
|
|
exec-once = [ "${pkgs.bitwarden}/bin/bitwarden" ];
|
|
|
|
monitor = [
|
|
"eDP-2,highres,0x0,1"
|
|
"HDMI-A-1,3440x1440@99.98,auto,1"
|
|
",prefered,auto,1"
|
|
];
|
|
|
|
env = [
|
|
"XDG_SESSION_TYPE,wayland"
|
|
"XDG_CURRENT_DESKTOP,Hyprland"
|
|
"MOZ_ENABLE_WAYLAND,1"
|
|
"ANKI_WAYLAND,1"
|
|
"DISABLE_QT5_COMPAT,0"
|
|
"NIXOS_OZONE_WL,1"
|
|
"XDG_SESSION_TYPE,wayland"
|
|
"XDG_SESSION_DESKTOP,Hyprland"
|
|
"QT_AUTO_SCREEN_SCALE_FACTOR,1"
|
|
"QT_QPA_PLATFORM=wayland,xcb"
|
|
"QT_WAYLAND_DISABLE_WINDOWDECORATION,1"
|
|
"ELECTRON_OZONE_PLATFORM_HINT,auto"
|
|
"GTK_THEME,FlatColor:dark"
|
|
"GTK2_RC_FILES,/home/hadi/.local/share/themes/FlatColor/gtk-2.0/gtkrc"
|
|
"__GL_GSYNC_ALLOWED,0"
|
|
"__GL_VRR_ALLOWED,0"
|
|
"DISABLE_QT5_COMPAT,0"
|
|
"DIRENV_LOG_FORMAT,"
|
|
"WLR_DRM_NO_ATOMIC,1"
|
|
"WLR_BACKEND,vulkan"
|
|
"WLR_RENDERER,vulkan"
|
|
"WLR_NO_HARDWARE_CURSORS,1"
|
|
"XDG_SESSION_TYPE,wayland"
|
|
"SDL_VIDEODRIVER,wayland"
|
|
"CLUTTER_BACKEND,wayland"
|
|
"AQ_DRM_DEVICES,/dev/dri/card2" # CHANGEME: Related to the GPU
|
|
];
|
|
|
|
cursor = {
|
|
no_hardware_cursors = true;
|
|
default_monitor = "eDP-2";
|
|
};
|
|
|
|
general = {
|
|
resize_on_border = true;
|
|
gaps_in = gaps-in;
|
|
gaps_out = gaps-out;
|
|
border_size = border-size;
|
|
border_part_of_window = true;
|
|
layout = "master";
|
|
};
|
|
|
|
decoration = {
|
|
active_opacity = active-opacity;
|
|
inactive_opacity = inactive-opacity;
|
|
rounding = rounding;
|
|
drop_shadow = true;
|
|
shadow_range = 20;
|
|
shadow_render_power = 3;
|
|
blur = { enabled = if blur then "true" else "false"; };
|
|
};
|
|
|
|
master = {
|
|
new_status = true;
|
|
allow_small_split = true;
|
|
mfact = 0.5;
|
|
};
|
|
|
|
gestures = { workspace_swipe = true; };
|
|
|
|
misc = {
|
|
vfr = true;
|
|
disable_hyprland_logo = true;
|
|
disable_splash_rendering = true;
|
|
disable_autoreload = true;
|
|
focus_on_activate = true;
|
|
new_window_takes_over_fullscreen = 2;
|
|
};
|
|
|
|
input = {
|
|
kb_layout = keyboardLayout;
|
|
|
|
kb_options = "caps:escape";
|
|
follow_mouse = 1;
|
|
sensitivity = 0.5;
|
|
repeat_delay = 300;
|
|
repeat_rate = 50;
|
|
numlock_by_default = true;
|
|
|
|
touchpad = {
|
|
natural_scroll = true;
|
|
clickfinger_behavior = true;
|
|
};
|
|
};
|
|
|
|
};
|
|
};
|
|
systemd.user.targets.hyprland-session.Unit.Wants =
|
|
[ "xdg-desktop-autostart.target" ];
|
|
}
|