Few sensational things happened last week in one of the oldest debates of the Linux community, GNOME vs KDE, touching on the topic of freedesktop.org and joined this time by the new hot topic, "
GNOME vs Canonical". The bulk of the actions happened in the comments section of two blog posts, one by
Dave Neary (1) , well-known GNOME advocate and another post by
Aaron Seigo (2) , well-known KDE Developer. I want to improve my writing skills and the ability to get information from a community discussion. So, below is a step in that direction.
Disclaimer: All opinions are personal and none of the views expressed represent my employer, NASA, WHO or anyone else for that matter. The following is the
juice of the events of last week written from a (as honest as possible) neutral perspective. Read through this post if you don't want to read through all the comments in the mentioned blog posts.
GNOME 3 release is just days away. Canonical and the GNOME community have taken different routes with
Unity and
gnome-shell respectively. Dave Neary
wrote(1) a blog post with an analytic title "
Has GNOME rejected Canonical's Help ? " . Neary cited instances of Canonical exhibiting behavior that shows discomfort in the Canonical-GNOME relationship.
The main point of contention was:
rejection of libappindicator (3) by the GNOME release team roughly an year ago. appindicator is an implementation by Canonical for the management of system tray icons. It was brought under a specification titled "status notifier" to the freedesktop.org. Dan Winship and Matthias Clasen from GNOME have faced some severe issues with the specification and
deemed (4) it unfit. The rejection reasons cited by the GNOME release team for appindicator were:
- it doesn’t integrate with gnome-shell
- probably depends on GtkApplication, and would need integration in GTK+ itself
- we wished there was some constructive discussion around it, pushed by the libappindicator developers; but it didn’t happen
- there’s nothing in GNOME needing it
Neary asked for proofs of libappindicator proposal for gnome-shell and any convincing/rejection discussions following the proposal, if any. The openness and accountability of the gnome-shell development process can be known by such proofs.
Aaron Seigo of KDE blogged(2) about the controversy and used the opportunity to vent out his frustrations with GNOME. His post with an inflammatory title of "
Collaboration's Demise" seem to indicate that the KDE project has faced severe pushbacks from GNOME for the ideas/standards proposed by KDE. Seigo feels in the last 5-6 years of freedesktop.org operations, GNOME seem to reject ideas based on a (Not Invented Here) NIH syndrome.
As expected, there were comments from GNOME people on Seigo's blogpost, though with a disclaimer that they don't officially respond on behalf of GNOME and are personal opinions. The main counterpoints by GNOME people that I could catch are:
- The idea of appindicators was proposed sometime in 2008. But was not discussed in open after that for a long time.
- Roughly 2 years after that initial proposal and without any open-discussions on the design, a big code drop was requested for libappindicator and proposing it as a external dependency.
- The libappindicator also needed copyright reassignments to Canonical for any contributions. A practice that is being widely frowned upon in GNOME and FOSS projects in the recent times.
The main complaint from Seigo on his blog is that GNOME is deviating from freedesktop.org standards consistently in the last few years and this is unhealthy for cross desktop applications. He feels that appindicators is yet another symptom of this problem. It remains to be seen if this is the personal opinion of Seigo or if the KDE Board/Project too feels the same.
In addressing the events of the past week,
Mark Shuttleworth has posted a blog (5) and accused the GNOME leadership (probably referring to the release team and Board, which is unclear from his blog) that the environment in GNOME is not conducive for internal competition. He believes that internal groupism in GNOME is killing baby ideas from anyone outside the group. The tone of the post is
harsh towards the
GNOME leadership and is filled with advice. Towards the end of his post, Shuttleworth notes that strengthening the partnership with KDE and freedesktop.org is the way forward and is more fruitful than convincing GNOME.
It may be an eventful time in the next few days to see how the GNOME community reacts to this. There will be a blog post by
Jeff Waugh for sure, atleast, it seems. As of now, RedHat the biggest investor in GNOME and we expect no change in their stance. Novell seem to be happy with the way things are going in upstream and will stay close to it, it seems. Canonical is toying around with the idea of creating new cross-desktop standards and make Unity more popular. They seem to have appealed to some people in the KDE camp atleast (like Seigo). But it remains to be seen if this newly forged friendship is exposing real problems with GNOME or it is just a temporary sensationalism that will subside soon.
During the next Desktop summit, the GNOME and KDE boards have a huge task of ironing out the difference of opinions between GNOME and KDE people regarding the freedesktop.org processes. I don't know if everyone in KDE camp feel that GNOME is blocking changes in fdo or it is a perception of a few people like Seigo only.
My Take:
+ Most of these problems could've been minimized if Canonical have done their work in GNOME git repositories instead of doing it in their own private space. Nobody likes huge code drops. Doing things in private and opening up later is not a correct behavior in any open source community. They should have learned from the past mistakes like:
Novell's gnome-main-menu,
Android's Wakelocks etc.
+ Involvement with the community should begin as early as possible. It is not okay to assume, "We are special and we will get our way through even if we involve community in the end."
+ As is said in every GUADEC, GNOME is People. If Shuttleworth is unhappy with the leadership of GNOME, the way to fix it is not by doing things in private or by working with KDE/freedesktop.org (which is good but won't solve perceived problems with GNOME), the right way is to get involved with GNOME. How many Canonical employees are part of the GNOME Release team ? How many Canonical employees have ever been part of the release team ? Employ more people to work in upstream so that you can influence GNOME decisions. Grab the steering if you want to drive, don't be a back-seat driver.
+ There may be serious problems with the way freedesktop.org is managed if the complaints by Seigo are shared by many people in the KDE community.
Links:
1 - http://blogs.gnome.org/bolsh/2011/03/07/has-gnome-rejected-canonical-help/
2 - http://aseigo.blogspot.com/2011/03/collaborations-demise.html
3 - http://mail.gnome.org/archives/devel-announce-list/2010-June/msg00001.html
4 - http://aseigo.blogspot.com/2011/03/collaborations-demise.html?showComment=1299623993569#c1004728938259200386
5 - http://www.markshuttleworth.com/archives/654
Some of my observations have been wrong. If so, it is just because of mistake and not because of bad intent. Please let me know and I will correct myself. Thanks.