summaryrefslogtreecommitdiff
path: root/.config/hypr
diff options
context:
space:
mode:
Diffstat (limited to '.config/hypr')
-rw-r--r--.config/hypr/hyprland.conf68
1 files changed, 38 insertions, 30 deletions
diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf
index f13bc8e..adc9e77 100644
--- a/.config/hypr/hyprland.conf
+++ b/.config/hypr/hyprland.conf
@@ -67,26 +67,29 @@ env = WLR_NO_HARDWARE_CURSORS,1
# permission = /usr/(bin|local/bin)/grim, screencopy, allow
# permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow
# permission = /usr/(bin|local/bin)/hyprpm, plugin, allow
+
+
#####################
### LOOK AND FEEL ###
#####################
-# Refer to https://wiki.hyprland.org/Configuring/Variables/
+# Refer to https://wiki.hypr.land/Configuring/Variables/
+# https://wiki.hypr.land/Configuring/Variables/#general
general {
gaps_in = 5
gaps_out = 20
border_size = 2
- # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
+ # https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)
# Set to true enable resizing windows by clicking and dragging on borders and gaps
resize_on_border = false
- # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
+ # Please see https://wiki.hypr.land/Configuring/Tearing/ before you turn this on
allow_tearing = false
layout = master
@@ -101,7 +104,7 @@ master {
inherit_fullscreen=true
}
-# https://wiki.hyprland.org/Configuring/Variables/#decoration
+# https://wiki.hypr.land/Configuring/Variables/#decoration
decoration {
rounding = 3
#multisample_edges = true
@@ -118,7 +121,7 @@ decoration {
color = rgba(1a1a1aee)
}
- # https://wiki.hyprland.org/Configuring/Variables/#blur
+ # https://wiki.hypr.land/Configuring/Variables/#blur
blur {
enabled = true
size = 4
@@ -128,8 +131,8 @@ decoration {
}
}
+# https://wiki.hypr.land/Configuring/Variables/#animations
animations {
- #enabled = true
enabled = yes, please :)
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
@@ -168,7 +171,7 @@ animations {
}
-# https://wiki.hyprland.org/Configuring/Variables/#misc
+# https://wiki.hypr.land/Configuring/Variables/#misc
misc {
# enable_swallow = true
# swallow_regex = ^(foot)$
@@ -181,7 +184,7 @@ misc {
### INPUT ###
#############
-# https://wiki.hyprland.org/Configuring/Variables/#input
+# https://wiki.hypr.land/Configuring/Variables/#input
input {
kb_layout = us
kb_variant =
@@ -215,7 +218,7 @@ binds {
}
# Example per-device config
-# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
+# See https://wiki.hypr.land/Configuring/Keywords/#per-device-input-configs for more
#device {
# name = epic-mouse-v1
# sensitivity = -0.5
@@ -237,10 +240,10 @@ device {
### KEYBINDINGS ###
###################
-# See https://wiki.hyprland.org/Configuring/Keywords/
+# See https://wiki.hypr.land/Configuring/Keywords/
$MOD = SUPER
-# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
+# Example binds, see https://wiki.hypr.land/Configuring/Binds/ for more
###############
@@ -340,11 +343,12 @@ binde = ,XF86MonBrightnessDown, exec, brillo -U 4 && dunstify -u normal -t 3000
bind = $MOD, F2 , exec, rofi -show calc -modi calc -no-show-match -no-sort -calc-command "echo -n '{result}' | wl-copy"
bind = , XF86Calculator, exec, rofi -show calc -modi calc -no-show-match -no-sort -calc-command "echo -n '{result}' | wl-copy"
-#Toggle play/pause in spotify (universal)
-bind = , XF86AudioPlay, exec, playerctl -p spotify play-pause
-# Change tracks spotify only
-bind = , XF86AudioPrev, exec, playerctl -p spotify previous
-bind = , XF86AudioNext, exec, playerctl -p spotify next
+# Toggle play/pause in Spotify or Chromium (fallback)
+bind = , XF86AudioPlay, exec, if playerctl -p spotify status > /dev/null 2>&1; then playerctl -p spotify play-pause; else playerctl -p chromium play-pause; fi
+
+# Change tracks in Spotify or Chromium (fallback)
+bind = , XF86AudioPrev, exec, if playerctl -p spotify status > /dev/null 2>&1; then playerctl -p spotify previous; else playerctl -p chromium previous; fi
+bind = , XF86AudioNext, exec, if playerctl -p spotify status > /dev/null 2>&1; then playerctl -p spotify next; else playerctl -p chromium next; fi
#bluetooth applet
bind = $MOD, F9, exec, blueman-manager
@@ -429,22 +433,26 @@ submap=reset
### WINDOWS AND WORKSPACES ###
##############################
-# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
-# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
-
-# Example windowrule v1
-# windowrule = float, ^(kitty)$
+# See https://wiki.hypr.land/Configuring/Window-Rules/ for more
+# See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules
-# Example windowrule v2
-# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
+# Example windowrules that are useful
+# Suppress maximize events
+windowrule = suppressevent maximize, class:.*
-# Ignore maximize requests from apps. You'll probably like this.
-windowrulev2 = suppressevent maximize, class:.*
-# Spotify does not follow window rules. This is because the client sets its class after the window has opened, thus making it “immune” to windowrules.
-windowrulev2=workspace 9,class:^(Spotify)$
-windowrulev2=opacity 1.0 1.0,class:^(obsidian)$
-windowrule = pin,floating,move 1232 615,size 687 467,class:mpv
-#windowrulev2=workspace 9,class:^(Spotify)$,title:^(Spotify)$
+# Fix some dragging issues with XWayland
+windowrule = nofocus, class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
+
+# Move Hyprland-run
+windowrule = move 20 monitor_h-120,class:hyprland-run
+windowrule = float,class:hyprland-run
+
+# Spotify to workspace 9
+windowrule = workspace 9,class:^(spotify)$
+# Obsidian opacity
+windowrule = opacity 1.0 override 1.0 override,class:^(obsidian)$
+# MPV player floating -> spawn bottomright
+windowrule = pin,float,move 1232 615,size 687 467,class:mpv
# "Smart gaps" / "No gaps when only"
workspace = w[t1], gapsout:0, gapsin:0