Skip to content

Discord Setup

stbrumm edited this page Sep 8, 2026 · 7 revisions

Discord-Setup

English · Deutsch · Español · Languages

Rivulet can show your recording/streaming status as a Discord Rich Presence ("Rivulet — Recording", "Rivulet — Streaming", …). This page shows where to find the bundled setup files and how to enable the status.

Files shipped with Rivulet

Every installer carries a discord/ folder with everything needed for the one-time setup:

Installer Location of the discord/ folder
Windows (MSI & portable ZIP) discord\ in the Rivulet install folder
Linux (AppImage) usr/share/doc/rivulet/discord/ inside the AppImage
macOS (DMG) Rivulet.app/Contents/Resources/discord/

Contents:

  • rivulet-app-icon-512.png — 512×512 icon for the App Icon slot in the Discord Developer Portal (replaces the generic game-controller icon in the server member list).
  • rivulet-rich-presence-1024.png — 1024×1024 artwork for the Rich Presence → Art Assets slot (shown on the activity profile card).
  • activity-status.md — the full, versioned reference for all six status states, the exact upload paths, and what Discord renders where.

The same three files are also attached to every GitHub release as standalone downloads.

Automated verification in CI

The bundled files are not a one-off promise: every CI run executes the integration test installers_ship_discord_assets_and_docs, which fails the build if any installer script stops staging the discord/ folder or the release workflow stops attaching the three files. The image assets themselves are additionally covered by the generated-assets drift check.

For a binary-level spot check you can unpack a downloaded MSI locally with msiexec /a <installer.msi> TARGETDIR=<folder> /qn and compare the extracted discord/ files against the GitHub release assets.

One-time setup

Rivulet ships the official Discord application id and logo as defaults — the status works out of the box and no portal account is required. The steps below are only needed for custom branding (your own app name/artwork):

  1. Create (or open) your Discord application in the Developer Portal and copy its Application ID.
  2. Upload the images from the discord/ folder:
    • General Information → App Icon ← rivulet-app-icon-512.png
    • Rich Presence → Art Assets ← rivulet-rich-presence-1024.png, asset name rivulet_logo
  3. In Rivulet open Settings → Discord Rich Presence, paste the Application ID, set your own art asset key, and enable the adapter. The setting is validated and persisted immediately (clearing the client ID restores the official defaults). If the official application id ever has to change, a Rivulet update ships the new default automatically — the update itself is the rollout; custom IDs in Settings stay untouched. The complete rotation procedure (portal prep, code bump, release-notes text, verification) is the versioned runbook in docs/activity-status.md → Runbook: rotating the official application id.
  4. The Stream view shows the connection state and offers a reconnect button if the handshake was not accepted — no app restart needed.

Notes and limits

  • The member list in a Discord server always shows the app icon plus the registered app name ("Rivulet"); the detailed status lines appear on the profile card and in the profile detail view. This is a Discord rendering rule, not a Rivulet bug — details in activity-status.md.
  • The adapter is non-blocking and opt-out: Rivulet works normally even when Discord is not running or the client ID is empty.
  • Never paste your stream key, OAuth tokens, or application secrets into wiki pages, screenshots, or logs.

Problems? See Discord-Troubleshooting — symptom-based diagnosis with the exact log lines to look for.

Clone this wiki locally