FelixKratz / SketchyBar

A highly customizable macOS status bar replacement
https://felixkratz.github.io/SketchyBar/
GNU General Public License v3.0
5.62k stars 86 forks source link

Apple Music Song not showing #320

Closed meksrc closed 1 year ago

meksrc commented 1 year ago

Hi Guys,

first of all thanks for this awesome project! I just installed it and I am still using pretty much the example sketchybarrc.

I tried to install the music plugin which is close to the top in the plugins thread, but nothing is showing on my sketchybar? Im running sketchybar through terminal and also dont get any error messages, nothing. I am still learning sorry :) This is my rc file:


# This is a demo config to show some of the most important commands more easily.
# This is meant to be changed and configured, as it is intentionally kept sparse.
# For a more advanced configuration example see my dotfiles:
# https://github.com/FelixKratz/dotfiles

PLUGIN_DIR="$HOME/.config/sketchybar/plugins"

##### Bar Appearance #####
# Configuring the general appearance of the bar, these are only some of the
# options available. For all options see:
# https://felixkratz.github.io/SketchyBar/config/bar
# If you are looking for other colors, see the color picker:
# https://felixkratz.github.io/SketchyBar/config/tricks#color-picker

sketchybar --bar height=32        \
                 blur_radius=30   \
                 position=top     \
                 sticky=off       \
                 padding_left=10  \
                 padding_right=10 \
                 color=0x15ffffff

##### Changing Defaults #####
# We now change some default values that are applied to all further items
# For a full list of all available item properties see:
# https://felixkratz.github.io/SketchyBar/config/items

sketchybar --default updates=when_shown                    \
                     drawing=on                            \
                     icon.font="Hack Nerd Font:Bold:17.0"  \
                     icon.color=0xffffffff                 \
                     label.font="Hack Nerd Font:Bold:14.0" \
                     label.color=0xffffffff                \
                     padding_left=5                        \
                     padding_right=5                       \
                     label.padding_left=4                  \
                     label.padding_right=4                 \
                     icon.padding_left=4                   \
                     icon.padding_right=4

##### Adding Mission Control Space Indicators #####
# Now we add some mission control spaces:
# https://felixkratz.github.io/SketchyBar/config/components#space----associate-mission-control-spaces-with-an-item
# to indicate active and available mission control spaces

SPACE_ICONS=("1" "2" "3" "4" "5" "6" "7" "8" "9" "10")

for i in "${!SPACE_ICONS[@]}"
do
  sid=$(($i+1))
  sketchybar --add space space.$sid left                                 \
             --set space.$sid associated_space=$sid                      \
                              icon=${SPACE_ICONS[i]}                     \
                              background.color=0x44ffffff                \
                              background.corner_radius=5                 \
                              background.height=20                       \
                              background.drawing=off                     \
                              label.drawing=off                          \
                              script="$PLUGIN_DIR/space.sh"              \
                              click_script="yabai -m space --focus $sid"
done

# E V E N T S
sketchybar -m --add event song_update com.apple.iTunes.playerInfo

# M U S I C
sketchybar -m --add item music_info                      right  \
              --set music_info script="~/.config/sketchybar/plugins/music.sh" \
              --set music_info click_script="~/.config/sketchybar/plugins/music_click.sh" \
              --subscribe music_info song_update

##### Adding Left Items #####
# We add some regular items to the left side of the bar
# only the properties deviating from the current defaults need to be set

sketchybar --add item space_separator left                         \
           --set space_separator icon=                            \
                                 padding_left=10                   \
                                 padding_right=10                  \
                                 label.drawing=off                 \
                                                                   \
           --add item front_app left                               \
           --set front_app       script="$PLUGIN_DIR/front_app.sh" \
                                 icon.drawing=off                  \
           --subscribe front_app front_app_switched

##### Adding Right Items #####
# In the same way as the left items we can add items to the right side.
# Additional position (e.g. center) are available, see:
# https://felixkratz.github.io/SketchyBar/config/items#adding-items-to-sketchybar

# Some items refresh on a fixed cycle, e.g. the clock runs its script once
# every 10s. Other items respond to events they subscribe to, e.g. the
# volume.sh script is only executed once an actual change in system audio
# volume is registered. More info about the event system can be found here:
# https://felixkratz.github.io/SketchyBar/config/events

sketchybar --add item clock right                              \
           --set clock   update_freq=10                        \
                         icon=                                \
                         script="$PLUGIN_DIR/clock.sh"         \
                                                               \
           --add item wifi right                               \
           --set wifi    script="$PLUGIN_DIR/wifi.sh"          \
                         icon=直                               \
           --subscribe wifi wifi_change                        \
                                                               \
           --add item volume right                             \
           --set volume  script="$PLUGIN_DIR/volume.sh"        \
           --subscribe volume volume_change                    \
                                                               \
           --add item battery right                            \
           --set battery script="$PLUGIN_DIR/battery.sh"       \
                         update_freq=120                       \
           --subscribe battery system_woke power_source_change

##### Finalizing Setup #####
# The below command is only needed at the end of the initial configuration to
# force all scripts to run the first time, it should never be run in an item script.

sketchybar --update
FelixKratz commented 1 year ago

So far so good, you need to place the scripts "~/.config/sketchybar/plugins/music.sh" and "~/.config/sketchybar/plugins/music_click.sh", make them executable, then it should work

meksrc commented 1 year ago

Sorry I forgot to add that I did that of course :( still nothing showing up

FelixKratz commented 1 year ago

There could be two reasons for that

  1. The event is never executed. I am not an apple music user myself, but I believe the event should be com.apple.Music.playerInfo instead of the iTunes one. iTunes is dead since a couple of years by now. You can check by placing an echo somewhere in the music.sh script to see it it reaches it.
  2. The item is disabled in some script and you need to set sketchybar --set music_info updates=on manually because updates=when_shown is set as a default in your config. I will remove this from the default config, as it seems to inflict some unintuitive problems.
meksrc commented 1 year ago

Thanks for helping! I added echos throughout music.sh and when I am switching songs it seems to load everything.

`sketchybar configuration loaded.. 1 2 3

1 2 3 `

etc., it looks like I have problems displaying it. I am trying as I am writing this, and it worked for one time, left from the battery widget it showed the song, but it got bugged, showed the song but didnt play anything? I think you are right, it confuses iTunes and music somewhere.

I will keep playing with it!

meksrc commented 1 year ago

I tried the second plugin a little further down, and I think I will have more success with this one, it looks like this now:

I will keep playing and come back if I should have problems thanks! Bildschirm­foto 2023-02-01 um 17 15 09