We are happy to announce that Gerbera Media Server 3.0.0 is now available.
This release is in two ways disconnecting Gerbera from it's MediaTomb past:
- The way JavaScript is integrated is finally changed from script to function and
- there is a new database: PostgreSQL.
Furthermore, the layout of documentation for configuration file entries was improved by headings, versioning details and a confval layout.
So, it becomes obvious which setting is available in the respective version.
The Last.FM integration was improved to be working without old lastfmlib by using HTTP based Last.FM API 2.0.
The old lastfmlib based integration can still be used if you get hold of a compiled version and an API key.
Many configuration file entries already got removed or changed, leading to clogged config files. Therefore, the configuration verification on startup now warns as soon as there are entries that do not have any effect. This is the case for some disabled features (e.g., transcoding, databases) as well as for legacy entries.
Removed Features
Support for loading and running layout scripts has been removed now. Now, the JavaScript interface is calling import functions depending on the media type.
If you added or changed javascript files, make sure the modified files are in a separate folder and the config entry import/scripting/script-folder/custom is pointing to that directory.
Also make sure that backup files do not have extension .js otherwise they are loaded!
NEW Features
- Added (experimental) PostgreSQL database support
- Integrated Last.FM support for API 2.0
- WebUI shows referenced items in other parts of layout in details
- Spinner on WebUI while loading
- New command line option for even more data in the config example
- New command line option to drop database
- Allow blocking a group of clients
- Integration with systemd
- Add Build for Ubuntu 25.10
FIXES
- Integer conversion on 32 bit system
- Search for contentClass (Samsung TV)
- Title from NFO files
- Drop Build for Ubuntu 24.10
- Search folders in lowercase mode
- Several Libraries for build on MacOS
Code Improvements
- MacOS build with ICU and WavPack
- Documentation is using special tags for config variables
- Update maximum library versions of exiv2 (0.28.7), fmt (12.1.0), pupnp (1.14.25), spdlog (1.16.0)
- Cleanup of cmake modules
Changes
- Gerbera 3.0.0 (#3657), thanks @KarlStraussberger
- forward declare pugixml classes (#3656), thanks @neheb
- various small cleanups (#3655), thanks @neheb
- Hide boxkey values (#3652), thanks @KarlStraussberger
- remove unique_ptr from ProcListItem vector (#3653), thanks @neheb
- clazy fixes (#3650), thanks @neheb
- Track unused config file entries (#3649), thanks @KarlStraussberger
- Update to fmt 12.1.0 (#3648), thanks @KarlStraussberger
- Restrict number of subtitle bytes to read (#3647), thanks @KarlStraussberger
- Fix title from wrong stream (#3645), thanks @KarlStraussberger
- Configure searchable flags via BoxLayout (#3643), thanks @KarlStraussberger
- Fix help test (#3639), thanks @KarlStraussberger
- Fixing Searchable flag in import script (#3636), thanks @gobater
- Bump actions/upload-artifact from 4 to 5 (#3641), thanks @dependabot[bot]
- Config XML Schemas (#3638), thanks @gobater
- Fix help message for option "-c" (#3637), thanks @gobater
- Use new confval links in help (#3633), thanks @KarlStraussberger
- LastFM: bypass old lib with new API (#3632), thanks @KarlStraussberger
- Fix docker libqxx library pattern (#3631), thanks @KarlStraussberger
- Reduce code duplication in XmlBuilder (#3628), thanks @KarlStraussberger
- Bump actions/setup-node from 5 to 6 (#3627), thanks @dependabot[bot]
- Fix ProxyUrl for external items (#3626), thanks @KarlStraussberger
- Command line option to drop database tables (#3625), thanks @KarlStraussberger
- Build for ubuntu-25.10 (#3624), thanks @KarlStraussberger
- Block client group (#3621), thanks @KarlStraussberger
- Update to spdlog 1.16.0 (#3618), thanks @KarlStraussberger
- New PostgreSQL database backend (#3615), thanks @KarlStraussberger
- Bump github/codeql-action from 3 to 4 (#3617), thanks @dependabot[bot]
- Fix dynamic folders for lowercase trees (#3613), thanks @KarlStraussberger
- Check Headers in Quirks (#3611), thanks @KarlStraussberger
- Bump peter-evans/dockerhub-description from 4 to 5 (#3612), thanks @dependabot[bot]
- Quirk to block protocolInfo in CaptionInfoEx (#3610), thanks @KarlStraussberger
- Update to pupnp 1.14.25 (#3603), thanks @KarlStraussberger
- Update to fmt 12.0.0 (#3602), thanks @KarlStraussberger
- Allow masking arguments (#3600), thanks @KarlStraussberger
- Unify doxygen tags (#3597), thanks @KarlStraussberger
- Bump actions/setup-node from 4 to 5 (#3598), thanks @dependabot[bot]
- Bump actions/setup-python from 5 to 6 (#3599), thanks @dependabot[bot]
- Rotation of thumbnails by ffmpegthumbnailer (#3595), thanks @KarlStraussberger
- Add support for libsystemd (#3594), thanks @KarlStraussberger
- Documentation on Return Path Filtering (#3593), thanks @KarlStraussberger
- Handle title from nfo correctly (#3592), thanks @KarlStraussberger
- Fix derivedFrom search handling (#3591), thanks @KarlStraussberger
- WavPack under MacOS (#3587), thanks @KarlStraussberger
- Update to exiv2 v0.28.7 (#3588), thanks @KarlStraussberger
- Update to exiv2 v0.28.6 (#3586), thanks @KarlStraussberger
- Improve MacOS build (#3585), thanks @KarlStraussberger
- Fix formatSizeValue on 32-bit systems (#3577), thanks @marshall-lee
- Command line option for even more config details (#3583), thanks @KarlStraussberger
- Update CMakeLists.txt for ICU on APPLE (#3584), thanks @St3ll4rM4n
- CI Tests: Try more alpine versions (#3581), thanks @KarlStraussberger
- Add Test for formatSizeValue (#3580), thanks @KarlStraussberger
- nproc missing on MacOS (#3579), thanks @KarlStraussberger
- Enable ICU for MacOS (#3578), thanks @KarlStraussberger
- Introduce sphinx toolbox (#3574), thanks @KarlStraussberger
- Implement new Client Quirk to force SortCriteria 'title' (#3573), thanks @jailedemon
- WebUI: Show spinner on loading (#3571), thanks @KarlStraussberger
- Remove loading complete scripts to create virutal layout (#3570), thanks @KarlStraussberger
- WebUI: Show referenced items in details (#3569), thanks @KarlStraussberger
- Bump master (#3567), thanks @KarlStraussberger
Please see our Documentation for how to install the latest Gerbera version on your system.