Skip to main content

jellyshuf

Essentially implements ncmpcpp's add random feature (default hotkey: `) through a script which grabs info from jellyfin api itself. jellyfin-mpd (and by proxy jellyfin-mopidy) does not implement the required mpd commands for this ncmpcpp function to work.

Install

Arch Linux (AUR)

paru -S jellyshuf (or any other AUR helper)

Any system (pip)

pip install jellyshuf

or

git clone https://github.com/deafmute1/jellyshuf.git
cd jellyshuf
pip install . 

Usage

jellyshuf will asked for required information config info on first run (server url, username, password, cache settings). Some advanced config options are not exposed via jellyshuf --config. You can edit these manually. You can use --empty-config to generate all options with their defaults at the config location. The config file is located at $XDG_CONFIG_DIR/jellyshuf/config.json. The jellyfin password is by default stored to the system keyring if available.

Please note there is some time required to fetch items from jellyfin when they have not yet been cached to disk. This is mainly noticable with using songs; on large libraries there may be notcable lag even when using disk cache.

This program currently requires the option albumartistsort in mopidy-jellyfin to be set to true (this is the default setting).

jellyshuf --help

USAGE: jellyshuf <FLAGS> TYPE NUMBER
    
TYPE is one of artists, albums, songs 
    
FLAGS: 
    --stdout            Instead of adding retrieved paths to mpd queue, emits them to stdout (line separated)
    --interactive|-i    If not in stdout mode, interactively confirms albums before adding them;
                            jellyshuf runs until NUMBER has been added to queue.
    --random|-r         Set mpd to random mode after adding new items
    --start|-s          Start mpd after adding new items
    --clear|-c          Clear mpd queue before adding items
    --config            Run config (overwriting any existing info) then exit
    --empty-config      Generate an empty config file at config location.
    --version           Print version and exit
    --help|-h           Display this message and exit

Metadata

Release files for jellyshuf 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jellyshuf 0.3.0
File Size Uploaded Provenance Actions
jellyshuf-0.3.0.tar.gz 13.1 kB Without provenance Details for jellyshuf-0.3.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for jellyshuf 0.3.0
File Interpreter ABI Platform Actions
jellyshuf-0.3.0-py3-none-any.whl Python 3 none any Details for jellyshuf-0.3.0-py3-none-any.whl

Total release size: 26.8 kB

Release files / jellyshuf-0.3.0.tar.gz

Download URL jellyshuf-0.3.0.tar.gz
Size 13.1 kB
Tags Source
SHA-256 checksum
How to use checksums
0719a321578edd2b8d54145e8f1ddd58037be3050a801b70e888f713bcad6227
BLAKE2b-256 checksum
How to use checksums
05a5ff1d9295ae211f3c95e48cb6e4b05f0494734477f71c876e8fad3778d3d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

Release files / jellyshuf-0.3.0-py3-none-any.whl

Download URL jellyshuf-0.3.0-py3-none-any.whl
Size 13.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
05e15b2e90d0c9910e599a265e69ec8fcc60e419485f57a195dbeaed13c669d1
BLAKE2b-256 checksum
How to use checksums
eaec8ba87110fa47a91cde37eb5c46723a27e0a0856d6210ce7566a02d2793f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

Security for jellyshuf 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page