source = ~/.config/hypr/monitors.conf workspace = 1, monitor:eDP-1 workspace = 2, monitor:eDP-1 workspace = 3, monitor:eDP-1 workspace = 4, monitor:HDMI-A-1 workspace = 5, monitor:HDMI-A-1 workspace = 6, monitor:HDMI-A-1 xwayland { force_zero_scaling = true } misc { vrr = 2 # 0: off, 1: on, 2: fullscreen only } # --- IDENTITÉ DE LA SESSION --- env = XDG_SESSION_TYPE,wayland env = XDG_CURRENT_DESKTOP,Hyprland env = XDG_SESSION_DESKTOP,Hyprland # --- HARDWARE & GPU (Stabilité Hybride) --- env = LIBVA_DRIVER_NAME,nvidia env = __GLX_VENDOR_LIBRARY_NAME,nvidia env = NVD_BACKEND,direct # --- TOOLKIT & RENDU --- env = QT_QPA_PLATFORM,wayland;xcb env = GDK_BACKEND,wayland,x11 env = SDL_VIDEODRIVER,wayland env = CLUTTER_BACKEND,wayland # --- THEME --- env = GTK_THEME,Adwaita:dark env = QT_STYLE_OVERRIDE,adwaita-dark # --- CURSOR --- env = XCURSOR_THEME,Adwaita env = XCURSOR_SIZE,24 # --- LANCEMENT AUTOMATIQUE --- exec-once = waybar & exec-once = mako & exec-once = ~/scripts/hypridle-launch & exec-once = nm-applet --indicator & exec-once = blueman-applet & exec-once = /usr/lib/polkit-kde-authentication-agent-1 & exec-once = wl-paste --type text --watch cliphist store & exec-once = wl-paste --type image --watch cliphist store & exec-once = dex -a & exec-once = ~/.config/hypr/scripts/wallpaper.sh & exec-once = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' exec-once = gsettings set org.gnome.desktop.interface gtk-theme 'Adwaita-dark's # --- CLAVIER & TRACKPAD --- input { kb_layout = fr kb_options = caps:shiftlock numlock_by_default = true follow_mouse = 1 touchpad { natural_scroll = true tap-to-click = true } numlock_by_default = true scroll_factor = 1.0 } # --- RACCOURCIS CLAVIER --- $mainMod = SUPER bind = $mainMod, C, exec, alacritty bind = $mainMod, Q, killactive, bind = $mainMod, E, exec, thunar bind = $mainMod, X, togglefloating, bind = $mainMod, D, exec, rofi -show drun bind = $mainMod, L, exec, hyprlock bind = $mainMod, M, exit, bind = $mainMod, ugrave, exec, systemctl poweroff bind = $mainMod, asterisk, exec, systemctl reboot bind = $mainMod, V, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy # Navigation Workspaces (AZERTY) bind = $mainMod, ampersand, workspace, 1 bind = $mainMod, eacute, workspace, 2 bind = $mainMod, quotedbl, workspace, 3 bind = $mainMod, apostrophe, workspace, 4 bind = $mainMod, parenleft, workspace, 5 bind = $mainMod, minus, workspace, 6 # Déplacement fenêtres vers Workspaces (SHIFT + AZERTY) bind = $mainMod SHIFT, ampersand, movetoworkspace, 1 bind = $mainMod SHIFT, eacute, movetoworkspace, 2 bind = $mainMod SHIFT, quotedbl, movetoworkspace, 3 bind = $mainMod SHIFT, apostrophe, movetoworkspace, 4 bind = $mainMod SHIFT, parenleft, movetoworkspace, 5 bind = $mainMod SHIFT, minus, movetoworkspace, 6 # Gestion fenêtres bind = $mainMod SHIFT, Right, resizeactive, 50 0 bind = $mainMod SHIFT, Left, resizeactive, -50 0 bind = $mainMod SHIFT, Up, resizeactive, 0 -50 bind = $mainMod SHIFT, Down, resizeactive, 0 50 bind = $mainMod SHIFT, F, togglefloating bind = $mainMod SHIFT, G, pin bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindowss # Screenshot bind = , Print, exec, grim -g "$(slurp)" - | wl-copy # Display mode bind = $mainMod, P, exec, ~/.config/hypr/scripts/display-mode.sh # Contrôles Hardware bindel = , XF86MonBrightnessUp, exec, brightnessctl set 5%+ bindel = , XF86MonBrightnessDown, exec, brightnessctl set 5%- bindel = , XF86AudioRaiseVolume, exec, pamixer -i 5 bindel = , XF86AudioLowerVolume, exec, pamixer -d 5 bindl = , XF86AudioMute, exec, pamixer -t windowrule = workspace 1, match:class ^(Alacritty)$ windowrule = workspace 2, match:title ^(Obsidian)$ windowrule = workspace 3, match:title ^(Beeper)$ windowrule = workspace 4, match:class ^(firefox)$ windowrule = workspace 5, match:class ^(org.inkscape.Inkscape)$ windowrule = workspace 6, match:title ^(ncspot)$ windowrule = workspace 6, match:title ^(Kasts)$ # --- APPARENCE (Catppuccin Mocha) --- general { gaps_in = 0 gaps_out = 0 border_size = 0 # Pas de bordure comme demandé col.active_border = rgb(cba6f7) rgb(89b4fa) 45deg col.inactive_border = rgba(1e1e2eaa) layout = dwindle } decoration { rounding = 3 active_opacity = 1.0 inactive_opacity = 1.0 shadow { enabled = false range = 4 render_power = 3 color = rgba(1a1a1aee) } blur { enabled = false size = 3 passes = 1 } } cursor { no_hardware_cursors = true }