GNOME 3.22 is scheduled to be released today. Along with this release come brand new recommendations for distributions on which applications should be installed by default, and which applications should not. I’ve been steadily working on these since joining the release team earlier this year, and I’m quite pleased with the result.
When a user installs a distribution and boots it for the first time, his or her first impression of the system will be influenced by the quality of the applications that are installed by default. Selecting the right set of default applications is critical to achieving a quality user experience. Installing redundant or overly technical applications by default can leave users confused and frustrated with the distribution. Historically, distributions have selected wildly different sets of default applications. There’s nothing inherently wrong with this, but it’s clear that some distributions have done a much better job of this than others. For instance, a default install of Debian 8 with the GNOME desktop includes two different chess applications, GNOME Chess and XBoard. Debian fails here: these applications are redundant, for starters, and the later app looks like an ancient Windows 95 application that’s clearly out of place with the rest of the system. It’s pretty clear that nobody is auditing the set of default applications here, as I doubt anyone would have intentionally included Xboard; it turns out that XBoard gets pulled in by Recommends via an obscure chess engine that’s pulled in by another Recommends from GNOME Chess, so I presume this is just an accident that nobody has ever cared to fix. Debian is far from the only offender here; you can find similar issues in most distributions. This is the motivation for providing the new default app recommendations.
Most distributions will probably ignore these, continue to select default apps on their own, and continue to do so badly. However, many distributions also strive to provide a pure, vanilla GNOME experience out-of-the-box. Such distributions are the target audience for the new default app guidelines. Fedora Workstation has already adopted them as the basis for selecting which apps will be present by default, and the result is a cleaner out-of-the-box experience.
Update: I want to be clear that these guidelines are not appropriate for all distros. Most distros are not interested in providing a “pure GNOME experience.” Distros should judge for themselves if these guidelines are relevant to them.
Classifications
The canonical source of these classifications is maintained in JHBuild, but that’s not very readable, so I’ll list them out here. The guidelines are as follows:
- Applications classified as core are intended to be installed by default. Distributions should only claim to provide a vanilla GNOME experience if all such applications are included out-of-the-box.
- Applications classified as extra are NOT intended to be installed by default. Distributions should not claim to provide a vanilla GNOME experience if any such applications are included out-of-the-box.
- Applications classified as Incubator are somewhere in between. Incubator is a classification for applications that are designed to be core apps, but which have not yet reached a high enough level of quality that we can move them to core and recommend they be installed by default. If you’re looking for somewhere to help out in GNOME, the apps marked Incubator would be good places to start.
Core apps
Distributions that want to provide a pure GNOME experience MUST include all of the following apps by default:
- Archive Manager (File Roller)
- Boxes
- Calculator
- Calendar
- Characters (gnome-characters, not gucharmap)
- Cheese
- Clocks
- Contacts
- Disk Usage Analyzer (Baobab)
- Disks
- Document Viewer (Evince)
- Documents
- Files (Nautilus)
- Font Viewer
- Help (Yelp)
- Image Viewer (Eye of GNOME)
- Logs (gnome-logs, not gnome-system-log)
- Maps
- Photos
- Screenshot
- Software
- System Monitor
- Terminal
- Text Editor (gedit)
- Videos (Totem)
- Weather
- Web (Epiphany)
Notice that all core apps present generic names (though it’s somewhat debatable if Cheese qualifies as a generic name, I think it sounds better than alternatives like Photo Booth). They all also (more or less) follow the GNOME Human Interface Guidelines.
The list of core apps is not set in stone. For example, if Photos or Documents eventually learn to provide good file previews, we wouldn’t need Image Viewer or Document Viewer anymore. And now that Files has native support for compressed archives (new in 3.22!), we may not need Archive Manager much longer.
Currently, about half of these applications are arbitrarily marked as “system” applications in Software, and are impossible to remove. We’ve received complaints about this and are mostly agreed that it should be possible to remove all but the most critical core applications (e.g. allowing users to remove Software itself would clearly be problematic). Unfortunately this didn’t get fixed in time for GNOME 3.22, so we will need to work on improving this situation for GNOME 3.24.
Incubator
Distributions that want to provide a pure GNOME experience REALLY SHOULD NOT include any of the following apps by default:
- Dictionary
- Music
- Notes (Bijiben)
- Passwords and Keys (Seahorse)
We think these apps are generally useful and should be in core; they’re just not good enough yet. Please help us improve them.
These are not the only apps that we would like to include in core, but they are the only ones that both (a) actually exist and (b) have actual releases. Take a look at our designs for core apps if you’re interested in working on something new.
Extra apps
Distributions that want to provide a pure GNOME experience REALLY SHOULD NOT include any of the following apps by default:
- Accerciser
- Builder
- dconf Editor
- Devhelp
- Empathy
- Evolution
- Hex Editor (ghex)
- gitg
- Glade
- Multi Writer
- Nemiver
- Network Tools (gnome-nettool)
- Polari
- Sound Recorder
- To Do
- Tweak Tool
- Vinagre
Not listed are Shotwell, Rhythmbox, or other applications hosted on git.gnome.org that are not (or are no longer) part of official GNOME releases. These applications REALLY SHOULD NOT be included either.
Note that the inclusion of applications in core versus extra is not a quality judgment: that’s what Incubator is for. Rather, we classify apps as extra when we do not believe they would be beneficial to the out-of-the-box user experience. For instance, even though Evolution is (in my opinion) the highest-quality desktop mail client that exists today, it can be very difficult to configure, the user interface is large and unintuitive, and most users would probably be better served by webmail. Some applications listed here are special purpose tools that are probably not generally useful to the typical user (like Sound Recorder). Other applications, like Builder, are here because they are developer tools, and developer tools are inherently extremely confusing to nontechnical users. (Update: I originally used Polari instead of Builder as the developer tool example in the previous sentence. It was a bad example.)
Games
What about games? It’s OK to install a couple of the higher-quality GNOME games by default, but none are necessary, and it doesn’t make sense to include too many, since they vary in quality. For instance, Fedora Workstation does not include any games, but Ubuntu installs GNOME Mahjongg, GNOME Mines, and GNOME Sudoku. This is harmless, and it seems like a good list. I might add GNOME Chess, or perhaps GNOME Taquin. I’ve omitted games from the list of extra apps up above, as they’re not my focus here.
Third party applications
It’s OK to include a few third-party, non-GNOME applications by default, but they should be kept to a reasonable minimum. For example Fedora Workstation includes Firefox (instead of Epiphany), Problem Reporting (ABRT), SELinux Troubleshooter, Shotwell (instead of GNOME Photos), Rhythmbox, and LibreOffice Calc, Draw, Impress, and Writer. Note that LibreOffice Base is not included here, because it’s not reasonable to include a database management tool on systems designed for nontechnical users. The LibreOffice start center is also not included, because it’s not an application.
Summing up
Distributions, consider following our recommendations when deciding what should be installed by default. Other distributions should feel encouraged to use these classifications as the basis for downstream package groups. At the very least, distributions should audit their set of default applications and decide for themselves if they are appropriate. A few distributions have some horrendous technical stuff visible in the overview by default; Fedora Workstation shows it does not have to be this way.
I don’t get it…. distributions REALLY should not include any email or music software if they want to get the recommended gnome experience!? Yes, because nobody ever want to use mail or listen to music….
Most people I know use email daily but have absolutely no need for an installed mail client, as they all use some webmail provider (GMail being the most common by far).
I guess for music is the same thing with streaming providers, and listening to music on your computer is probably a less general requirement to start with (I don’t do it, most members of my family don’t do it either, some of them just listen to YouTube).
But note that this is a SHOULD, and not a MUST. I would not advise shipping a distro without a music player, we just don’t have one we can recommend right now. We’re still using Rhythmbox for the time being in Fedora Workstation. And it’s a cool music player, but it does have that database management vibe, so it’s not really a great default and not something we want to recommend. And it’s never been part of GNOME releases, doesn’t follow our release cycle, so it can’t be a core app anyway. What we want to recommend is Music. Music is really cool and has some dramatic performance improvements in GNOME 3.22, but it’s still not yet ready for prime time. Hopefully we can change this soon and move it to the core apps list; if anyone wants to help with that, it’d be much appreciated.
I think most distros should indeed not include an email client out-of-the-box. I suspect that an outright majority of users prefer webmail. I personally want a mail client, but I’m fine with installing Evolution myself. We can’t recommend installing Evolution by default, because it’s much too complicated. We actually do have designs for GNOME Mail, but it doesn’t exist, so we have nothing to recommend for now. But again, this is a SHOULD and not a MUST.
Also note that for GNOME distros, Videos is a better choice for the default audio player than Rhythmbox. That sounds nuts, but it’s true: when you open any audio file with Rhythmbox, it gets added to Rhythmbox’s music database, even if it’s just some temporary file you’re never going to want to play again, or not a music file at all. Then when you remove the file, you wind up with warnings from Rhythmbox about missing files. It’s certainly weird that Videos is a better default, and very much not a desired thing, but it’s currently true.
What about Geary? https://wiki.gnome.org/Apps/Geary
Ah, this could be a whole discussion thread on its own!
Geary is very promising! Especially now that it has an active maintainer again. But whenever I suggest it, people unfortunately point out that they can’t use it because it’s missing such-and-such Evolution feature that’s essential for them. Things like Exchange integration, for instance; lots of users simply cannot use a mail client that doesn’t support Exchange. Also, it currently still depends on ancient WebKit.
Personally, I’d bet on Evolution to become closer to GNOME Mail designs than on Geary to grow a bunch of missing features, but it’s great to see some competition in this space. We’ll definitely be looking out for improvements in both of these apps to see how things are going and reconsidering every six months.
What is the chance of the UI for Evolution being updated to the GNOME Mail design any time soon?
Yeah, actually for the first time, I can actually use Music on my collection :-)
Gnome music app shows album covers and does a great job of listening to music you downloaded onto the system. I still need a good email app like Thunderbird but I also use web mail for my other accounts. Since loading Gnome 3 since Fedora 15 it has really come of age to a point its my go to os.
Why is Boxes a core app? Aren’t virtual machines primarily a developer tool?
Boxes was iffy. It’s actually only half a virtual machine app, half a remote desktop app. Think: you have a Windows machine at work, you want to use it from home, so use Boxes for that. (Actually it can’t handle RDP quite yet, so it can only remote into Linux machines for the time being, but it’s a planned feature.) That’s not a developer use-case. Or perhaps you want to try out a different Linux distribution; that’s not a developer use-case either. But, yeah, Boxes could have gone either way, we just had to decide. It’s just a utility, and it’s OK if many users don’t use it, so long as it’s simple to use and broadly useful.
Well, if someone has a remote desktop and uses Boxes for this purpose, he certainly is able to install an application.
Providing Boxes but not Tweak tool because remote desktop is easier than choose a theme… that’s not captain obvious ;)
I know I repeat myself and we’ve already discussed it on Fedora desktop mailing list, but I really don’t think Boxes are in the shape to be in GNOME Core and pre-installed in Workstation right now. Just try running Fedora 25 in Fedora 24/25’s Boxes. It’s completely unusable. This is not the quality GNOME or Fedora should expose to users by default.
Jiri, that’s a F25 bug. Try running F24 or any other Linux OS in Boxes, it works great. Only F25 is broken. It’s a proposed blocker.
If you want a generic name for Cheese, why not use “Camera”? Isn’t that its core function: to operate attached cameras?
I’d assume that an app named “Camera” would also be used for managing cameras (say, importing images from a DSLR). “Webcam”, instead, maybe?
Boxes and Photos and Music should not be core apps. Users can’t select files or folders outside their small little sandboxed world.
Until I can point my Photos to say /home/Photos so the entire family can share, it is a useless application and shouldn’t be included. Sames with Music and Boxes, possibly others.
Please allow ME to control where things are on MY computer.
There actually is already a setting for this, but it’s buried in gnome-control-center (Search panel -> gear icon -> plus button) so I wouldn’t expect you to have found it. This setting should probably be exposed in the content applications themselves.
As I mentioned, there are also plans to allow these apps to directly open files.
Music is not a core app. :)
I’m not sure that’s what they mean, there should be a way so say “music files are in X directory” but at the moment the best you can do is say “please search X directory for any kind of file”.
Music doesn’t appear in the list in the search settings. I store my music files on a separate partition, so I tried to create a symlink from my /home/Music folder to the folder on the separate partition.
“Other applications, like Polari, are here because they are developer tools”
I don’t get this. People still use IRC for many other topics, right?
Outside the geeky free software community? Probably not so much? I don’t think it’s generally useful; it’s only useful to the privileged few who use IRC.
I was too harsh on Polari, though. It’s actually very nice and easy to use, and hardly a good example of a developer tool anyway.
The double Chess app bug in Debian is finally fixed for next year’s new stable release of Debian.
Tweak Tool is better as a COULD/SHOULD/MUST. This is what we advised for a while. Fedora was the outlier on this.
Evolution is one of the applications that I actually enjoy using, because it can actually do what I want to do. There is no way *that* application can be too complicated; it is the only thing that actually works and allows me to actually read my email. It is impossible any user would be better served by webmail when using webmail requires logging in and visiting a website every time you want to read your email, is slow, and doesn’t support half of the features of Evolution (and yes, nontechnical users actually do use these features—everyone in the modern world makes heavy use of email, not just programmers!). That’s without considering the freedom and privacy issues with using webmail.
I suspect the two reasons it is not considered a core app are that it has menus, and that it has many features. Is it so hard to understand that menus might actually, for once, actually be the best user interface paradigm for something? I see no way email or office suites could be done without menus without removing all the features and making the software useless for anyone. What’s confusing with menus? Everyone understands how to use them and how to find things quickly with them.
Has actual usability testing been done on Evolution? I think that the claim that it is too complicated to use is unfounded and that anyone can understand very intuitively how to use it. Everyone manages to use Gmail, and that interface isn’t at all simpler—or, for that matter, prettier—than Evolution.
Evolution is currently the best email client, all platforms combined (including webmail clients). If no other email client has done better, then Evolution is probably doing it right already. It follows the important parts of the HIG, uses GTK+ 3, and, from what I see on git.gnome.org, is one of the most actively developed applications. Should it really be excluded from the core apps just because it doesn’t have interface gimmicks that neither technical nor nontechnical users care about, like an application menu or client-side decorations? Evolution doesn’t look out of place at all in GNOME, so that it doesn’t have those things doesn’t seem important at all to me.
Please include Evolution in the core apps.
Hi, I use Evolution every day, but I can’t remember the last time I ever used any of the menus, except to open the preferences dialog once every couple of months or so. Everything I want to do is available in the toolbar. So out of curiosity: what do you use the menus for?
Here’s a recent Evolution usability test: https://dkripak.wordpress.com/2016/09/04/ux-test-results-part-ii/. Note that was unfortunately performed with Evolution 3.18, which is harder to use to set up with a GMail account than in modern Evolution (the testers had to “allow access to less secure apps” or their correct password would be rejected with no error message), but it was not only GMail users who had difficulty.
Now there are some UI changes planned in Evolution. I don’t know what’s going to happen, but I know the maintainer wants to improve the usability and is at least interested in what GNOME designers have to show. We’ll see where it goes and continue to reevaluate!
Oh wow. I have to retract my claims about usability testing and Evolution not being too complicated then.
I have to use the feature to work offline regularly when my university’s wifi doesn’t work. I back up Evolution data and have imported email from KMail once. I use message filters and search folders a lot, in part because my university has a ton of mailing lists (one mailing list for each course, all communication is done with email).
I have hidden the toolbar because I use the menu items instead. Like in LibreOffice and Firefox, I can press the Alt key and then letters to select menu items with the keyboard. I cannot do that with the toolbar and other buttons (I found the Alt key could be used with buttons in gedit, and with F10, but it’s a pain to use and menus are more pleasant). Some applications like Nautilus are not accessible with the keyboard; it was far easier to use when menus could be used, but they were removed.
Even the Ctrl+G Go To Folder menu item I use sometimes, because using the tab key to move to the side pane… try it and you’ll see why I prefer Ctrl+G…
There are things that could be removed from the menus, though. File → Empty Trash is redundant because there is already a way to empty the trash from the context menu, and it is not clear which trash it empties (trash folders in all accounts, or in the current account?).
I was kinda thinking about Empathy here…
Yeah, I know it has a pretty dated UI and don’t follow current GNOME standards.
But, as we do have the Online Accounts so when adding i.e. a Google account you get the chat function enabled. And it would kindof need Empathy to be useful, wouldn’t it?
gnome-online-accounts should really be built without Telepathy support, then the chat stuff doesn’t show up in Online Accounts. That’s what we’re doing in Fedora. Unfortunately it looks like we never changed the upstream default, so other distros still have it, which is why you’re complaining about this. I’ll ask if we can flip it.
About Cheese name: I think it does not qualify as a generic name. The problem isn’t obvious in English, but it is obvious in other languages.
Most GNOME core app generic names are translated as is. For example, Videos becomes “Видео” (“Video”/”Videos”), Documents become “Документы” (“Documents”) etc. There are exceptions, e.g. Web becomes “Веб-браузер” (“Web-browser”).
With Cheese, however, it’s much worse. The current translation is “Cheese”, in Latin. Not only that inconsistent, but the app also gets the glorious topleft spot in the overview. You can’t translate it either: “Сыр” (“Cheese”) can only mean this in Russian: http://flexibristol.org/wp-content/uploads/2015/12/cheeses.jpg and the photo metaphor basically isn’t there. I’m sure there are many other languages with similar problems.
“Camera” suggestion above makes much more sense here.
Evolution MUST be a core GNOME app.
Having a proper email/calendar client is NOT optional. This the only app in the entire GNOME stack that can connect to MS Exchange and thus makes possible using GNOME in a corporate environment.
Putting Evolution on a list of optional apps is insane.
So is saying that default apps should be dictated by what is used in a corporate environment, particularly one narrow definition thereof.
What’s wrong with Bijiben? I use it often to jot down notes, and it has a nice look, in my opinion. It has never lost my data.
See https://bugzilla.gnome.org/show_bug.cgi?id=728293 for the biggest problem. Too many smaller bugs on top of that. I want it to create lists when I type * for instance, surely any note app should do that. Nothing insurmountable, but it’s almost unmaintained right now so it really needs a volunteer to step up.
Wow. I looked at those links and I don’t understand any of it. I just used Bijiben (Debian Jessie) and it still works perfectly. I was pleased when I discovered Bijiben a while ago because, at the time, it seemed to be simple and elegant compared to Tomcat.
I guess bulleted lists are nice, but does a note-taking app really need all those bells and whistles? I use Bijiben as a quick way to write down something in a hurry, not an app I use in and of itself. If I needed a list, I would just type
* one
* two
* three
and move on to more important stuff. Note taking is not that deep, in my opinion.
I wanted to launch it to show a screenshot of a bug, but it crashed. :)
Launched again:
https://drive.google.com/open?id=0B6Q15WgSizoncXg0d1pIRGhLRkk
Here I can see at least 2 major things:
1. The popover… Well, you see it. Additionally, I can say that it’s really annoying when you select text.
2. The background should be yellow, as selected. It worked prior to GTK 3.20.
Additionally, I remember that I managed to somehow leave the menu open and the window freezed so that I had to kill -9 it. It happened at least 2-3 times. (About the same amount of times I used it. :) )
So, perhaps at least these issues should be fixed first?
I agree with removing Evolution, but for a different reason. Over the past 10+ years I’ve never got it to work well with Microsoft mail servers, which is my only use for an incredibly large mail client. I’d love it to disappear from Debian.
Howdy,
Maybe i missed it somehow but i think the screenreader orca schould been added to the core list. Its important for a11y.
Hi, it’s part of core and you’ll find it in the jhbuild moduleset, but I didn’t list it here because it’s a core OS component rather than an application.