No description
  • C++ 62.4%
  • QML 19.6%
  • Python 10.8%
  • Shell 3%
  • CMake 2.6%
  • Other 1.5%
Find a file
2026-11-04 21:40:35 +01:00
.vscode (c) mise tasks and releases on dencla-sailfish-common schema 2026-11-04 19:29:10 +00:00
3rdparty (c) common update 2026-11-04 21:40:35 +01:00
docs (c) common update 2026-11-04 21:20:13 +01:00
icons (+) logo 2026-09-24 17:58:23 +02:00
legal (c) mise tasks and releases on dencla-sailfish-common schema 2026-11-04 19:29:10 +00:00
qml (c) legal texts 2026-10-25 13:39:26 +01:00
rpm (c) License texts 2026-10-25 09:05:46 +01:00
scripts (c) mise tasks and releases on dencla-sailfish-common schema 2026-11-04 19:29:10 +00:00
src (c) reverted unnecessary change 2026-11-03 16:38:04 +01:00
tests (c) license / back to mise 2026-10-25 06:29:57 +00:00
translations (c) legal texts 2026-10-25 13:39:26 +01:00
.env.template (c) license / back to mise 2026-10-25 06:29:57 +00:00
.gitattributes (+) Initial commit, moved audiobookfish to harbour-audiobookfish 2026-08-22 23:31:25 +02:00
.gitignore (c) mise tasks and releases on dencla-sailfish-common schema 2026-11-04 19:29:10 +00:00
.gitmodules (c) license / back to mise 2026-10-25 06:29:57 +00:00
CHANGELOG.md (c) reverted unnecessary change 2026-11-03 16:38:04 +01:00
CLAUDE.md (c) mise tasks and releases on dencla-sailfish-common schema 2026-11-04 19:29:10 +00:00
CMakeLists.txt (c) legal texts 2026-10-25 13:39:26 +01:00
flake.lock (+) demo 2026-10-28 17:54:35 +01:00
flake.nix (c) license / back to mise 2026-10-25 06:29:57 +00:00
harbour-audiobookfish.desktop (c) license / back to mise 2026-10-25 06:29:57 +00:00
LICENSE (+) harbour release requirements 2026-09-08 12:31:53 +02:00
mise.toml (c) common update 2026-11-04 21:20:13 +01:00
README.md (c) mise tasks and releases on dencla-sailfish-common schema 2026-11-04 19:29:10 +00:00

Audiobookfish

Audiobookfish is a native Sailfish OS client for Audiobookshelf.

Features

  • Connects directly to self-hosted Audiobookshelf servers
  • Library and series browsing with cover caching
  • Real-time listening progress synchronization
  • Offline playback with local download management
  • Media playback controls via Sailfish OS lockscreen and MPRIS
  • Privacy-first: Direct device-to-server communication without intermediary servers

Screenshots

Screenshots from the Sailfish OS test emulator with synthetic demo data. Click a thumbnail to view the full-resolution image.

Dashboard Now Playing Listening History
Dashboard with listening progress and recent books Offline playback with transport controls and chapters Listening sessions and positions
Library Series Chapter Switch
Audiobook library with download controls Series and book collections Playback after selecting another chapter

Audiobookfish workflow: browse, download, listen, switch chapters and review history

Watch the MP4 tour · Media sources and reproduction steps

Build

Requires mise and the Sailfish OS SDK. The SDK build engine and emulator run on the host. See build setup for prerequisites. For releases, configure the local publisher details.

git submodule update --init --recursive
cp .env.template .env                   # Set your SDK path and target
mise trust
mise install
mise run dev:build                     # Build the RPM
mise run test                          # Qt unit tests
mise run dev:deploy                    # Install on the emulator

Optional: mise run vm starts the development MicroVM using nix-dev-sandbox. See VM setup. The SDK stays on the host.

Common Tasks

  • Build RPM: mise run dev:build
  • Deploy to Emulator: mise run dev:deploy
  • Run tests: mise run test
  • Update translations: mise run lupdate
  • Run intake validation: mise run check:harbour
  • Validate legal templates: mise run check:legal

Configuration

Copy .env.template to .env and configure SDK paths and target:

SAILFISH_SDK_PATH=$HOME/SailfishOS
SAILFISH_SDK_TARGET=SailfishOS-5.1.0.11-i486

Publisher details for the legal documents (imprint and privacy policy) can be configured locally in legal/provider.local.json.

License

GNU General Public License v3.0 or later (GPL-3.0-or-later).