Installers in 24.04 LTS

This is a followup thread from the Flavor Sync. It’s a first step in getting this topic more active again.

Flavors, please share your current installer story. Here are a few example questions that you may want to answer:

  • What works with Ubiquity that you want to keep?
  • Are you having any struggles adopting the new Ubuntu Desktop Installer, and if so, what are they?
  • Is anyone actually considering going with Calamares instead?
  • Success stories!

Please help me reach all the flavors with this post! :smile:

2 Likes

Hello!

Here is Cinnamon’s ‘installer story’

  • What works with Ubiquity is that it’s reliable enough. Generally it’s an installer that will get the job done with little tweaking needed.
  • The current Ubuntu Flavor Template for the new installer does not build - and I don’t know enough of the Ubuntu Flutter codebase, nor do I have the time to look into it.
  • Given that Cinnamon is Gtk+, I don’t want to switch back to Qt for Calamari’s unless necessary, if Ubiquity has to be removed.
1 Like

Allow me to repeat a point I made at the Flavor Sync…

Lubuntu is all-in on Calamares, and we aren’t switching. If anyone needs a configuration, I’d be able to get one ready and working in less than a day, assuming I had the artwork to accompany it.

That being said, despite my clear bias towards Calamares, we’re not telling anyone else that’s the direction they need to go. Every flavor should have a discussion according to their own processes about what is best for them.

Either way, Ubiquity needs to go this cycle. Supporting it for another 3 years would be a really, really bad idea.

1 Like

I love the capacity to non-destructively re-install my Ubuntu Desktop flavor, and have my manually installed packages (from Ubuntu repositories) auto-reinstall.

Example: My box sits on the development release, and I encountered an issue due to the mantic cycle (August 2023) where two of my monitors (connected to my second video card) went dark. This happened to my installed system first, and within a day (or two) to daily images when booted for live tests (bug filed). In time the issue with the dailies corrected itself, but alas not to my installed system. I couldn’t find a file to edit/fix, so I just used a non-destructive re-install to correct the issue; in fact I used a Xubuntu daily (20230829) to re-install my system (thus I used ubiquity).

We at Lubuntu actually QA-test for this, it’s in our checklist under the description Install using existing partition, and I have a jammy box I use this install method (using a Lubuntu daily, thus calamares installer) to actually apply my package upgrades roughly weekly (and complete a QA-test at the same time).

That “Repair Installation” type of install is one of the features I discovered about Ubuntu Desktop back in ~2010 when I started stepping beyond Debian GNU/Linux & exploring other distributions (that didn’t have GNU in their name), and a feature I’d not like to lose.

This feature used to a menu item (Repair Installation or Upgrade Ubuntu), eg. here from an old askubuntu question, but even though it disappeared from ubiquity menu, it was still possible to use it using the “Something else” as I describe here


I’ve had less time for QA last two cycles, with most of my time spent firstly on Lubuntu, Xubuntu next… thus when lacking time I’ve done far fewer installs for ubuntu-desktop-installer which doesn’t have a testcase for this type of install anyway

3 Likes

As I understand it, the primary reason we (Lubuntu) migrated away from Ubiquity in the first place was because Ubiquity was GTK, and Lubuntu was going all-in on Qt as much as possible. Calamares is Qt, and fits like a glove into our system as far as theming. It’s also nice and lightweight thanks to the fact that it’s shipped as a deb package and because it uses Qt, and compared to Ubiquity (and also the Ubuntu Desktop Installer) it’s really fast. The other installers have pauses between screens, Calamares reacts instantly. Calamares also has features that are lacking in the Ubuntu Desktop Installer and in Ubiquity (like encrypted manually partitioned setups) that are quite handy for us.

The Lubuntu team did a detailed comparison between the features of Calamares and the Ubuntu Desktop Installer recently, and while the full comparison was never published that I’m aware of, it revealed that Calamares is a very decent alternative to the Ubuntu Desktop Installer - both had features the others lacked, Calamares excelled with better partitioning, better locale customization, less resource consumption, and better integration with Qt, while the Ubuntu Desktop Installer was much better with Active Directory login, OEM setup, proprietary driver installation, and setups involving LVM (although Calamares may soon have powerful LVM features - at the moment they don’t work but they look promising and we want to work on fixing them).

Lubuntu’s current goals for our installer is to bridge some of these gaps - we want better driver installation, better OEM setup, and better LVM. Since LVM is an upstream thing, we’ll probably be able to help get that fixed for everyone who uses Calamares. As for OEM setup and driver installation, both of those things will require Lubuntu-specific customizations (config for OEM setup, and code for driver installation).

If a flavor is GTK-based, and especially if they don’t want to go to the effort of OEM setup and driver installation stuff but still want those features, the Ubuntu Desktop Installer is probably your best bet. It is non-trivial to implement for a flavor from what I hear, but it’s doable (Ubuntu Budgie proved it). If a flavor would rather have something Qt-based and is OK with the initial setup work of configuring Calamares properly, Calamares might be a potential fit.

(My personal favorite feature of Calamares is the detailed partitioning capabilities on the manual partitioning screen. I once did an install onto a machine that had an NVMe drive, but that didn’t have NVMe support in the BIOS. This meant that the kernel and bootloader had to live on a separate drive entirely for the system to boot. So that’s what I did - I put the root partition on the NVMe, and plopped /boot and /boot/efi on a USB flash drive. It worked fantastic, and I daily-drove that setup for months thereafter. I remember believing that the Ubuntu Desktop Installer couldn’t do this at one point, though perhaps I misunderstood, and perhaps it can now, but for sure Calamares could do it and it did it quite nicely.)

2 Likes

When Ubuntu Studio switched to Calamares back in the day, we made things a lot easier. Fixes and options like these would be applied to all flavors.

2 Likes

Success Story - Ubuntu Budgie has successfully transitioned to the new installer.

For the most part, the installer works fine - its a slightly smaller footprint than the ubiquity installer codebase, although the current ISO image is slightly larger due to the separate inclusion of the “offline” kernel for non-network installs.

The install speed is very much faster than Ubiquity. The minimal install option is super fast rather than the current “remove everything after installing” manner that Ubiquity does.

For Ubuntu Budgie there are a few teething issues to work through in due course

  • Translation support for the flavour slideshow
  • Support for LightDM autologin
  • Removing the need for a GNOME Shell specific schema key

From having nothing to implementing the code through to integrating into our ISO took two weeks. Should be much quicker now given the knowledge gained by all involved.

If any flavour wants help in any aspect - just DM me. Happy to provide my notes for what we did to successfully implement the installer.

5 Likes

Not a developer of any flavour, but i guess OEM install. Its useful if you want to set up the operating system for a non-tech savvy user.

I’m trying my best to figure out where/how to customize the installer. I’ve been able to customize the slides, but the branding and text for the initial screens, well to my disappointment I have not been able to figure out even what files to start with. I would really appreciate it if someone could point me in the right direction. Thanks

Are you referring to Calamares or the C/canonical installer? Calamares is ridiculously simple. The example config files in the upstream code serve as quite verbose documentation.

2 Likes

This is obviously known as there’s a bug report. Since there is a bug report, we’re going to keep the conversation about the lack of OEM install mode in the bug report.

1 Like