Repository navigation
Install: curl -fsSL https://spotatui.com/install.sh | bash on macOS and Linux, or irm https://spotatui.com/install.ps1 | iex on Windows. Already installed? Run spotatui update --install, or update with your package manager.
Terminal app
| Download | |
|---|---|
| Windows 10/11 | 64-bit .zip |
| macOS | Apple Silicon · Intel |
| Linux | x86_64 · ARM64 (Raspberry Pi 4/5) |
| Debian, Ubuntu | .deb amd64 · .deb arm64 |
Desktop app (preview)
| Download | |
|---|---|
| Windows 10/11 | Installer .exe |
| macOS | Apple Silicon .dmg · Intel .dmg |
| Linux x86_64 | AppImage · .deb · .rpm |
| Linux ARM64 | AppImage · .deb · .rpm |
The Windows installer, the macOS app and the AppImage update themselves. A .deb or .rpm install updates with a new download from this page. Linux needs glibc 2.39 and WebKitGTK 4.1 (Ubuntu 24.04+, Debian 13, Fedora 40+, Arch).
First launch on Windows and macOS
- Windows: the installer is not signed yet, so SmartScreen warns. Click More info, then Run anyway.
- macOS: the app is not notarized, so macOS blocks the first launch. Close the dialog, open System Settings > Privacy & Security, click Open Anyway next to the spotatui message, and confirm.
Both apps play Spotify (Premium), Local Files, Subsonic, Internet Radio, YouTube and Qobuz, plus Apple Music on macOS. YouTube needs yt-dlp (ffmpeg recommended).
Verify a download: checksums.txt has the SHA-256 of every file: sha256sum -c --ignore-missing checksums.txt.
Full changelog · Code signing policy
What's Changed
- ci(desktop): use the prebuilt tauri-cli from npm by @LargeModGames in #776
- chore(deps): bump the rust-minor-updates group with 20 updates by @dependabot[bot] in #767
- chore(ci): bump the actions group with 4 updates by @dependabot[bot] in #766
- chore(deps): bump the desktop group in /desktop with 4 updates by @dependabot[bot] in #765
- chore(deps): bump lofty from 0.24.0 to 0.25.3 by @dependabot[bot] in #771
- chore(deps): bump dirs from 6.0.0 to 7.0.0 by @dependabot[bot] in #773
- chore(deps): bump base64 from 0.22.1 to 0.23.1 by @dependabot[bot] in #774
- ci(deps): hold back bumps that break the build by @LargeModGames in #777
- fix(tui): correct navigation when playbar is set to top of screen by @Muu79 in #761
- feat(tui): search Liked Songs from the cached page store by @Oud-Idk in #754
- chore(deps): bump lofty from 0.25.3 to 0.25.4 in the rust-minor-updates group by @dependabot[bot] in #778
- docs(readme): add the code signing policy by @LargeModGames in #779
- feat(lyrics): add a setting to turn the lookup off by @LargeModGames in #780
- fix(desktop): skip the update check while auto-update is off by @LargeModGames in #781
- fix(playlist): refetch stale tracks when clearing search by @theluckystrike in #786
- feat(gui): catch up with the terminal app by @LargeModGames in #790
- fix(gui): add a Spotify login button by @LargeModGames in #796
- feat(spotify): play on Cast and Connect speakers on the LAN by @LargeModGames in #795
- fix(playback): send media-key play/pause to the device that plays by @Wassergeist in #798
- docs: clarify terminal login and search result navigation by @Battlelamb in #799
- feat(discover): show Spotify's Made For You playlists by @LargeModGames in #807
- fix(mpris): publish a track id so absolute seeks reach spotatui by @Wassergeist in #809
- feat(gui): ship the other sources in the GUI by @LargeModGames in #810
- docs(installation): update brew installation steps by @markusgust in #811
- docs: add shilicioo, 2570165831 and Oud as maintainers by @LargeModGames in #813
- docs: fill plugin reference and example gaps by @dailyun in #833
- fix(lyrics): show LRC lines with several timestamps at each one by @jadhavgaurav in #834
- fix(stats): say "1 play", "1 track hit" and "1 track" for a count of one by @Anandb71 in #837
- fix(gui): keyboard focus and the album heart by @niukanen1 in #789
- feat(artists): enable continuous scrolling for saved artists by @Oud-Idk in #806
- ci(release): link every download and add checksums.txt by @LargeModGames in #845
- docs: rework the README, CONTRIBUTING and docs/ by @LargeModGames in #846
- feat(core): core support for the Android app by @LargeModGames in #849
- fix(deps): update rustls, rand and wrangler by @LargeModGames in #851
- chore(release): v0.46.0 by @LargeModGames in #852
New Contributors
- @Battlelamb made their first contribution in #799
- @markusgust made their first contribution in #811
- @dailyun made their first contribution in #833
- @jadhavgaurav made their first contribution in #834
- @Anandb71 made their first contribution in #837
Full Changelog: v0.45.0...v0.46.0