Skip to main content

Don't call me MATE, pal!

· 3 min read
David Harder

Back in our 4.4 release post we announced that Solus would stop shipping a MATE ISO, mostly because MATE showed no signs of moving away from X11 and towards wayland. At the beginning of this year, we shipped our new XFCE ISO as a beta. And now we're getting ready to ship the Solus MATE Transition Tool to move existing users off of MATE.

The problem

MATE and XFCE are similar enough that eager Solusians can, and have, installed XCFE on their MATE machines with nothing more than a couple of eopkg commands. We're pretty sure our resident bash script enthusiast (ermo) could hammer out a working transition script in an evening. But we want a more polished experience. We know you follow Solus news; after all, you're reading this. However, we assume there are users who dutifully update their systems, but have no interest in keeping up with our blog posts. How do we get their attention and prompt them to move away from MATE?

Introducing the Solus MATE Transition Tool

We're pleased to show off the MATE Transition Tool, which we plan to include in normal updates to MATE systems in the coming weeks. Most of the work on this tool was done by Joey; more on his efforts in the section below. Here's how MATE users will encounter the tool:

note

These screenshots are current as of the publishing of this post, we may change things as we continue testing.

  1. Users will get a notification on every start-up informing them that they need to transition away from MATE.

Notification: Solus Transition Service

  1. Clicking on that notification will launch the Solus MATE Transition Tool.

MATE Transition Tool Launch

  1. Users select either Solus Budgie or Solus XFCE. The tool installs the selected edition, removes MATE, and prompts for a reboot
  2. The tool removes itself after a successful transition.

Simple. At least, that's what we want users to think.

How the Mate Transition Tool is actually part of our Python2 work

The story of the MATE Transition Tool is actually tied up in our fight to drag eopkg into the current decade. As I wrote previously, we're somewhat embarrassed by the amount of Solus tooling which still relies on Python2. One such tool is the Solus Software Center solus-sc. A while back, the team decided the sane thing to do was to ditch solus-sc in favor of KDE Discover and GNOME Software . This would have the additional benefit of promoting flatpak applications to first-class citizens. The problem is Discover and Software have no way to talk to our package manager eopkg. We need an API. Luckily, other projects have encountered the same issue, leading to packagekit.

Joey has been doing the dirty work of bolting packagekit support onto eopkg, and saw an opportunity: If eopkg could be upgraded to understand some of packagekit, then he could write a special-purpose application to move users off MATE without asking them to run scary bash scripts (sorry ermo). We're rather pleased with this solution. MATE users get a simple transition and Solus gets closer to checking solus-sc off the list.