Nuvola 4.14 Released

Nuvola 4.14 was released. It brings two new services (Tidal and MentorFM), a few user-visible changes, upgrades the library stack (Chromium and GNOME Platform) and continues the quest to improve the quality of the entire codebase.

Nuvola 4.14.0.

To install Nuvola, follow installation instructions at the Nuvola Apps Repository. To update Nuvola, run flatpak update --system && flatpak update --user in terminal (as a regular user, not root/sudo) or use a package manager which supports Flatpak (e.g., a recent GNOME Software application with the Flatpak plugin).

What’s New for Users

New Script: Tidal

Maintainer: Jiří Janoušek • Flatpak packageSource code

TIDAL is a global music and entertainment platform that brings artists and fans together through unique music and content experiences and is currently available in 52 countries.
TIDAL has over 59 million songs in our catalog and over 240,000 high quality videos, offering passionate music fans both a premium and high fidelity sound quality, along with high resolution video, and expertly curated editorial content.
TIDAL has the commitment of artist owners that believe in creating a more sustainable model for the music industry. The TIDAL artist-owners are Alicia Keys, Arcade Fire’s Win Butler and Regine Chassagne, Beyoncé, Calvin Harris, Coldplay’s Chris Martin, Daft Punk, Damian Marley, deadmau5, Indochine, J. Cole, Jack White, Jason Aldean, Shawn “JAY Z” Carter, Kanye West, Lil Wayne, Madonna, Nicki Minaj, Rihanna, T.I. and Usher.
Source: What is Tidal?

New Script: MentorFM

Maintainer: Jiří Janoušek • Flatpak packageSource code

Technically, Mentor.FM is a conversational music curator; think about it as your Music Mentor, like having a personal DJ who knows you and play not only the music you like NOW but also the music you still don’t know and your are going to like IN THE FUTURE.
Today there is so much music available that the problem is what to listen; we weren’t satisfied with all the existing discovery/recommendation services, which tended to be too predictable and monothematic and needed too much user direct input. So we put all our passion for music and technology and our academic research experience to build a new product from scratch; simple, effective and powerful.
Source: About MentorFM

Updated Installation Instructions

I always prepare installation instructions tailor-made for each distribution I try Nuvola on suggesting the most user-friendly way. It takes some time to maintain it and create screenshots, but I think it’s worth it.

  • Removed: Ubuntu 16.10 Yakkety Yak, Fedora 25 and 26. They no longer receive any updates.
  • Added: Ubuntu 18.10 Cosmic Cuttlefish [GitHub ticket]. It’s almost the same as in the case of Ubuntu 18.04, but a new GTK+ theme is used and screenshots were updated accordingly.
  • Added: elementaryOS 5 Juno [GitHub ticket]. The user experience is better than in the case of elementaryOS 0.4 Loki because you can install GNOME Software to search for and install flatpaks. Unfortunately, the elementaryOS’s AppCenter still doesn’t support flatpaks natively.
  • Added: Fedora 29 [GitHub ticket]. Fedora traditionally provides the best Flatpak user experience out of the box.

Upgrades, Upgrades, Upgrades

Nuvola upgraded the library stack to get the latest bug fixes and enhancements. The upgrades resulted in a few build or run-time failures. Some of them were easy to fix (incompatibility with Python 3.7 [GitHub ticket 1, GitHub ticket 2]), other required long hours in a debugger (a bizarre pointer truncation resulting in a crash).

  • Nuvola now uses GNOME Platform 3.30 instead of 3.28. This is a significant change because the base of this runtime and the way it is built have changed completely.
  • Chromium engine was updated from 68.0.3440.75 to 70.0.3538.77 bringing the latest bug fixes and enhancements [GitHub ticket]. Builds of 71.0.3578 are being tested as well.
  • Chromium engine is now built with Ubuntu 18.04 LTS toolchain instead of Ubuntu 16.04 LTS.

Other changes

  • Application entries of individual Nuvola apps in GNOME software and other software centers using AppStream metadata now contain their own screenshot. Previously, the screenshot of Deezer was used for all apps which might have been confusing. [GitHub ticket]
  • The Start-up dialog was tweaked to achieve more straightforward flow. For example, if you have just upgraded, Nuvola shows an info bar “You have upgraded to Nuvola X.Y.Z.” with a link “What’s New?” and a “Continue” button. Previously, users needed to click the close button of the window to continue, which might not have been clear.
  • Nuvola now links to Tiliado Privacy Policy. The short version is: We collect only the data we need to provide you with our services. We don’t sell your personal information. If you have any questions, feedback or a data removal request, don’t hesitate to contact support: support@tiliado.eu

What’s New for Script Maintainers

  • Nuvola CDK and ADK no longer ship LxTerminal. It depends on GTK+ 2 which isn’t included in GNOME Platform 3.30.
  • Chromium engine was updated from 68.0.3440.75 to 70.0.3538.77. [GitHub ticket]
  • Nuvola ADK: The Standard JavaScript style checker was upgraded from 10.0.3 to 12.0.1, which introduced a few new rules and made some of the already present rules more strict. Please consult the changelog to find out whether you need to fix your scripts. Don’t forget that you can run standard --fix to fix some style violations automatically. [GitHub ticket]
  • The URL https://www.facebook.com/login* pattern was white-listed in the filter of external addresses. It is used by MentorFM, for example.

What’s New for Third-Party Packagers

Under the Hood

Nuvola codebase is quite old and it bugs me that it doesn’t reflect all my knowledge and experience I have gained over the past few years. Now, I have finally enough time to change that, so Diorite library, the utility and widget library for Nuvola Runtime, undergoes a significant refactoring. The goals are:

  • to remove dead code and ancient workarounds,
  • to improve any inefficient code and reduce memory consumption,
  • to fight technological debt that has accumulated over the years,
  • to increase test coverage,
  • to improve the documentation,
  • and to maintain a consistent code style.

Continuous Integration of Diorite and Nuvola was improved: The code style of Diorite and Nuvola is checked with Vala Linter (Vala code) and StandardJS linter (JavaScript code).


Nuvola Contributes to Good Angel Foundation

Jiri Janousek, the core developer of Nuvola Apps project, is glad to contribute a part of the project’s revenue to the Good Angel foundation. This way, he can regularly help families with children, which face financial distress as a result of severe illness. Even small monetary donations can help these families overcome a tough period.

Nuvola contributes to Good Angel Foundation.

Thank You for Your Support

At the time of writing, the awesome people listed below and a few others are Nuvola Patrons, who support the development of Nuvola Apps Runtime. Thank you all!

Christian Dannie Storgaard, José Antonio Rey, Ryan Wagner, Simon Law, Bart Libert, Chris Beeley, Andrew Azores, Bryan Wyatt, Balázs, Denton Davenport, Ben MacLeod, Duco van Amstel, David Wiczer, Andrew Allen, Nathan Warkentin, Chuck Talk.

If you are a Nuvola Patron but your name is not listed, you have to enable the “Show my name and a link to my external profile page in a list of Patrons.” option in your profile settings. Obviously, it is not enabled by default to protect privacy of our patrons.