{inputs, pkgs, ...}: { programs.kitty.enable = true; home.packages = [ pkgs.hyprshot pkgs.nautilus pkgs.gnome-control-center pkgs.brightnessctl ]; wayland.windowManager.hyprland = { enable = true; systemd.enable = true; settings = { "$mod" = "SUPER"; # Global bindings bind = [ "$mod, return, exec, walker" "$mod+Shift, return, exec, kitty" "$mod, F, exec, firefox" "$mod, s, exec, code" "$mod, e, exec, nautilus" "$mod+Shift, Q, killactive," # Close window "$mod+Shift, T, togglefloating," # Toggle Floating # Move the focus "$mod, left, movefocus, l" "$mod, right, movefocus, r" "$mod, up, movefocus, u" "$mod, down, movefocus, d" # Move the window "$mod+Shift, left, movewindow, l" "$mod+Shift, right, movewindow, r" "$mod+Shift, up, movewindow, u" "$mod+Shift, down, movewindow, d" # Switch workspace "$mod+Ctrl, left, workspace, -1" "$mod+Ctrl, right, workspace, +1" # Screenshot "$mod, Print, exec, hyprshot -m region -o ~/Pictures/Screenshots" "$mod+Shift, Print, exec, hyprshot -m window -o ~/Pictures/Screenshots" ]; general = { resize_on_border = true; gaps_in = 5; gaps_out = 5; border_size = 1; layout = "master"; }; misc = { disable_hyprland_logo = true; }; input = { kb_layout = "de"; kb_options = "caps:control"; numlock_by_default = true; # mouse input should be unchanged natural_scroll = false; touchpad = { disable_while_typing = false; natural_scroll = true; }; }; gestures = { workspace_swipe = true; workspace_swipe_fingers = 4; workspace_swipe_touch = true; }; decoration = { rounding = 5; }; monitor = [ "eDP-1, highres, 0x0, 1.5" # the internal laptop monitor ", preferred, auto, 1" # automatically add any newly detected monitor ]; }; plugins = [ # Touch gestures: https://github.com/horriblename/hyprgrass # inputs.hyprgrass.packages.${pkgs.system}.default # Virtual desktops: https://github.com/levnikmyskin/hyprland-virtual-desktops # inputs.hyprland-virtual-desktops.packages.${pkgs.system}.virtual-desktops ]; }; imports = [ inputs.hyprpanel.homeManagerModules.hyprpanel ]; # the overlay makes this available as a home manager module programs.hyprpanel = { enable = true; # autostart after hyprland hyprland.enable = true; overwrite.enable = true; overlay.enable = true; theme = "monochrome"; settings = { bar = { clock.format = "%H:%M"; clock.showIcon = false; launcher.icon = "🚀"; launcher.autoDetectIcon = true; workspaces.show_icons = true; }; }; layout = { "bar.layouts" = { "*" = { left = ["workspaces"]; middle = ["clock"]; right = ["volume" "systray" "nm-applet" "notifications" ]; }; }; }; }; programs.walker = { enable = true; runAsService = true; # All options from the config.json can be used here. config = { search.placeholder = "Search"; ui.fullscreen = true; list = { height = 200; }; websearch.prefix = "?"; switcher.prefix = "/"; }; }; programs.hyprlock = { enable = true; settings = { general = { grace = 5; no_fade_in = false; disable_loading_bar = false; }; }; # Style the lock screen }; services.network-manager-applet = { enable = true; }; }