diff --git a/config/dunst/dunstrc b/config/dunst/dunstrc
index cd0e508..e2f0f2a 100644
--- a/config/dunst/dunstrc
+++ b/config/dunst/dunstrc
@@ -1,46 +1,79 @@
+# vim: ft=ini
+
[global]
- monitor = 0
- follow = mouse
- geometry = "250x50-5+30"
- indicate_hidden = yes
- shrink = no
- transparency = 0
- notification_height = 0
- separator_height = 4
- padding = 16
- horizontal_padding = 16
- frame_width = 2
- frame_color = "#1F2324"
- separator_color = frame
- sort = yes
- idle_threshold = 120
- font = Roboto 8
- line_height = 4
- markup = full
- format = "%s\n%b"
- alignment = left
- show_age_threshold = 60
- word_wrap = yes
- ignore_newline = no
- stack_duplicates = false
- hide_duplicate_count = false
- show_indicators = yes
- icon_position = off
- always_run_script = true
- startup_notification = false
- force_xinerama = false
+font = Jetbrains 14
+icon_theme = "Papirus-Dark"
+enable_recursive_icon_lookup = true
+show_age_threshold = 60
+markup = full
+word_wrap = yes
+ignore_newline = no
+stack_duplicates = false
+hide_duplicate_count = false
+shrink = no
+idle_threshold = 120
+follow = mouse
+
+mouse_left_click = close_all
+mouse_right_click = do_action
+
+sticky_history = yes
+history_length = 10
+line_height = 4
+separator_height = 4
+padding = 15
+horizontal_padding = 15
+separator_color = auto
+startup_notification = true
+
+browser = x-www-browser -new-tab
+
+icon_position = left
+max_icon_size = 48
+
+frame_width = 0
+
+always_run_script = true
+title = Dunst
+class = Dunst
+
+geometry = "250x50-5+30"
+origin = top-right
+offset = 9x14
+width = (0,500)
+
+# Display indicators for URLs (U) and actions (A).
+show_indicators = no
+
+# %a appname
+# %s summary
+# %b body
+# %i iconname (including its path)
+# %I iconname (without its path)
+# %p progress value if set ([ 0%] to [100%]) or nothing
+format = "%s\n%b"
+corner_radius = 8
+sort = no
+indicate_hidden = yes
+
+# Possible values are "left", "center" and "right".
+alignment = center
+
[urgency_low]
- background = "#16161e"
- foreground = "#c0caf5"
- frame_color = "#c0caf5"
+frame_color = "#1a1b26"
+background = "#1a1b26"
+foreground = "#c0caf5"
+timeout = 10
[urgency_normal]
- background = "#1a1b26"
- foreground = "#c0caf5"
- frame_color = "#c0caf5"
+frame_color = "#15161e"
+background = "#1a1b26"
+foreground = "#c0caf5"
+timeout = 10
[urgency_critical]
- background = "#292e42"
- foreground = "#db4b4b"
- frame_color = "#db4b4b"
+frame_color = "#f7768e"
+background = "#1a1b26"
+foreground = "#c0caf5"
+timeout = 10
diff --git a/config/hypr/hyprland.conf b/config/hypr/hyprland.conf
index 04f0420..9c89214 100644
--- a/config/hypr/hyprland.conf
+++ b/config/hypr/hyprland.conf
@@ -1,8 +1,4 @@
# vim: foldmethod=marker ts=2 sw=2
-
-# https://wiki.hyprland.org/Configuring/Variables/
-# https://wiki.hyprland.org/Configuring/Monitors/
-
monitor=,highres,auto,1
## variables {{{
@@ -16,6 +12,8 @@ exec-once = dunst &
exec-once = gsettings set org.gnome.desktop.interface font-name 'JetBrainsMono Nerd Font' &
exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
exec-once = blueman-applet
+exec-once = ~/.config/hypr/xdg-portal.sh
+exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
# }}}
## inputs {{{
input {
@@ -26,10 +24,13 @@ input {
kb_rules =
follow_mouse = 1
- sensitivity = 0.4 # -1.0 - 1.0, 0 means no modification.
+ sensitivity = 0.4 # -1.0 - 1.0, 0 means no modification
touchpad {
- middle_button_emulation = true
+ middle_button_emulation = true
+ natural_scroll = false
+ scroll_factor = 0.4
+ clickfinger_behavior = 1
}
}
# }}}
@@ -39,7 +40,7 @@ general {
gaps_out = 4
border_size = 2
col.active_border = rgba(7aa2f7aa)
- col.inactive_border = rgba(414868aa)
+ col.inactive_border = rgba(292e42aa)
layout = master # dwindle
}
@@ -96,26 +97,52 @@ misc {
# }}}
## gestures {{{
gestures {
- workspace_swipe = true
+ workspace_swipe = true
+ workspace_swipe_invert = false
+ workspace_swipe_create_new = false
}
# }}}
## window rules {{{
-windowrule = workspace 1, title:(Postman)
-windowrule = workspace 2, title:(Firefox)
-windowrule = workspace 3, title:(Rider)
-windowrule = workspace 4, title:(Logseq|Anki)
-windowrule = workspace 5, title:(Telegram|Discord)
-windowrule = workspace 7, title:(Spotify)
+windowrulev2 = workspace 1, class:(Postman,org.keepassxc.KeePassXC)
+windowrulev2 = workspace 2, class:(firefox)
+windowrulev2 = workspace 3, class:(jetbrains-rider|org.octave.Octave)
+windowrulev2 = workspace 4, class:(Logseq|Anki|Morgen)
+windowrulev2 = workspace 5, class:(discord|org.telegram.desktop|fractal)
+windowrulev2 = workspace 7, class:(Spotify)
+windowrulev2 = workspace 8, class:(org.prismlauncher.PrismLauncher)
+windowrulev2 = workspace 9, class:(zoom)
+
+windowrulev2 = float, class:(pavucontrol)
+
+# screen sharing
+windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$
+windowrulev2 = noanim,class:^(xwaylandvideobridge)$
+windowrulev2 = nofocus,class:^(xwaylandvideobridge)$
+windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$
# }}}
## keymaps {{{
- bind = $mod SHIFT, Return, exec, wofi --show drun --allow-images
+ bind = Alt Ctrl, t, exec, $terminal
bind = $mod, Return, exec, $terminal
- bind = $mod, q, killactive
- bind = $mod SHIFT, Escape, exit
- bind = $mod, f, togglefloating,
- bind = ,Print,exec,grim
- bind = $mod ALT, r, exec, hyprctl reload
+ bind = $mod SHIFT, Return, exec, wofi --show drun --allow-images
+ bind = $mod SHIFT, Escape, exec, ~/bin/wofi-power-menu
+
+ bind = $mod, q, killactive
+ bind = Alt, f4, killactive
+
+ bind = $mod, f, fullscreen
+ bind = $mod Ctrl, f, togglefloating
+ bind = , Print, exec, grim -g "$(slurp)"
+
+ ## programs {{{
+ bind = $mod SHIFT, w, exec, firefox
+ bind = $mod SHIFT, f, exec, nautilus
+ bind = $mod SHIFT, d, exec, ~/.local/appimage/logseq.AppImage
+ bind = $mod SHIFT, a, exec, anki
+ bind = $mod SHIFT, s, exec, spotify
+ bind = $mod SHIFT, t, exec, telegram-desktop
+ bind = $mod SHIFT, c, exec, morgen
+ ## }}}
## sound {{{
bindl = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.4 @DEFAULT_AUDIO_SINK@ 5%+
bindl = , XF86AudioLowerVolume, exec, wpctl set-volume -l 1.4 @DEFAULT_AUDIO_SINK@ 5%-
@@ -128,10 +155,6 @@ windowrule = workspace 7, title:(Spotify)
bindl = , XF86MonBrightnessUp, exec, brightnessctl set +5%
bindl = , XF86MonBrightnessDown, exec, brightnessctl set 5%-
## }}}
- ## programs {{{
- bind = $mod SHIFT, w, exec, firefox
- bind = $mod SHIFT, f, exec, nautlius
- ## }}}
## layout spesific {{{
bind = $mod, P, pseudo, # dwindle
bind = $mod, J, togglesplit, # dwindle
@@ -143,33 +166,38 @@ windowrule = workspace 7, title:(Spotify)
bind = $mod, l, movefocus, r
# Scroll through existing workspaces with mainMod + scroll
- bind = $mod, mouse_down, workspace, e+1
- bind = $mod, mouse_up, workspace, e-1
+ bind = $mod, mouse_down, workspace, e-1
+ bind = $mod, mouse_up, workspace, e+1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mod, mouse:272, movewindow
bindm = $mod, mouse:273, resizewindow
- ## workspaces {{{
- bind = $mod, 1, workspace, 1
- bind = $mod, 2, workspace, 2
- bind = $mod, 3, workspace, 3
- bind = $mod, 4, workspace, 4
- bind = $mod, 5, workspace, 5
- bind = $mod, 6, workspace, 6
- bind = $mod, 7, workspace, 7
- bind = $mod, 8, workspace, 8
- bind = $mod, 9, workspace, 9
+ bind = $mod Alt, h, resizeactive, -20 0
+ bind = $mod Alt, l, resizeactive, 20 0
+ bind = $mod Alt, j, resizeactive, 0 20
+ bind = $mod Alt, k, resizeactive, 0 -20
- bind = $mod SHIFT, 1, movetoworkspace, 1
- bind = $mod SHIFT, 2, movetoworkspace, 2
- bind = $mod SHIFT, 3, movetoworkspace, 3
- bind = $mod SHIFT, 4, movetoworkspace, 4
- bind = $mod SHIFT, 5, movetoworkspace, 5
- bind = $mod SHIFT, 6, movetoworkspace, 6
- bind = $mod SHIFT, 7, movetoworkspace, 7
- bind = $mod SHIFT, 8, movetoworkspace, 8
- bind = $mod SHIFT, 9, movetoworkspace, 9
- # }}}
+ ## workspaces {{{
+ bind = $mod, 1, workspace, 1
+ bind = $mod, 2, workspace, 2
+ bind = $mod, 3, workspace, 3
+ bind = $mod, 4, workspace, 4
+ bind = $mod, 5, workspace, 5
+ bind = $mod, 6, workspace, 6
+ bind = $mod, 7, workspace, 7
+ bind = $mod, 8, workspace, 8
+ bind = $mod, 9, workspace, 9
+
+ bind = $mod SHIFT, 1, movetoworkspace, 1
+ bind = $mod SHIFT, 2, movetoworkspace, 2
+ bind = $mod SHIFT, 3, movetoworkspace, 3
+ bind = $mod SHIFT, 4, movetoworkspace, 4
+ bind = $mod SHIFT, 5, movetoworkspace, 5
+ bind = $mod SHIFT, 6, movetoworkspace, 6
+ bind = $mod SHIFT, 7, movetoworkspace, 7
+ bind = $mod SHIFT, 8, movetoworkspace, 8
+ bind = $mod SHIFT, 9, movetoworkspace, 9
+ # }}}
# }}}
# }}}
diff --git a/config/hypr/xdg-portal.sh b/config/hypr/xdg-portal.sh
new file mode 100755
index 0000000..79b9f52
--- /dev/null
+++ b/config/hypr/xdg-portal.sh
@@ -0,0 +1,7 @@
+#!/bin/env bash
+sleep 1
+killall -e xdg-desktop-portal-hyprland
+killall xdg-desktop-portal
+/usr/lib/xdg-desktop-portal-hyprland &
+sleep 2
+/usr/lib/xdg-desktop-portal &
diff --git a/config/waybar/config b/config/waybar/config
index 4a6aff8..58a7c75 100644
--- a/config/waybar/config
+++ b/config/waybar/config
@@ -30,7 +30,7 @@
"format": " {:%a, %d %b %H:%M}",
"tooltip": "true",
"tooltip-format": "{:%Y %B}\n{calendar}",
- "format-alt": " {:%d/%m}"
+ "on-click": "morgen"
},
"hyprland/workspaces": {
@@ -66,6 +66,7 @@
"format-plugged": "{capacity}% ",
"format-alt": "{icon} {time}",
"format-icons": ["", "", "", "", ""],
+ "tooltip": false,
"states": {
"good": 95,
"warning": 30,
@@ -90,7 +91,8 @@
"format-disconnected": "",
"format-alt": " {ifname}: {ipaddr}/{cidr}",
"tooltip-format": "{essid}",
- "on-click-right": "nm-connection-editor"
+ "on-click-right": "nm-connection-editor",
+ "tooltip": false
},
"tray": {
@@ -102,7 +104,8 @@
"format": "{icon} {percent}%",
"format-icons": ["", "", "", "", "", "", "", "", ""],
"on-scroll-up": "brightnessctl set +10%",
- "on-scroll-down": "brightnessctl set 10%-"
+ "on-scroll-down": "brightnessctl set 10%-",
+ "tooltip": false
},
"pulseaudio": {
@@ -112,6 +115,8 @@
"default": ["", "", ""],
"headphone": ""
},
+ "on-click": "pavucontrol",
+ "tooltip": false,
"on-scroll-up": "wpctl set-volume -l 1.4 @DEFAULT_AUDIO_SINK@ 5%+",
"on-scroll-down": "wpctl set-volume -l 1.4 @DEFAULT_AUDIO_SINK@ 5%-"
},
diff --git a/config/waybar/style.css b/config/waybar/style.css
index 85dd065..43457c1 100644
--- a/config/waybar/style.css
+++ b/config/waybar/style.css
@@ -36,9 +36,15 @@ window#waybar {
#cpu, #pulseaudio, #memory, #clock { color: @active-bg-color; }
#language { color: @red; }
-#workspaces button { color: @inactive-fg-color; }
+#workspaces button { color: @active-bg-color; }
+#workspaces button.empty {
+ color: @inactive-fg-color;
+ background-color: transparent;
+ border-radius: 16px;
+}
+
#workspaces button.active {
- color: @active-bg-color;
+ color: @red;
background-color: transparent;
border-radius: 16px;
}