Linux-first terminal Last.fm client
Project description
legato v1.0.5
Legato is a lightweight terminal client for Last.fm.
This project is currently in beta and minor bugs may occur. PyPI: https://pypi.org/project/legato-fm/
Installation
Recommended (isolated install via pipx):
python3 -m pip install --user pipx
pipx install legato-fm
Upgrade later with:
pipx upgrade legato-fm
First-time setup
Run setup once to connect your Last.fm account:
legato setup
This opens your browser for Last.fm authorization, then saves your session locally.
Quick start
legato current
legato recent -n 5
legato top artist -p month -n 10
Common tasks
See what’s playing
legato current
# alias:
legato fm
View recent listens
legato recent
legato recent -n 20
legato recent --user exampleuser
Get top artists/albums/tracks
legato top artist -p week -n 10
legato top album -p month -n 10
legato top track -p year -n 25
Supported periods: day, week, month, quarter, year, overall (also alltime, all).
Inspect stats for one item
legato artist "Dominic Fike"
legato album "Dijon | Absolutely"
legato track "Duster | Inside Out"
Check play counts and first listen
legato plays --target artist --query "Charli xcx"
legato first --query "Muse | Uprising"
Love / unlove tracks
legato love "George Clanton" "I Been Young"
legato unlove "Kevin Abstract" "Peach"
If no artist/track is passed, Legato uses your current track when possible.
Scrobble manually
legato scrobble "Jai Paul" "Jasmine"
legato scrobble "Lorde | Ribs | Pure Heroine" --ts now
Open a YouTube search for a track
legato yt
legato yt "Bakar" "Hell N Back" --open
Profile and social
legato profile
legato friends -n 20
legato taste exampleuser -p month -n 10
Theme and diagnostics
legato theme show
legato theme set red
legato doctor
Full command list
legato --versionlegato setuplegato currentlegato fmlegato disconnectlegato recent [-n N] [--user USER]legato top artist|album|track [-p day|week|month|quarter|year|overall|alltime|all] [--year YYYY] [-n N]legato artist|album|track [--name ...] [--artist ...]legato artist "ARTIST"legato album "ARTIST | ALBUM"legato track "ARTIST | TRACK"legato album [--query "ARTIST | ALBUM"] [--user USER]legato plays [--target artist|album|track] [--query "..."] [--name ...] [--artist ...] [--user USER]legato np ARTIST TRACK [--album ...]legato scrobble ARTIST TRACK [--album ...] [--ts now|UNIX]legato scrobble "ARTIST | TRACK[ | ALBUM]" [--album ...] [--ts now|UNIX]legato first [--query "ARTIST[ | TRACK]"] [--artist ...] [--track ...] [--user USER]legato taste OTHER_USER [--user USER] [-p period] [-n N]legato love [ARTIST] [TRACK]legato unlove [ARTIST] [TRACK]legato profile [--user USER]legato friends [--user USER] [-n N]legato pace [-i 5000] [-p month|week|year|day]legato yt [ARTIST] [TRACK] [--open]legato theme set <color>legato theme showlegato doctorlegato api METHOD [key=value ...]
Uninstall
pipx uninstall legato-fm
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file legato_fm-1.0.5.tar.gz.
File metadata
- Download URL: legato_fm-1.0.5.tar.gz
- Upload date:
- Size: 16.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4dadc2cbf7c23323546868346bbbb52c19d35d51e3346002c5e968b44ab93ec8
|
|
| MD5 |
d1d38c3892686088868b27e0bd4fffc2
|
|
| BLAKE2b-256 |
b1468a4a3ae3436a6fa755b1a0cf6921230d4d1ab0b25074146a11262d86605f
|
Provenance
The following attestation bundles were made for legato_fm-1.0.5.tar.gz:
Publisher:
publish-pypi.yml on vista747/legato
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
legato_fm-1.0.5.tar.gz -
Subject digest:
4dadc2cbf7c23323546868346bbbb52c19d35d51e3346002c5e968b44ab93ec8 - Sigstore transparency entry: 1008862523
- Sigstore integration time:
-
Permalink:
vista747/legato@8b18722691909a4b99be0bc530a9713093eb58ac -
Branch / Tag:
refs/heads/main - Owner: https://github.com/vista747
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@8b18722691909a4b99be0bc530a9713093eb58ac -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file legato_fm-1.0.5-py3-none-any.whl.
File metadata
- Download URL: legato_fm-1.0.5-py3-none-any.whl
- Upload date:
- Size: 17.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a0bb8eb5b89025bf6ef9b8e5335c892bdb0f2059aa923e9bbbda9a71531c7cc7
|
|
| MD5 |
f43d48da82fe591a3c73b28254a605f0
|
|
| BLAKE2b-256 |
906f9e92b1c5df5adb4328badfc56747bfb016ffd5427f07239494009e918662
|
Provenance
The following attestation bundles were made for legato_fm-1.0.5-py3-none-any.whl:
Publisher:
publish-pypi.yml on vista747/legato
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
legato_fm-1.0.5-py3-none-any.whl -
Subject digest:
a0bb8eb5b89025bf6ef9b8e5335c892bdb0f2059aa923e9bbbda9a71531c7cc7 - Sigstore transparency entry: 1008862567
- Sigstore integration time:
-
Permalink:
vista747/legato@8b18722691909a4b99be0bc530a9713093eb58ac -
Branch / Tag:
refs/heads/main - Owner: https://github.com/vista747
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@8b18722691909a4b99be0bc530a9713093eb58ac -
Trigger Event:
workflow_dispatch
-
Statement type: