Linux Mint's meteoric rise to the top of the distro charts can be attributed to its perfect mix of usability and functionality. But if you think it's just another Ubuntu-skinned distro, you're very wrong.
Unlike most popular Linux distros, Mint is the brainchild of just one man - Clement Lefebvre - yet it has managed to invigorate the community. It's no surprise, then, that it looks to its legions of users for advice.
Kendall Weaver, the man who maintains the LXDE edition of the distro, says Mint's success is down to Lefebvre and his interpretation of what the community wants.
"Most of the idea generation comes from Clement Lefebvre and his take on the community input. He's the project leader and the primary decision maker," he said.
Lefebvre confirms that brainstorming takes place throughout the cycle and is mostly done by the community. "People use the community website, the Launchpad blueprints, the forums, or sometimes they even email us directly. Some way or other, brilliant ideas make their way to us, and I write them down for the upcoming release."
Lefebvre adds his own ideas and the features that didn't make it into the previous release, as well as the 'big features' which require more development time, such as the Software Manager and the Upload Manager. "I prioritise ideas and try to find the best way to bring as many improvements as possible, while making sure I can release early and not compromise on quality," he explains.
His fellow developers echo the importance of the community input. Jamie Birse, who maintains the KDE edition, said: "I usually post on the forum or community site before a release to find out what applications KDE users want added, removed or swapped."
Weaver agrees: "I use the forums to get user input regarding things such as the application selection, menu layout, and wanted/needed features".
The Ubuntu influence
There's no doubt Linux Mint is based on Ubuntu and therefore tied to upstream releases. "At some stage I code-freeze the release, usually around the time when Ubuntu releases its RC, and whatever isn't ready by then simply doesn't make it in," explains Lefebvre.
He then ports the existing Mint desktop towards the new Ubuntu base and starts the grinding process of regression testing and adapting Mint to the new Ubuntu. "When I find problems, I can either fix them, work around them or document them. I can find redundancy between Mint and Ubuntu and decide which component to remove or replace," he added.
You would think selecting apps for a downstream distro wouldn't be much of an issue, but when it comes to design decisions, Ubuntu influences Mint in different ways. "If Ubuntu changes its software, users (and reviewers) often wonder why we don't do the same," Lefebvre said.
"In theory there should be no reason why its choice of applications should impact ours. But if something does change, we definitely give it an in-depth look and decide whether we want to follow."
Lefebvre stresses that although Mint might not go in the same direction as Ubuntu, changes don't go unnoticed. "They eventually force us to question whether they're good for Linux Mint or not, and whether we can improve on and/or learn from them. Other distributions and operating systems have the same effect," he said.
Mint KDE, on the other hand, is based on the current Kubuntu release with a few extra PPA repositories. Birse says he starts development when Kubuntu gets to a beta release.
Weaver says that although Mint LXDE isn't directly based on Lubuntu, he keeps a close eye on the distro. "Its application selection more closely resembles what I generally work with and I use some of its packages as general blueprints for packages that I end up putting together."
Basing one distro on another is quite a process. Weaver, who is also the lead-developer of Lubuntu-based PepperMint OS, sheds some light on the process. "The first step is to take the other project's ISO file and extract it. From there it's an ongoing process of entering the filesystem via chroot and adding and removing packages."
Handling software is one thing, but hardware support is a lot trickier, as Lefebvre explains: "Fixing an upstream problem means we risk deviating from Ubuntu and introducing hardware-related issues for our users, with solutions that work for Ubuntu but don't work for Mint.
"Unless we're 100% sure we're fixing the problem for everybody and not introducing any other side-effects, we usually leave the hardware support layer the way it is," he added.
Hardware and software aside, a lot of attention needs to be paid to things like branding. Weaver said: "Although most code is released under some form of open source license, it's not uncommon for artwork, logos, and names to carry some form of copyright. Mint is very protective of its branding and the team goes to great lengths to remove every bit of Ubuntu's."