My ongoing search for a DE that looks like Cinnamon with the GNOME theme but is as light as GNOME 2 has taken me to compiz, the GTK3 version of MATE and some custom css theming. The goal here is to have the entire DE "shell" themable one way, while applications can remain themed another way, as is the case in both Gnome-Shell and Cinnamon. This sort of thing allows MATE to do almost anything Cinnamon can with much lighter code. I've got perhaps 80% of the work done at this point.
As of now, I've got a DE that looks like what I had using cairo-dock or Cinnamon, but using MATE by itself. The mate-panel is far more responsive than anything else I have seen, blowing not only Cinnamon but cairo-dock as well out of the water for sheer responsiveness and minimal CPU use. My theme is probably very heavy, but using it with this lighter DE more than compensates. MATE with Gtk3 is still buggy, with occasional segfaults in things like the Caja file manager and certain right-click menus opening empty and filling in from the bottom. Also, the "menubar" rather than single button "main menu" must be used because the button menu opens empty from the bottom. Overall, I've got this running in Ubuntu well enough to use but not well enough yet to distribute to my friends.
First things first, Gtk3 builds of MATE are not offered by any Ubuntu PPA to my knowledge. I ended up taking most of the binaries from the Arch repo http://pkgbuild.com/~flexiondotorg/m...al/1.9/x86_64/ . I just copied over the binaries into debian packages to get started, then hacked and custom built three packages so far. The panel, the old and separate network-manager-gnome package, and Ubuntu's indicator-cpufreq applet all got a line of code added to attach a name to their GtkMenu widgets so they could be singled out for custom theming. For instance, this line went into network-manager-gnome's source code into applet.c as line 1345:
gtk_widget_set_name(menu, "nm-menu");
That let me specify .menu#nm-menu in the list of panel widgets to get the transparent black menus with grey borders and round corners, while the application menus remain original UbuntuStudio grey.
Mate-media is refusing to build for me, yet somehow the Arch folks have built it. I The volume control in it is hardcoded to use the theme background color, perhaps I could fire it up from a script with a separate .css file until this will build so I can modify it. Right now the volume control is the biggest panel widget inconsistancy, along with the battery-status applet from the mate-applets package which I have yet to custom build. The hacked tray applets work and follow their themes in any DE, though when compositing is not used transparency reverts to solid black.
I've now got the panel menus, most of the right-click menus, and several tray applets all with GNOME style transparent black menus. That has allowed me to stop using cairo-dock for the tray and applets. After weeks of work I finally found the key last night to making popup menus tranparent: in GTK3 css theming, you can specify GtkWindow.popup and theme only those windows with a transparent background! Until then I had either solid color menus with square corners or black edges in many application windows that do not fill their top level windows. The main menubar was the one thing in which transparency was easy, because a special style class was already specified for it.
As of now, I've got a DE that looks like what I had using cairo-dock or Cinnamon, but using MATE by itself. The mate-panel is far more responsive than anything else I have seen, blowing not only Cinnamon but cairo-dock as well out of the water for sheer responsiveness and minimal CPU use. My theme is probably very heavy, but using it with this lighter DE more than compensates. MATE with Gtk3 is still buggy, with occasional segfaults in things like the Caja file manager and certain right-click menus opening empty and filling in from the bottom. Also, the "menubar" rather than single button "main menu" must be used because the button menu opens empty from the bottom. Overall, I've got this running in Ubuntu well enough to use but not well enough yet to distribute to my friends.
First things first, Gtk3 builds of MATE are not offered by any Ubuntu PPA to my knowledge. I ended up taking most of the binaries from the Arch repo http://pkgbuild.com/~flexiondotorg/m...al/1.9/x86_64/ . I just copied over the binaries into debian packages to get started, then hacked and custom built three packages so far. The panel, the old and separate network-manager-gnome package, and Ubuntu's indicator-cpufreq applet all got a line of code added to attach a name to their GtkMenu widgets so they could be singled out for custom theming. For instance, this line went into network-manager-gnome's source code into applet.c as line 1345:
gtk_widget_set_name(menu, "nm-menu");
That let me specify .menu#nm-menu in the list of panel widgets to get the transparent black menus with grey borders and round corners, while the application menus remain original UbuntuStudio grey.
Mate-media is refusing to build for me, yet somehow the Arch folks have built it. I The volume control in it is hardcoded to use the theme background color, perhaps I could fire it up from a script with a separate .css file until this will build so I can modify it. Right now the volume control is the biggest panel widget inconsistancy, along with the battery-status applet from the mate-applets package which I have yet to custom build. The hacked tray applets work and follow their themes in any DE, though when compositing is not used transparency reverts to solid black.
I've now got the panel menus, most of the right-click menus, and several tray applets all with GNOME style transparent black menus. That has allowed me to stop using cairo-dock for the tray and applets. After weeks of work I finally found the key last night to making popup menus tranparent: in GTK3 css theming, you can specify GtkWindow.popup and theme only those windows with a transparent background! Until then I had either solid color menus with square corners or black edges in many application windows that do not fill their top level windows. The main menubar was the one thing in which transparency was easy, because a special style class was already specified for it.
Comment