Skip to content

Commit cfc3790

Browse files
committed
init hyprland.conf
1 parent 9478361 commit cfc3790

File tree

1 file changed

+366
-0
lines changed

1 file changed

+366
-0
lines changed

hypr/.config/hypr/hyprland.conf

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

0 commit comments

Comments
 (0)