Page 1 of 2 12 LastLast
Results 1 to 10 of 20

Thread: Making sense of Linux/Ubuntu desktop systems

  1. #1
    Join Date
    Jun 2013
    Beans
    18

    Making sense of Linux/Ubuntu desktop systems

    X11
    Nautilus
    Compiz
    gtk
    gnome
    unity
    ..


    What the heck am I using in Ubuntu? All? What role does every one of those serve? I'm trying to make sense of all these terms and how the windowing system is built up.

  2. #2
    Join Date
    Apr 2008
    Location
    LOCATION=/dev/random
    Beans
    5,767
    Distro
    Ubuntu Development Release

    Re: Making sense of Linux/Ubuntu desktop systems

    Cheesemill

  3. #3
    Join Date
    Jun 2013
    Beans
    18

    Re: Making sense of Linux/Ubuntu desktop systems

    Still very confusing. I have no idea how everything works together. I have Ubuntu 13.04 desktop default setup, what am I using and how does it work together? How is this layered?

  4. #4
    Join Date
    Nov 2007
    Location
    London, England
    Beans
    7,698

    Re: Making sense of Linux/Ubuntu desktop systems

    OK, I'll have a stab:

    X11:
    The low-level graphics driver library. I think it provides functions allowing you to draw rectangles, circles etc. It may also have a basic ability to create a window to draw the graphics in. What is does not have is a window manager.

    Window manager:
    Without a running window manager, you can't move or resize windows at all: each window appears top-left and hides previous windows. The window manager provides the intelligence to move and resize windows according to mouse or keyboard input. I think it's the window manager that draws the borders and title round the windows too.

    Desktop:
    A Desktop adds to the window manager by showing widgets like program launchers, menus, wallpaper, clock and so-on on the screeen. It is this that really provides the look and feel to the GUI.

    Unity:
    Unity is one of the available window managers/desktops. Actually, I think Unity is a desktop, and I don't know what window manager it uses underneath.

    Gnome:
    Another desktop. There are gnome2 and gnome3 at the moment. gnome2 is largely abandoned by the gnome community in favour of gnome3 which looks completely different. Plenty of room for which-is-best arguments. KDE, XFCE and LXDE are other competing desktops, each with a very different look and feel.

    Nautilus:
    A file manager, like the windows explorer. Written by the gnome people. Use it to look in directories, drag/drop/open/delete files. I think some of its ability to display an icon view of a folder is sometimes used by the gnome desktops to put icons from the Desktop directory on the screen just in front of the wallpaper.

    Compiz:
    An extra plugin that can add eye candy to the display. I guess it classes as a window manager. It can make windows disappear in a burst of flame when you close them, or wobble like jelly as you drag them around. It can also do the desktop cube where the whole screen seems to be on the side of a cube that rotates to show you a new face when you change desktops. http://www.youtube.com/watch?v=de3eiwKqnUs

    GTK:
    Gnome ToolKit. There are versions 2 and 3 still around. Software library full of utilities for drawing widgets like buttons, checkboxes, sliders etc. These are used by many programs. Programs using these toolkits to draw their widgets will all look very consistent when running on a gnome desktop but mak look slightly out-of-place when running on other desktops such as KDE. They seem to look fine to me running under XFCE. There are several other toolkits out there, notabbly the KDE one but GTK is probably the most popular.

    With a default recent Ubuntu, you will be using Unity desktop, don't-know window manager, layered over X11 graphical drivers. Nautilus will be your file explorer. Most of the applications installed will be using GTK buttons and sliders. You will not be using compiz.

    I probably have a lot wrong and will probably get a lot of corrections. But I hope that gives you a start, anyway.
    Last edited by The Cog; June 25th, 2013 at 01:01 PM.

  5. #5
    Join Date
    Jun 2010
    Location
    London, England
    Beans
    Hidden!
    Distro
    Ubuntu Development Release

    Re: Making sense of Linux/Ubuntu desktop systems

    To put it simply. Ubuntu is not an operating system it is a Linux distribution. The Gnu/Linux OS is made up of many components, just like the Windows operating system. Whichever Linux distribution you choose, you will find that it is using similar, if not the same, components as the Ubuntu distribution.

    It is a feature of Free and Open Source software, that anyone can take software written by someone else and use it with software written by other people. So, long as they keep to the terms of the licence agreements.

    This is why we speak of the Open Source Community. You should look upon Linux distributions as community-cooperative products with different groups of developers taking responsibility for different parts of the software universe.

    With Linux we get to see more of the underlying components then we do with proprietary operating systems. But strange sounding components are there in proprietary operating systems just the same.

    Look at these strange names as a manifestation of the sense of humour of open source developers.

    Regards.
    It is a machine. It is more stupid than we are. It will not stop us from doing stupid things.
    Ubuntu user #33,200. Linux user #530,530


  6. #6
    Join Date
    Jun 2013
    Beans
    18

    Re: Making sense of Linux/Ubuntu desktop systems

    I've been around long enough to know what Linux is, was using slackware with x11 back in 1996, but only for a short while as it was useless. So been in windows ever since.

    But recently started using it again for the desktop and I'm wondering how all these different parts fit together to bring me this windowing system that I am using. I'm interested because I'm a programmer, with emphasize on user interface design and graphics programming (opengl and such).
    I hear terms as x11, compiz, unity, gnome, gtk(+), but don't know who is doing what, who is providing me with this and that, drawing those lines or those buttons. Would be interesting to see some diagram or flowchart or whatever.


    I'm just trying to understand the current state of affairs in the windowing system for linux. It seems to me there are a lot of libraries out there and variations/distros that have a different desktop. There's a lot of work being put into bunch of mediocre alternatives, but little work into making a proper desktop environment. I think it's kinda sad.

    Alright

  7. #7
    Join Date
    Dec 2007
    Beans
    12,521

    Re: Making sense of Linux/Ubuntu desktop systems

    I think people here have made a decent attempt to explain things

  8. #8
    Join Date
    Nov 2008
    Location
    Boston MetroWest
    Beans
    16,326

    Re: Making sense of Linux/Ubuntu desktop systems

    Quote Originally Posted by argvar View Post
    I'm just trying to understand the current state of affairs in the windowing system for linux. It seems to me there are a lot of libraries out there and variations/distros that have a different desktop. There's a lot of work being put into bunch of mediocre alternatives, but little work into making a proper desktop environment. I think it's kinda sad.
    It's also pretty uninformed. I have used KDE for years and do not consider it "mediocre" in any way. The vanilla Ubuntu desktop has undergone a lot of changes in the past couple of years occasioned by the transition to GNOME3 and the adoption of Unity. KDE is built on Qt which continues to be maintained even after it was abandoned by Nokia when that firm became the phone division of Microsoft. As a developer you might want to read this: http://qt.digia.com/.

    KDE is often accused of being "bloated," but that's hardly the case today, especially on modern hardware.

    Yes there are lots of different distros out there, but the mainstream ones like Fedora, Ubuntu, and SuSE use either a GNOME derivative or a version of KDE. XFCE and LXDE are nice for machines with weaker hardware, but they command a much smaller share of Linux desktops than KDE or GNOME derivatives.

    Furthermore there are lots of us who use Linux as a server operating system. In that setting the graphical desktop matters hardly at all. When managing servers, I spend most of my time at the command prompt in an SSH session.
    If you ask for help, do not abandon your request. Please have the courtesy to check for responses and thank the people who helped you.

    Blog · Linode System Administration Guides · Android Apps for Ubuntu Users

  9. #9
    Join Date
    Dec 2007
    Beans
    12,521

    Re: Making sense of Linux/Ubuntu desktop systems

    http://pclosmag.com/index.html has a series of articles meant for those migrating from Windows. For example, see page 7 in this pdf: http://pclosmag.com/download.php?f=2013-06.pdf

    Oops! The second link should be http://pclosmag.com/download.php?f=2013-04.pdf
    Last edited by vasa1; June 25th, 2013 at 05:22 PM.

  10. #10
    Join Date
    Jun 2011
    Location
    United Kingdom
    Beans
    Hidden!
    Distro
    Lubuntu Development Release

    Re: Making sense of Linux/Ubuntu desktop systems

    OK, I'll have a stab:
    It's an impressive stab. I hope you won't mind me making a few points for information's sake.

    X11:
    The low-level graphics driver library. I think it provides functions allowing you to draw rectangles, circles etc. It may also have a basic ability to create a window to draw the graphics in. What is does not have is a window manager.
    X11 is an implementation of an X_Window_System, which is a standard that allows seamless operation of graphical programs across any system that implements X. It provides networking capabilities, windowing (keeping track of window attributes), hardware devices (what exactly should typing on a keyboard do in a graphical world? A mouse?), and optionally extended features such as hardware acceleration.
    However, X itself does not control how windows are displayed or managed. That is the job of the window manager.

    Window manager:
    Without a running window manager, you can't move or resize windows at all: each window appears top-left and hides previous windows. The window manager provides the intelligence to move and resize windows according to mouse or keyboard input. I think it's the window manager that draws the borders and title round the windows too.
    Window managers are programs that run on top of X11 and control how the windows are presented and managed. For example, KWin, a window manager, produces an entirely different look and feel to, say ratpoison, another window manager. Window managers are arguably the most visible part of the stack that you mention.

    Unity:
    Unity is one of the available window managers/desktops. Actually, I think Unity is a desktop, and I don't know what window manager it uses underneath.
    Unity is unusual in that is both a window manager and a desktop. Usually, these parts are split, but the unity program draws both the interface and the windows. (See 'not using compiz')

    Compiz:
    An extra plugin that can add eye candy to the display. I guess it classes as a window manager. It can make windows disappear in a burst of flame when you close them, or wobble like jelly as you drag them around. It can also do the desktop cube where the whole screen seems to be on the side of a cube that rotates to show you a new face when you change desktops. http://www.youtube.com/watch?v=de3eiwKqnUs
    Compiz is a compositing window manager. Compositing window managers are quite different internally from other window managers. 'Normal' window managers manage where the applications draw pixels to screen directly, by telling them where in memory to draw to. Compositing window managers tell applications to draw their pixels into a buffer, then the window manager itself handles the drawing of the windows to the screen.
    This allows the window manager to perform effects such as 'wobbling' windows when they are moved, or the famous 'desktop cube', simply by manipulating the display they themselves are drawing, which is obviously not possible with conventional indow managers.

    GTK:

    Gnome ToolKit. There are versions 2 and 3 still around. Software library full of utilities for drawing widgets like buttons, checkboxes, sliders etc. These are used by many programs. Programs using these toolkits to draw their widgets will all look very consistent when running on a gnome desktop but mak look slightly out-of-place when running on other desktops such as KDE. They seem to look fine to me running under XFCE. There are several other toolkits out there, notabbly the KDE one but GTK is probably the most popular.
    The 'KDE one' is known as Qt.

    You will not be using compiz.
    Slightly incorrect. Unity is (I believe, Unity development hops about a bit) implemented as a somewhat monolithic Compiz plugin. So really, you are using Compiz, but Unity does a lot of its own things, so it's very difficult to tell that you are in fact using Compiz. Compiz, however, does draw the windows, but the two have become so intertwined that running Unity without Compiz is impossible and Compiz without Unity is radically different.

    I probably have a lot wrong
    Not at all! Just my inner pedant grumbling as per usual. Hope I got it right.
    Last edited by MG&TL; June 25th, 2013 at 09:24 PM.

Page 1 of 2 12 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •