Unity? (was: What's your favorite distro, and why?)

Levi Pearson levipearson at gmail.com
Mon Dec 16 18:51:43 MST 2013

On Mon, Dec 16, 2013 at 5:13 PM, Michael Torrie <torriem at gmail.com> wrote:
> On 12/16/2013 12:28 PM, Lonnie Olson wrote:
>> On Wed, Dec 11, 2013 at 4:23 PM, Olli Ries <olli at olli-ries.com> wrote:
>>> Mir does have nothing to do with Unity
>> Correct.  This thread has diverged from the subject of Unity to
>> general Canonical bashing.
> I disagree with your assessment.  Mir might not have anything to do with
> Unity now, but in the future the stated goal is to get Unity running
> directly on Mir, allowing Canonical to throw out the X11 layer
> completely and move to supporting X11 in a secondary way, like OS X
> does.  Unity and Mir will then become the platform, much like OS X's
> platform is defined by Quartz and Cocoa.  I expect Ubuntu apps to be
> Mir-native, and to have tight tie-ins with the Unity desktop.  Unity
> will be Mir's interface to the world.  Hence they will in fact become
> related rather closely, unless Canonical decides to switch to Wayland,
> which is very possible given little support from Nvidia, ATI, or Intel
> for Mir.
> I don't say all this to bash Ubuntu or even call it a bad thing.  I'm
> just pointing out things as I see them.

Yes, the plan is indeed for Mir to be the *default* underlying display
server for all platforms that Unity runs on.  But a display server
just draws windows and routes input events.  This is just not that big
of a deal.  It's trivial to support, unless you are doing stuff with
raw X11 calls.  And with XMir, which provides an X11 interface,
there's no issue at all.  It's not as if X itself does much rendering
for modern GUI toolkits.  It mostly just provides window buffers and
allows programs to do direct rendering to the video hardware.  It's
not like Mir is a whole new graphics API; it's just an efficient way
to get window bitmaps on the screen.

The bigger incompatibilities in Unity are *already here*, and they're
the same sorts of incompatibilities that already exist between Gnome,
KDE, LXDE, Enlightenment, etc.  They're the panel widgets, the pop-up
notification widgets, etc. And the portability stuff for these things
is already done.  It's another desktop shell, and creating new ones is
a time-honored Linux tradition!

>> Unity is just another desktop environment, heavily based on Gnome3
>> (IMHO), but different in many important ways.  Adding yet another
>> desktop environment to the already large list is not that
>> controversial.  It's really a personal preference thing.  I really
>> like Gnome3, but I like Unity a little better.  That's just my
>> opinion.
> You are correct about Unity's origins, but you can no longer say Unity
> has anything to do with Gnome 3. In fact Unity is moving development to
> Qt.  Unity 2D, which made a brief appearance a couple of years ago was
> all Qt.

The bits of Unity that are going to Qt are just the shell widgets.
They are currently (as of Unity 7 on the desktop) implemented with a
custom toolkit that renders to OpenGL.  There's a whole lot of
underlying Gnome plumbing still in use, and I imagine it will continue
to be used on the desktop.  It's like swapping out your window
manager, but keeping your session manager.  Who cares what widget
toolkit the window manager uses?  It's mostly just drawing window
decorations, which are custom anyway.

>> Mir is a display server (basically).  Olli covered this description
>> quite well.
> Yes I understand that very well.  But if Ubuntu is the only distribution
> using Mir, and if Unity only runs on Mir, then at that point the
> difference you mention become moot.  Unity on Ubuntu no longer will be
> just another desktop option. It will simply be *the* Ubuntu desktop,
> like Quartz/Finder/Dock is on OS X.
> The end result is that someone will only target Mir in their application
> if they want to run on Ubuntu, and if they want to have a nice,
> integrated app on Ubuntu, they will tie into and use Unity.  At that
> point, for better or worse, Ubuntu becomes its own complete platform,
> like Android, or OS X.  At present I don't have any feelings one way or
> the other about this. As long as good toolkits exist that abstract the
> backends, then supporting Ubuntu is no more difficult than adding a
> build target in Qt.  But this is the point at which Ubuntu starts to
> diverge from "Linux."  That's all I was trying to say.

Again, there's no indication that 'targeting Mir' will require
anything other than linking to a toolkit version that knows how to
talk to it, or even just running XMir.  And I strongly suspect that
Ubuntu's desktop distribution will continue to rely heavily upon Gnome
infrastructure for session management and applications, even if the
mobile apps they provide use the same Qt foundations that the Unity
shell does.  But even if they *did* provide a completely custom set of
desktop applications... what do you have to smoke to think that this
makes it diverge from "Linux"?  As if there were ever some kind of
coherent GUI story across Linux distributions!  Seriously, I want
some, it must be really good.

>> Woefully incomplete list of examples of other arguments over competing options:
>> GTK vs. QT
>> Gnome vs. KDE
>> Gnome3 vs. Gnome2 (hence spawning even more: Cinnamon/Mate)
>> glibc vs ulibc
>> Upstart vs systemd vs SysV
>> etc. etc.
> I think this comparison is not accurate because all of these things you
> mention can more or less coexist and be swapped back and forth
> interchangeably.  When Ubuntu completes the transition to Mir, Ubuntu
> software and the Unity desktop will, in its binary form, be Ubuntu-only.
>  Unity will be Ubuntu-only, since it's doubtful other distros will
> support or ship Mir.  Software written for Ubuntu will be Ubuntu-only as
> most other distros will be running Wayland.  So I guess
> I stand by my opinion that Ubuntu is diverging from the rest of the
> Linux world and is heading off in its own direction.  Maybe my tone
> implied otherwise, but I'm not stating whether this is a good or bad
> thing--I simply don't know.

Pure nonsense.  Wayland and Mir are *not* huge game-changing things.
You don't have to do anything special for applications to support
them.  Only low-level toolkit code will even know the difference, and
the X-compatibility layer will be there and fairly transparent
everywhere.  Wayland and Mir will probably cross-pollinate a bit, and
maybe one of them will die and the other will carry on, or maybe
they'll both go away and something else will show up.  In any case,
Gnome will continue to be Gnome, KDE will be KDE, and Unity will be
Unity.  The end-user will get a slightly smoother desktop experience.
Life will go on, and people will find something else to blindly spread
FUD about.  None of the Linux distros will suddenly switch kernels and
cease being "Linux".


More information about the PLUG mailing list