Hermes
A Pandora client for macOS.
THIS PROJECT IS UNMAINTAINED
This means that bugs will not be fixed and features will not be added unless someone else does so. Unfortunately, the former maintainers no longer have the time and/or resources to work on Hermes further.
If you're interested in fixing up Hermes, please reply to this GitHub issue (237).
Download Hermes
- Click Download at hermesapp.org.
- Or install using Homebrew/Caskroom:
brew cask install hermes
.
If you would like to compile Hermes, continue reading.
Develop against Hermes
Thanks to the suggestions by blalor, there's a few ways you can develop against Hermes if you really want to.
-
NSDistributedNotificationCenter
- Every time a new song plays, a notification is posted with the namehermes.song
under the objecthermes
withuserInfo
as a dictionary representing the song being played. See Song.m for the keys available to you. -
AppleScript - here's an example script:
tell application "Hermes" play -- resumes playback, does nothing if playing pause -- pauses playback, does nothing if not playing playpause -- toggles playback between pause/play next song -- goes to the next song get playback state set playback state to playing thumbs up -- likes the current song thumbs down -- dislikes the current song, going to another one tired of song -- sets the current song as being "tired of" raise volume -- raises the volume partially lower volume -- lowers the volume partially full volume -- raises volume to max mute -- mutes the volume unmute -- unmutes the volume to the last state from mute -- integer 0 to 100 for the volume get playback volume set playback volume to 92 -- Working with the current station set stationName to the current station's name set stationId to station 2's stationId set the current station to station 4 -- Getting information from the current song set title to the current song's title set artist to the current song's artist set album to the current song's album ... etc end tell
Want something new/fixed?
-
Open a ticket! We'll get around to it soon, especially if it sounds appealing to us. We take all suggestions/feedback!
-
Take a stab at it yourself if you're brave. Just send us a pull request if you've got something fixed. Here's some common things to do at the command line:
make # build everything make run # build and run the application (logging to stdout) make dbg # build and run inside LLDB # Build with the 'Release' configuration instead of 'Debug' make CONFIGURATION=Release [run|dbg]
Please note that Media Key shortcuts will not work if compiled with
CONFIGURATION=Debug
(the default).
License
Code is available under the MIT License.