chore: initial commit
This commit is contained in:
24
polybar/scripts/get_mixrs_status.sh
Executable file
24
polybar/scripts/get_mixrs_status.sh
Executable file
@@ -0,0 +1,24 @@
|
||||
#!/bin/sh
|
||||
while true
|
||||
do
|
||||
if ! (echo -ne '\x9' | nc -N -U /tmp/mixrs) >/dev/null 2>&1; then
|
||||
echo "Offline"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
raw=$(echo -ne "\x9" | nc -N -U /tmp/mixrs)
|
||||
if [ ${#raw} -gt 0 ]; then
|
||||
if [ $(echo "$raw" | grep "muted: " | sed 's/muted: //') = "true" ]; then
|
||||
output=$(echo "$raw" | grep -e 'selection' -e 'name' | sed -E -e 's/selection: |name: |volume_percentage: //g' | tr '\n' ' ')
|
||||
echo "${output}Muted"
|
||||
else
|
||||
output=$(echo "$raw" | grep -e 'selection' -e 'name' -e 'volume_percentage' | sed -E -e 's/selection: |name: |volume_percentage: //g' | tr '\n' ' ' | sed 's/.$/%\n/')
|
||||
echo $output
|
||||
fi
|
||||
else
|
||||
echo "0/0"
|
||||
fi
|
||||
|
||||
|
||||
sleep 0.07s
|
||||
done
|
||||
50
polybar/scripts/get_spotify_status.sh
Executable file
50
polybar/scripts/get_spotify_status.sh
Executable file
@@ -0,0 +1,50 @@
|
||||
#!/bin/bash
|
||||
|
||||
# The name of polybar bar which houses the main spotify module and the control modules.
|
||||
PARENT_BAR="now-playing"
|
||||
PARENT_BAR_PID=$(pgrep -a "polybar" | grep "$PARENT_BAR" | cut -d" " -f1)
|
||||
|
||||
# Set the source audio player here.
|
||||
# Players supporting the MPRIS spec are supported.
|
||||
# Examples: spotify, vlc, chrome, mpv and others.
|
||||
# Use `playerctld` to always detect the latest player.
|
||||
# See more here: https://github.com/altdesktop/playerctl/#selecting-players-to-control
|
||||
PLAYER="spotify"
|
||||
|
||||
# Format of the information displayed
|
||||
# Eg. {{ artist }} - {{ album }} - {{ title }}
|
||||
# See more attributes here: https://github.com/altdesktop/playerctl/#printing-properties-and-metadata
|
||||
FORMAT="{{ artist }} - {{ title }}"
|
||||
|
||||
# Sends $2 as message to all polybar PIDs that are part of $1
|
||||
update_hooks() {
|
||||
while IFS= read -r id
|
||||
do
|
||||
polybar-msg -p "$id" hook spotify-play-pause $2 1>/dev/null 2>&1
|
||||
done < <(echo "$1")
|
||||
}
|
||||
|
||||
PLAYERCTL_STATUS=$(playerctl --player=$PLAYER status 2>/dev/null)
|
||||
EXIT_CODE=$?
|
||||
|
||||
if [ $EXIT_CODE -eq 0 ]; then
|
||||
STATUS=$PLAYERCTL_STATUS
|
||||
else
|
||||
STATUS="No player is running"
|
||||
fi
|
||||
|
||||
if [ "$1" == "--status" ]; then
|
||||
echo "$STATUS"
|
||||
else
|
||||
if [ "$STATUS" = "Stopped" ]; then
|
||||
echo "No music is playing"
|
||||
elif [ "$STATUS" = "Paused" ]; then
|
||||
update_hooks "$PARENT_BAR_PID" 2
|
||||
playerctl --player=$PLAYER metadata --format "$FORMAT"
|
||||
elif [ "$STATUS" = "No player is running" ]; then
|
||||
echo "$STATUS"
|
||||
else
|
||||
update_hooks "$PARENT_BAR_PID" 1
|
||||
playerctl --player=$PLAYER metadata --format "$FORMAT"
|
||||
fi
|
||||
fi
|
||||
12
polybar/scripts/scroll_spotify_status.sh
Executable file
12
polybar/scripts/scroll_spotify_status.sh
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
# see man zscroll for documentation of the following parameters
|
||||
zscroll -l 120 \
|
||||
--delay 0.3 \
|
||||
--scroll-padding " | " \
|
||||
--match-command "`dirname $0`/get_spotify_status.sh --status" \
|
||||
--match-text "Playing" "--scroll 1" \
|
||||
--match-text "Paused" "--scroll 0" \
|
||||
--update-check true "`dirname $0`/get_spotify_status.sh" &
|
||||
|
||||
wait
|
||||
Reference in New Issue
Block a user