All Projects → welcoMattic → spotify-control-rust

welcoMattic / spotify-control-rust

Licence: MIT license
A simple CLI to control Spotify via D-bus

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to spotify-control-rust

polybar-now-playing
Script for polybar to display and control media(not only Spotify) using DBus.
Stars: ✭ 34 (+126.67%)
Mutual labels:  spotify, polybar
xfce4-night-mode
XFCE4 plugin: Switch between light and dark variants of a theme
Stars: ✭ 53 (+253.33%)
Mutual labels:  xfce4, xfce4-panel-plugin
foo spotify
foobar2000 component for Spotify integration
Stars: ✭ 158 (+953.33%)
Mutual labels:  spotify
spotty
Spotify web clone build with Vue.js and Vuetify
Stars: ✭ 22 (+46.67%)
Mutual labels:  spotify
spotitySpeedExtension
change the speed of spotify song playback rate. slow or fast.
Stars: ✭ 49 (+226.67%)
Mutual labels:  spotify
muse
🎧 a self-hosted midwestern Discord music bot that doesn't suck
Stars: ✭ 354 (+2260%)
Mutual labels:  spotify
spicetify
🎨 Omni for Spicetify
Stars: ✭ 111 (+640%)
Mutual labels:  spotify
spotify-account-generator
Instantly generates new free Spotify accounts with random credentials
Stars: ✭ 83 (+453.33%)
Mutual labels:  spotify
yandex2spotify
Simple Python script that allow to import music from Yandex.Music to Spotify
Stars: ✭ 101 (+573.33%)
Mutual labels:  spotify
spotilink
Parse Spotify URLs into Lavalink track objects.
Stars: ✭ 22 (+46.67%)
Mutual labels:  spotify
spicetify-extensions
extensions for spotify i'm creating
Stars: ✭ 207 (+1280%)
Mutual labels:  spotify
cspot
A Spotify Connect player targeting, but not limited to embedded devices (ESP32).
Stars: ✭ 262 (+1646.67%)
Mutual labels:  spotify
dotstow
dotfiles managed with stow
Stars: ✭ 60 (+300%)
Mutual labels:  polybar
mixmello
Create remixed versions of your favourite Spotify playlists.
Stars: ✭ 38 (+153.33%)
Mutual labels:  spotify
paystack-music-api
The bot and API that powers Paystack Music.
Stars: ✭ 70 (+366.67%)
Mutual labels:  spotify
tailwind-spotify
Spotify UI built using TailwindCSS and VueJS
Stars: ✭ 36 (+140%)
Mutual labels:  spotify
Partify
This is a free open source Spotify-powered app that lets users host parties and have guests connect using their smartphones to submit and vote on songs. The app will only play the highest voted song and can connect to personal playlists.
Stars: ✭ 37 (+146.67%)
Mutual labels:  spotify
spotify-rise
⏰ Spotify alarm clock for Ubuntu Linux
Stars: ✭ 32 (+113.33%)
Mutual labels:  spotify
radiopush
Create communities and share songs with Spotify users (https://radiopush.app)
Stars: ✭ 89 (+493.33%)
Mutual labels:  spotify
MusicPlayer
A Telegram Music Bot written in Python using Pyrogram and Py-Tgcalls. This is Also The Source Code of The UserBot Which is Playing Music in @S1-BOTS Support Group ❤️
Stars: ✭ 218 (+1353.33%)
Mutual labels:  spotify

spotify-control-rust

A simple CLI to control Spotify via D-bus

It was tested on Linux to control Spotify, but as it uses mpris crate behind the scenes, it could control any player that implements MPRIS.

Installation

$ sudo sh -c "curl https://github.com/welcoMattic/spotify-control-rust/releases/download/v0.1.0/spotify-control -L -o /usr/local/bin/spotify-control && chmod a+x /usr/local/bin/spotify-control"

Usage

Controls Spotify from CLI, retrieve current playing data

USAGE:
    spotify-control [SUBCOMMAND]

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

SUBCOMMANDS:
    help          Prints this message or the help of the given subcommand(s)
    next          send next command to Spotify
    pause         send pause command to Spotify
    play          send play command to Spotify
    play_pause    send play_pause command to Spotify
    previous      send previous command to Spotify
    status        fetch current playing metadata

Polybar

You can use spotify-control to control your Spotify, and display current song in Polybar.

Bar configuration

[bar/main]
modules-center = previous playpause next spotify

Modules configuration (adapt colors to your theme)

[module/previous]
type = custom/script
interval = 86400
format = "%{T3}<label>"
format-padding = 3
exec = echo ""
; Check if spotify is running before displaying the icon
exec-if = "pgrep spotify"
format-underline = #3EC13F
format-foreground = #99D1CE
format-background = #0A0F14
line-size = 1
click-left = "spotify-control previous"

[module/next]
type = custom/script
interval = 86400
format = "%{T3}<label>"
format-padding = 3
; Next song icon
exec = echo ""
; Check if spotify is running before displaying the icon
exec-if = "pgrep spotify"
format-underline = #3EC13F
format-foreground = #99D1CE
format-background = #0A0F14
line-size = 1
click-left = "spotify-control next"

[module/playpause]
type = custom/ipc
hook-0 = echo " "
hook-1 = echo ""
hook-2 = echo ""
initial = 1
format-padding = 4
format-underline = #3EC13F
format-foreground = #99D1CE
format-background = #0A0F14
line-size = 1
click-left = "spotify-control play_pause"

[module/spotify]
type = custom/ipc
hook-0 = echo ""
hook-1 = spotify-control status
initial = 1
format-padding = 3
format-underline = #3EC13F
format-foreground = #99D1CE
format-background = #0A0F14
line-size = 1
; [i3wm only] - Uncomment the below line to focus on Spotify when clicking on the song name (credits to https://github.com/Esya)
click-left = i3-msg '[class="Spotify"] focus'

Resources

Credits

I use the python version of dietervanhoof (https://github.com/dietervanhoof/polybar-spotify-controls) for years, but I wanted an easy-to-install version. Inspired by the C implementation by mihirlad55: https://github.com/mihirlad55/polybar-spotify-module

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].