I've been meaning to write this for a week, but I wanted to do some
research first. The more I read and thought on it, the issue became
broader, the subject line kept changing and this message starting looking
like an article. I will try to choose my words carefully; I do not intend
to offend anyone nor do I want to appear biased.

I hadn't used any graphical package manager on fedora for almost a decade
(yumex was the last one) because I had been burned too many times and I
don't trust them, but after doing a little work in the AppData area, I
thought I'd take a look at gnome-software. It is one of the most beautiful
UIs I have ever seen. It is elegant, simple yet functional, tidy, gorgeous
to look at and it manages to stand out from all the other "market" or
"store" applications. It incorporates some of the competition's best
features, while avoiding their pitfalls (try living with Ubuntu's software
center for a couple of days). I wholeheartedly agree with Richard Hughes in
that software centers compliant with the AppStream specification help
promote applications and are beneficial to both the users and the
developers.

About a week ago, while wondering why MATE applications do not appear in
gnome-software, Richard was kind enough to point to a blog post from
September 2013:

http://blogs.gnome.org/hughsie/2013/09/19/gnome-software-on-mate-and-xfce/

I thought that developers and users might find it useful, so to quote
Richard:

> *tl;dr:* If you want to run GNOME Software on MATE or XFCE you need to
> set an environment variable like
> GNOME_SOFTWARE_COMPATIBLE_PROJECTS=MATE,GNOME,XFCE
>
This might have gone unnoticed since then, but I think it is an issue worth
(re)visiting.

I can understand and defend the design choices that have been made;
allowing a user to mix and match packages from different DEs with different
aesthetics, compiled against different/incompatible libraries or having
three different applications appear as "Text Editor" or "Dictionary" would
lead to a sub-optimal user experience. From that standpoint it makes sense
to hide from the user packages tied to other DEs, especially if the same
functionality is provided by Gnome packages. Of course, a user might
install an application e.g. compiled against gtk2 and the result would be
the same.

I have not tested this much in other Fedora versions, only in F22 with
GNOME. There, the default value in org.gnome.software compatible-projects
is set to 'GNOME', 'KDE', 'XFCE'.
(see
https://mail.gnome.org/archives/commits-list/2013-November/msg00656.html)
I do not understand this particular choice to include some DEs and exclude
others. Why not enable or disable all of them? LXDE and MATE developers
might be prone to attribute this to malice. Personally, on almost every
machine I use, I have mixed packages from various sources - some due to
personal preference, others because they offer unique functions.

Then again, does gnome-software aspire to be a "universal" package manager
on Fedora? If it does, then why not offer packages from every DE and
metapackages for other environments? If gnome-software aims to be
novice-user-friendly, at least the latter should definitely be an option. Let's
not forget that Gnome is a modern desktop environment, that requires fairly
modern hardware to run on and that is not always available. Also, can
gnome-software be the distro-wide default package manager while adhering to
the HIG?

Allow me to digress a bit. Sometime in 2000, my professor told me that in
order to use some molecular modeling packages and to modify their FORTRAN
source code, I had to get linux, so after some searching, I went to a local
bookstore and bought SuSE 5.3 or 6.0, can't remember any more (on a 56k
analog modem at the time, downloading the iso or doing a network install
was out of the question). The box came with two massive manuals (and some
cute stickers) from which I learned the concept of the window manager or
desktop environment. The choices I had been given got me really excited
(almost as much as when I got my mouse wheel working) and after some weeks
of playing with each DE, I routinely switched from KDE to enlightenment or
to fvwm, according to the requirements of the task at hand, or just my
mood. For years I kept the habit of alternating between almost every
environment that was packaged for my distro, until I did not have the time
to keep up with every change, so I settled with GNOME (mostly). Then came
GNOME 3 and in the ensuing upheaval I gave every other DE another try.
These days I use GNOME on my workstation, MATE on a netbook I take with me
whenever I have field work (which sometimes literally means working in a
field) and on an ancient dual Athlon MP workstation. On some other systems
I manage or have lying around, I run E19, XFCE, MATE and GNOME.

I have converted many friends and acquaintances over to linux, but for the
past 2-3 years I don't think I have pointed anyone to anything but Ubuntu
and I feel some guilt about it. For a number of reasons I can't quite put
my finger on, Fedora does not "feel right" for newcomers. The upgrade
process, software management and support time-frame are certainly among
them. Most of these otherwise bright people have their IQ drop to the value
of its logarithm when they sit in front of a computer screen and they all
seem to suffer from a natural aversion towards the terminal and towards
RTFM. I'm sure you are all well aware of them. When you tell them to go to
fedoraproject.org and download the iso, you can be certain that a phone call
is imminent, asking for step-by-step instructions, even though everything
is well-documented. Explaining to them the difference between linux and
distribution is hard and if you start talking about spins, they lose you.
If they decide to search for a solution to an issue by themselves, they
have no problem executing any commands they may find in a blog post from
2005, ignoring all the error messages that inevitably come along and then
they will look genuinely surprised because something broke. Last week I
upgraded my old workstation to F21. It has a GeForce 6800 that whenever I
had used nouveau instead of nvidia's driver, seriously overheated and the
computer sounded like the vacuum cleaners of yore. After the upgrade, I
couldn't get to gdm, but entering MATE manually worked, so after a little
digging, I found out about an issue with mutter and nvidia's driver. I
tried a newer version of the driver from rpmfusion's build system, that
didn't work, so I switched to lightdm. Now imagine one of those people,
being faced with the same issue right after the adrenaline rush of
upgrading with fedup. Even I have kept my main system on F20 because I need
CUDA and I can't switch to OpenCL.

Many of these people however exhibited an excitement far greater than mine,
when after complaining about Unity for various reasons, I presented them
with the alternatives. They were happy to spend time trying out other DEs,
pointing out what felt right and what wrong. Some of them tried all of KDE,
Cinnamon, MATE, LXDE, XFCE, GNOME and Enlightenment, for weeks even, before
deciding what worked for them and their workflow. To my semi-surprise, some
of those on higher-spec machines ended up on GNOME, which I thought had a
steeper learning curve compared to most of the others (I still had to tell
them about hidden stuff like gnome-session-properties or to get
gnome-tweak-tool and look in extensions.gnome.org for extensions).

Having said all that, I hear a lot of people complaining about losing users
to Ubuntu, Mint and others, or why things like project Sputnik
<http://www.dell.com/learn/us/en/555/campaigns/xps-linux-laptop> don't
involve our community. The biggest issue here is which is the targeted user
base of Fedora, if there is one? And what are the use cases we want fedora
to cover? Can we have "Freedom" and be "First" and still cater to
everyone's needs?

Well, that's it.
Happy holidays everyone!
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Reply via email to