diff options
-rw-r--r-- | .config/hypr/hyprland.conf | 11 | ||||
-rw-r--r-- | .config/newsboat/config | 33 | ||||
-rw-r--r-- | .config/waybar/config | 30 | ||||
-rwxr-xr-x | .local/bin/cron/checkup | 2 | ||||
-rwxr-xr-x | .local/bin/cron/newsup | 4 | ||||
-rwxr-xr-x | .local/bin/statusbar/sb-clock | 6 | ||||
-rwxr-xr-x | .local/bin/statusbar/sb-doppler | 10 | ||||
-rwxr-xr-x | .local/bin/statusbar/sb-forecast | 23 | ||||
-rwxr-xr-x | .local/bin/statusbar/sb-internet | 48 | ||||
-rwxr-xr-x | .local/bin/statusbar/sb-mailbox | 8 | ||||
-rwxr-xr-x | .local/bin/statusbar/sb-memory | 13 | ||||
-rwxr-xr-x | .local/bin/statusbar/sb-microphone | 11 | ||||
-rwxr-xr-x | .local/bin/statusbar/sb-nettraf | 28 | ||||
-rwxr-xr-x | .local/bin/statusbar/sb-news | 17 | ||||
-rwxr-xr-x | .local/bin/statusbar/sb-volume | 23 | ||||
-rw-r--r-- | dependencies.txt | 2 | ||||
-rwxr-xr-x | rice.sh | 12 |
17 files changed, 155 insertions, 126 deletions
diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf index e709b2b..0a7efdd 100644 --- a/.config/hypr/hyprland.conf +++ b/.config/hypr/hyprland.conf @@ -14,7 +14,7 @@ exec-once = dunst exec-once = hypridle exec-once = gpg-agent --daemon exec-once = sing-box run -c /mnt/ssd/settings/config.json -exec-once = sleep 2 && waybar +exec-once = waybar env = QT_SCREEN_SCALE_FACTORS,1;1 env = XCURSOR_SIZE,24 @@ -119,10 +119,6 @@ gestures { workspace_swipe = false } -xwayland { - force_zero_scaling = true -} - $mainMod = SUPER # Sets "Windows" key as main modifier bind = $mainMod, Return, exec, $terminal @@ -143,6 +139,7 @@ bind = $mainMod, E, exec, foot -e neomutt; pkill -RTMIN+12 waybar bind = $mainMod SHIFT, N, exec, foot -e newsboat; pkill -RTMIN+6 waybar bind = $mainMod SHIFT, S, exec, slurp | grim -t jpeg -g - - | wl-copy -t image/jpeg bind = $mainMod SHIFT, R, exec, foot -e btop +bind = $mainMod, M, exec, foot -e cmus bind =,XF86AudioPlay, exec, playerctl play-pause bind =,XF86AudioPrev, exec, playerctl previous bind =,XF86AudioNext, exec, playerctl next @@ -197,3 +194,7 @@ workspace = 1, monitor:DP-2 workspace = 2, monitor:DP-2 workspace = 3, monitor:DP-3 workspace = 4, monitor:DP-3 + +ecosystem { + no_update_news = true +} diff --git a/.config/newsboat/config b/.config/newsboat/config index 3feffa5..66c0400 100644 --- a/.config/newsboat/config +++ b/.config/newsboat/config @@ -24,12 +24,20 @@ bind-key D pb-download bind-key U show-urls bind-key x pb-delete -color listnormal cyan default -color listfocus black yellow standout bold -color listnormal_unread blue default -color listfocus_unread yellow default bold -color info red black bold -color article white default bold +color article color223 default +color background color100 default +color info color142 default +color listfocus color214 default +color listfocus_unread color214 default +color listnormal color246 default +color listnormal_unread color175 default +highlight article "^Feed:.*" color175 default +highlight article "^Title:.*" color214 default bold +highlight article "^Author:.*" color167 default +highlight article "^Link:.*" color109 default +highlight article "^Date:.*" color142 default +highlight article "\\[[0-9]\\+\\]" color208 default bold +highlight article "\\[[^0-9].*[0-9]\\+\\]" color167 default bold browser linkhandler macro , open-in-browser @@ -42,16 +50,3 @@ macro c set browser "echo %u | xclip -r -sel c" ; open-in-browser ; set browser macro C set browser "youtube-viewer --comments=%u" ; open-in-browser ; set browser linkhandler macro p set browser "peertubetorrent %u 480" ; open-in-browser ; set browser linkhandler macro P set browser "peertubetorrent %u 1080" ; open-in-browser ; set browser linkhandler - -highlight all "---.*---" yellow -highlight feedlist ".*(0/0))" black -highlight article "(^Feed:.*|^Title:.*|^Author:.*)" cyan default bold -highlight article "(^Link:.*|^Date:.*)" default default -highlight article "https?://[^ ]+" green default -highlight article "^(Title):.*$" blue default -highlight article "\\[[0-9][0-9]*\\]" magenta default bold -highlight article "\\[image\\ [0-9]+\\]" green default bold -highlight article "\\[embedded flash: [0-9][0-9]*\\]" green default bold -highlight article ":.*\\(link\\)$" cyan default -highlight article ":.*\\(image\\)$" blue default -highlight article ":.*\\(embedded flash\\)$" magenta default diff --git a/.config/waybar/config b/.config/waybar/config index 8b7793c..6e43e9f 100644 --- a/.config/waybar/config +++ b/.config/waybar/config @@ -1,11 +1,12 @@ { "layer": "top", "position": "top", + "output": "DP-2", "spacing": 20, "reload_style_on_change": true, "modules-left": ["hyprland/workspaces", "hyprland/window"], "modules-center": [], - "modules-right": ["custom/packages", "custom/memory","custom/doppler","custom/forecast","custom/mailbox","custom/nettraf","custom/microphone","custom/volume","custom/clock","custom/internet","tray"], + "modules-right": ["custom/packages", "custom/news", "custom/memory", "custom/forecast","custom/mailbox","custom/nettraf","custom/microphone","custom/volume","custom/clock","custom/internet","tray"], "hyprland/window": { "format": "{}", @@ -20,6 +21,17 @@ "format": "{name}", }, + "custom/news" : { + "tooltip": false, + "format": "{}", + "signal": 6, + "exec" : "sb-news", + "on-click": "sb-news 1", + "on-click-right": "sb-news 3", + "on-click-middle": "sb-news 2", + "on-click-backward": "sb-news 6", + }, + "custom/packages" : { "tooltip": false, "format": "{}", @@ -93,12 +105,13 @@ "custom/microphone" : { "tooltip": false, "format": "{}", - "signal": 8, + "signal": 23, "exec" : "sb-microphone", + "interval": 10, "on-click": "sb-microphone 1", - "on-click-middle": "wpctl set-mute @DEFAULT_SOURCE@ toggle; pkill -RTMIN+8 waybar", - "on-scroll-up": "wpctl set-volume @DEFAULT_SOURCE@ 0.01+; pkill -RTMIN+8 waybar", - "on-scroll-down": "wpctl set-volume @DEFAULT_SOURCE@ 0.01-; pkill -RTMIN+8 waybar", + "on-click-middle": "sb-microphone 2", + "on-scroll-up": "sb-microphone 4", + "on-scroll-down": "sb-microphone 5", "on-click-right": "sb-microphone 3", "on-click-backward": "sb-microphone 6" }, @@ -108,10 +121,11 @@ "format": "{}", "signal": 10, "exec" : "sb-volume", + "interval": 10, "on-click": "sb-volume 1", - "on-click-middle": "wpctl set-mute @DEFAULT_SINK@ toggle; pkill -RTMIN+10 waybar", - "on-scroll-up": "wpctl set-volume @DEFAULT_SINK@ 0.01+; pkill -RTMIN+10 waybar", - "on-scroll-down": "wpctl set-volume @DEFAULT_SINK@ 0.01-; pkill -RTMIN+10 waybar", + "on-click-middle": "sb-volume 2", + "on-scroll-up": "sb-volume 4", + "on-scroll-down": "sb-volume 5", "on-click-right": "sb-volume 3", "on-click-backward": "sb-volume 6" }, diff --git a/.local/bin/cron/checkup b/.local/bin/cron/checkup index 387c04e..d40e556 100755 --- a/.local/bin/cron/checkup +++ b/.local/bin/cron/checkup @@ -8,7 +8,7 @@ notify-send "๐ฆ Repository Sync" "Checking for package updates..." doas pacman -Syyuw --noconfirm || notify-send "Error downloading updates. Check your internet connection, if pacman is already running, or run update manually to see errors." -pkill -RTMIN+8 "${STATUSBAR:-i3blocks}" +pkill -RTMIN+8 "${STATUSBAR:-waybar}" if pacman -Qu | grep -v "\[ignored\]" then diff --git a/.local/bin/cron/newsup b/.local/bin/cron/newsup index dd85c9f..af2dbb8 100755 --- a/.local/bin/cron/newsup +++ b/.local/bin/cron/newsup @@ -9,8 +9,8 @@ export DISPLAY=':0' pgrep -f newsboat$ && /usr/bin/xdotool key --window "$(/usr/bin/xdotool search --name "^newsboat$")" R && exit echo ๏ฑ > /tmp/newsupdate -pkill -RTMIN+6 "${STATUSBAR:-i3blocks}" +pkill -RTMIN+6 "${STATUSBAR:-waybar}" /usr/bin/newsboat -x reload rm -f /tmp/newsupdate -pkill -RTMIN+6 "${STATUSBAR:-i3blocks}" +pkill -RTMIN+6 "${STATUSBAR:-waybar}" /usr/bin/notify-send "๐ฐ RSS feed update complete." diff --git a/.local/bin/statusbar/sb-clock b/.local/bin/statusbar/sb-clock index b2ed96a..7297be0 100755 --- a/.local/bin/statusbar/sb-clock +++ b/.local/bin/statusbar/sb-clock @@ -20,10 +20,10 @@ esac case $1 in 1) notify-send "This Month" "$(cal | sed "s/\<$(date +'%e'|tr -d ' ')\>/<b><span color='red'>&<\/span><\/b>/")" && notify-send "Appointments" "$(calcurse -d3)" ;; - 2) hyprctl dispatch exec "$TERMINAL -e calcurse" ;; - 3) notify-send "๐
Time/date module" "\- Left click to show upcoming appointments for the next three days via \`calcurse -d3\` and show the month via \`cal\` + 2) setsid -f "$TERMINAL" -e calcurse ;; + 3) notify-send "๏ณ Time/date module" "\- Left click to show upcoming appointments for the next three days via \`calcurse -d3\` and show the month via \`cal\` - Middle click opens calcurse if installed" ;; - 6) hyprctl dispatch exec "$TERMINAL -e \"$EDITOR\" \"$0\"" ;; + 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; esac date "+%Y %b %d (%a) $icon %H:%M" diff --git a/.local/bin/statusbar/sb-doppler b/.local/bin/statusbar/sb-doppler index e6062a3..8ace4c2 100755 --- a/.local/bin/statusbar/sb-doppler +++ b/.local/bin/statusbar/sb-doppler @@ -7,16 +7,16 @@ doppler="${XDG_CACHE_HOME:-$HOME/.cache}/doppler.gif" getdoppler() { curl -sL https://meteoinfo.ru/hmc-output/rmap/phenomena.gif > "$doppler" ;} -showdoppler() { hyprctl dispatch exec "[float; size 800 800;]" "imv \"$doppler\" -H 1200 -W 1200" ;} +showdoppler() { setsid -f mpv --no-osc --loop=inf --no-terminal "$doppler" ;} case $1 in 1) [ $(($(date '+%s') - $(stat -c %Y "$doppler"))) -gt "$secs" ] && getdoppler - showdoppler ;; - 2) getdoppler && showdoppler ;; + showdoppler ;; + 2) getdoppler && showdoppler ;; 3) notify-send "๐บ๏ธ Doppler RADAR module" "\- Left click for local Doppler RADAR. - Middle click to update RADAR location. After $secs seconds, new clicks will also automatically update the doppler RADAR." ;; - 6) hyprctl dispatch exec "$TERMINAL -e \"$EDITOR\" \"$0\"" ;; + 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; esac -echo ๐
+echo ๓ฐ diff --git a/.local/bin/statusbar/sb-forecast b/.local/bin/statusbar/sb-forecast index 699c868..ef66ba2 100755 --- a/.local/bin/statusbar/sb-forecast +++ b/.local/bin/statusbar/sb-forecast @@ -2,6 +2,7 @@ # Displays today's precipication chance (โ), and daily low (๐ฅถ) and high (๐). # Usually intended for the statusbar. + LOCATION="Moscow" url="${WTTRURL:-wttr.in}" weatherreport="${XDG_CACHE_HOME:-$HOME/.cache}/weatherreport" @@ -34,24 +35,20 @@ readfile() { weatherdata="$(cat "$weatherreport")" ;} showweather() { readfile - printf "โ%s ๐ฅถ%sยฐ ๐%sยฐ\n" "$(getprecipchance)" $(getdailyhighlow) -} - -openterm() { - hyprctl dispatch exec "[float; size 1800 1300;]" '$TERMINAL -e sh -c "curl wttr.in/Moscow; read _"' + printf "๏ฉ %s ๏ %sยฐ ๏
%sยฐ\n" "$(getprecipchance)" $(getdailyhighlow) } case $1 in - 1) hyprctl dispatch exec "[float; size 1800 1100;]" "$TERMINAL -e less -Sfr \"$weatherreport\"" - ;; - 2) getforecast && showweather ;; - 3) notify-send "๐ Weather module" "\- Left click for full forecast. + 1) setsid -f "$TERMINAL" -e less -Sfr "$weatherreport" ;; + 2) getforecast && showweather ;; + 3) notify-send "๏ Weather module" "\- Left click for full forecast. - Middle click to update forecast. -โ: Chance of rain/snow -๐ฅถ: Daily low -๐: Daily high" ;; - 6) hyprctl dispatch exec "$TERMINAL -e \"$EDITOR\" \"$0\"" ;; +๏ฉ : Chance of rain/snow +๏ : Daily low +๏
: Daily high" ;; + 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; esac checkforecast || getforecast + showweather diff --git a/.local/bin/statusbar/sb-internet b/.local/bin/statusbar/sb-internet index 0e21c3b..4afa856 100755 --- a/.local/bin/statusbar/sb-internet +++ b/.local/bin/statusbar/sb-internet @@ -1,43 +1,43 @@ #!/bin/sh -# Show wifi ๐ถ and percent strength or ๐ก if none. -# Show ๐ if connected to ethernet or โ if none. -# Show ๐ if a vpn connection is active +# Show wifi ๓ฐคจ and percent strength or ๓ฐคฎ if none. +# Show ๏ฟ if connected to ethernet or ๓ฑ if none. +# Show ๏ฃ if a vpn connection is active togglevpn() { - if [ ! -n "$(cat /sys/class/net/wg0/operstate 2>/dev/null)" ];then - doas wg-quick up wg0 - notify-send "๐ Internet module" "Connected to VPN" - else - doas wg-quick down wg0 - notify-send "๐ Internet module" "Disconnected from VPN" - fi + if [ ! -n "$(cat /sys/class/net/libre/operstate 2>/dev/null)" ];then + reloadsingbox + notify-send " ๏ฃ Internet module" "Connected to VPN" + else + killall sing-box + notify-send " ๏ Internet module" "Disconnected from VPN" + fi } case $1 in 1) togglevpn 2>/dev/null ;; - 3) notify-send "๐ Internet module" "\- Click to enable/disable VPN -โ: wifi disabled -๐ก: no wifi connection -๐ถ: wifi connection with quality -โ: no ethernet -๐: ethernet working -๐: vpn is active -" ;; - 6) hyprctl dispatch exec "$TERMINAL -e \"$EDITOR\" \"$0\"" ;; + 3) notify-send "๏ฌ Internet module" "\- Click to enable/disable VPN +๏ : wifi disabled +๓ฐคฎ : no wifi connection +๓ฐคจ : wifi connection with quality +๓ฑ : no ethernet +๏ฟ : ethernet working +๏ฃ : vpn is active + " ;; + 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; esac # Wifi if [ "$(cat /sys/class/net/w*/operstate 2>/dev/null)" = 'up' ] ; then - wifiicon="$(awk '/^\s*w/ { print "๐ถ", int($3 * 100 / 70) "% " }' /proc/net/wireless)" + wifiicon="$(awk '/^\s*w/ { print "๓ฐคจ ", int($3 * 100 / 70) "% " }' /proc/net/wireless)" elif [ "$(cat /sys/class/net/w*/operstate 2>/dev/null)" = 'down' ] ; then - [ "$(cat /sys/class/net/w*/flags 2>/dev/null)" = '0x1003' ] && wifiicon="๐ก " || wifiicon="โ " + [ "$(cat /sys/class/net/w*/flags 2>/dev/null)" = '0x1003' ] && wifiicon="๓ฐคฎ " || wifiicon="๏ " fi # Ethernet -[ "$(cat /sys/class/net/e*/operstate 2>/dev/null)" = 'up' ] && ethericon="๐" || ethericon="โ" +[ "$(cat /sys/class/net/e*/operstate 2>/dev/null)" = 'up' ] && ethericon="๏ฟ " || ethericon="๓ฑ " -# Wireguard -[ -n "$(cat /sys/class/net/wg*/operstate 2>/dev/null)" ] && tunicon=" ๐" +# VPN (change libre to your tun interface name) +[ -n "$(cat /sys/class/net/libre/operstate 2>/dev/null)" ] && tunicon=" ๏ฃ " printf "%s%s%s\n" "$wifiicon" "$ethericon" "$tunicon" diff --git a/.local/bin/statusbar/sb-mailbox b/.local/bin/statusbar/sb-mailbox index b03724f..055993c 100755 --- a/.local/bin/statusbar/sb-mailbox +++ b/.local/bin/statusbar/sb-mailbox @@ -4,17 +4,17 @@ # When clicked, brings up `neomutt`. case $1 in - 1) hyprctl dispatch exec '$TERMINAL -e neomutt'; pkill -RTMIN+12 waybar ;; + 1) setsid -w -f "$TERMINAL" -e neomutt; pkill -RTMIN+12 waybar ;; 2) setsid -f mailsync >/dev/null ;; 3) notify-send "๐ฌ Mail module" "\- Shows unread mail - Shows ๐ if syncing mail - Left click opens neomutt - Middle click syncs mail" ;; - 6) hyprctl dispatch exec "$TERMINAL -e \"$EDITOR\" \"$0\"" ;; + 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; esac unread="$(find "${XDG_DATA_HOME:-$HOME/.local/share}"/mail/*/[Ii][Nn][Bb][Oo][Xx]/new/* -type f | wc -l 2>/dev/null)" -pidof mailsync >/dev/null 2>&1 && icon="๐" +pidof mailsync >/dev/null 2>&1 && icon="๏ฑ " -[ "$unread" = "0" ] && [ "$icon" = "" ] || echo "๐ฌ$unread$icon" +[ "$unread" = "0" ] && [ "$icon" = "" ] || echo "๏ $unread$icon" diff --git a/.local/bin/statusbar/sb-memory b/.local/bin/statusbar/sb-memory index c39488f..58256f6 100755 --- a/.local/bin/statusbar/sb-memory +++ b/.local/bin/statusbar/sb-memory @@ -1,13 +1,12 @@ #!/bin/sh case $1 in - 1) notify-send "๐ง Memory hogs" "$(ps axch -o cmd:15,%mem --sort=-%mem | head)" ;; - 2) hyprctl dispatch exec '$TERMINAL -e sh -c "btop"' ;; - 3) notify-send "๐ง Memory module" "\- Shows Memory Used/Total. + 1) notify-send "๏ธ Memory hogs" "$(ps axch -o cmd:15,%mem --sort=-%mem | head)" ;; + 2) setsid -f "$TERMINAL" -e btop ;; + 3) notify-send "๏ธ Memory module" "\- Shows Memory Used/Total. - Click to show memory hogs. -- Middle click to open btop." ;; - 6) hyprctl dispatch exec "$TERMINAL -e \"$EDITOR\" \"$0\"" ;; +- Middle click to open htop." ;; + 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; esac -free --mebi | sed -n '2{p;q}' | awk '{printf ("๐ง %2.2fGiB/%2.2fGiB\n", ( $3 / 1024), ($2 / 1024))}' - +free --mebi | sed -n '2{p;q}' | awk '{printf ("๏ธ %2.2fGiB/%2.2fGiB\n", ( $3 / 1024), ($2 / 1024))}' diff --git a/.local/bin/statusbar/sb-microphone b/.local/bin/statusbar/sb-microphone index 610eb21..e78ad43 100755 --- a/.local/bin/statusbar/sb-microphone +++ b/.local/bin/statusbar/sb-microphone @@ -3,11 +3,14 @@ # Prints the current microphone volume or ๏ฑ if muted. case $1 in - 1) hyprctl dispatch exec "$TERMINAL -e pulsemixer" ;; - 3) notify-send "๐ค Microphone volume module" "\- Shows volume ๐๏ธ, ๏ฑ if muted. + 1) setsid -w -f "$TERMINAL" -e pulsemixer; pkill -RTMIN+23 "${STATUSBAR:-waybar}" ;; + 2) wpctl set-mute @DEFAULT_SOURCE@ toggle ;; + 4) wpctl set-volume @DEFAULT_SOURCE@ 1%+ ;; + 5) wpctl set-volume @DEFAULT_SOURCE@ 1%- ;; + 3) notify-send "๏ฐ Microphone volume module" "\- Shows volume ๏ฐ, ๏ฑ if muted. - Middle click to mute. - Scroll to change." ;; - 6) hyprctl dispatch exec "$TERMINAL -e \"$EDITOR\" \"$0\"" ;; + 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; esac vol="$(wpctl get-volume @DEFAULT_AUDIO_SOURCE@)" @@ -27,7 +30,7 @@ split() { vol="$(printf "%.0f" "$(split "$vol" ".")")" case 1 in - $((vol >= 1)) ) icon="๐๏ธ" ;; + $((vol >= 1)) ) icon="๏ฐ" ;; * ) echo ๏ฑ && exit ;; esac diff --git a/.local/bin/statusbar/sb-nettraf b/.local/bin/statusbar/sb-nettraf index 0f4201b..eb504df 100755 --- a/.local/bin/statusbar/sb-nettraf +++ b/.local/bin/statusbar/sb-nettraf @@ -5,25 +5,25 @@ # second, gives network traffic per second. case $1 in - 1) hyprctl dispatch exec "$TERMINAL -e bmon" ;; - 3) notify-send "๐ Network traffic module" "๐ป: Traffic received -๐บ: Traffic transmitted" ;; - 6) hyprctl dispatch exec "$TERMINAL -e \"$EDITOR\" \"$0\"" ;; + 1) setsid -f "$TERMINAL" -e doas bandwhich ;; + 3) notify-send "๏ฌ Network traffic module" "๏ฃ : Traffic received +๏ข : Traffic transmitted" ;; + 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; esac update() { - sum=0 - for arg; do - read -r i < "$arg" - sum=$(( sum + i )) - done - cache=/tmp/${1##*/} - [ -f "$cache" ] && read -r old < "$cache" || old=0 - printf %d\\n "$sum" > "$cache" - printf %d\\n $(( sum - old )) + sum=0 + for arg; do + read -r i < "$arg" + sum=$(( sum + i )) + done + cache=/tmp/${1##*/} + [ -f "$cache" ] && read -r old < "$cache" || old=0 + printf %d\\n "$sum" > "$cache" + printf %d\\n $(( sum - old )) } rx=$(update /sys/class/net/[ew]*/statistics/rx_bytes) tx=$(update /sys/class/net/[ew]*/statistics/tx_bytes) -printf "๐ป%4sB ๐บ%4sB\\n" $(numfmt --to=iec $rx $tx) +printf "๏ฃ %4sB ๏ข %4sB\\n" $(numfmt --to=iec $rx $tx) diff --git a/.local/bin/statusbar/sb-news b/.local/bin/statusbar/sb-news new file mode 100755 index 0000000..2a9e451 --- /dev/null +++ b/.local/bin/statusbar/sb-news @@ -0,0 +1,17 @@ +#!/bin/sh + +# Displays number of unread news items and an loading icon if updating. +# When clicked, brings up `newsboat`. + +case $1 in + 1) setsid "$TERMINAL" -e newsboat ;; + 2) setsid -f newsup >/dev/null && exit ;; + 3) notify-send "๏ช News module" "\- Shows unread news items +- Shows ๐ if updating with \`newsup\` +- Left click opens newsboat +- Middle click syncs RSS feeds +<b>Note:</b> Only one instance of newsboat (including updates) may be running at a time." ;; + 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; +esac + + cat /tmp/newsupdate 2>/dev/null || echo "$(newsboat -x print-unread | awk '{ if($1>0) print "๏ช " $1}')$(cat "${XDG_CONFIG_HOME:-$HOME/.config}"/newsboat/.update 2>/dev/null)" diff --git a/.local/bin/statusbar/sb-volume b/.local/bin/statusbar/sb-volume index 3b77433..59c47f4 100755 --- a/.local/bin/statusbar/sb-volume +++ b/.local/bin/statusbar/sb-volume @@ -1,19 +1,22 @@ #!/bin/sh -# Prints the current volume or ๐ if muted. +# Prints the current volume or ๏ฉ if muted. case $1 in - 1) hyprctl dispatch exec "$TERMINAL -e pulsemixer" ;; - 3) notify-send "๐ข Volume module" "\- Shows volume ๐, ๐ if muted. + 1) setsid -w -f "$TERMINAL" -e pulsemixer; pkill -RTMIN+10 "${STATUSBAR:-waybar}" ;; + 2) wpctl set-mute @DEFAULT_SINK@ toggle ;; + 4) wpctl set-volume @DEFAULT_SINK@ 1%+ ;; + 5) wpctl set-volume @DEFAULT_SINK@ 1%- ;; + 3) notify-send "๏จ Volume module" "\- Shows volume ๏จ , ๏ฉ if muted. - Middle click to mute. - Scroll to change." ;; - 6) hyprctl dispatch exec "$TERMINAL -e \"$EDITOR\" \"$0\"" ;; + 6) setsid -f "$TERMINAL" -e "$EDITOR" "$0" ;; esac vol="$(wpctl get-volume @DEFAULT_AUDIO_SINK@)" -# If muted, print ๐ and exit. -[ "$vol" != "${vol%\[MUTED\]}" ] && echo ๐ && exit +# If muted, print ๏ฉ and exit. +[ "$vol" != "${vol%\[MUTED\]}" ] && echo ๏ฉ && exit vol="${vol#Volume: }" @@ -27,10 +30,10 @@ split() { vol="$(printf "%.0f" "$(split "$vol" ".")")" case 1 in - $((vol >= 70)) ) icon="๐" ;; - $((vol >= 30)) ) icon="๐" ;; - $((vol >= 1)) ) icon="๐" ;; - * ) echo ๐ && exit ;; + $((vol >= 70)) ) icon="๏จ " ;; + $((vol >= 30)) ) icon="๏ง " ;; + $((vol >= 1)) ) icon="๏ฆ " ;; + * ) echo ๏ฉ && exit ;; esac echo "$icon $vol%" diff --git a/dependencies.txt b/dependencies.txt index bcf2ef7..25e6d16 100644 --- a/dependencies.txt +++ b/dependencies.txt @@ -22,7 +22,7 @@ fontconfig # waybar deps waybar imv -bmon +bandwhich calcurse libnotify dunst @@ -80,12 +80,12 @@ doas -u $PERMUSER makepkg -csi --noconfirm cd "$WORKDIRECTORY" DEPLIST="`sed -e 's/#.*$//' -e '/^$/d' aurdeps.txt | tr '\n' ' '`" doas -u $PERMUSER yay -S $DEPLIST --noconfirm -doas -u $PERMUSER git clone https://github.com/awnrt/gruvbox-gtk-theme -doas -u $PERMUSER cp -r gruvbox-gtk-theme/Gruvbox-Dark /home/$PERMUSER/.local/share/themes -doas -u $PERMUSER cp -r gruvbox-gtk-theme/Gruvbox-Icons /home/$PERMUSER/.local/share/icons -doas -u $PERMUSER dbus-launch gsettings set org.gnome.desktop.interface gtk-theme "Gruvbox-Dark" -doas -u $PERMUSER dbus-launch gsettings set org.gnome.desktop.wm.preferences theme "Gruvbox-Dark" -doas -u $PERMUSER dbus-launch gsettings set org.gnome.desktop.interface icon-theme "Gruvbox-Icons" +doas -u $PERMUSER git clone https://github.com/TheGreatMcPain/gruvbox-material-gtk +doas -u $PERMUSER cp -r gruvbox-material-gtk/themes/Gruvbox-Material-Dark /home/$PERMUSER/.local/share/themes +doas -u $PERMUSER cp -r gruvbox-material-gtk/icons/Gruvbox-Material-Dark /home/$PERMUSER/.local/share/icons +doas -u $PERMUSER dbus-launch gsettings set org.gnome.desktop.interface gtk-theme "Gruvbox-Material-Dark" +doas -u $PERMUSER dbus-launch gsettings set org.gnome.desktop.wm.preferences theme "Gruvbox-Material-Dark" +doas -u $PERMUSER dbus-launch gsettings set org.gnome.desktop.interface icon-theme "Gruvbox-Material-Dark" doas -u $PERMUSER dbus-launch gsettings set org.gnome.desktop.wm.preferences button-layout 'appmenu' doas -u $PERMUSER dbus-launch gsettings set org.gnome.desktop.interface font-name "Sans 11" cd .. |