{inputs, pkgs, ...}: { programs.kitty.enable = true; wayland.windowManager.hyprland = { enable = true; systemd.enable = true; settings = { "$mod" = "SUPER"; bind = [ "$mod, F, exec, firefox" "$mod, return, exec, walker" "$mod_SHIFT, return, exec, kitty" "$mod, s, exec, code" "$mod, Q, killactive," # Close window "$mod, T, togglefloating," # Toggle Floating "$mod, left, movefocus, l" # Move focus left "$mod, right, movefocus, r" # Move focus Right "$mod, up, movefocus, u" # Move focus Up "$mod, down, movefocus, d" # Move focus Down # "$shiftMod, up, focusmonitor, -1" # Focus previous monitor # "$shiftMod, down, focusmonitor, 1" # Focus next monitor # "$shiftMod, left, layoutmsg, addmaster" # Add to master # "$shiftMod, right, layoutmsg, removemaster" # Remove from master ]; 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; }; # plugin.virtual-desktops = {} 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 = "/"; }; # If this is not set the default styling is used. # style = '' # * { # color: #dcd7ba; # } # ''; }; 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; }; }