Cargo Features

ncspot = { version = "1.0.0", default-features = false, features = ["alsa_backend", "cover", "mpris", "ncurses_backend", "notify", "crossterm_backend", "pancurses_backend", "portaudio_backend", "pulseaudio_backend", "rodio_backend", "share_clipboard", "share_selection", "termion_backend"] }

Enables alsa-backend of librespot-playback

cover = ioctl-rs

Support displaying the album cover

Affects ui::cover

default = crossterm_backend, mpris, notify, pulseaudio_backend, share_clipboard

These default features are set whenever ncspot is added without default-features = false somewhere in the dependency tree.

mpris default = zbus

Allow ncspot to be controlled via MPRIS API


Enables ncurses-backend of cursive

notify default = notify-rust

Show what's playing via a notification

Affects queue::send_notification

crossterm_backend default

Enables crossterm-backend of cursive


Enables pancurses-backend of cursive, win32 of pancurses


Enables portaudio-backend of librespot-playback

pulseaudio_backend default

Enables pulseaudio-backend of librespot-playback


Enables rodio-backend of librespot-playback

share_clipboard default = clipboard, wl-clipboard-rs

Share a link to the system clipboard

share_selection = clipboard, wl-clipboard-rs

Use the primary selection for sharing - linux and bsd only

Affects sharing::read_share, sharing::write_share


Enables termion-backend of cursive

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features.

clipboard share_clipboard share_selection?
zbus mpris

Enables zbus ^3.11.1

ioctl-rs cover?
pancurses pancurses_backend?
notify-rust notify
wl-clipboard-rs linux share_clipboard share_selection?