{ inputs, pkgs, ... }: { imports = [./autostart.nix ./binds.nix]; home.packages = [ inputs.hyprwm-contrib.packages.${pkgs.system}.grimblast # disable unused panels - https://github.com/maydayv7/dotfiles/blob/4de45008a6915753834aa7e1cbafbacfff8b7adc/modules/gui/desktop/hyprland/apps/utilities.nix#L42-L57 (pkgs.gnome-control-center.overrideAttrs (old: { postInstall = old.postInstall + '' dir=$out/share/applications for panel in $dir/* do [ "$panel" = "$dir/gnome-network-panel.desktop" ] && continue [ "$panel" = "$dir/gnome-bluetooth-panel.desktop" ] && continue [ "$panel" = "$dir/gnome-wifi-panel.desktop" ] && continue [ "$panel" = "$dir/gnome-wwan-panel.desktop" ] && continue [ "$panel" = "$dir/gnome-sharing-panel.desktop" ] && continue [ "$panel" = "$dir/gnome-wacom-panel.desktop" ] && continue rm "$panel" done ''; })) ]; wayland.windowManager.hyprland = { enable = true; xwayland.enable = true; systemd.enable = false; settings = { xwayland = { force_zero_scaling = true; }; env = [ "GDK_SCALE,1" ]; monitor = [ "eDP-1, preferred, auto, 1.33" ]; workspace = [ "special:terminal, on-created-empty:foot" "special:mixer_gui, on-created-empty:pavucontrol" "special:file_manager_gui, on-created-empty:nautilus" "special:file_manager_tui, on-created-empty:foot -- yazi" ]; windowrulev2 = [ # fixes fullscreen windows (mostly games) "stayfocused, initialtitle:^()$, initialclass:^(steam)$" "minsize 1 1, initialtitle:^()$, initialclass:^(steam)$" "maximize, initialtitle:^(\S+)$, initialclass:^(steamwebhelper)$" "immediate, initialclass:^(steam_app_)(.*)$" "fullscreen, initialclass:^(steam_app_)(.*)$" # inhibit idle on every fullscreen app except games "idleinhibit always, fullscreen:1,!initialclass:^(steam_app_)(.*)$" ]; render = { explicit_sync = 1; explicit_sync_kms = 1; expand_undersized_textures = false; }; animations = { enabled = true; bezier = "myBezier, 0.05, 0.9, 0.1, 1.1"; animation = [ "windows, 1, 5, myBezier" "windowsOut, 1, 5, default, popin 80%" "windowsMove, 1, 5, default, popin 80%" "fade, 1, 5, default" "border, 1, 5, default" "borderangle, 0, 8, default" "workspaces, 0" "specialWorkspace, 0" ]; }; input = { kb_options = "compose:ralt"; touchpad = { natural_scroll = true; scroll_factor = 0.8; tap-to-click = true; clickfinger_behavior = true; }; }; gestures = { workspace_swipe = true; workspace_swipe_direction_lock = false; workspace_swipe_cancel_ratio = 0.15; }; misc = { force_default_wallpaper = 0; disable_hyprland_logo = true; middle_click_paste = false; }; }; }; }