Skip to main content

Rofi menu script that controls spotify playback.

Project description

Rofify

Spotify Menu in Rofi

This app is intended to provide an alternative method for controlling spotify playback. It's inspired by the terminal application SpoTUI, and makes heavy use of spotipy and python-rofi-menu. The included theme is based on the the rofi themes by adi1090x.

selecting from a playlist in rofify

Before you attempt to install this, it's worth noting that, at present, you need spotify premium in order to use this. You will need create an app on the spotify devolper site (go to dashboard, then create an app).

To install the package run:

pip install rofify

Setup

You will need to add a few items to the configuration to get started. To create the a config file at .config/rofify/config you can run:

python -m rofify --create-config

In the config file you will need to set the values for username, client_id and client_secret. The client_id and client_secret can be obtained on your application page on developer.spotify.com. Redirect_uri can be left the same, unless you have changed it in the application settings on developer.spotify.com.

Next, run:

python -m rofify --create-token

This is required, as the authentication uses this token in every reuqest made. This creates a token using the path specified by 'cache_path' in the config file.

Try and see if the package is working by typing running Rofi:

rofi -modi spotify:"python -m rofify" -show spotify

Hotkeys

If you want to run rofify with hotkeys you'll need to create or modify custom key bindings in your rofi config. For example:

! Previous track
rofi.kb-custom-1:   Super+Left

! Next track
rofi.kb-custom-2:   Super+Right

! Toggle pause/play
rofi.kb-custom-3:   Super+space

! Toggle shuffle
rofi.kb-custom-4:   Super+s

! Cycle repeat state
rofi.kb-custom-5:   Super+r

These are convenient keybindings for me, but some experimentation might be needed depending on your setup. Make sure that any keybinding you use isn't already used by another default rofi keybinding or it will throw an error (you can get a full list of the config options by running rofi -dump-config).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rofify-0.0.41.tar.gz (18.4 kB view hashes)

Uploaded Source

Built Distribution

rofify-0.0.41-py3-none-any.whl (24.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page