All Projects → pwittchen → Spotify Cli Linux

pwittchen / Spotify Cli Linux

Licence: gpl-3.0
🎶 A command line interface to Spotify on Linux

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to Spotify Cli Linux

Spotui
Spotify in the terminal 💻🎶
Stars: ✭ 302 (-31.83%)
Mutual labels:  cli, terminal, spotify
Spotify Tui
Spotify for the terminal written in Rust 🚀
Stars: ✭ 11,061 (+2396.84%)
Mutual labels:  cli, terminal, spotify
Sad
CLI search and replace | Space Age seD
Stars: ✭ 350 (-20.99%)
Mutual labels:  cli, terminal
Colorls
A Ruby gem that beautifies the terminal's ls command, with color and font-awesome icons. 🎉
Stars: ✭ 3,896 (+779.46%)
Mutual labels:  cli, terminal
Pick
create curses based interactive selection list in the terminal
Stars: ✭ 370 (-16.48%)
Mutual labels:  cli, terminal
Cmd2
cmd2 - quickly build feature-rich and user-friendly interactive command line applications in Python
Stars: ✭ 342 (-22.8%)
Mutual labels:  cli, terminal
Hues
Colored terminal text made easy for Python and happiness.
Stars: ✭ 345 (-22.12%)
Mutual labels:  cli, terminal
Stig
TUI and CLI for the BitTorrent client Transmission
Stars: ✭ 360 (-18.74%)
Mutual labels:  cli, terminal
Fd
A simple, fast and user-friendly alternative to 'find'
Stars: ✭ 19,851 (+4381.04%)
Mutual labels:  cli, terminal
Lazygit
simple terminal UI for git commands
Stars: ✭ 24,910 (+5523.02%)
Mutual labels:  cli, terminal
Npx card
use npx anmol to connect with me
Stars: ✭ 377 (-14.9%)
Mutual labels:  cli, terminal
React Slate
Write interactive CLI apps with React
Stars: ✭ 385 (-13.09%)
Mutual labels:  cli, terminal
Stup
Daily notes in the terminal 🐧
Stars: ✭ 340 (-23.25%)
Mutual labels:  cli, terminal
Nord Dircolors
An arctic, north-bluish clean and elegant dircolors theme.
Stars: ✭ 328 (-25.96%)
Mutual labels:  cli, terminal
Libterm
iOS sandboxed terminal with Python, Lua and Clang
Stars: ✭ 348 (-21.44%)
Mutual labels:  cli, terminal
Tqdm
A Fast, Extensible Progress Bar for Python and CLI
Stars: ✭ 20,632 (+4557.34%)
Mutual labels:  cli, terminal
Tsukae
🧑‍💻📊 Show off your most used shell commands
Stars: ✭ 345 (-22.12%)
Mutual labels:  cli, terminal
Yaspin
A lightweight terminal spinner for Python with safe pipes and redirects 🎁
Stars: ✭ 413 (-6.77%)
Mutual labels:  cli, terminal
Eureka
💡 CLI tool to input and store your ideas without leaving the terminal
Stars: ✭ 316 (-28.67%)
Mutual labels:  cli, terminal
Haxor News
Browse Hacker News like a haxor: A Hacker News command line interface (CLI).
Stars: ✭ 3,342 (+654.4%)
Mutual labels:  cli, terminal

spotify-cli-linux

Build Status Version Python versions

A command line interface to Spotify on Linux.

This project is inspired by the similar project called shpotify, which does similar things, but on macOS.

installation

pip install spotify-cli-linux

hint #1: if you encounter problems during installation, try to call command with sudo

hint #2: if you still have problems (e.g. with resolving project dependencies), try to call pip3 instead of pip

if you have any problems with pip or pip3, you can try to install the script in the alternative way as a workaround:

git clone [email protected]:pwittchen/spotify-cli-linux.git
cd spotify-cli-linux
sudo cp spotifycli/spotifycli.py /usr/local/bin/spotifycli

upgrade

pip install spotify-cli-linux --upgrade

for the upgrade, you can apply the same hints like for installation

usage

start the official Spotify desktop app

run the following command from your terminal:

spotifycli

use one of the following parameters:

-h, --help        show this help message and exit
--version         shows version number
--status          shows song name and artist
--statusshort     shows status in a short way
--song            shows the song name
--songshort       shows the song name in a short way
--artist          shows artists name
--artistshort     shows artist name in a short way
--album           shows album name
--arturl          shows album image url
--lyrics          shows lyrics for the song playing
--playbackstatus  shows playback status
--play            plays the song
--pause           pauses the song
--playpause       plays or pauses the song (toggles a state)
--next            plays the next song
--prev            plays the previous song
--client CLIENT   sets client's dbus name

if you don't use any parameters, you'll enter the shell mode, where you'll be able to use all commands mentioned above

solving problems

dbus

When you've seen the following error:

No module named dbus

Then try to install python-dbus! On Ubuntu you can do it as follows:

sudo apt-get install python-dbus

If you are using another distro, then try to install python-dbus with your package manager.

lyricwikia

When, you're missing lyricwikia dependency, run the following command:

pip install lyricwikia

usage with tmux

If you want to use this script in your tmux panel, you can check tmux-plugin-spotify.

development

to install necessary tools for code formatting, static code analysis and releasing, run:

make requirements

code formatting

Source code should be formatted according to PEP8 style guides.

To format code, run:

make format

to verify code formatting, type:

make checkformat

static code analysis

To run static code analysis, execute:

make lint

docs

to update docs on gh-pages, type:

make docs

to run docs locally, type:

git checkout gh-pages && ./serve.sh

and view page with docs at: 0.0.0.0:8000

view it on-line at https://pwittchen.github.io/spotify-cli-linux

releasing

configure your ~/.pypirc file as follows:

[distutils]
index-servers =
    pypi
[pypi]
username:yourusername
password:yourpassword

then, update version in spotifycli/version.py and spotifycli/spotifycli.py and type:

make release

note: Version is not kept in a single file due to problems with importing files within another file and distributing them to PyPi. There are also Python vesion issues. If you know how to fix this issue properly to keep version in one place, I'd be happy to review your PR :-).

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].