I’ve been working with Manjaro in a VM for a few weeks, which I use on my work laptop — I don’t want ot have my personal files and browsing history directly inside my work environment, so the VM stands in as my “home” machine when at work.
I’ve also given a friend an old laptop of mine on which I installed Manjaro 0.8.8 and for the most part, I think it has been fine (I checked up with her later, and she still didn’t have any help questions for me, so far so good then…)
Mostly, Manjaro works great out of the box. However there is one area I feel is not quite as smooth from an end-user perspective: the AUR.
Installing packages from the main repo is fine of course, and I could easily sit someone down in front of a Manjaro box, give them pamac and say, “here’s where you go to install software.” However, I’d be hesitant now to add “you can also toggle the AUR option on for more software.” Rather, I’d have to encourage them to bring the machine back to me so that I could do that install for them… The AUR is not what I’d call “mature” in the sense of having no dependencies on geek-l33t.
I cannot remember which it was, but when I was showing my friend the AUR option in pamac, we thought it a good a idea to try installing something from there. I think it was a video editing suite, or something sizeable, but the point is each component had to be downloaded and compiled inidividually, and after launching the procedure, we had some tea, a chat, went off and did some other stuff and when we came back after an hour, pamac was still churning through the unattended install. In the end we killed it, and I had to explain that sometimes these packages can be larger than expected and need compiling – so maybe only use the AUR option in cases of necessity. Not a win, but she wasn’t too bothered.
Today, I tried to install gwoffice-bzr in my VM to see what it is like, and used yaourt directly at the command line. It has a number of extra dependencies, each for which I had to decline to edit PKGBUILD; then decline to edit the install script; accept to proceed; and accept to install. After about 10 packages like this, one of the build tasks failed, and I had to abort the install.
Thankfully, I could run `yaourt -Qtd` which would clean up the mess created by the failed builds (I think! still have research to be done), as the VM has limited space, a self-inflicted problem which I have yet to remediate.
The AUR is for Arch
But the point I want to underline here is that the AUR still contains an element of risk for the non-l33t audience Manjaro is aimed at. For Arch users, this is standard fare, and there is an expectancy to know how to deal with this on your own regularly — which I’m fine with.
However, in the comforting arms of the Manjaro install and setup experience, I had forgotten that the AUR is the Arch User Repository – not a Manjaro community repo. The AUR is still Arch through and through, which means that software installation can be a dedicated activity in and of itself.
Most end users’ idea of installation of software is “I’ll download a thing, click through two or three dialogs, and go make tea and it’ll be done.” Even some entire distro installations can be seen like that, Manjaro, Ubuntu derivates, CentOS and SuSE included.
So suddenly finding that the AUR still has a “you must be this l33t to ride” barrier is a disheartening surprise in a way.
I still love Manjaro as an easy setup distro, and one that I would still recommmend happily to any new tinkerers for getting stuck into, or one that could still be install-once for granddad and never have to reinstall for him again – but I’d much prefer to be able to hide the AUR form non-l33t users, without amputating access to the larger software ecosystem, which is where Ubuntu and their ppa’s gain an advantage.
There are so many features of the distro that I love which make it my ultimate-distro-of-choice (and that is not to say it is for absolutely everyone, just my preference), including ManjroISO respin tool, rolling nature, stability testing, the pacman tool, default package bundling on the Xfce LiveCD amongst others that I feel almost suddenly let down by the hoops of the AUR being included with the system that’s supposed to be end-user hand-holding.
What are the solutions?
For me on my own, setting time aside to go through an installation manually and troubleshooting what’s going wrong is an option that is indeed possible but undesirable. For anybody non-technical, the build failure is a bug that someone else needs to fix.
1. One of the ways “someone else” could do this would be to get more of the packages into the main repo, but that requires more effort, coordination, and more itme than I can reasonably demand of anyone.
2. Another way is to have maintainers pre-compile the packages for the Manjaro distro and host them in a Manjaro community repo, but I’m not entirely convinced that we need yet another repo; and unless I’m wrong, my understanding is that pre-compiling generically to cater for any Arch system is less liekly to succeed, so the AUR community would not be quite so welcoming of such an idea.
3. One final solution I could think of would be to be able to make PPAs and pacman or yaourt play nicely together. Many of the desktop-oriented projects run ppas on launchpad.net, which is meant for Ubuntu-and-derivatives users, so would be difficult to integrate just-like-that requiring some extra effort to make the builds Manjaro-compatible, bringing us back into the teritorial issues of solution #2.
4. Do not use the AUR at all, but instead add one of the Unofficial repositories. I need to do more reading up on this, but it seems that for each software, anyone can create their own repo, weakening any web of trust. The completely decentralized and disconnected nature of this setup carries much greater risks. Something tells me that rather than a wiki page, a centralized database of Unofficial repos with commenting and voting would establish sufficient trustability. The only problems with the Unofficial repositories are that again, they are for Arch, not Manjaro, and who knows what level of packaging they provide… but hopefully, they play well with pacman, whicever the system…
None of these seem attractive to me. I’m not sure what to do now, except resign myself to the fact that any one AUR install might take take hours instead of a coupke of minutes…