Recent happenings in Metacity and Mutter

Mother and ChildHere’s a quick round-up of interesting goings-on in the Metacity and Mutter worlds this week.

Photo © Tiara, cc-by-nc-sa.

Notes from Gran Canaria

Gran Canaria Desktop Summit

Lots of happy buzz about window managers here at the desktop summit.  Some things people have said:

  • Someone asked about implementing window matching.  It’s always been our policy that it should be done with an external tool, but policies can of course be rethought.  We might implement it in a branch and see whether anyone likes it.
  • People are very excited about Mutter.
  • Some concern was expressed by distros about whether enough machines will be capable of running gnome-shell: not just rather old machines but new ones which don’t have drivers yet.  Some interest in a version that uses software rendering.
  • Owen Taylor’s work on the git migration and on gnome-shell got a standing ovation at the AGM.
  • Several patches got reviewed and committed at last in hack sessions.
  • Some discussion of the use of CSS in theming.
  • Someone raised the idea of a generalised EWMH testing suite that can be used with Metacity or Mutter.  This sounds like a sterling idea.

In addition,

  • the rpnparser branch (which is a simpler and faster theme expression parser) is still viable, but since the theme format for Mutter isn’t decided, it doesn’t really make sense to merge it.  But perhaps it still belongs in Metacity 2.  What are your thoughts, gentle reader?
  • the squib of the day section in the blog only deals with enhancements, and since enhancements in Metacity are less likely and moving things to Mutter is more likely, this section may be on hiatus for a bit.

Photo © jcorrius, cc-by.

Recent Mutter and Metacity activity

"Monumento à Mãe" StatueHere’s a quick roundup of recent happenings with Mutter and Metacity.

Photo © Fernando Ariotti, cc-by-nc-nd.

The future of…

Mother And Infant StatueThe future of the project: It’s fairly clear now that Mutter will be an alternative window manager in GNOME 2.28, and the only window manager in GNOME 3.  It is therefore taking over the reins from Metacity 2: effectively, Mutter is Metacity 3.

But what is to happen to Metacity 2?  Your chronicler believes that the community is better served by working on Mutter, and will do so.  Metacity 2 will not be actively developed, other than for bug fixes.  It is possible that some people out there would like Metacity 2 to continue, and if so they are welcome to fork the project and take over, and your chronicler will offer them as much support in doing so as possible.

The future of the bug list: There are five hundred bugs open against Metacity, more than one maintainer can humanly tackle.  Rather than simply closing them all, I propose working through them ten at a time and deciding for each one whether:

  • alreadyfixed: it is already fixed in Mutter or gnome-shell (this is true of several enhancement requests), and so should be marked WORKSFORME or similar
  • reassign: it is a Metacity bug that can be reproduced in Mutter, and should therefore be reassigned
  • enhancement: it is an enhancement request which Mutter or gnome-shell could take on board; these should be discussed on the mutter-list and perhaps also in the squib of the day feature on this blog;
  • metacity: it is a bug which should be fixed both in Metacity 2 and in Mutter;
  • wontfix: it is an enhancement request which we WONTFIX.

These could be done as we go along, or could be marked with the relevant keywords and then group-edited.  Gentle reader, might you be willing to take on a block or two?

How can we best organise this?  Should we use the wiki and assign blocks to people?  Those of you here at GCDS, would you like to get into a room somewhere and work through the list together?

The future of this blog: I want this blog to continue.  I would like to expand it beyond its current focus:

  • to include discussion of Mutter as well, obviously
  • to include Mutter data in the Metacity Journal posts (these are largely automated and only edited by a human)
  • to include news of interesting developments in window management (such as the current debate over compositor-specific hints in the EWMH)
  • to have guest bloggers occasionally (again, any volunteers?)

One danger is that your chronicler spends more of their time writing blog posts than fixing code.  Suggestions for solving this problem are welcome.  It may involve delegation to someone who is better at blogging than coding.

Photo © Greg Emel, cc-by-nc-sa.

Mutter integration: the story so far

Profile mother earthOne of the forks of Metacity is known as Mutter, because it’s Metacity with Clutter support.  It’s used by the forthcoming gnome-shell project.

In a recent email to d-d-l, Owen Taylor gave two goals for the 2.28 release:

  1. That Mutter should be developed using the GNOME infrastructure; and
  2. That users will be able to choose between gnome-shell and ordinary Metacity.

Some possible ways of doing these were suggested:

  • Merge Mutter and Metacity. Have Mutter as a separate compositor within Metacity.  Alternatively, as Colin Walters suggested, make Mutter a separate branch within Metacity’s DVCS.
  • Import Mutter as a separate window manager. Remove all the parts in Mutter which are left over from Metacity and don’t work towards Mutter’s goals.  Metacity remains for people who don’t want to run gnome-shell.  Eventually it dies off.
  • Forget about Mutter. Whatever we need to do would be done either in Metacity or in gnome-shell using JavaScript plugins.

One advantage of making gnome-shell play nicely with a standard (possibly Mutterised) Metacity is that it would still be possible to switch to other window managers: a great deal of ink was spilt in the discussion over whether users would mind switching away from Compiz, whether the Compiz developers would mind, and whether Compiz was the de facto standard window manager these days.  However, Owen says that gnome-shell requires tighter coupling with the window manager than is usual, and that this isn’t really an option.

The discussion continues…

Photo © Alexander Drachmann, cc-by-sa.