Nuvola 3.1 Milestone 2 Deprecates DEB/RPM Packages in Favor of Flatpaks and Officially Supports Another Distribution
Update August 18th, 2017: The rolling releases series was renumbered as 4.x and provides only flatpak builds.
Nuvola 3.1 Milestone 2 (3.1.2 for short) is the second milestone on the way towards the Nuvola 4.0 release (formerly referred to as Nuvola 3.2). There have been 123 commits since Nuvola 3.1.1 and 71 code changes since Diorite 0.3.1. The development focused on three major areas:
- Cross-distribution flatpak packages to replace DEB/RPM packages in order to support more distributions.
- HTML5 Audio and Media Source Extension to achieve Flash-free playback.
- Modernization of the code base to improve performance and accomplish tighter desktop integration.
Cross-Distribution Flatpak Builds
The Nuvola Apps Repository Index website provides installation instructions for cross-distribution flatpak builds of Nuvola Apps 3.1. As a convenience, it is also loaded in the second tab of Nuvola Apps Selector window. The legacy DEB/RPM packages of Nuvola 3.1 Rolling Releases are no longer updated and will be eventually deleted.
The flatpak builds integrate with the host system nicely. The only limitation is the fact that themes cannot be shared. Nuvola currently supports three themes and respective icon sets: Adwaita (GNOME, the image above) and Ambiance/Radiance (Unity, the picture bellow).
Update: If your favorite theme is not supported, let us know!
Arch Linux Added Among Officially Supported Distributions
While Nuvola 3.1.1 supported Ubuntu, Debian and Fedora, Nuvola 3.1.2 adds the official support of Arch Linux. Supporting Arch Linux has always been a daunting prospect as each Arch Linux installation is fairly unique and fine-tuned. Nuvola Apps 3.1.2 flatpaks are based on the GNOME 3.22 Runtime, which provides a stable and well-defined environment.
HTML5 Audio and Media Source Extension
A long-term goal is to replace Flash with HTML5 Audio technologies. Advanced music streaming websites require Media Source Extension (MSE), which has been only recently added to the WebKitGTK web rendering engine and is not, therefore, enabled by default in standard WebKitGTK builds. However, the master (=experimental) branch of Nuvola Apps flatpak repository contains a custom WebKitGTK build with MSE, which has been successfully tested with BBC iPlayer and YouTube. We hope to enable MSE in the stable branch (=installed by default) in Nuvola 3.1 Milestone 3.
Nuvola 3.1 Milestone 2 Changelog
New Features
- Nuvola Player was renamed to Nuvola Apps as non-media player apps (Google Calendar) were enabled and should be fully supported in the 4.0 release.
- Nuvola Apps are distributed as cross-distribution flatpak builds. There have been a lot of changes under the hood to support this transition.
- The
nuvolaplayer3
andnuvolaplayer3ctl
commands are deprecated in favor ofnuvola
andnuvolactl
. - WebApp scripts provide own desktop files, so the unnecessary create/delete desktop launchers actions were removed.
Enhancements
- Enhanced support of HTML5 Audio and Media Source Extension (MSE), which is currently enabled only in the BBC iPlayer script with a custom WebKitGTK+ build.
- Album art is downloaded with WebKit’s NetworkProcess to access images that are otherwise restricted. Issue: tiliado/nuvolaplayer#76
- Preferences dialog: Components tab was renamed to Features as it is more user-friendly.
Under the Hood
- Inter-process communication has been reworked for greater flexibility as required by the HTTP Remote Control feature.
- Nuvola and individual apps are DBus-activatable.
- The unique name has been changed to
eu.tiliado.Nuvola
and most of the resources (e.g. icons) use this name. - AppData/AppStream metadata have been updated.
- The build script now honors the VAPIDIR env variable.
- Added a script to set up Nuvola CDK environment (
setup_nuvolacdk.sh
).
Bug Fixes
- “Too many flash plugins” false positives. Resolve symlinks and track final paths not to count duplicates. Issue: tiliado/nuvolaplayer#159
- Repeated Runner: prefix in debugging output. Issue: tiliado/nuvolaplayer#265
- Disable LIBGL_DRI3_DISABLE workaround with WebKitGTK 2.14+ to fix performance issues. Issue: tiliado/nuvolaplayer#260
News for Script Maintainers
- Documentation has been updated and Mantainer’s Guide merged into the tutorial.
- Format requirements flags were implemented but not yet documented.
- Web app scripts are built with Nuvola SDK.
Thank You for Your Support
At the time of writing, the awesome people listed bellow and 14 others are Nuvola Patrons, who support the development of Nuvola Player and have access to Nuvola Player 3.1 Rolling Releases (including cross-distribution flatpak packages). Thank you all!
Simon Law, Bart Libert, Bryan Wyatt, José Antonio Rey, Christian Dannie Storgaard, Ryan Wagner, Cheetah, Chris Beeley, David, Andrew Azores, Andrew Kvalheim, Balázs, Ben MacLeod, David Wiczer, Martin Wimpress, Duco van Amstel, Gabriele, Jan.