{ pkgs, inputs, ... }: { wayland.windowManager.hyprland = { enable = true; package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland; portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland; settings = { monitor = [ "eDP-1,1920x1080@60,0x0,1.00" "Virtual-1,1920x1080@60,0x0,1.00" ]; exec-once = [ "waybar" ]; env = [ # Nvidia stuff "LIBVA_DRIVER_NAME,nvidia" "__GLX_VENDOR_LIBRARY_NAME,nvidia" # cursor "XCURSOR_SIZE,24" "HYPRCURSOR_SIZE,24" ]; "$mainMod" = "SUPER"; "$terminal" = "kitty"; "$menu" = "wofi --show drun"; general = { gaps_in = 0; gaps_out = 0; border_size = 2; # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors "col.active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg"; "col.inactive_border" = "rgba(595959aa)"; # Set to true enable resizing windows by clicking and dragging on borders and gaps resize_on_border = false; # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on allow_tearing = false; layout = "dwindle"; }; decoration = { rounding = 0; rounding_power = 0; # Change transparency of focused and unfocused windows active_opacity = 1.0; inactive_opacity = 1.0; shadow = { enabled = true; range = 4; render_power = 3; color = "rgba(1a1a1aee)"; }; # https://wiki.hyprland.org/Configuring/Variables/#blur blur = { enabled = true; size = 3; passes = 1; vibrancy = 0.1696; }; }; misc = { force_default_wallpaper = 0; disable_hyprland_logo = true; }; input = { kb_layout = "us"; kb_variant = ""; kb_model = ""; kb_options = ""; kb_rules = ""; follow_mouse = 1; sensitivity = 0; # -1.0 - 1.0, 0 means no modification. touchpad = { natural_scroll = false; }; }; bind = [ "$mainMod, Q, exec, $terminal" "$mainMod, C, killactive," "$mainMod, M, exit," "$mainMod, V, togglefloating," "$mainMod, R, exec, $menu" "$mainMod, P, pseudo, # dwindle" "$mainMod, J, togglesplit, # dwindle" # Move focus with mainMod + arrow keys "$mainMod, left, movefocus, l" "$mainMod, right, movefocus, r" "$mainMod, up, movefocus, u" "$mainMod, down, movefocus, d" # Switch workspaces with mainMod + [0-9] "$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" # Move active window to a workspace with mainMod + SHIFT + [0-9] "$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" ]; }; }; home.pointerCursor = { gtk.enable = true; # x11.enable = true; package = pkgs.bibata-cursors; name = "Bibata-Modern-Classic"; size = 16; }; gtk = { enable = true; theme = { package = pkgs.flat-remix-gtk; name = "Flat-Remix-GTK-Grey-Darkest"; }; iconTheme = { package = pkgs.adwaita-icon-theme; name = "Adwaita"; }; font = { name = "Sans"; size = 11; }; }; programs = { waybar = { enable = true; }; wofi = { enable = true; }; }; services = { dunst = { enable = true; }; hyprpaper = { enable = true; settings = { ipc = "on"; splash = true; preload =[ "~/wallpapers/brown_city_planet_w.jpg" ]; wallpaper = [ ", ~/wallpapers/brown_city_planet_w.jpg" ]; }; }; }; }