ConfigureFrom always calls ResolveSecretStore, which falls through to OsSecretStore.Create(...).IsAvailable when no master key file or env var is present. That is a blocking libsecret call: on a headless machine, or one whose login keyring is locked, it waits on a desktop unlock prompt that never gets answered. Five tests reached it and one reached it twice, so the project took 12+ minutes instead of seconds. Probing availability first does not help, because the probe is the blocking call. Tests that only assert which write method gets configured now resolve the master key from a temp key file, so they short-circuit before the OS store. This also stops them minting a last-resort key into the real Libation folder. The two tests that exist to exercise the real OS store are opt-in via LIBATION_TEST_OS_SECRET_STORE=1. AudibleUtilities.Tests: 12m 20s -> 1.8s, 72 passed / 2 skipped / 0 failed. Co-authored-by: rmcrackan <rmcrackan@gmail.com>
Libation: Liberate your Library
Libation is a free, open-source application for downloading and managing your Audible audiobooks. It decrypts your library, removes DRM, and lets you own your audiobooks forever.
Which version should I download? — get a recommended download for your system on our site.
Features
- Unlock Your Library: Download and remove DRM from your audiobooks.
- Cross-Platform: Fully supported on Windows, macOS, and Linux.
- Region Support: Works with Audible regions US, UK, Canada, Germany, France, Australia, Japan, India, and Spain.
- Advanced Organization: Search, filter, and tag your books.
- Fast & Efficient: Powered by AAXClean for fast decryption without heavy dependencies like ffmpeg.
- Import: Easily import your existing library, including cover art.
Getting started with Libation
All documentation has been moved to our new site: getlibation.com. Or jump to the important bits:
Development
Grab the latest release for your platform from the Releases Page.
Documentation
Comprehensive documentation is available in the docs directory and on our Documentation Site.
Development & Contributing
We welcome contributions!
- Development Getting Started: Setup your environment.
- Contribute: How to contribute code.
- Website & Docs: How to run and improve the documentation.
- Linux Setup (Nix): Nix-based environment setup.
Community & Support
License
Libation is released under the GPL-3.0 License
If you found this useful, tell a friend. If you found this REALLY useful, you can donate here ...or just tell more friends. As long as I'm maintaining this software, it will remain free and open source.