Discord Rich Presence for Linux
jellyrpc is a Discord Rich Presence daemon for Linux. It shows what you are currently doing in Discord — which app is active, or that you are away. Two daemons run side by side:
- mprisence — handles Jellyfin, music, and any MPRIS media player automatically.
- jellyrpc — handles everything else: shows the active app (terminal, browser, editor, Steam) and goes idle after 5 minutes of inactivity. Steps back silently when mprisence has something to show.
App detection and handoff
App detection uses pgrep in priority order — terminal beats browser, editor beats terminal. Edit APP_MAP in jellyrpc.py to add or reorder apps.
Before updating Discord presence, jellyrpc checks whether mprisence is active. If mprisence has something to show it clears its own presence and stays silent. This prevents the two from fighting over the same IPC slot.
Nothing else handled the handoff cleanly
Other Rich Presence tools on Linux either handled media or apps but not both, or would overwrite each other. Having two daemons with a clear priority system solved it. mprisence owns media metadata; jellyrpc owns everything else.