Skip to content
solitonmedicPublic
forked from sajtii/ra_cli

About

Sajti's CLI for RetroAchievements Discord Rich Presence

Resources

Stars

0 stars

Watchers

0 watching

Forks

 
 

Repository files navigation

Sajti's CLI for RetroAchievements Discord Rich Presence

A little software which lets you share your RetroAchievements activity with your friends on Discord.

Requirements

Note: If you don't care about fancy terminal graphics, use sracli.py. In that case, you only need to install pypresence and configparser for the requirements.

Features

  • Detailed Rich Presence on your Discord profile (name of the game, details about what you're currently doing in the game, icons, etc.)
  • Two clickable buttons (only others can see them): One leads to the RA page of the game you're currently playing; the other leads to your RA profile. You can enable or disable them using python racli.py -s.
  • A CLI that provides some information, fetches the icon of your current game and attempts to recreate it in the terminal or command line you're using.
  • Character presets for recreating the game icon, or you can create your own by editing charset.txt.
  • A little automation feature called timeout. It tries to detect when you are actually playing and activates or deactivates the rich presence accordingly. It is disabled by default.

Usage

After installing the requirements and ensuring you have all the necessary data, start by launching the setup script with python racli.py -s from terminal. Navigate using the corresponding numbers, provide the requested details, and you're good to go. Or, if you prefer you can manually modify config.ini, but be careful, as incorrect changes could break the code. Also, never ever modify data.ini.

When you have provided all your details, you can launch the script without flags by running python racli.py.

Important

The Docker container requires manual editing of config.ini because it runs non-interactively. Alternatively you may run python racli.py -s manually as shown above and copy the generated config.ini into the Docker bind mount path in the docker-compose.yml file.

Screenshots

3 4 2
1 5 2

Docker

A Compose file example is available here. The example includes the desktop Discord client provided by kasmweb which will allow you to run a headless stack on a server without requiring a traditional desktop Discord client.

The Discord image is pinned to a verified Kasm image digest. When updating it, verify that the Discord renderer starts and the local RPC endpoint responds before changing the pinned image in docker-compose.yml.

With this, you can play games on a Steam Deck or other handheld emulation device and your Discord status will stay updated without requiring a Discord client running on that device.

About

Sajti's CLI for RetroAchievements Discord Rich Presence

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages