Calamares 3.2.8 released

The Calamares team is happy to announce the availability of Calamares 3.2.8, the eighth update in the features-and-functionality series of Calamares 3.2.x. This is a short-cycle feature release.

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.

This is a source-incompatible release of Calamares. Include files have been shuffled around, so third-party C++ modules will need adjustment to the changed names. There are probably some packaging surprises due to all the moved files, as well.

This release contains contributions from (alphabetically by first name):

  • Arnaud Ferraris
  • Kevin Kofler


  • All user-visible texts referring to “MB” and “GB” now use the standard “MiB” and “GiB” wording, which matches what we were actually calculating with (i.e. 2^20 and 2^30 respectively). #1129
  • The side-pane, which shows the list of steps that will be executed, now tries to fit the text (name of each module) into the available space by shrinking the font as needed. #1137
  • libcalamares (accidentally) linked with Qt’s GUI libraries when PythonQt was found. This led to the odd situation where the non-GUI Calamares library depends on a bunch of GUI libraries.
  • libcalamares The utils/ subdirectory has been hugely refactored, with functionality split out into separate files. C++ modules will need to have their #include names updated. Basically, users of utils/CalamaresUtils.h will need to include the header file for the functionality that is actually used.


  • finished has a new mechanism for configuring the behavior of the restart now button. The old-style boolean configuration is still supported but generates a warning. #1138
  • locale module GeoIP configuration has a new preferred format. See locale.conf for details. The old configuration is still supported but will be phased out before 3.3.0 – in particular, support for “legacy” format will be removed, since that was a crutch for the disappearance of one GeoIP provider in 2018.
  • oemid is a new module for configuring OEM phase-0 (image pre-mastering, or pre-deployment) things. It has limited functionality at the moment, writing only a single batch-identifier file. #943
  • welcome can now do GeoIP lookups as well (but be careful with the configuration, since you need a GeoIP that provides country information, not just timezones). This will let Calamares select a starting language that matches where it is – which might not be useful at all. #934
  • All Python modules now bail out gracefully on (at least some) bad configurations, rather than raising an exception. The pre-release scripts now test for exceptions to avoid shipping modules with ImportError or SyntaxError results.


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. Work towards the next release continues.

Written on May 10, 2019