/cozy

A modern audio book player for Linux and macOS using GTK+ 3

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

It's getting Cozy

Build Status Patreon donate button

Cozy is a modern audiobook player for Linux and macOS.

Screenshot

Here are some of the current features:

  • Import your audiobooks into Cozy to browse them comfortably
  • Sort your audio books by author, reader & name
  • Remembers your playback position
  • Sleep timer
  • Playback speed control
  • Search your library
  • Offline Mode! This allows you to keep an audio book on your internal storage if you store your audiobooks on an external or network drive. Perfect for listening on the go!
  • Add mulitple storage locations
  • Drag & Drop to import new audio books
  • Support for DRM free mp3, m4a (aac, ALAC, …), flac, ogg, wav files
  • Mpris integration (Media keys & playback info for desktop environment)
  • Developed on Fedora and tested under elementaryOS

Install

elementaryOS openSUSE Arch Linux Flatpak (other) macOS
Get it on AppCenter cozy cozy-audiobooks Download on Flathub Beta 2

macOS

Cozy for macOS is currently in beta. It's tested on 10.14 Mojave so far. Known bugs:

  • no integration in notification center or any other desktop integration really
  • media keys are not working
  • dark mode requires 2x switching in settings + is not loading automatically at startup
  • large Cozy.app

You can download it here: Cozy 0.6.7 beta3 for macOS

Requirements

  • python3
  • meson >= 0.40.0 as build system
  • gtk3 >= 3.18 but fancier with gtk3 >= 3.22
  • peewee >= 3.5 as object relation mapper
  • python3-mutagen for meta tag management
  • python3-distro
  • python3-gi-cairo
  • python3-gst-1.0
  • file
  • gstreamer1.0-plugins-good
  • gstreamer1.0-plugins-bad
  • gstreamer1.0-plugins-ugly
  • gstreamer1.0-libav for mp4 support

Build

$ git clone https://github.com/geigi/cozy.git
$ cd cozy
$ meson desired_build_directory --prefix=desired_installation_directory
$ ninja -C desired_build_directory install

Update po files

$ ninja -C build com.github.geigi.cozy-update-po
$ ninja -C build extra-update-po

Running a local build

XDG_DATA_DIRS=desired_installation_directory/share:/usr/share PYTHONPATH=desired_installation_directory/lib/python3.[your_python3_version]/site-packages app/bin/com.github.geigi.cozy

Q&A

I have imported wrong files and cannot get rid of them:

Delete the following folders to reset cozy (this will loose all saved progress):

~/.local/share/cozy
~/.cache/cozy

I can't uninstall the Flatpak:

Try

flatpak uninstall com.github.geigi.cozy/x86_64/stable

or

flatpak uninstall --user com.github.geigi.cozy/x86_64/stable

Thanks to @Meresmata

I store my audiobooks in a location that is not accessible in the Flatpak sandbox:

You can override the flatpak settings and allow access to a path (e.g. /media) like this:

flatpak --user override --filesystem=/media com.github.geigi.cozy

A big thanks

To the contributors on GitHub:

  • oleg-krv
  • AsavarTzeth
  • worldofpeace
  • camellan
  • jnbr
  • grenade
  • NathanBnm
  • Fatih20

The translators:

  • camellan
  • Vistaus
  • Distil62
  • karaagac
  • HansCz
  • mvainola
  • giuscasula
  • abuyop
  • akodi
  • cleitonjfloss
  • amadeussss
  • nvivant
  • Foxyriot
  • mardojai
  • trampover

To nedrichards for the Flatpak.

Help me translate cozy!

Cozy is on Transifex, where anyone can contribute and translate. Can't find your language in the list? Let me know!

If you like this project, consider supporting me on Patreon :)


Maintainability