Giter Club home page Giter Club logo

discord-rhythmbox-plugin's Introduction

discord-rhythmbox-plugin

A simple plugin for rhythmbox to update your rich presence in discord. This is based off of the built-in im-status plugin and has some borrowed code; credit where credit is due!

Note: This plugin does not work with Discord installed via Flatpak.

Usage

  • Install pypresence:

On systems that use python2 and 3:

pip3 install pypresence

Or if not:

pip install pypresence (You can try it with sudo if it does not work)

  • Clone the repo:

git clone https://github.com/ToppleKek/discord-rhythmbox-plugin.git

  • Put the discord-rhythmbox-plugin folder in ~/.local/share/rhythmbox/plugins

  • Enable the plugin

Note: Make sure that discord is open when you enable the plugin.

discord-rhythmbox-plugin's People

Contributors

chaitunya avatar novaphoenix avatar topplekek avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

discord-rhythmbox-plugin's Issues

Disabling the "Connected" message

The "Connected to Discord message" mildly annoys me you better don't ask :-) and I'd love to see an option in the Preferences menu for the extension.

The plugin doesn't work in Solus Budgie

the issue is just like this one #2 so I suspect it's a Budgie thing. Whatever it is, however, it just refuses to load no matter what I do: I disabled every other plugin, I reinstalled pypresence, I reinstalled the plugin. Nothing works. So thanks for your time, and I hope you can fix it. Cheers.

Progress bar?

would it be possible to have a progress bar display on the activity like with Spotify one?

I'm guessing that this would require a plugin like Venord's TimeBarAllActivities which adds the display for any activity with a start and end timestamp.

This could be a setting in the plugin so it could be enabled by those that want it.

changing presence formatting

is there any option to change the format of what's displayed? i.e making it artist - song instead of song - artist?

After months of using the plugin, it broke

Traceback (most recent call last):
  File "/usr/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/usr/lib/rhythmbox/plugins/discord-rhythmbox-plugin/discord-status.py", line 11, in <module>
    class discord_status_dev (GObject.Object, Peas.Activatable):
  File "/usr/lib/rhythmbox/plugins/discord-rhythmbox-plugin/discord-status.py", line 18, in discord_status_dev
    Notify.Notification.new("Rhythmbox Discord Status Plugin", "Connected to Discord").show()
gi.repository.GLib.GError: g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Notifications was not provided by any .service files (2)

Unable to load plugin, loader not found.

image

** (rhythmbox:179888): WARNING **: 13:16:57.475: Error initializing Python Plugin Loader: PyGObject initialization failed
ImportError: could not import gobject (error was: ModuleNotFoundError("No module named 'gi'"))

** (rhythmbox:179888): WARNING **: 13:16:57.476: Please check the installation of all the Python related packages required by libpeas and try again

(rhythmbox:179888): libpeas-WARNING **: 13:16:57.476: Loader 'python3' is not a valid PeasPluginLoader instance

Follow the instructions in the readme & verified I had python updated (Python3.9.7)

what

why are there two which one 2 use why am I making an issue for this pls fix

Listening to?

Hello,

I wanted to say that I am really enjoying this plug in so far. I wanted to see if it would be possible to change it from "Playing a Game" to "Listening To" on the Discord side. It appears that it is possible from the documentation I have looked at with Discord, but sadly my programming knowledge is limited to outdated HTML 4 and SQL Query. Thank you in advance! And I hope this is an easy change to make.

Album Art?

I'm wondering if you can have the album art display for a song?

Doesn't work after updating to Python 3.10

this only started happening after an update to python 3.10 from my distro.
error log as follows:

Traceback (most recent call last):
  File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/home/ruthenic/.local/share/rhythmbox/plugins/discord-rhythmbox-plugin/discord-status.py", line 13, in <module>
    class discord_status_dev(GObject.Object, Peas.Activatable):
  File "/home/ruthenic/.local/share/rhythmbox/plugins/discord-rhythmbox-plugin/discord-status.py", line 33, in discord_status_dev
    RPC.connect()
  File "/home/ruthenic/.local/lib/python3.10/site-packages/pypresence/presence.py", line 43, in connect
    self.loop.run_until_complete(self.handshake())
  File "/usr/lib/python3.10/asyncio/base_events.py", line 641, in run_until_complete
    return future.result()
  File "/home/ruthenic/.local/lib/python3.10/site-packages/pypresence/baseclient.py", line 128, in handshake
    self.sock_reader, self.sock_writer = await asyncio.open_unix_connection(self.ipc_path, loop=self.loop)
  File "/usr/lib/python3.10/asyncio/streams.py", line 97, in open_unix_connection
    transport, _ = await loop.create_unix_connection(
TypeError: _UnixSelectorEventLoop.create_unix_connection() got an unexpected keyword argument 'loop'```

Plugin Activation Error on Ubuntu 18.04

Ubuntu 18.04.1 - rhythmbox 3.4.2

Python 3.6.5 (looks like Rhythmbox is calling this one)
Python 2.7.15rc1

Tried installing the plugin in both
/usr/lib/rhythmbox/plugins (via sudo)
and
~/.local/share/rhythmbox/plugins/

Got this error when enabling the plugin via the menu (and grays out once fails) in both locations (plugin shows up and disappears when not installed):
image

Album Art?

When using Spotify, it sets the large image to the album art. Is that possible here?

The art should be readable via dbus from rhythmbox failing that could be extracted by another module from the file. However, I can't see where it's currently getting the image from it sets large_image="rhythmbox" but I can't see how discord identifies the icon that "rhythmbox" is referring to.

Ubuntu Budgie 18.04 Failed to Load

Followed instructions, installed pypresence (for both python 2 and 3, not sure which version this uses). Cloned folder into /usr/share/rhythmbox/plugins (I also tried it in ~/.local/share/rhythmbox/plugins, same result). Open plugins, click the checkbox, get exclamation mark. Hovering over the exclamation mark gives the extremely useful error "Failed to load".

Does this log somewhere? I'd be happy to help debug this if I knew where/if it was logging.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.