Skip to content

Commit 4c59bc1

Browse files
hyprland: practicalli config
No guarantee this config is still relevant, as hyprland is a moving target with breaking changes
1 parent 19470ab commit 4c59bc1

1 file changed

Lines changed: 332 additions & 0 deletions

File tree

hypr/hyprland-practicalli.conf

Lines changed: 332 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,332 @@
1+
# #######################################################################################
2+
# AUTOGENERATED HYPRLAND CONFIG.
3+
# EDIT THIS CONFIG ACCORDING TO THE WIKI INSTRUCTIONS.
4+
# #######################################################################################
5+
6+
# autogenerated = 1 # remove this line to remove the warning
7+
8+
# This is an example Hyprland config file.
9+
# Refer to the wiki for more information.
10+
# https://wiki.hypr.land/Configuring/
11+
12+
# Please note not all available settings / options are set here.
13+
# For a full list, see the wiki
14+
15+
# You can split this configuration into multiple files
16+
# Create your files separately and then link them to this file like this:
17+
# source = ~/.config/hypr/myColors.conf
18+
19+
20+
################
21+
### MONITORS ###
22+
################
23+
24+
# RogueOne
25+
# eDP-1 Lenovo Laptop screen
26+
# DP-2 - Dell Monitor 5k2k via DisplayLink
27+
28+
# See https://wiki.hypr.land/Configuring/Monitors/
29+
monitor=,preferred,auto,auto
30+
31+
32+
###################
33+
### MY PROGRAMS ###
34+
###################
35+
36+
# See https://wiki.hypr.land/Configuring/Keywords/
37+
38+
# Set programs that you use
39+
$terminal = kitty
40+
$webBrowser = firedragon
41+
$fileManager = thunar
42+
$menu = wofi --show drun
43+
$wallpaper = hyprpaper
44+
45+
46+
#################
47+
### AUTOSTART ###
48+
#################
49+
50+
# Autostart necessary processes (like notifications daemons, status bars, etc.)
51+
# Or execute your favorite apps at launch like this:
52+
53+
# exec-once = $terminal
54+
# exec-once = nm-applet &
55+
# exec-once = waybar & hyprpaper & firefox
56+
exec-once = waybar & hyprpaper
57+
58+
59+
#############################
60+
### ENVIRONMENT VARIABLES ###
61+
#############################
62+
63+
# See https://wiki.hypr.land/Configuring/Environment-variables/
64+
65+
env = XCURSOR_SIZE,24
66+
env = HYPRCURSOR_SIZE,24
67+
68+
69+
###################
70+
### PERMISSIONS ###
71+
###################
72+
73+
# See https://wiki.hypr.land/Configuring/Permissions/
74+
# Please note permission changes here require a Hyprland restart and are not applied on-the-fly
75+
# for security reasons
76+
77+
# ecosystem {
78+
# enforce_permissions = 1
79+
# }
80+
81+
# permission = /usr/(bin|local/bin)/grim, screencopy, allow
82+
# permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow
83+
# permission = /usr/(bin|local/bin)/hyprpm, plugin, allow
84+
85+
86+
#####################
87+
### LOOK AND FEEL ###
88+
#####################
89+
90+
# Refer to https://wiki.hypr.land/Configuring/Variables/
91+
92+
# https://wiki.hypr.land/Configuring/Variables/#general
93+
general {
94+
gaps_in = 8
95+
gaps_out = 12
96+
border_size = 2
97+
98+
# https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors
99+
100+
# Green
101+
# col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
102+
# col.inactive_border = rgba(595959aa)
103+
104+
# Green/Purple blend
105+
col.active_border = rgba(33ccffee) rgba(8f00ffee) 45deg
106+
col.inactive_border = rgba(595959aa)
107+
108+
# Set to true enable resizing windows by clicking and dragging on borders and gaps
109+
resize_on_border = false
110+
111+
# Please see https://wiki.hypr.land/Configuring/Tearing/ before you turn this on
112+
allow_tearing = false
113+
114+
layout = dwindle
115+
}
116+
117+
# https://wiki.hypr.land/Configuring/Variables/#decoration
118+
decoration {
119+
rounding = 10
120+
rounding_power = 2
121+
122+
# Change transparency of focused and unfocused windows
123+
active_opacity = 1.0
124+
inactive_opacity = 1.0
125+
126+
shadow {
127+
enabled = true
128+
range = 4
129+
render_power = 3
130+
color = rgba(1a1a1aee)
131+
}
132+
133+
# https://wiki.hypr.land/Configuring/Variables/#blur
134+
blur {
135+
enabled = true
136+
size = 3
137+
passes = 1
138+
139+
vibrancy = 0.1696
140+
}
141+
}
142+
143+
# https://wiki.hypr.land/Configuring/Variables/#animations
144+
animations {
145+
# enabled = yes, please :)
146+
enabled = true
147+
148+
# Default animations, see https://wiki.hypr.land/Configuring/Animations/ for more
149+
150+
bezier = easeOutQuint,0.23,1,0.32,1
151+
bezier = easeInOutCubic,0.65,0.05,0.36,1
152+
bezier = linear,0,0,1,1
153+
bezier = almostLinear,0.5,0.5,0.75,1.0
154+
bezier = quick,0.15,0,0.1,1
155+
156+
animation = global, 1, 10, default
157+
animation = border, 1, 5.39, easeOutQuint
158+
animation = windows, 1, 4.79, easeOutQuint
159+
animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
160+
animation = windowsOut, 1, 1.49, linear, popin 87%
161+
animation = fadeIn, 1, 1.73, almostLinear
162+
animation = fadeOut, 1, 1.46, almostLinear
163+
animation = fade, 1, 3.03, quick
164+
animation = layers, 1, 3.81, easeOutQuint
165+
animation = layersIn, 1, 4, easeOutQuint, fade
166+
animation = layersOut, 1, 1.5, linear, fade
167+
animation = fadeLayersIn, 1, 1.79, almostLinear
168+
animation = fadeLayersOut, 1, 1.39, almostLinear
169+
animation = workspaces, 1, 1.94, almostLinear, fade
170+
animation = workspacesIn, 1, 1.21, almostLinear, fade
171+
animation = workspacesOut, 1, 1.94, almostLinear, fade
172+
}
173+
174+
# Ref https://wiki.hypr.land/Configuring/Workspace-Rules/
175+
# "Smart gaps" / "No gaps when only"
176+
# uncomment all if you wish to use that.
177+
# workspace = w[tv1], gapsout:0, gapsin:0
178+
# workspace = f[1], gapsout:0, gapsin:0
179+
# windowrule = bordersize 0, floating:0, onworkspace:w[tv1]
180+
# windowrule = rounding 0, floating:0, onworkspace:w[tv1]
181+
# windowrule = bordersize 0, floating:0, onworkspace:f[1]
182+
# windowrule = rounding 0, floating:0, onworkspace:f[1]
183+
184+
# See https://wiki.hypr.land/Configuring/Dwindle-Layout/ for more
185+
dwindle {
186+
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
187+
preserve_split = true # You probably want this
188+
}
189+
190+
# See https://wiki.hypr.land/Configuring/Master-Layout/ for more
191+
master {
192+
new_status = master
193+
}
194+
195+
# https://wiki.hypr.land/Configuring/Variables/#misc
196+
misc {
197+
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
198+
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
199+
}
200+
201+
202+
#############
203+
### INPUT ###
204+
#############
205+
206+
# https://wiki.hypr.land/Configuring/Variables/#input
207+
input {
208+
# Keyboard setup
209+
kb_layout = us
210+
kb_variant =
211+
kb_model =
212+
kb_options =
213+
kb_rules =
214+
215+
# Mouse input
216+
follow_mouse = 1
217+
natural_scroll = true
218+
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
219+
220+
touchpad {
221+
natural_scroll = true
222+
}
223+
}
224+
225+
# https://wiki.hypr.land/Configuring/Variables/#gestures
226+
gestures {
227+
workspace_swipe = true
228+
}
229+
230+
# Example per-device config
231+
# See https://wiki.hypr.land/Configuring/Keywords/#per-device-input-configs for more
232+
device {
233+
name = epic-mouse-v1
234+
sensitivity = -0.5
235+
}
236+
237+
238+
###################
239+
### KEYBINDINGS ###
240+
###################
241+
242+
# See https://wiki.hypr.land/Configuring/Keywords/
243+
$mainMod = SUPER # Sets "Windows" key as main modifier
244+
245+
# Example binds, see https://wiki.hypr.land/Configuring/Binds/ for more
246+
# bind = $mainMod, Q, exec, $terminal # autogenerated
247+
bind = $mainMod, return, exec, $terminal
248+
bind = $mainMod, W, exec, $webBrowser
249+
bind = $mainMod, C, killactive,
250+
bind = $mainMod, M, exit,
251+
bind = $mainMod, E, exec, $fileManager
252+
bind = $mainMod, V, togglefloating,
253+
# bind = $mainMod, R, exec, $menu # autogenerated
254+
bind = $mainMod, space, exec, $menu
255+
bind = $mainMod, P, pseudo, # dwindle
256+
bind = $mainMod, J, togglesplit, # dwindle
257+
258+
# Move focus with mainMod + arrow keys
259+
bind = $mainMod, left, movefocus, l
260+
bind = $mainMod, right, movefocus, r
261+
bind = $mainMod, up, movefocus, u
262+
bind = $mainMod, down, movefocus, d
263+
264+
# Switch workspaces with mainMod + [0-9]
265+
bind = $mainMod, 1, workspace, 1
266+
bind = $mainMod, 2, workspace, 2
267+
bind = $mainMod, 3, workspace, 3
268+
bind = $mainMod, 4, workspace, 4
269+
bind = $mainMod, 5, workspace, 5
270+
bind = $mainMod, 6, workspace, 6
271+
bind = $mainMod, 7, workspace, 7
272+
bind = $mainMod, 8, workspace, 8
273+
bind = $mainMod, 9, workspace, 9
274+
bind = $mainMod, 0, workspace, 10
275+
276+
# Move active window to a workspace with mainMod + SHIFT + [0-9]
277+
bind = $mainMod SHIFT, 1, movetoworkspace, 1
278+
bind = $mainMod SHIFT, 2, movetoworkspace, 2
279+
bind = $mainMod SHIFT, 3, movetoworkspace, 3
280+
bind = $mainMod SHIFT, 4, movetoworkspace, 4
281+
bind = $mainMod SHIFT, 5, movetoworkspace, 5
282+
bind = $mainMod SHIFT, 6, movetoworkspace, 6
283+
bind = $mainMod SHIFT, 7, movetoworkspace, 7
284+
bind = $mainMod SHIFT, 8, movetoworkspace, 8
285+
bind = $mainMod SHIFT, 9, movetoworkspace, 9
286+
bind = $mainMod SHIFT, 0, movetoworkspace, 10
287+
288+
# Example special workspace (scratchpad)
289+
bind = $mainMod, S, togglespecialworkspace, magic
290+
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
291+
292+
# Scroll through existing workspaces with mainMod + scroll
293+
bind = $mainMod, mouse_down, workspace, e+1
294+
bind = $mainMod, mouse_up, workspace, e-1
295+
296+
# Move/resize windows with mainMod + LMB/RMB and dragging
297+
bindm = $mainMod, mouse:272, movewindow
298+
bindm = $mainMod, mouse:273, resizewindow
299+
300+
# Laptop multimedia keys for volume and LCD brightness
301+
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
302+
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
303+
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
304+
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
305+
bindel = ,XF86MonBrightnessUp, exec, brightnessctl -e4 -n2 set 5%+
306+
bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%-
307+
308+
# Requires playerctl
309+
bindl = , XF86AudioNext, exec, playerctl next
310+
bindl = , XF86AudioPause, exec, playerctl play-pause
311+
bindl = , XF86AudioPlay, exec, playerctl play-pause
312+
bindl = , XF86AudioPrev, exec, playerctl previous
313+
314+
##############################
315+
### WINDOWS AND WORKSPACES ###
316+
##############################
317+
318+
# See https://wiki.hypr.land/Configuring/Window-Rules/ for more
319+
# See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules
320+
321+
# Example windowrule
322+
# windowrule = float,class:^(kitty)$,title:^(kitty)$
323+
324+
# Ignore maximize requests from apps. You'll probably like this.
325+
windowrule = suppressevent maximize, class:.*
326+
327+
# Fix some dragging issues with XWayland
328+
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
329+
330+
331+
# Garuda Linux - Authentication
332+
exec-once =/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1

0 commit comments

Comments
 (0)