# $DOTFILES/platforms/linux/hyprland/hypr/hyprland.conf # Date: 2024-12-22 # Author: js0ny # Hyprland Window Manager Configuration # Location: # $XDG_CONFIG_HOME/hypr/hyprland.conf # Linking: (Link the whole `hypr` directory) # ln -sf $DOTFILES/platforms/linux/hypr $XDG_CONFIG_HOME/hypr # ####################################################################################### # AUTOGENERATED HYPRLAND CONFIG. # PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hyprland.conf AND EDIT IT, # OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS. # ####################################################################################### $mainMod = SUPER # Sets "Windows" key as main modifier $terminal = kitty $fileManager = dolphin $menu = rofi $iconTheme = Papirus source=~/.config/hypr/hyprland/current.conf source=~/.config/hypr/hyprland/keymaps.conf source=~/.config/hypr/hyprland/+qwerty.conf source=~/.config/hypr/hyprland/rules.conf autogenerated = 0 # remove this line to remove the warning # This is an example Hyprland config file. # Refer to the wiki for more information. # https://wiki.hyprland.org/Configuring/ # Please note not all available settings / options are set here. # For a full list, see the wiki xwayland { force_zero_scaling = true } ################ ### MONITORS ### ################ # See https://wiki.hyprland.org/Configuring/Monitors/ # # monitor=,preferred,auto,auto # Format: # MONITOR_NAME,RESOLUTION@REFRESH_RATE,OFFSET_XxOFFSET_Y,SCALE monitor=DP-2,3840x2160@60,0x0,1.667 monitor=eDP-1,disable ################### ### MY PROGRAMS ### ################### # See https://wiki.hyprland.org/Configuring/Keywords/ # Set programs that you use ################# ### AUTOSTART ### ################# # Autostart necessary processes (like notifications daemons, status bars, etc.) # Or execute your favorite apps at launch like this: # exec-once = $terminal # exec-once = nm-applet & # Top Bar exec-once = waybar & # Notifications # exec-once = dunst & # exec-once = hyprpanel & # wallpapers exec-once = swww-daemon & exec-once = hypridle & # Authentication agent exec-once = systemctl --user start hyprpolkitagent # Input Method exec-once = fcitx5 & # Clipboard history (called by wofi) exec-once = wl-paste --watch cliphist store # exec-once = QT_SCALE_FACTOR=1 albert & # Bluetooth Manager exec-once = blueman-applet & ############################# ### ENVIRONMENT VARIABLES ### ############################# # See https://wiki.hyprland.org/Configuring/Environment-variables/ # env = XCURSOR_SIZE,24 env = HYPRCURSOR_SIZE,24 env = QT_QPA_PLATFORMTHEME,qt6ct # for Qt apps env = QT_QUICK_CONTROLS_STYLE,org.kde.desktop env = LC_CTYPE,en_GB.UTF-8 ##################### ### LOOK AND FEEL ### ##################### # Refer to https://wiki.hyprland.org/Configuring/Variables/ # https://wiki.hyprland.org/Configuring/Variables/#general general { gaps_in = 0 gaps_out = 0 border_size = 5 # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors col.active_border = $lavender $pink 45deg col.inactive_border = $overlay1 # Set to true enable resizing windows by clicking and dragging on borders and gaps resize_on_border = true # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on allow_tearing = false layout = dwindle no_border_on_floating = false } # https://wiki.hyprland.org/Configuring/Variables/#decoration decoration { rounding = 20 # Change transparency of focused and unfocused windows # active_opacity = 1 # inactive_opacity = 0.9 active_opacity = 0.9 inactive_opacity = 0.85 shadow { enabled = true range = 4 render_power = 3 color = $base } # https://wiki.hyprland.org/Configuring/Variables/#blur blur { enabled = true size = 10 passes = 2 vibrancy = 0.1696 } } # https://wiki.hyprland.org/Configuring/Variables/#animations animations { enabled = yes, please :) # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more bezier = easeOutQuint,0.23,1,0.32,1 bezier = easeInOutCubic,0.65,0.05,0.36,1 bezier = linear,0,0,1,1 bezier = almostLinear,0.5,0.5,0.75,1.0 bezier = quick,0.15,0,0.1,1 animation = global, 1, 10, default animation = border, 1, 5.39, easeOutQuint animation = windows, 1, 4.79, easeOutQuint animation = windowsIn, 1, 4.1, easeOutQuint, popin 87% # animation = windowsIn, 1, 4.1, easeOutQuint, popin 87% animation = windowsOut, 1, 1.49, linear, popin 87% animation = fadeIn, 1, 1.73, almostLinear animation = fadeOut, 1, 1.46, almostLinear animation = fade, 1, 3.03, quick animation = layers, 1, 3.81, easeOutQuint animation = layersIn, 1, 4, easeOutQuint, fade animation = layersOut, 1, 1.5, linear, fade animation = fadeLayersIn, 1, 1.79, almostLinear animation = fadeLayersOut, 1, 1.39, almostLinear animation = workspaces, 1, 1.94, almostLinear, slide animation = workspacesIn, 1, 1.21, almostLinear, fade animation = workspacesOut, 1, 1.94, almostLinear, fade animation = specialWorkspace, 1, 1.94, almostLinear, fade } # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more dwindle { pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below preserve_split = true # You probably want this } # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more master { new_status = slave } # https://wiki.hyprland.org/Configuring/Variables/#misc misc { force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :( } ############# ### INPUT ### ############# # https://wiki.hyprland.org/Configuring/Variables/#input 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 = true scroll_factor = 0.2 } } # gesture = 4, horizontal, workspace # https://wiki.hyprland.org/Configuring/Variables/#gestures gestures { workspace_swipe = true workspace_swipe_fingers = 4 } # Example per-device config # See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more # device { # name = epic-mouse-v1 # sensitivity = -0.5 # } # gesture = 3, horizontal, workspace # gesture = 3, down, mod: ALT, close # gesture = 3, up, mod: SUPER, scale: 1.5, fullscreen # gesture = 3, left, scale: 1.5, float windowrulev2 = opaque, workspace:2 windowrulev2 = float, workspace:10 windowrulev2 = opacity 0.95 0.4 0.7, workspace:10 windowrulev2 = bordersize 3, workspace:10 windowrulev2 = xray, workspace:10 windowrulev2 = noblur, workspace:10 bind = $mainMod SHIFT, BACKSLASH, togglegroup bind = $mainMod, BACKSLASH, changegroupactive, f bind = $mainMod, BRACKETRIGHT, exec, notify-send "$(hyprctl activewindow)"