Linux - GeneralThis Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
X Window or XFree86 is the program that allows other programs to draw in graphical mode. It allows them to use mouse, screen, also controls windows. But, X Window alone doesn't bring you GUI. All menus, window decorations and so on are prepared by window managers or desktop environments. They run over X Window, using it for many tasks.
Every distro with a GUI uses something like XFree86. Some use other more experimental programs that serve the same function. But XFree86 is pretty universal at the moment.
A desktop environment *contains* a window manager and a window manager is all you really need (IMO) but they basically include an entire development suite - their own special libraries and what not - and people build tools specifically for that IDE. Things come with them like GUI config tools and integrated HTML help and various Windows-ish things. Window managers just basically give you a way to launch your apps and control them (rollup, iconize, push 'em around) once launched. The main IDEs are KDE and Gnome, along with XFce trying to get there - and Enlightenment wants to be. Other smaller projects. And there's zillions of WMs. Fluxbox is the most popular of those, probably - certainly at LQ. Also WindowMaker and Ice and lots of others. KDE's window manager is KWin I think, and Gnome's may be Sawfish or Metacity or something - WMs that almost nobody uses if they *don't* use KDE or Gnome. But it's just a component and you can make other WMs run with the IDE in some cases - you can't run two WMs or IDEs on the same display, though. But a WM in an IDE, yeah.
xfree86 is a distribution of the GUI, it contains the x server, the standard x libs and various config tools, programs, and other stuff,
the X Windowing System is a standard thought of back in like 1987(? i think I'm wrong here, but around this time), its had additions and stuff, right now X11 is at revision 6 so its sometimes called X11R6, X11 it self is the protocol X uses to communicate between the server and the libs (this makes it possible to have network transparently, meaning that you can run the server on a different computer, and see the program on the computer your at,
the X server is not supposed to, and does not (cause X11 says so) supply a way to manage were windows are, and such, but it does provide for the tools to do the stuff, this is were window managers come in, they are just regular clients are far as the xserver is concerned (so you can have more then 1 running i think, but it would probably crash as they might get into a fight and bye bye whatever you was doing), the windows managers use the tools provided by the x libs to say were, and if a window should go here, or there, it usually offers an interface so people can drag Windows around, close them, minimize/iconify/shade them..
Think like this: There is the basic Linux system (command line). Then X runs on top of that to give the capability of a GUI. Then a window manager or desktop environment runs on top of X to actually take advantage of X and do something with an actual GUI. That's why you can have different window managers - because they're not integrated into X so you can easily change which one you use.
There was originally a version of X Window for Intel chips, that was called X386. Some people thought that there ought to be a free version of X for Intel chips, so they started the XFree86 project. Cute pun. XFree86 is used as the basis of almost all GUIs for Linux-based systems.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.