Announcement

Collapse
No announcement yet.

MATE Desktop 1.10 Has GObject Introspection, Other Changes

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • MATE Desktop 1.10 Has GObject Introspection, Other Changes

    Phoronix: MATE Desktop 1.10 Has GObject Introspection, Other Changes

    For those still living in the GNOME 2 days, the MATE Desktop 1.10 has arrived for Easter...

    http://www.phoronix.com/scan.php?pag...-1.10-Released

  • #2
    Originally posted by phoronix View Post
    Phoronix: MATE Desktop 1.10 Has GObject Introspection, Other Changes

    For those still living in the GNOME 2 days, the MATE Desktop 1.10 has arrived for Easter...

    http://www.phoronix.com/scan.php?pag...-1.10-Released
    I'm not usually one to compare DEs past "use what you like", but for real... if MATE is ported to GTK+3, what's the difference between it and Cinnamon? The biggest difference between the two is the toolkit used. Once MATE upgrades, only very minor differences arise.
    Hell, they used to be developed by the same people ffs. They might even still be, I haven't been keeping up with MATE that much.

    Comment


    • #3
      Originally posted by Daktyl198 View Post
      I'm not usually one to compare DEs past "use what you like", but for real... if MATE is ported to GTK+3, what's the difference between it and Cinnamon? The biggest difference between the two is the toolkit used. Once MATE upgrades, only very minor differences arise.
      Hell, they used to be developed by the same people ffs. They might even still be, I haven't been keeping up with MATE that much.
      cinnamon is __much__ more resource heavy.

      don't believe me?
      cinnamon is scripted with javascript.

      Comment


      • #4
        systemd dependency?

        I realize that GTK3 and Gnome3 are not one in the same, but I know the latter is now systemd dependent. Just wondering: does bringing in GTK3 create any systemd dependencies for MATE, or can it remain systemd neutral?

        Please note: I'm not asking this question to trigger yet another round of debate over systemd. I'd just like to know if MATE can remain outside of the systemd issue while incorporating GTK3.

        Another question while I'm at it: will dependence on GTK3 affect the way MATE performs, or will it force changes in the interface?

        Comment


        • #5
          Originally posted by Candide View Post
          I realize that GTK3 and Gnome3 are not one in the same, but I know the latter is now systemd dependent. Just wondering: does bringing in GTK3 create any systemd dependencies for MATE, or can it remain systemd neutral?

          Please note: I'm not asking this question to trigger yet another round of debate over systemd. I'd just like to know if MATE can remain outside of the systemd issue while incorporating GTK3.

          Another question while I'm at it: will dependence on GTK3 affect the way MATE performs, or will it force changes in the interface?
          From what I can see no, systemd won't be required using just GTK3. However, if they choose to start using the systemd interfaces that have some really nice benefits, like logind, then that would put systemd back in the picture or at least those interfaces.

          As to whether the change will force them to change their GUI: not technically. They are still free to code traditional menu and toolbar based GUI's with normal window decorations, there are a few widgets that have changed and a few added but overall the interface should remain quite viable to code. Themeing however is going to be quite different as they have gone from the format they used in GTK2 to CSS which is in a lot of ways easier and nicer to code in.

          Comment


          • #6
            MATE with Gtk3 vs Cinnamon

            MATE compiled with Gtk3 is NOT Cinnamon, not even close! I've got both installed and they are quite different. I've been running (and hacking) MATE 1.9 for the past month. Cinnamon is probably the heaviest DE out there, though also perhaps the easiest to use and can be one of the prettiest. Like GNOME the shell theme can be different from the application theme. GNOME 3 has gotten lighter lately, that "UI" directory in GNOME full of .js files is now empty. On the other hand, they just dumped that lovely shell theme.

            For me, with Gtk3 and a few of my own hacks, MATE is quickly catching up to all the best things about Cinnamon. Better yet, the things I did not like about Cinnamon are completely absent. The worst of those is all that heavy Javascript, just enough faster than Python that it tempted GNOME to write a DE in it. If Cinnamon were ported back to C, it would still differ from MATE in other ways. Cinnamon depends on Open GL, either on the GPU or in LLVMpipe. MATE does not depend on OpenGL or even on compositing. You can run MATE with or without compositing, or replace Marco with Compiz to make the most of compositing if you have OpenGL installed. Compiz will run on pre-OpenGL 2.0 setups, Cinnamon (forked from GNOME 3) requires OpenGL 2.0, while MATE with Marco or only requires enough video card to handle your screen resolution, about 8M video RAM for a 1080p monitor. One Cinnamon feature missing in Compiz: the ability to have the panel switcher treat desktops as being in a line, yet the expo plugin display them as a grid. I use a top-left "hot corner" to trigger Expo but get the 4 desktops I use in a single line. Compiz had the ability to unredirect full screen windows for a while, Cinnamon caught up with that last Fall.

            One way MATE differs visually from Cinnamon with either version of GTK is that most of the panel theme follows the Gtk theme used by applications, even if the panel itself is set for a different color., if it is, some menus follow the application them and others the panel theme. With most Gtk2 themes the main menu follows the application theme. Panel menu theme consistancy and tray applet consistancy was always an issue in GNOME 2 and still is in MATE. In Gtk3 the main menu follows the "mate-panel-menu-bar" theme and can easily be themed to follow the panel theme, might be possible to do that in Gtk2 as well. To fix the others requires modification of the mate-panel source code.

            Speaking of menus, the original MATE menu forked over from GNOME 2 opens very fast on modern machines. The Cinnamon menu used to be incredibly slow, now it's not so bad. GNOME had the same problem. In both cases the menu isssue made them almost unusable on an Intel Atom netbook or a Pentium 4. The newer "Mint menu" later forked as "mate menu" is themable from a GUI and has more features, but again is scripted and opens much more slowly. In fact, the old GNOME 2 menu opened faster on a 450MHZ Pentium III than the Cinnamon menu opens on the fastest machine I have, a 4.5 GHZ AMD bulldozer box! That's 14 years of processor speed gains totally wiped out by heavier code so far as menu responsiveness is concerned. Even cairo-dock (which is largely compiled) is slower to respond than MATE. Only ultralight DE's like IceWM are faster than MATE. XFCE is said to be gaining weight, so to speak but I have not done a speed test for things like menu reponsiveness. The old GNOME 2 Nautilus reponsiveness issue may have actually been nothng more than the filebrowser being unable to display items faster than the hard drive can find them, and circa 2000 hard drives were slow.

            Last month I finally managed to install MATE compiled with Gtk3, at first by packing experimental Arch binaries into debs and installing them. That opened up a world of theming options (I maintain my own Gtk and icon themes) and let me drop cairo-dock. Still, all popup menus were alike, whether from the panel or from an app. The one big exception was I was finally sucessful iny theming the main menu. No more need to run a 3ed party menu written in python (which should be called TURTLE!) just to get a pretty transparent main menu with rounded corners. The only search function in the menu remain the link in "places" to mate-search-tool, (no app search by partial name/function) but that's never been an issue for me. That kind of function still requires a 3ed party menu, and to my knowledge none of them have been ported to Gtk3 yet.

            This is still MATE, the menus and applets are compiled C code and open lightning fast instead of taking a second or more like in newer DE's. Any layout supported by GNOME 2 can be set up the same way it was always done, unlike that "gnome-panel" distributed by GNOME as their deprecated fallback session that had all the configurability features removed. There is the "custom menu bar" and the "main menu" button, all the applets from the old days including the Wanda the Fish still exist. There are a few applets that are hard to build in Gtk3, and to date I have not been able to get a build of mate-media to complete, though I've got working prebuilt binaries for it from Arch. In all my mate-applets builds with Gtk3 the cpufreq applet's menu won't open when I build the package (again works from arch), but I use the "indicator-cpufreq" Ubuntu applet in the tray anyway as it is cross-DE and works in all of them. The panel itself builds just fine with Gtk3, letting me play with all those theme support hacks-and a menu position bugfix.

            MATE with Gtk3 is still a work in progress and still a bit buggy. I've got a partial fix for the bug in which menus from a bottom panel open empty that works but no way to offer it upstream except having posted it to the MATE forums. The issue is that Gtk3 positions menus from their tops-and from a bottom panel those are all different. The menu shells open correctly on all menus, but on popup menus called by applet.c, the shells are empty with the menu top left corner at the menushell bottom left corner! You can scroll them up so they are not unusable but a slow nuisance. This is a menu position bug, I went into applet.c and repositioned them to make them open fully loaded but my fix still has minor issues for a side panel and is hardcoded for the height of my main (button) menu.

            Now for the ugly part: MATE compiled with gtk3 becomes subject to unpredictable upstream Gtk3 changes. This problem has been so bad for so many people that I would not be surprised to see Gtk2, Gtk3, or even both of them forked at "MTK." In fact, until I managed to reverse the effects of a Gtk3.16 popup menu bug that breaks transparency support when not using Mutter or GNOME(details in another of my posts on this), I wondered if I was going to have to do that myself, using the Gtk3.14 I wrote my earlier hacks to build and run with. My hacked mate-panel with support from transparency in panel and panel menu themes has been GNOME-proofed for now, but what else will they break with Gtk3.18 or 3.20? By the time MATE 1.12 comes out with full Gtk3 support and some distros using Gtk3 be default, Gtk3 will have changed again, forcing another round of Gtk3 debugging and unbreaking things.,

            Cinnamon predates the wide distribution of MATE, the Linux Mint team forked GNOME 3 when GNOME kept breaking the extension interface that what had been called "Mint Gnome Shell Extensions" needed to keep the DE usable in the way GNOME 2 was used. Cinnamon works a lot like GNOME 2, but uses the heavier GNOME 3 technology to do it. If you want GNOME 2 functionality, why not use GNOME 2's lighter code? Thus the rapid ascent of MATE.
            Last edited by Luke; 04-06-2015, 02:49 AM.

            Comment


            • #7
              One of the important thing it lacks is the hardware compositor, metacity is just old.

              Comment


              • #8
                I've wrestled with GObject Introspection when trying to cross-compile systems because it's a total pig in that regard but I still have no idea what it actually does. It's probably some low level thing I don't need to care about but I couldn't even find any concrete answer for what features you'd lose if you turned it off. Turning it off is an option in Gentoo, currently very few packages strictly require it.

                Comment


                • #9
                  Originally posted by Luke View Post
                  ... Only ultralight DE's like IceWM are faster than MATE. ...
                  IceWM is not a DE. IceWM is a (stacking) Window Manager.

                  What about LXDE/LXQt?

                  Comment


                  • #10
                    Originally posted by magika View Post
                    One of the important thing it lacks is the hardware compositor, metacity is just old.
                    They could always use mutter, as gnome-shell does.

                    Comment

                    Working...
                    X