You Got A Question? Ask    GNOME Community!

Gnome current Goals stage of completion

This post was made with an older stylesheet

Hello and welcome back to woGue :)
With 29 days left untill version 3.10 gets officially released, we already have reached the point where it’s all about bug fixing from now on and what a better timing for us to revisit Gnome’s Goals situation, see what the stage of completion is and compare the data with what the situation was on the beginning of this year.

Add GObject Introspection Support – Gnome Live

What is:

The main two goals of the GObject Introspection support is to be a convinient bridge between C and a managed runtime such JavaScript, Python and Java, and to improve the situation with binding and metadata maintenance extra work by by putting all of the metadata inside the GObject library itself, using annotations in the comments.


  • Desktop components – 20/35
  • Platform components – 4/6
  • Development tools – 3/3
  • Mobile – 1/1
  • External Dependencies – 11/38
  • Other components – 12/30

Total completion: 51/113 – 45.1%   compared to January: +1.7%

Gconf to GSettings migration – Gnome Live

What is:

The migration from Gconf to GSetting will help developers use a better and newer API for storing and retrieving application settings.


  • Core components – 20/21
  • Core utilities – 11/11
  • Core extras – 1/1
  • Core fallback – 2/2
  • Core OS services – 1/1
  • Core dependencies – 6/6
  • Gnome applications – 14/15
  • Other applications – 15/42

Total completion: 70/99 – 70.7%   compared to January: +0%

Port to GMenu – Gnome Live

What is:

The aim of this goal is to have a consistent GMenu used by all applications in the Gnome desktop environment.


  • Core components – 2/2
  • Core utilities – 16/19
  • Gnome applications – 7/19
  • Other applications – 6/16

Total completion: 31/56 – 55.4%   compared to January: +3.6%

Port to GtkApplication – Gnome Live

What is:

GtkApplication handles GTK+ initialization, application uniqueness, session management, provides some basic scriptability and desktop shell integration by exporting actions and menus and manages a list of toplevel windows whose life-cycle is automatically tied to the life-cycle of your application.


  • Core components – 3/3
  • Core utilities – 17/19
  • Core extras – 0/2
  • Gnome applications – 11/20
  • Other applications – 6/19

Total completion: 37/63 – 58.7%   compared to January: +0%

Remove markup in translatable messages – Gnome Live

What is:

Remove markup in translatable messages will take away the unnecessary burden for the translators since the markup should not be translated anyway, and makes translation tools, like translation databases, more efficient in finding and reusing translations.


  • Core components – 4/4
  • Core utilities – 7/10
  • Core extras – 1/1
  • Core fallback – 2/3
  • Core OS services – 0/2
  • Core dependencies – 0/2
  • Gnome applications – 11/15

Total completion: 25/37 – 67.6%   compared to January: +0%

Migrate from libgnome-keyring to libsecret – Gnome Live

What is:

Migrating from lignome-keyring to libsecret will allow developers work with a newer and cleaner API while also helping us migrate away from libdbus to gdbus.


  • Core components – 5/6
  • Core utilities – 4/4
  • Core extras – 1/1
  • Core dependencies – 3/3
  • Core applications – 2/2

Total completion: 15/16 – 93.8%   compared to January: +18.8%

Print To File – Gnome Live

What is:

The goal is to make sure that every application that offers to print something set a suitable filename for print-to-file when showing a print dialog.


  • Core utilities – 2/17
  • Core extras – 0/1
  • Core dependencies – 0/7
  • Gnome applications – 1/17
  • Other applications – 0/37

Total completion: 3/79 – 3.8%   compared to January: +0%

Add keywords to application desktop files – Gnome Live

What is:

The purpose of this GnomeGoal is to add suitable Keywords entries to the desktop files of GNOME applications, to yield a satisfactory search experience in GNOME shell.


Goal completed – not active anymore :)

  • Core components – 3/3
  • Core utilities – 19/19
  • Core extras – 2/2
  • Gnome applications – 35/35

Total completion: 59/59 – 100%   compared to January: +18.6%

HighContrast application icons – Gnome Live

What is:

Every application should install a regular icon and HighContrast icon for use with the HighContrast accessible theme.


  • Core components – 6/6
  • Core utilities – 19/19
  • Core extras – 2/2
  • Gnome applications – 31/33

Total completion: 58/60 – 96.7%   compared to January: +38.6%

Python 3 Porting – Gnome Live

What is:

The goal is to port everything to the latest and greatest version of Python.


  • Core components – 4/9
  • Core utilities – 1/1
  • Core OS services – 1/3
  • Core dependencies – 8/42
  • Gnome applications – 6/11

Total completion: 20/66 – 30.3%   compared to January: -1%

Notification Sources – Gnome Live

What is:

The aim of this goal is to have a better notification system by rendering it able to recognize which applications produce and send notifications and allow a filtering capability to the user.


This goal is considered complete and is no longer active.

  • Core components – 4/5
  • Core utilities – 4/4
  • Core extras – 2/2
  • Core dependencies – 1/1
  • Gnome applications – 3/3

Total completion: 14/15 – 93.3%   compared to January: +63%

What one can conclude right away is that not much work has been done for this crucial Gnome under the hood technical infrastructure and consistency. It is nice to have new Gnome apps and tools to play with on 3.10, but these goals should be treated with more love and solemnity in my opinion.

I can only hope for the best, but the truth is that with the currently available resources, some of the above goals need much more time to complete than we would like and we certainly won’t see them completed on the upcoming 3.10 version either. For more details about the current goals, finished goals of the past and goals to come in the future (currently proposals) visit the Gnome Goals live webpage.

  We can't watch comments unless G+ provides an API or if you send a notification, e.g +World Of Gnome
     Sometimes is better to place your questions on GNOME Community
  • Magneira

    Cant wait!

  • Goddard

    I really like the Gnome Menu idea if I understand it correctly as a universal menu similar to Unity or OSX. I like saving screen space by having it up at the top. Can we get all the options back in there and maybe an option to turn the menu into a toolbar menu like Unity? that is all I have been waiting for since the gnome global menu project died. Thanks for making maximized windows loose their window borders. This makes so much sense for multiple work space work flows like mine.

    • Michael Mistretta

      Makes sense but won’t happen lol..

    • Marcos V.F.

      The chances of other software (not made by Gnome Project) to use Gnome Menus are zero. Gnome wants to reinvent the wheel, and all we get is inconsistency in the desktop.
      When other desktop systems change their menus would be the right time to make that change.

      • Guest

        With the exception of Firefox and Libre/OpenOffice, it seems to work pretty well with KDE. Why would it be different for Gnome?

      • Mike Manilone

        The chance isn’t zero. However, the inconsistency is real.

  • Matthias Clasen

    The percentages you present are a bit meaningless – the lists of modules on those goal pages are in no way canonical, and include many obsolete or third-party modules. Eg the gconf migration is for all practical purposes complete.

    Other than that, it is of course a good idea to draw some attention to these goals. We have not pushed them very actively this cycle.

  • ScionicSpectre

    It really is tough to wrangle these things with the project’s structure and resources. I fear the pace of improvement isn’t sufficient, but I will hope for the best as they complete the vision GNOME 3 set out to create.

  • foobar

    GIR isn’t only for dynamic langauges. Valac for instance isn’t one but consumes GIR directly and indirectly. (There are binary blobgs which are used for dynamic bindings. They are compiled out of a xml description which are easier to read and contain more information. Valac consumes those xml-files directly or indirectly via a binding generator. And we are actually the guys who fix more annotation issues as every other consumer. Our main binding-guy is awesome.)