From 06a92c0286f389883ba60de50b4fd4ac12d30c9d Mon Sep 17 00:00:00 2001 From: Azalea Date: Wed, 3 Jun 2026 08:09:47 +0800 Subject: [PATCH] [F] Fix #364 (#512) --- neofetch | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/neofetch b/neofetch index d0888c67..569c725f 100755 --- a/neofetch +++ b/neofetch @@ -605,6 +605,7 @@ disk_percent="on" # mopidy # mpd # muine +# musikcube # netease-cloud-music # olivia # playerctl @@ -3989,6 +3990,7 @@ get_song() { "mopidy" "mpd" "muine" + "musikcube" "netease-cloud-music" "olivia" "plasma-browser-integration" @@ -4030,6 +4032,18 @@ get_song() { )" } + get_song_mpris() { + local dbus_name + + dbus_name="$(dbus-send --print-reply --dest=org.freedesktop.DBus \ + /org/freedesktop/DBus org.freedesktop.DBus.ListNames 2>/dev/null |\ + awk -F '"' -v player="$1" '$2 ~ "^org\\.mpris\\.MediaPlayer2\\." player {print $2; exit}')" + + [[ "$dbus_name" ]] || return + get_song_dbus "${dbus_name#org.mpris.MediaPlayer2.}" + [[ "$song" =~ [^[:space:]] ]] + } + case ${player/*\/} in "mocp"*) song="$(mocp -Q '%artist \n%album \n%song')" ;; "deadbeef"*) song="$(deadbeef --nowplaying-tf '%artist% \\n%album% \\n%title%')" ;; @@ -4075,6 +4089,8 @@ get_song() { song="$(xmms2 current -f "\${artist}"$' \n'"\${album}"$' \n'"\${title}")" ;; + "musikcube"*) get_song_mpris "musikcube" || return ;; + "cmus"*) # NOTE: cmus >= 2.8.0 supports mpris2 song="$(cmus-remote -Q | awk '/tag artist/ {$1=$2=""; a=$0}