Calamares 3.1.2 is out

The Calamares team is happy to announce the immediate availability of Calamares 3.1.2, a bugfix-and-translations release in the 3.1 series.

Calamares is a distribution-independent system installer, with an advanced partitioning feature for both manual and automated partitioning operations. Calamares is designed to be customizable by distribution maintainers without need for cumbersome patching, thanks to third party branding and external modules support.

The big change in v3.1.2 is translations. The .desktop file is now translated, allowing for a better live-desktop experience by showing Calamares and its desktop information in the system’s language. Larger in scope, but probably less visible now, is that regular Python job modules can be translated now. The modules can use gettext-based translations, which are automatically synchronised with Transifex. See the dummypython or machineid modules for sample code.

A typical Python job module with no need for user-visible messages can be left unchanged; modules may want to define a pretty_name() function which returns a translated description of the module.

All this means that more of Calamares is (potentially) available in the user’s native language. The translations have not all caught up with the new strings, so coverage is likely to be spotty in 3.1.2, and much improved in v3.1.3 which is planned in two weeks time.

Other changes since v3.1.1, for users with Calamares-based installer systems:

  • Summary page now shows language and number-formats information.
  • The Quit and Done buttons now have a tooltip explaining what they will do.
  • At the end of the install process, a notification appears in the system notification area (generally a pop-up in the lower right-hand corner of the screen).
  • If installation fails, the system won’t reboot automatically on the last Calamares page.
  • Fat32 filesystems are now handled correctly even when misspelled (thanks Kai Hohmen).
  • Filesystem sizes are now shown with an MB suffix (thanks Lisa Vitolo).

For Calamares developers and distributors:

  • Testing now follows the KDE testing style: a single CMake option BUILD_TESTING is available, which will build all of the tests. Subsequently, make test will run all of the tests.
  • Improved configuration support for SDDM, lightDM and other display managers.
  • Improved support for autologin on openSUSE derivatives.
  • The CMake code for modules now generates a boilerplate module.desc for C++ modules. Modules with special needs can still define their own module.desc.
  • Python modules (not PythonQt) can define a pretty_name() function to better identify themselves during the run process. If that is not defined, Calamares falls back to the first line of the docstring attached to run(). If that is not defined either, Running Python job … is shown, as in previous releases.

Thanks also to Andrius Štikonas, Kevin Kofler and demm and n3rdopolis for contributing fixes and watching over Calamares development.

Calamares requires KPMcore 3.0.3 or later, for various bugfixes and stability improvements in KPMcore. KPMcore 3.1 or later is recommended.

If you experience an issue with Calamares, please tell us all about it on the Calamares issue tracker. For a full change list, or the full list of issues closed with this release, please see the Calamares code repository.

Written on August 22, 2017