Compare commits
24 Commits
c5d1f23941
...
main
Author | SHA1 | Date | |
---|---|---|---|
|
0cbeaf84f3 | ||
|
ddc90c3898 | ||
|
ed2b85244b | ||
|
d19373cd9d | ||
|
fc793e41b1 | ||
|
005e99385a | ||
|
edcbe0f6fd | ||
|
182dd383d3 | ||
|
ccd91bd506 | ||
|
a1132117df | ||
|
a741df08f9 | ||
|
fc5500765d | ||
|
4bfcd9e32f | ||
|
4e2933401f | ||
|
194c105799 | ||
|
59f07db6ac | ||
|
69ef245273 | ||
|
9debc1d08e | ||
|
c17504809a | ||
|
54ae8e57d3 | ||
|
2678c31908 | ||
|
76e921525a | ||
|
e1f1103325 | ||
|
d688ec6c5f |
347
README.org
347
README.org
@@ -9,9 +9,8 @@
|
||||
- [[#monitors][Monitors]]
|
||||
- [[#variables][Variables]]
|
||||
- [[#autostart][Autostart]]
|
||||
- [[#status-bar][Status Bar]]
|
||||
- [[#background-processes][Background Processes]]
|
||||
- [[#display--compositor-setup][Display / Compositor Setup]]
|
||||
- [[#desktop-setup][Desktop Setup]]
|
||||
- [[#applications][Applications]]
|
||||
- [[#environment-variables][Environment Variables]]
|
||||
- [[#permissions][Permissions]]
|
||||
@@ -47,6 +46,9 @@
|
||||
- [[#opengl][OpenGL]]
|
||||
- [[#render][Render]]
|
||||
- [[#ecosystem][Ecosystem]]
|
||||
- [[#plugins][Plugins]]
|
||||
- [[#hypreasymotion][hyprEasymotion]]
|
||||
- [[#split-monitor-workspaces][Split Monitor Workspaces]]
|
||||
- [[#xdg-desktop-portal-hyprland][xdg-desktop-portal-hyprland]]
|
||||
- [[#screencopy][Screencopy]]
|
||||
- [[#hypridle][Hypridle]]
|
||||
@@ -54,6 +56,13 @@
|
||||
- [[#listeners][Listeners]]
|
||||
- [[#hyprlock][Hyprlock]]
|
||||
- [[#general-2][General]]
|
||||
- [[#authentication][Authentication]]
|
||||
- [[#animations-1][Animations]]
|
||||
- [[#widgets][Widgets]]
|
||||
- [[#background][Background]]
|
||||
- [[#input-field][Input Field]]
|
||||
- [[#date][Date]]
|
||||
- [[#time][Time]]
|
||||
- [[#waybar][Waybar]]
|
||||
- [[#start-configuration][Start Configuration]]
|
||||
- [[#bar][Bar]]
|
||||
@@ -74,6 +83,7 @@
|
||||
- [[#system76-power][System76 Power]]
|
||||
- [[#tray][Tray]]
|
||||
- [[#end-configuration][End Configuration]]
|
||||
- [[#toggle-script][Toggle Script]]
|
||||
|
||||
* Welcome
|
||||
|
||||
@@ -110,6 +120,8 @@ monitor = , preferred, auto, 1
|
||||
$terminal = foot
|
||||
$fileManager = thunar
|
||||
$menu = rofi -show combi -run-command "uwsm app -- {cmd}"
|
||||
$colorPicker = hyprpicker -a
|
||||
$toggleBar = $HOME/.config/hypr/waybar/scripts/toggleBarService.sh
|
||||
#+END_SRC
|
||||
|
||||
** Autostart
|
||||
@@ -130,27 +142,25 @@ exec-once = uwsm app -- mycommand --arg1 --arg2
|
||||
bind = SUPER, E, exec, uwsm app -- pcmanfm-qt.desktop
|
||||
#+END_EXAMPLE
|
||||
|
||||
*** Status Bar
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
exec-once = uwsm app -- waybar --config $HOME/.config/hypr/waybar/config.jsonc --style $HOME/.config/hypr/waybar/style.css &
|
||||
#+END_SRC
|
||||
|
||||
*** Background Processes
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
exec-once = uwsm app -- fumon &
|
||||
exec-once = uwsm app -- kdeconnectd --replace &
|
||||
exec-once = uwsm app -- $HOME/.scripts/dunst.sh --on &
|
||||
exec-once = uwsm app -- wl-paste --type text --watch cliphist store &
|
||||
exec-once = uwsm app -- wl-paste --type image --watch cliphist store &
|
||||
exec-once = uwsm app -- $HOME/.scripts/dunst.sh --on &
|
||||
#+END_SRC
|
||||
|
||||
*** Display / Compositor Setup
|
||||
*** Desktop Setup
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
exec-once = uwsm app -- hyprctl setcursor breeze-hacked-cursor-theme 24 &
|
||||
exec-once = uwsm app -- hyprpm reload -n &
|
||||
exec-once = uwsm app -- shikane &
|
||||
exec-once = uwsm app -- $HOME/.azotebg &
|
||||
exec-once = uwsm app -- waypaper --restore &
|
||||
exec-once = uwsm app -- gammastep -x &
|
||||
exec-once = uwsm app -- wpctl set-volume @DEFAULT_AUDIO_SINK@ 25% &
|
||||
#+END_SRC
|
||||
|
||||
*** Applications
|
||||
@@ -238,8 +248,8 @@ decoration {
|
||||
|
||||
blur {
|
||||
enabled = true
|
||||
size = 8
|
||||
passes = 1
|
||||
size = 5
|
||||
passes = 3
|
||||
ignore_opacity = true
|
||||
new_optimizations = true
|
||||
xray = true
|
||||
@@ -472,6 +482,8 @@ bind = $mainMod SHIFT, Q, exec, loginctl terminate-user ""
|
||||
bind = $mainMod SHIFT, Return, exec, uwsm app -- $terminal
|
||||
bind = $mainMod, E, exec, uwsm app -- $fileManager
|
||||
bind = $mainMod, P, exec, uwsm app -- $menu
|
||||
bind = $mainMod, G, exec, uwsm app -- $colorPicker
|
||||
bind = $mainMod, B, exec, uwsm app -- $toggleBar
|
||||
bind = $mainMod CTRL, P, exec, uwsm app -- $HOME/.scripts/control-center.sh --rofi
|
||||
bind = $mainMod CTRL, C, exec, uwsm app -- cliphist list | rofi -dmenu | cliphist decode | wl-copy
|
||||
bind = $mainMod CTRL, D, exec, uwsm app -- $HOME/.scripts/brightness.sh --rofi
|
||||
@@ -487,7 +499,9 @@ General
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
bind = $mainMod SHIFT, C, killactive
|
||||
bind = $mainMod SHIFT, F, fullscreen
|
||||
bind = $mainMod CTRL SHIFT, C, forcekillactive
|
||||
bind = $mainMod SHIFT, F, fullscreenstate, 0 3
|
||||
bind = $mainMod CTRL SHIFT, F, fullscreen
|
||||
bind = $mainMod, F, togglefloating
|
||||
#+END_SRC
|
||||
|
||||
@@ -520,16 +534,22 @@ bind = $mainMod, J, movefocus, d
|
||||
Switch workspaces with mainMod + [0-9]
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
bind = $mainMod, 1, split-workspace, 1
|
||||
bind = $mainMod, 2, split-workspace, 2
|
||||
bind = $mainMod, 3, split-workspace, 3
|
||||
bind = $mainMod, 4, split-workspace, 4
|
||||
bind = $mainMod, 5, split-workspace, 5
|
||||
bind = $mainMod, 6, split-workspace, 6
|
||||
bind = $mainMod, 7, split-workspace, 7
|
||||
bind = $mainMod, 8, split-workspace, 8
|
||||
bind = $mainMod, 9, split-workspace, 9
|
||||
bind = $mainMod, 0, split-workspace, 10
|
||||
#+END_SRC
|
||||
|
||||
Switch between most recent workspace
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
bind = $mainMod, Tab, split-workspace, previous_per_monitor
|
||||
#+END_SRC
|
||||
|
||||
*** Move Windows to Workspace
|
||||
@@ -537,16 +557,16 @@ bind = $mainMod, 0, workspace, 10
|
||||
Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
bind = $mainMod SHIFT, 1, split-movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, split-movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, split-movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, split-movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, split-movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, split-movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, split-movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, split-movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, split-movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, split-movetoworkspace, 10
|
||||
#+END_SRC
|
||||
|
||||
*** Special Workspace
|
||||
@@ -555,7 +575,7 @@ Example special workspace (scratchpad)
|
||||
|
||||
#+BEGIN_EXAMPLE conf
|
||||
bind = $mainMod, S, togglespecialworkspace, magic
|
||||
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||
bind = $mainMod SHIFT, S, split-movetoworkspace, special:magic
|
||||
#+END_EXAMPLE
|
||||
|
||||
*** Workspace Scroll
|
||||
@@ -563,8 +583,8 @@ bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||
Scroll through existing workspaces with mainMod + scroll
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
bind = $mainMod, mouse_down, split-workspace, e+1
|
||||
bind = $mainMod, mouse_up, split-workspace, e-1
|
||||
#+END_SRC
|
||||
|
||||
*** Move / Resize Windows
|
||||
@@ -578,6 +598,13 @@ bind = $mainMod SHIFT, K, movewindow, u
|
||||
bind = $mainMod SHIFT, J, movewindow, d
|
||||
#+END_SRC
|
||||
|
||||
Move windows to monitors with mainMod + SHIFT + <>
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
bind = $mainMod SHIFT, period, movewindow, mon:+1
|
||||
bind = $mainMod SHIFT, comma, movewindow, mon:-1
|
||||
#+END_SRC
|
||||
|
||||
Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
@@ -685,8 +712,6 @@ opengl {
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
render {
|
||||
explicit_sync = 2
|
||||
explicit_sync_kms = 2
|
||||
direct_scanout = 2
|
||||
expand_undersized_textures = true
|
||||
xp_mode = false
|
||||
@@ -707,6 +732,102 @@ ecosystem {
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
** Plugins
|
||||
|
||||
*** hyprEasymotion
|
||||
|
||||
- [[https://github.com/zakk4223/hyprland-easymotion][GitHub - hyprEasymotion]]
|
||||
|
||||
**** Keybindings
|
||||
|
||||
Enable *easymotion* navigation
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
bind = $mainMod, z, easymotion, action:hyprctl dispatch focuswindow address:{}
|
||||
#+END_SRC
|
||||
|
||||
**** Appearance
|
||||
|
||||
Configure appearance of *easymotion* navigation indicators
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
plugin {
|
||||
easymotion {
|
||||
#font size of the text
|
||||
textsize=100
|
||||
|
||||
#color of the text, takes standard hyprland color format
|
||||
textcolor=rgba(50fa7bff)
|
||||
|
||||
#background color of the label box. alpha is respected
|
||||
bgcolor=rgba(282a36ff)
|
||||
|
||||
#enable blur. The bgcolor alpha must be at least semi-transparent.
|
||||
blur=0
|
||||
|
||||
#Set blur alpha value. Blur must be enabled (float value)
|
||||
blurA=1.0
|
||||
|
||||
#Set xray. Blur must be enabled
|
||||
xray=0
|
||||
|
||||
#font to use for the label. This is passed directly to the pango font description
|
||||
textfont=Sans
|
||||
|
||||
#padding around the text (inside the label box) size in pixels, adjusted for
|
||||
#monitor scaling. This is the same format as hyprland's gapsin/gapsout workspace layout rule
|
||||
#example: textpadding=2 5 5 2 (spaces not commas)
|
||||
textpadding=20 20 20 20
|
||||
|
||||
#size of the border around the label box. A border size of zero disables border rendering.
|
||||
bordersize=2
|
||||
|
||||
#color of the border. takes the same format as hyprland's border (so it can be a gradient)
|
||||
bordercolor=rgba(50fa7bff)
|
||||
|
||||
#rounded corners? Same as hyprland's 'decoration:rounding' config
|
||||
rounding=1
|
||||
|
||||
#what to do if a window is fullscreen
|
||||
#none: nothing. (easymotion label won't be displayed on that window)
|
||||
#toggle: take the window out of fullscreen entirely.
|
||||
#maximize: convert the window to maximized.
|
||||
#windows are restored to fullscreen after easymotion is exited/selected
|
||||
fullscreen_action=toggle
|
||||
|
||||
#which keys to use for labeling windows
|
||||
motionkeys=abcdefghijklmnopqrstuvwxyz1234567890
|
||||
|
||||
#if a monitor has a focused special workspace, only put easymotion labels on the windows in the special workspace
|
||||
only_special = true
|
||||
}
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
*** Split Monitor Workspaces
|
||||
|
||||
- [[https://github.com/Duckonaut/split-monitor-workspaces][GitHub - split-monitor-workspaces]]
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprland.conf
|
||||
plugin {
|
||||
split-monitor-workspaces {
|
||||
# How many workspaces to bind to the monitor
|
||||
count = 10
|
||||
|
||||
# Keep current workspaces focused on plugin init / reload
|
||||
keep_focused = true
|
||||
|
||||
# Enable notifications
|
||||
enable_notifications = false
|
||||
|
||||
# Enable management of persistent workspaces.
|
||||
# This means the plugin will at initialization create $count
|
||||
# workspaces on each monitor and make them persistent
|
||||
enable_persistent_workspaces = false
|
||||
}
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
* xdg-desktop-portal-hyprland
|
||||
|
||||
- [[https://wiki.hyprland.org/Hypr-Ecosystem/xdg-desktop-portal-hyprland/#configuration][Hyprland Wiki - Hypr Ecosystem - xdg-desktop-portal-hyprland - Configuration]]
|
||||
@@ -728,9 +849,9 @@ screencopy {
|
||||
|
||||
#+BEGIN_SRC conf :tangle hypridle.conf
|
||||
general {
|
||||
lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances
|
||||
before_sleep_cmd = loginctl lock-session # lock before suspend
|
||||
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key to turn on the display
|
||||
lock_cmd = pgrep hyprlock || hyprlock # avoid starting multiple hyprlock instances
|
||||
before_sleep_cmd = loginctl lock-session # lock before suspend
|
||||
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key to turn on the display
|
||||
ignore_dbus_inhibit = false
|
||||
ignore_systemd_inhibit = false
|
||||
inhibit_sleep = 2
|
||||
@@ -770,7 +891,7 @@ general {
|
||||
hide_cursor = true
|
||||
grace = 0
|
||||
ignore_empty_input = false
|
||||
immediate_render = false
|
||||
immediate_render = true
|
||||
text_trim = true
|
||||
fractional_scaling = 2
|
||||
screencopy_mode = 0
|
||||
@@ -778,6 +899,91 @@ general {
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
** Authentication
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprlock.conf
|
||||
auth {
|
||||
pam {
|
||||
enabled = true
|
||||
module = hyprlock
|
||||
}
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
** Animations
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprlock.conf
|
||||
animations {
|
||||
enabled = false
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
** Widgets
|
||||
|
||||
*** Background
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprlock.conf
|
||||
background {
|
||||
monitor =
|
||||
path = ~/Data/NextCloud/Wallpapers/Desktop/Solar_System.png
|
||||
color = rgba(282a36ff)
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
*** Input Field
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprlock.conf
|
||||
input-field {
|
||||
monitor =
|
||||
size = 20%, 5%
|
||||
outline_thickness = 2
|
||||
dots_size = 0.2
|
||||
dots_spacing = 0.35
|
||||
dots_center = true
|
||||
dots_rounding = -1
|
||||
outer_color = rgba(8be9fdff) rgba(bd93f9ff) 45deg
|
||||
inner_color = rgba(282a36ff)
|
||||
font_color = rgba(f8f8f2ff)
|
||||
font_family = Noto Sans
|
||||
fade_on_empty = true
|
||||
fade_timeout = 2000
|
||||
check_color = rgba(f1fa8cff)
|
||||
fail_color = rgba(ff5555ff)
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
*** Date
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprlock.conf
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:1000] date +"%A, %B %d"
|
||||
color = rgba(bd93f9ff)
|
||||
font_size = 22
|
||||
font_family = JetBrains Mono
|
||||
position = 0, 300
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
*** Time
|
||||
|
||||
#+BEGIN_SRC conf :tangle hyprlock.conf
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:1000] date +"%-I:%M %p"
|
||||
color = rgba(8be9fdff)
|
||||
font_size = 95
|
||||
font_family = JetBrains Mono Extrabold
|
||||
position = 0, 200
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
* Waybar
|
||||
|
||||
** Start Configuration
|
||||
@@ -931,7 +1137,7 @@ button {
|
||||
"interval": 5,
|
||||
"format": " {usage}%",
|
||||
"tooltip": true,
|
||||
"on-click-right": "foot btop",
|
||||
"on-click-right": "uwsm app -- foot btop",
|
||||
},
|
||||
#+END_SRC
|
||||
|
||||
@@ -1101,6 +1307,47 @@ fi
|
||||
"7": " ₇",
|
||||
"8": " ₈",
|
||||
"9": " ₉",
|
||||
"10": " ₁₀",
|
||||
"11": " ₁",
|
||||
"12": " ₂",
|
||||
"13": " ₃",
|
||||
"14": " ₄",
|
||||
"15": " ₅",
|
||||
"16": " ₆",
|
||||
"17": " ₇",
|
||||
"18": " ₈",
|
||||
"19": " ₉",
|
||||
"20": " ₁₀",
|
||||
"21": " ₁",
|
||||
"22": " ₂",
|
||||
"23": " ₃",
|
||||
"24": " ₄",
|
||||
"25": " ₅",
|
||||
"26": " ₆",
|
||||
"27": " ₇",
|
||||
"28": " ₈",
|
||||
"29": " ₉",
|
||||
"30": " ₁₀",
|
||||
"31": " ₁",
|
||||
"32": " ₂",
|
||||
"33": " ₃",
|
||||
"34": " ₄",
|
||||
"35": " ₅",
|
||||
"36": " ₆",
|
||||
"37": " ₇",
|
||||
"38": " ₈",
|
||||
"39": " ₉",
|
||||
"40": " ₁₀",
|
||||
"41": " ₁",
|
||||
"42": " ₂",
|
||||
"43": " ₃",
|
||||
"44": " ₄",
|
||||
"45": " ₅",
|
||||
"46": " ₆",
|
||||
"47": " ₇",
|
||||
"48": " ₈",
|
||||
"49": " ₉",
|
||||
"50": " ₁₀",
|
||||
},
|
||||
"show-special": true,
|
||||
"special-visible-only": true,
|
||||
@@ -1117,8 +1364,8 @@ fi
|
||||
},
|
||||
"hyprland/submap": {
|
||||
"format": " {}",
|
||||
"default-submap": "",
|
||||
"always-on": false,
|
||||
"default-submap": "",
|
||||
},
|
||||
#+END_SRC
|
||||
|
||||
@@ -1538,3 +1785,13 @@ echo '{"text":" '$graphics'","tooltip":"\t'$graphics'\r\t'$graphicsP
|
||||
#+BEGIN_SRC jsonc :tangle waybar/config.jsonc
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
** Toggle Script
|
||||
|
||||
#+BEGIN_SRC shell :shebang #!/usr/bin/env bash :tangle waybar/scripts/toggleBarService.sh
|
||||
if systemctl --user is-active waybar.service; then
|
||||
systemctl --user stop waybar.service
|
||||
else
|
||||
systemctl --user start waybar.service
|
||||
fi
|
||||
#+END_SRC
|
||||
|
@@ -1,7 +1,7 @@
|
||||
general {
|
||||
lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances
|
||||
before_sleep_cmd = loginctl lock-session # lock before suspend
|
||||
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key to turn on the display
|
||||
lock_cmd = pgrep hyprlock || hyprlock # avoid starting multiple hyprlock instances
|
||||
before_sleep_cmd = loginctl lock-session # lock before suspend
|
||||
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key to turn on the display
|
||||
ignore_dbus_inhibit = false
|
||||
ignore_systemd_inhibit = false
|
||||
inhibit_sleep = 2
|
||||
|
145
hyprland.conf
145
hyprland.conf
@@ -3,17 +3,21 @@ monitor = , preferred, auto, 1
|
||||
$terminal = foot
|
||||
$fileManager = thunar
|
||||
$menu = rofi -show combi -run-command "uwsm app -- {cmd}"
|
||||
$colorPicker = hyprpicker -a
|
||||
$toggleBar = $HOME/.config/hypr/waybar/scripts/toggleBarService.sh
|
||||
|
||||
exec-once = uwsm app -- waybar --config $HOME/.config/hypr/waybar/config.jsonc --style $HOME/.config/hypr/waybar/style.css &
|
||||
|
||||
exec-once = uwsm app -- fumon &
|
||||
exec-once = uwsm app -- kdeconnectd --replace &
|
||||
exec-once = uwsm app -- $HOME/.scripts/dunst.sh --on &
|
||||
exec-once = uwsm app -- wl-paste --type text --watch cliphist store &
|
||||
exec-once = uwsm app -- wl-paste --type image --watch cliphist store &
|
||||
exec-once = uwsm app -- $HOME/.scripts/dunst.sh --on &
|
||||
|
||||
exec-once = uwsm app -- hyprctl setcursor breeze-hacked-cursor-theme 24 &
|
||||
exec-once = uwsm app -- hyprpm reload -n &
|
||||
exec-once = uwsm app -- shikane &
|
||||
exec-once = uwsm app -- $HOME/.azotebg &
|
||||
exec-once = uwsm app -- waypaper --restore &
|
||||
exec-once = uwsm app -- gammastep -x &
|
||||
exec-once = uwsm app -- wpctl set-volume @DEFAULT_AUDIO_SINK@ 25% &
|
||||
|
||||
exec-once = uwsm app -- blueman-applet &
|
||||
exec-once = uwsm app -- nm-applet &
|
||||
@@ -53,8 +57,8 @@ decoration {
|
||||
|
||||
blur {
|
||||
enabled = true
|
||||
size = 8
|
||||
passes = 1
|
||||
size = 5
|
||||
passes = 3
|
||||
ignore_opacity = true
|
||||
new_optimizations = true
|
||||
xray = true
|
||||
@@ -182,6 +186,8 @@ bind = $mainMod SHIFT, Q, exec, loginctl terminate-user ""
|
||||
bind = $mainMod SHIFT, Return, exec, uwsm app -- $terminal
|
||||
bind = $mainMod, E, exec, uwsm app -- $fileManager
|
||||
bind = $mainMod, P, exec, uwsm app -- $menu
|
||||
bind = $mainMod, G, exec, uwsm app -- $colorPicker
|
||||
bind = $mainMod, B, exec, uwsm app -- $toggleBar
|
||||
bind = $mainMod CTRL, P, exec, uwsm app -- $HOME/.scripts/control-center.sh --rofi
|
||||
bind = $mainMod CTRL, C, exec, uwsm app -- cliphist list | rofi -dmenu | cliphist decode | wl-copy
|
||||
bind = $mainMod CTRL, D, exec, uwsm app -- $HOME/.scripts/brightness.sh --rofi
|
||||
@@ -191,7 +197,9 @@ bind = $mainMod CTRL, N, exec, uwsm app -- $HOME/.scripts/dunst.sh --rofi
|
||||
bind = $mainMod CTRL, Q, exec, uwsm app -- $HOME/.scripts/session.sh --rofi
|
||||
|
||||
bind = $mainMod SHIFT, C, killactive
|
||||
bind = $mainMod SHIFT, F, fullscreen
|
||||
bind = $mainMod CTRL SHIFT, C, forcekillactive
|
||||
bind = $mainMod SHIFT, F, fullscreenstate, 0 3
|
||||
bind = $mainMod CTRL SHIFT, F, fullscreen
|
||||
bind = $mainMod, F, togglefloating
|
||||
|
||||
bind = $mainMod, D, pseudo
|
||||
@@ -204,36 +212,41 @@ bind = $mainMod, L, movefocus, r
|
||||
bind = $mainMod, K, movefocus, u
|
||||
bind = $mainMod, J, movefocus, d
|
||||
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
bind = $mainMod, 0, workspace, 10
|
||||
bind = $mainMod, 1, split-workspace, 1
|
||||
bind = $mainMod, 2, split-workspace, 2
|
||||
bind = $mainMod, 3, split-workspace, 3
|
||||
bind = $mainMod, 4, split-workspace, 4
|
||||
bind = $mainMod, 5, split-workspace, 5
|
||||
bind = $mainMod, 6, split-workspace, 6
|
||||
bind = $mainMod, 7, split-workspace, 7
|
||||
bind = $mainMod, 8, split-workspace, 8
|
||||
bind = $mainMod, 9, split-workspace, 9
|
||||
bind = $mainMod, 0, split-workspace, 10
|
||||
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||
bind = $mainMod, Tab, split-workspace, previous_per_monitor
|
||||
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
bind = $mainMod SHIFT, 1, split-movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, split-movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, split-movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, split-movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, split-movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, split-movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, split-movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, split-movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, split-movetoworkspace, 9
|
||||
bind = $mainMod SHIFT, 0, split-movetoworkspace, 10
|
||||
|
||||
bind = $mainMod, mouse_down, split-workspace, e+1
|
||||
bind = $mainMod, mouse_up, split-workspace, e-1
|
||||
|
||||
bind = $mainMod SHIFT, H, movewindow, l
|
||||
bind = $mainMod SHIFT, L, movewindow, r
|
||||
bind = $mainMod SHIFT, K, movewindow, u
|
||||
bind = $mainMod SHIFT, J, movewindow, d
|
||||
|
||||
bind = $mainMod SHIFT, period, movewindow, mon:+1
|
||||
bind = $mainMod SHIFT, comma, movewindow, mon:-1
|
||||
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
@@ -267,8 +280,6 @@ opengl {
|
||||
}
|
||||
|
||||
render {
|
||||
explicit_sync = 2
|
||||
explicit_sync_kms = 2
|
||||
direct_scanout = 2
|
||||
expand_undersized_textures = true
|
||||
xp_mode = false
|
||||
@@ -281,3 +292,75 @@ ecosystem {
|
||||
no_update_news = true
|
||||
no_donation_nag = true
|
||||
}
|
||||
|
||||
bind = $mainMod, z, easymotion, action:hyprctl dispatch focuswindow address:{}
|
||||
|
||||
plugin {
|
||||
easymotion {
|
||||
#font size of the text
|
||||
textsize=100
|
||||
|
||||
#color of the text, takes standard hyprland color format
|
||||
textcolor=rgba(50fa7bff)
|
||||
|
||||
#background color of the label box. alpha is respected
|
||||
bgcolor=rgba(282a36ff)
|
||||
|
||||
#enable blur. The bgcolor alpha must be at least semi-transparent.
|
||||
blur=0
|
||||
|
||||
#Set blur alpha value. Blur must be enabled (float value)
|
||||
blurA=1.0
|
||||
|
||||
#Set xray. Blur must be enabled
|
||||
xray=0
|
||||
|
||||
#font to use for the label. This is passed directly to the pango font description
|
||||
textfont=Sans
|
||||
|
||||
#padding around the text (inside the label box) size in pixels, adjusted for
|
||||
#monitor scaling. This is the same format as hyprland's gapsin/gapsout workspace layout rule
|
||||
#example: textpadding=2 5 5 2 (spaces not commas)
|
||||
textpadding=20 20 20 20
|
||||
|
||||
#size of the border around the label box. A border size of zero disables border rendering.
|
||||
bordersize=2
|
||||
|
||||
#color of the border. takes the same format as hyprland's border (so it can be a gradient)
|
||||
bordercolor=rgba(50fa7bff)
|
||||
|
||||
#rounded corners? Same as hyprland's 'decoration:rounding' config
|
||||
rounding=1
|
||||
|
||||
#what to do if a window is fullscreen
|
||||
#none: nothing. (easymotion label won't be displayed on that window)
|
||||
#toggle: take the window out of fullscreen entirely.
|
||||
#maximize: convert the window to maximized.
|
||||
#windows are restored to fullscreen after easymotion is exited/selected
|
||||
fullscreen_action=toggle
|
||||
|
||||
#which keys to use for labeling windows
|
||||
motionkeys=abcdefghijklmnopqrstuvwxyz1234567890
|
||||
|
||||
#if a monitor has a focused special workspace, only put easymotion labels on the windows in the special workspace
|
||||
only_special = true
|
||||
}
|
||||
}
|
||||
|
||||
plugin {
|
||||
split-monitor-workspaces {
|
||||
# How many workspaces to bind to the monitor
|
||||
count = 10
|
||||
|
||||
# Keep current workspaces focused on plugin init / reload
|
||||
keep_focused = true
|
||||
|
||||
# Enable notifications
|
||||
enable_notifications = false
|
||||
|
||||
# Enable management of persistent workspaces.
|
||||
# This means the plugin will at initialization create $count
|
||||
# workspaces on each monitor and make them persistent
|
||||
enable_persistent_workspaces = false
|
||||
}
|
||||
}
|
||||
|
@@ -2,9 +2,68 @@ general {
|
||||
hide_cursor = true
|
||||
grace = 0
|
||||
ignore_empty_input = false
|
||||
immediate_render = false
|
||||
immediate_render = true
|
||||
text_trim = true
|
||||
fractional_scaling = 2
|
||||
screencopy_mode = 0
|
||||
fail_timeout = 2000
|
||||
}
|
||||
|
||||
auth {
|
||||
pam {
|
||||
enabled = true
|
||||
module = hyprlock
|
||||
}
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = false
|
||||
}
|
||||
|
||||
background {
|
||||
monitor =
|
||||
path = ~/Data/NextCloud/Wallpapers/Desktop/Solar_System.png
|
||||
color = rgba(282a36ff)
|
||||
}
|
||||
|
||||
input-field {
|
||||
monitor =
|
||||
size = 20%, 5%
|
||||
outline_thickness = 2
|
||||
dots_size = 0.2
|
||||
dots_spacing = 0.35
|
||||
dots_center = true
|
||||
dots_rounding = -1
|
||||
outer_color = rgba(8be9fdff) rgba(bd93f9ff) 45deg
|
||||
inner_color = rgba(282a36ff)
|
||||
font_color = rgba(f8f8f2ff)
|
||||
font_family = Noto Sans
|
||||
fade_on_empty = true
|
||||
fade_timeout = 2000
|
||||
check_color = rgba(f1fa8cff)
|
||||
fail_color = rgba(ff5555ff)
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:1000] date +"%A, %B %d"
|
||||
color = rgba(bd93f9ff)
|
||||
font_size = 22
|
||||
font_family = JetBrains Mono
|
||||
position = 0, 300
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:1000] date +"%-I:%M %p"
|
||||
color = rgba(8be9fdff)
|
||||
font_size = 95
|
||||
font_family = JetBrains Mono Extrabold
|
||||
position = 0, 200
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
|
@@ -84,7 +84,7 @@
|
||||
"interval": 5,
|
||||
"format": " {usage}%",
|
||||
"tooltip": true,
|
||||
"on-click-right": "foot btop",
|
||||
"on-click-right": "uwsm app -- foot btop",
|
||||
},
|
||||
|
||||
"clock": {
|
||||
@@ -162,6 +162,47 @@
|
||||
"7": " ₇",
|
||||
"8": " ₈",
|
||||
"9": " ₉",
|
||||
"10": " ₁₀",
|
||||
"11": " ₁",
|
||||
"12": " ₂",
|
||||
"13": " ₃",
|
||||
"14": " ₄",
|
||||
"15": " ₅",
|
||||
"16": " ₆",
|
||||
"17": " ₇",
|
||||
"18": " ₈",
|
||||
"19": " ₉",
|
||||
"20": " ₁₀",
|
||||
"21": " ₁",
|
||||
"22": " ₂",
|
||||
"23": " ₃",
|
||||
"24": " ₄",
|
||||
"25": " ₅",
|
||||
"26": " ₆",
|
||||
"27": " ₇",
|
||||
"28": " ₈",
|
||||
"29": " ₉",
|
||||
"30": " ₁₀",
|
||||
"31": " ₁",
|
||||
"32": " ₂",
|
||||
"33": " ₃",
|
||||
"34": " ₄",
|
||||
"35": " ₅",
|
||||
"36": " ₆",
|
||||
"37": " ₇",
|
||||
"38": " ₈",
|
||||
"39": " ₉",
|
||||
"40": " ₁₀",
|
||||
"41": " ₁",
|
||||
"42": " ₂",
|
||||
"43": " ₃",
|
||||
"44": " ₄",
|
||||
"45": " ₅",
|
||||
"46": " ₆",
|
||||
"47": " ₇",
|
||||
"48": " ₈",
|
||||
"49": " ₉",
|
||||
"50": " ₁₀",
|
||||
},
|
||||
"show-special": true,
|
||||
"special-visible-only": true,
|
||||
@@ -178,8 +219,8 @@
|
||||
},
|
||||
"hyprland/submap": {
|
||||
"format": " {}",
|
||||
"default-submap": "",
|
||||
"always-on": false,
|
||||
"default-submap": "",
|
||||
},
|
||||
|
||||
"idle_inhibitor": {
|
||||
|
6
waybar/scripts/toggleBarService.sh
Executable file
6
waybar/scripts/toggleBarService.sh
Executable file
@@ -0,0 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
if systemctl --user is-active waybar.service; then
|
||||
systemctl --user stop waybar.service
|
||||
else
|
||||
systemctl --user start waybar.service
|
||||
fi
|
Reference in New Issue
Block a user