mirror of
https://github.com/ksyasuda/rice.git
synced 2024-10-28 09:04:10 -07:00
fix rofi bluetooth and add weather module
integrated weather module with date/time module instead of making its own section
This commit is contained in:
parent
2731383a8b
commit
389c4c5592
@ -145,7 +145,7 @@ font-2 = "FiraCode Nerd Font:size=10;3"
|
|||||||
modules-left = sep launcher sep workspaces sep cust-mpd-prev custom-mpd cust-mpd-next
|
modules-left = sep launcher sep workspaces sep cust-mpd-prev custom-mpd cust-mpd-next
|
||||||
modules-center = title
|
modules-center = title
|
||||||
; modules-right = color-switch sep alsa sep battery sep network sep date sep sysmenu sep
|
; modules-right = color-switch sep alsa sep battery sep network sep date sep sysmenu sep
|
||||||
modules-right = updates sep bluetooth-4k sep pulseaudio sep battery sep network sep date sep sysmenu sep
|
modules-right = updates sep bluetooth-4k sep pulseaudio sep battery sep network sep date weather sep sysmenu sep
|
||||||
|
|
||||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||||
|
|
||||||
|
@ -144,11 +144,11 @@ font-3 = "Material Icons:size=10;3"
|
|||||||
; modules-center = xwindow xbacklight
|
; modules-center = xwindow xbacklight
|
||||||
; modules-right = ipc clock
|
; modules-right = ipc clock
|
||||||
|
|
||||||
; modules-left = sep menu sep workspaces sep cust-mpd-prev custom-mpd cust-mpd-next
|
|
||||||
modules-left = sep launcher sep workspaces sep cust-mpd-icon cust-mpd-prev custom-mpd cust-mpd-next
|
modules-left = sep launcher sep workspaces sep cust-mpd-icon cust-mpd-prev custom-mpd cust-mpd-next
|
||||||
modules-center = title
|
modules-center = title
|
||||||
; modules-right = color-switch sep alsa sep battery sep network sep date sep sysmenu sep
|
; modules-right = color-switch sep alsa sep battery sep network sep date sep sysmenu sep
|
||||||
modules-right = updates sep bluetooth sep pulseaudio sep network-wlan sep date sep sysmenu sep
|
; modules-right = package-updates-trigger package-updates bluetooth sep pulseaudio sep network-wlan sep weather sep date sep sysmenu sep
|
||||||
|
modules-right = bluetooth sep pulseaudio sep network-wlan sep date weather sep sysmenu sep
|
||||||
|
|
||||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||||
|
|
||||||
|
138
polybar-themes/sblocks/scripts/openweathermap-fullfeatured.sh
Executable file
138
polybar-themes/sblocks/scripts/openweathermap-fullfeatured.sh
Executable file
@ -0,0 +1,138 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
[ -f "$HOME/.weatherkey" ] && source "$HOME/.weatherkey"
|
||||||
|
|
||||||
|
get_icon() {
|
||||||
|
case $1 in
|
||||||
|
# Icons for weather-icons
|
||||||
|
01d) icon="" ;;
|
||||||
|
01n) icon="" ;;
|
||||||
|
02d) icon="" ;;
|
||||||
|
02n) icon="" ;;
|
||||||
|
03*) icon="" ;;
|
||||||
|
04*) icon="" ;;
|
||||||
|
09d) icon="" ;;
|
||||||
|
09n) icon="" ;;
|
||||||
|
10d) icon="" ;;
|
||||||
|
10n) icon="" ;;
|
||||||
|
11d) icon="" ;;
|
||||||
|
11n) icon="" ;;
|
||||||
|
13d) icon="" ;;
|
||||||
|
13n) icon="" ;;
|
||||||
|
50d) icon="" ;;
|
||||||
|
50n) icon="" ;;
|
||||||
|
*) icon="" ;;
|
||||||
|
|
||||||
|
# Icons for Font Awesome 5 Pro
|
||||||
|
# 01d) icon="";;
|
||||||
|
# 01n) icon="";;
|
||||||
|
# 02d) icon="";;
|
||||||
|
# 02n) icon="";;
|
||||||
|
# 03d) icon="";;
|
||||||
|
# 03n) icon="";;
|
||||||
|
# 04*) icon="";;
|
||||||
|
# 09*) icon="";;
|
||||||
|
# 10d) icon="";;
|
||||||
|
# 10n) icon="";;
|
||||||
|
# 11*) icon="";;
|
||||||
|
# 13*) icon="";;
|
||||||
|
# 50*) icon="";;
|
||||||
|
# *) icon="";
|
||||||
|
esac
|
||||||
|
|
||||||
|
echo $icon
|
||||||
|
}
|
||||||
|
|
||||||
|
get_duration() {
|
||||||
|
|
||||||
|
osname=$(uname -s)
|
||||||
|
|
||||||
|
case $osname in
|
||||||
|
*BSD) date -r "$1" -u +%H:%M ;;
|
||||||
|
*) date --date="@$1" -u +%H:%M ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
KEY="$OPENWEATHERMAP_KEY"
|
||||||
|
# CITY="Ann Arbor"
|
||||||
|
CITY="Los%20Angeles"
|
||||||
|
UNITS="imperial"
|
||||||
|
SYMBOL="°"
|
||||||
|
|
||||||
|
API="https://api.openweathermap.org/data/2.5"
|
||||||
|
|
||||||
|
if [ -n "$CITY" ]; then
|
||||||
|
if [ "$CITY" -eq "$CITY" ] 2>/dev/null; then
|
||||||
|
CITY_PARAM="id=$CITY"
|
||||||
|
else
|
||||||
|
CITY_PARAM="q=$CITY"
|
||||||
|
fi
|
||||||
|
current=$(curl -sf "$API/weather?appid=$KEY&$CITY_PARAM&units=$UNITS")
|
||||||
|
forecast=$(curl -sf "$API/forecast?appid=$KEY&$CITY_PARAM&units=$UNITS&cnt=1")
|
||||||
|
# echo "$current | $forecast"
|
||||||
|
else
|
||||||
|
location=$(curl -sf https://location.services.mozilla.com/v1/geolocate?key=geoclue)
|
||||||
|
|
||||||
|
if [ -n "$location" ]; then
|
||||||
|
location_lat="$(echo "$location" | jq '.location.lat')"
|
||||||
|
location_lon="$(echo "$location" | jq '.location.lng')"
|
||||||
|
|
||||||
|
current=$(curl -sf "$API/weather?appid=$KEY&lat=$location_lat&lon=$location_lon&units=$UNITS")
|
||||||
|
forecast=$(curl -sf "$API/forecast?appid=$KEY&lat=$location_lat&lon=$location_lon&units=$UNITS&cnt=1")
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$current" ] && [ -n "$forecast" ]; then
|
||||||
|
current_temp=$(echo "$current" | jq ".main.temp" | cut -d "." -f 1)
|
||||||
|
current_icon=$(echo "$current" | jq -r ".weather[0].icon")
|
||||||
|
|
||||||
|
forecast_temp=$(echo "$forecast" | jq ".list[].main.temp" | cut -d "." -f 1)
|
||||||
|
forecast_icon=$(echo "$forecast" | jq -r ".list[].weather[0].icon")
|
||||||
|
|
||||||
|
if [ "$current_temp" -gt "$forecast_temp" ]; then
|
||||||
|
trend=""
|
||||||
|
elif [ "$forecast_temp" -gt "$current_temp" ]; then
|
||||||
|
trend=""
|
||||||
|
else
|
||||||
|
trend=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
sun_rise=$(echo "$current" | jq ".sys.sunrise")
|
||||||
|
sun_set=$(echo "$current" | jq ".sys.sunset")
|
||||||
|
now=$(date +%s)
|
||||||
|
now2=$(date +%h-%d-%Y)
|
||||||
|
#now2=$(date +%h/%d/%Y)
|
||||||
|
#now2=$(date +%h/%d--%H:%m)
|
||||||
|
now2_symbol=""
|
||||||
|
|
||||||
|
if [ "$sun_rise" -gt "$now" ]; then
|
||||||
|
daytime=" $(get_duration "$((sun_rise - now))")"
|
||||||
|
elif [ "$sun_set" -gt "$now" ]; then
|
||||||
|
daytime=" $(get_duration "$((sun_set - now))")"
|
||||||
|
else
|
||||||
|
daytime=" $(get_duration "$((sun_rise - now))")"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# WITH TREND AND DAYTIME
|
||||||
|
# echo "$(get_icon "$current_icon") $current_temp$SYMBOL $trend $(get_icon "$forecast_icon") $forecast_temp$SYMBOL $daytime"
|
||||||
|
# WITH TREND
|
||||||
|
# echo "$(get_icon "$current_icon") $current_temp$SYMBOL $trend $(get_icon "$forecast_icon") $forecast_temp$SYMBOL"
|
||||||
|
|
||||||
|
# ex color string
|
||||||
|
# "%{F#e5c07b}xyz%{F- }"
|
||||||
|
COLOR=""
|
||||||
|
if [ "$current_temp" -lt 0 ]; then
|
||||||
|
COLOR="%{F#1E90FF}"
|
||||||
|
elif [ "$current_temp" -ge 0 ] && [ "$current_temp" -le 40 ]; then
|
||||||
|
COLOR="%{F#46d9ff}"
|
||||||
|
elif [ "$current_temp" -gt 40 ] && [ "$current_temp" -le 80 ]; then
|
||||||
|
COLOR="%{F#ecbe7b}"
|
||||||
|
elif [ "$current_temp" -gt 80 ] && [ "$current_temp" -le 120 ]; then
|
||||||
|
COLOR="%{F#ff6c6b}"
|
||||||
|
fi
|
||||||
|
# echo "$COLOR$(get_icon "$current_icon") $current_temp$SYMBOL%{F- }"
|
||||||
|
echo "| $COLOR$(get_icon "$current_icon") $current_temp$SYMBOL%{F- }"
|
||||||
|
# echo "$(get_icon "$current_icon") $current_temp$SYMBOL $now2_symbol $now2"
|
||||||
|
# echo "$(get_icon "$current_icon") $current_temp$SYMBOL"
|
||||||
|
fi
|
28
polybar-themes/sblocks/scripts/package-updates
Executable file
28
polybar-themes/sblocks/scripts/package-updates
Executable file
@ -0,0 +1,28 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
format() {
|
||||||
|
if [ "$1" -eq 0 ]; then
|
||||||
|
echo '-'
|
||||||
|
else
|
||||||
|
echo "$1"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
if ! updates_arch="$(checkupdates | wc -l)"; then
|
||||||
|
updates_arch=0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! updates_aur="$(paru -Qum 2>/dev/null | wc -l)"; then
|
||||||
|
updates_aur=0
|
||||||
|
fi
|
||||||
|
|
||||||
|
updates="$((updates_arch + updates_aur))"
|
||||||
|
|
||||||
|
if [ "$updates" -gt 0 ]; then
|
||||||
|
#echo " ($(format $updates_arch)/$(format $updates_aur))"
|
||||||
|
# echo " ($(format $updates_arch)/$(format $updates_aur))"
|
||||||
|
# dunstify -i "/usr/share/icons/breeze-dark/mimetypes/24/package-x-generic.svg" " Outdated Packages: ($(format $updates_arch)/$(format $updates_aur))"
|
||||||
|
# dunstify -i "/usr/share/icons/breeze-dark/mimetypes/24/package-x-generic.svg" "Outdated Packages: ($(format $updates_arch)/$(format $updates_aur))"
|
||||||
|
echo "%{B#ecbe7b} %{B-}%{B#464b55} ($(format $updates_arch)/$(format $updates_aur)) %{B-}"
|
||||||
|
else
|
||||||
|
echo
|
||||||
|
fi
|
@ -13,7 +13,7 @@ type = custom/script
|
|||||||
; Available tokens:
|
; Available tokens:
|
||||||
; %counter%
|
; %counter%
|
||||||
; Command to be executed (using "/usr/bin/env sh -c [command]")
|
; Command to be executed (using "/usr/bin/env sh -c [command]")
|
||||||
exec = ~/.config/polybar/blocks/scripts/updates.sh
|
exec = ~/SudacodeRice/polybar-themes/slocks/scripts/updates.sh
|
||||||
|
|
||||||
; Conditional command that, if defined, needs to exit successfully
|
; Conditional command that, if defined, needs to exit successfully
|
||||||
; before the main exec command is invoked.
|
; before the main exec command is invoked.
|
||||||
@ -316,4 +316,29 @@ format-prefix-padding = 1
|
|||||||
format-overline = ${color.background}
|
format-overline = ${color.background}
|
||||||
format-underline = ${color.background}
|
format-underline = ${color.background}
|
||||||
|
|
||||||
|
[module/package-updates]
|
||||||
|
type = custom/ipc
|
||||||
|
interval = 400
|
||||||
|
hook-0 = ~/SudacodeRice/polybar-themes/sblocks/scripts/package-updates
|
||||||
|
format-padding = 1
|
||||||
|
format-background = ${color.yellow}
|
||||||
|
format-overline = ${color.background}
|
||||||
|
format-underline = ${color.background}
|
||||||
|
|
||||||
|
[module/package-updates-trigger]
|
||||||
|
type = custom/script
|
||||||
|
exec = polybar-msg hook package-updates 1 &>/dev/null
|
||||||
|
interval = 400
|
||||||
|
|
||||||
|
[module/weather]
|
||||||
|
type = custom/script
|
||||||
|
exec = ~/SudacodeRice/polybar-themes/sblocks/scripts/openweathermap-fullfeatured.sh
|
||||||
|
click-left = gnome-weather
|
||||||
|
interval = 600
|
||||||
|
format-font = 3
|
||||||
|
format-background = ${color.background-alt}
|
||||||
|
format-padding = 1
|
||||||
|
format-prefix-padding = 1
|
||||||
|
format-overline = ${color.background}
|
||||||
|
format-underline = ${color.background}
|
||||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||||
|
@ -183,7 +183,8 @@ toggle_trust() {
|
|||||||
# Useful for status bars like polybar, etc.
|
# Useful for status bars like polybar, etc.
|
||||||
print_status() {
|
print_status() {
|
||||||
if power_on; then
|
if power_on; then
|
||||||
printf ''
|
# printf ''
|
||||||
|
echo -n "%{F#A3BE8C} %{F-}"
|
||||||
|
|
||||||
mapfile -t paired_devices < <(bluetoothctl paired-devices | grep Device | cut -d ' ' -f 2)
|
mapfile -t paired_devices < <(bluetoothctl paired-devices | grep Device | cut -d ' ' -f 2)
|
||||||
counter=0
|
counter=0
|
||||||
@ -203,7 +204,8 @@ print_status() {
|
|||||||
done
|
done
|
||||||
printf "\n"
|
printf "\n"
|
||||||
else
|
else
|
||||||
echo ""
|
# echo ""
|
||||||
|
echo -n "%{F#EC7875} %{F-}"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -183,7 +183,7 @@ toggle_trust() {
|
|||||||
# Useful for status bars like polybar, etc.
|
# Useful for status bars like polybar, etc.
|
||||||
print_status() {
|
print_status() {
|
||||||
if power_on; then
|
if power_on; then
|
||||||
echo "%{F#A3BE8C} %{F-}"
|
echo -n "%{F#A3BE8C} %{F-}"
|
||||||
|
|
||||||
mapfile -t paired_devices < <(bluetoothctl paired-devices | grep Device | cut -d ' ' -f 2)
|
mapfile -t paired_devices < <(bluetoothctl paired-devices | grep Device | cut -d ' ' -f 2)
|
||||||
counter=0
|
counter=0
|
||||||
@ -203,7 +203,7 @@ print_status() {
|
|||||||
done
|
done
|
||||||
printf "\n"
|
printf "\n"
|
||||||
else
|
else
|
||||||
echo "%{F#EC7875} %{F-}"
|
echo -n "%{F#EC7875} %{F-}"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user