X Power Tools
stoolpigeon writes "The X Window System has been around for over twenty years and is the display system for an incredibly wide range of operating systems. With the number of Linux users growing, there are more people working with X than ever before. Most modern desktop environments provide user friendly interfaces that make modifying X rather simple. There is not a need to dig into config files and settings as in the past. For those environments without such tools or for the user who loves to dig deep into their environment, this book can be a simple way to understand how X works and how to tweak it in any number of ways. If you want things that 'just work' and have no interest in digging around below the surface this book is not for you. On the other hand, if you think the best thing to do with a shiny new tool is to take it apart, well "X Power Tools" by Chris Tyler may be just for you." Read on for the rest of JR's thoughts on this book.
X Power Tools
author
Chris Tyler
pages
254
publisher
O'Reilly Media, Inc.
rating
9/10
reviewer
JR Peck
ISBN
0-596-10195-3
summary
The author, Chris Tyler, is a professor at Seneca College in Toronto as well as a programmer and Linux user. His first book published by O'Reilly was "Fedora Linux: A Complete Guide to Red Hat's Community Distribution", published in 2006. He cites the growth in X users, combined with active development and the lack of existing books that address X as the motivation for writing "X Power Tools."
X is the windowing system on a wide range of Unix and Unix like systems. Chris is obviously most familiar with Linux and so the material is heavily Linux oriented. This is most apparent when the book deals with Session Managers, Desktop Environments and Window Managers. The material focuses on Gnome, KDE and Xfce and their associated components in regards to X. For the Linux user this could be a valuable resource.
When I've had issues in working with X locally and over the network, I've found that while what I need is available on the web, getting just what I need can be very labor intensive at times. Usually just what I want is spread across tutorials, on-line man pages and forum posts. Sorting out what applies to my situation can be especially difficult when I'm not even sure just how things work for my setup. Chris makes this kind of guessing unnecessary and provides the locations and function of key files. He also spells out how the most important files and tools can be best used.
For the sysadmin on another platform, these Linux specific sections are not going to be much help. Most of the book though, deals with X itself. I've already loaned my copy to one of our AIX admins more than once and I think he plans on picking up a copy of his own.
When Gnome and KDE provide an interface for modifying or customizing X functionality, the book gives at least the name of the program and sometimes screen shots and explanations of how the tool works. This is always after an illustration of how to get the job done with the tools that are a part of X itself. From fonts to keyboard layouts, multi-display to kiosks, everything required is laid out in straight forward terms.
For me, as a Fedora user, this means that having read this book I approach my work environment with a new level of confidence. Behaviors that used to puzzle me, now make complete sense. Quirks that bothered me, no longer need to be tolerated as I know have the tools to get things working just the way I want, rather than using defaults.
The book has just come out, so it was being written before the release of KDE 4. I've looked through the documentation and I don't think any of the changes to programs like KDM or KWin make the information in the book out of date. In fact, according to the KWin release notes, when discussing KWins new compositing support, "...manual configuration of X may be required for proper results..." So if you are a KDE user that likes to live on the edge, this book may come in handy.
O'Reilly says that their "Power Tool" books are comprised of a series of stand-alone articles that are cross-referenced to one another. To be honest, it didn't feel much different from reading any other tech book. Topics flowed naturally and the articles are analogous to sections that divide up chapters in other books. One nice navigation feature is that page numbers are on the bottom of the pages while chapter and article numbers are at the top corner in a decimal notations. For example at the top of page 58 there is a grey square containing the number 3.13 which means that it is the 13th article in chapter 3.
The book has a thorough index. It also comes with 45 days free access to an electronic version through O'Reilly Safari.
For me the only real weakness of the book is that I would like to have seen more information on working with X on Unix. When reference is made to specific implementation of X it is almost always in regards to Linux. I wouldn't want to lose that, but I think a mixed environment of Unix, Linux and Windows is more the rule than the exception today. It would be more work to include other operating systems, but it would have also made the book much more valuable.
All tech books face the danger of becoming quickly useless as progress marches forward. X is actively being developed, but at the same time, looking back on its history I think this book will be useful for sysadmin and user for some time to come.
You can purchase X Power Tools from amazon.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
X is the windowing system on a wide range of Unix and Unix like systems. Chris is obviously most familiar with Linux and so the material is heavily Linux oriented. This is most apparent when the book deals with Session Managers, Desktop Environments and Window Managers. The material focuses on Gnome, KDE and Xfce and their associated components in regards to X. For the Linux user this could be a valuable resource.
When I've had issues in working with X locally and over the network, I've found that while what I need is available on the web, getting just what I need can be very labor intensive at times. Usually just what I want is spread across tutorials, on-line man pages and forum posts. Sorting out what applies to my situation can be especially difficult when I'm not even sure just how things work for my setup. Chris makes this kind of guessing unnecessary and provides the locations and function of key files. He also spells out how the most important files and tools can be best used.
For the sysadmin on another platform, these Linux specific sections are not going to be much help. Most of the book though, deals with X itself. I've already loaned my copy to one of our AIX admins more than once and I think he plans on picking up a copy of his own.
When Gnome and KDE provide an interface for modifying or customizing X functionality, the book gives at least the name of the program and sometimes screen shots and explanations of how the tool works. This is always after an illustration of how to get the job done with the tools that are a part of X itself. From fonts to keyboard layouts, multi-display to kiosks, everything required is laid out in straight forward terms.
For me, as a Fedora user, this means that having read this book I approach my work environment with a new level of confidence. Behaviors that used to puzzle me, now make complete sense. Quirks that bothered me, no longer need to be tolerated as I know have the tools to get things working just the way I want, rather than using defaults.
The book has just come out, so it was being written before the release of KDE 4. I've looked through the documentation and I don't think any of the changes to programs like KDM or KWin make the information in the book out of date. In fact, according to the KWin release notes, when discussing KWins new compositing support, "...manual configuration of X may be required for proper results..." So if you are a KDE user that likes to live on the edge, this book may come in handy.
O'Reilly says that their "Power Tool" books are comprised of a series of stand-alone articles that are cross-referenced to one another. To be honest, it didn't feel much different from reading any other tech book. Topics flowed naturally and the articles are analogous to sections that divide up chapters in other books. One nice navigation feature is that page numbers are on the bottom of the pages while chapter and article numbers are at the top corner in a decimal notations. For example at the top of page 58 there is a grey square containing the number 3.13 which means that it is the 13th article in chapter 3.
The book has a thorough index. It also comes with 45 days free access to an electronic version through O'Reilly Safari.
For me the only real weakness of the book is that I would like to have seen more information on working with X on Unix. When reference is made to specific implementation of X it is almost always in regards to Linux. I wouldn't want to lose that, but I think a mixed environment of Unix, Linux and Windows is more the rule than the exception today. It would be more work to include other operating systems, but it would have also made the book much more valuable.
All tech books face the danger of becoming quickly useless as progress marches forward. X is actively being developed, but at the same time, looking back on its history I think this book will be useful for sysadmin and user for some time to come.
You can purchase X Power Tools from amazon.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
I know X is entrenched and all, but really, aren't we all fed up with this dinosaur? A new window system might be a good thing for Linux as a whole.
As long as the program lives on (even as abandonware), so does the technology and the potential for manuals and other HOWTO material. People still buy QBasic By Example (and blogs still rave about it) even though it was unbundled from Windows in Vista (maybe even XP, I'm not sure) and most people (myself included) haven't written a proper program in it for coming up on a decade.
Those using pirated Tinysoft signatures(TM) are a real threat to society and should all be thrown in jail.
How bad can a review be? This provides no useful information, except that the reviewer seems to have liked it a lot.
Nice book but what i was really looking for was "X Window System Power Toys Plus!"
is that it know the hardware it's running on better. You shouldn't need a file to say what resolution your monitor can do for instance; it should just know and keep track of preferences of what resolution you'd prefer maybe.
This isn't a troll; monitors and graphics cards have been able for donkeys years to tell the OS what resolutions and refresh-rates they are capable of for years now and X hasn't caught on.
And that's pretty much my only complaint.
throw new NoSignatureException();
From man xorg.conf, verbatim:
...
VIDEOADAPTOR SECTION
Nobody wants to say how this works. Maybe nobody knows
On the more serious note, Xorg might have some misfeatures and shortcomings - that don't really justify everyone whining there, but, well, it's kind of typical - but the sheer fact that something designed over 20 years ago to operate with hardware and software long forgotten still does its job well and manages to keep up with other windowing systems even when it comes to bells and whistles (Composite, etc.), while being ABI (ABI, mind you, not API) compatible with software that actually is 20 years old, means something. That's one solid piece of engineering, the kind one doesn't see often.
This is Slashdot. Common sense is futile. You will be modded down.
Isn't that one of those oxymoron things like "Military Intelligence".
Engineering is the art of compromise.
XDMCP is one of my favorite features of X. But, getting it set up is such a royal pain in the butt, especially on networks with mixed distros and OSs. It's been a few years since I've had to administer it much, but my only real gripe with X was the time it took getting a good XDMCP environment up and running. Hope there's some help with it included.
I swear to God...I swear to God! That is NOT how you treat your human!
> X is not a window system, it's a display system.
X is the windowing system, metacity/kwin are window managers and Gnome/KDE are desktops. Why do you presume everyone would call it "X Windows" if it wasn't a windowing system?
Then hire (and more importantly pay) a mechanic to fix it. A mechanic doesn't do what he does out of the goodness of his heart and because he likes other people. He wouldn't be able to pay his bills if he did that. You are not entitled to free car service just because you are you, just like you are not entitled to free and open source software changes on your whim.
If you know him personally or if it's a side project or it interests him enough, he may do it for free. That's his choice as to how to spend his time. However, the vast majority of programmers in the open source community think that X works. They aren't interested in pursuing an alternative, at least not for free. I'll bet if you offer to pay their salary, their interest would be piqued. I'll bet if you had the skills to write one on your own, you could do it and attract some mindshare. Now, and this is key, sitting around on Slashdot and bitching about it won't solve the problem.
Do it yourself because you are interested, hire someone else to do it, or accept that the vast majority of open source development is done because it's in the best interests of the person working on a particular project, and right now, the consensus amongst open source developers is that the X Window System works.
If you don't like the software you can try to get the developer to fix it, by sending detailed bug reports or requests for adding some functionality. The developer may, or may not, work on your requests.
But you are NOT entitled to bitch about any of the work done. You are free to not use it, to fix it yourself, to have someone fix it for you however.
If you don't contribute yourself then you may take what is offered or you can leave it alone. But, as parent put so eloquently, SHUT THE FUCK UP if you're only going to whine.
There is no linux version of X. Do you mean XFree86?
Were that I say, pancakes?
that just because the software is old doesn't mean that it is bad. In fact the case is often that old software which has withstood the test of time is often *better* than newer programs.
.... ...
Having said this, X has had a bit of a controversial reputation for a *long* time. One day a number of years ago, I ran fortune and got the ABC's of UNIX:
A is for awk which runs like a snail
B is for biff which reads all your mail
C is for cc as hackers recall
D is for dd, the command that does all
W is for whoami which tells you your name
X is, well, X, of dubious fame
The basic issue is that X has traditionally been riddled with difficult (often nearly useless) error reporting, complex setups, low-level configuration issues which could cause hardware damage with older monitors, and the like. In some cases, documentation can also be a problem.
However, over the last decade or so that I have worked with X (and especially the move from XF86 to X.org), these issues have been greatly reduced. Even when I hack configuration files, I find that things are a lot more pleasant than they used to be and that error messages are almost always more meaningful. Yes, it is still a beast, but it is far better than it used to be. I expect it will continue to get better.
The large question as to a successor is a big one. I am not sure that it is possible to displace X at the moment. However, even if it happens, it will be extremely difficult to fill the entire market that X fills.
LedgerSMB: Open source Accounting/ERP
Jim is one of the original authors of X. Keith is essentially the de facto overlord of the current X.org, although he doesn't play dictator except in rare cases.
As for rendering bottlenecks, they are many and varied and none of them have to do with the network transparency issue. When local clients talk to a local server they do so via local sockets or shared memory, both of which are very fast and impose minimal or no penalties.
What accounts for bottlenecks are things like the inability to do compositing, leading to tearing of windows when they're being dragged. This is fixed by the composite extension and a fast compositing manager, like the one found in compiz.
Another issue is that the old driver architecture (XAA) was geared towards old-style drawings. These days we don't really look at stipple patterns much, so the new driver architecture (EXA) is geared towards solid fills and fast blits for bitmaps instead, which is what you end up doing on a modern desktop anyway. It turns out though that this is very hard to get right and the bugs are still being worked out. I don't think that this is really an issue with X being old so much as that this is just a damned hard problem to get right. It is being worked on (check out Carl Worth's blog for some examples on this particular front) so hopefully things will improve.
Finally, there's the constant bottleneck due to incomplete or inadequate drivers. The new radeonhd, for example, only recently gained 2d acceleration support, and still lacks any sort of 3d accel. This sort of problem prevents X from adequately taking advantage of all the hardware has to offer, so performance can suffer. As a result, you lose the ability to run things like compiz, which address these issues.
Finally, I haven't watched it yet, but I recommend you take a look at Keith Packard's google talk on remaking X. X has been largely rebuilt from the inside over the past several years, and things like Render, RandR, Composite, Damage, Fixes, Input Hotplug, and EXA have really sprung from that initiative. It's wort
"I may not have morals, but I have standards."
Does it talk about how to get the bloat out of X, and perhaps low bandwidth?
Not bashing X as its got its place and is universal, but no one can honestly say its resource friendly.
---- Booth was a patriot ----
Did you know a Miles O'Neal from the early days of X? If so, feel free to drop me a line at MEO at RRU dot COM. Or even if you didn't, what the heck!
Not bashing X as its got its place and is universal, but no one can honestly say its resource friendly.
Are you sure? I've personally used X on these machines:
http://en.wikipedia.org/wiki/SPARCstation
http://en.wikipedia.org/wiki/Intel_80486
http://en.wikipedia.org/wiki/SGI_Indy With accelerated 3D in 1993.
Not to mention a bunch of other machines I can't find convinient references for. Bear in mind that a well written X11 program will still display on those machines (albeit probably missing some modern features).
Perhaps you're including the mapped graphics card memory as part of its memory usage (as top does). It will also happily cache as many pixmaps as it's allowed to. Perhaps you're including that as well.
20 years ago, X was a monster. These days you emulate the machines it ran on then faster in emulation than the old machines ran in hardware.
But if you still really care about the so-called `bloat', then try installing KDrive (part of the recent X11 distributions) and use that instead of the main X server. It's used find for embedded systems, so it will be OK for your PC. If your PC is still suffering under the load, then you machine is probablu so old that you could drag a faster one out of these for free.
SJW n. One who posts facts.
I've just installed openSuse 10.3. It's running my monitor at 1024x768. It'll do 1600x1200, how do I set it so? The video is the new onboard Intel 3100, Intel C2D e6850 processor in a Dell Optiplex.
I'm not some Social Worker dummy, I managed to get the codecs installed to play Windows Media, in spite of the cryptic questions and error messages.
This was a snap with WinXP.
http://isbndb.com/d/book/x_power_tools/prices.html
Has there been any recent efforts to add at least a sound extension to X Windows. It seems a logical next step.
Keyboard
Video
Mouse
Sound
Think about it. If a Window manager can control mouse clicks/selections on a window, wouldn't it be cool to control the sound coming from that window/app like Vista can.
I know they have things like ESD and nasd and the like, which are network transparent like X, but they don't have nearly the user base X does.
I don't see a need for sound in a GUI environment, unless you perhaps need to control window position with spoken commands, but if it's application-specific volume you're after you should check out PulseAudio - it's due to be included in the next Ubuntu release. http://en.wikipedia.org/wiki/PulseAudio
Seems interesting. Maybe im just two lazy to tunnel sound and XWindows though ssh. But I think an integrated system would have its advantages. Can you honestly tell me that you would be fully OK with now sound at all in a GUI enviroment
"Not too long ago I plugged in a beamer into my VGA port, and it... just worked! No configurations, no restart, it Just Worked(tm)."
Wow! A beamer worked "Just Like That!" What resolution did it run at?
"We don't really know how to accelerate all sorts of rendering operations (glyph rendering is proving to be particularly difficult at the moment, for example)"
Linux needs font help
Use the GPU to do font rendering.
"The document may no longer be available, however."
http://www3.imperial.ac.uk/pls/portallive/docs/1/18619743.PDF
Yes I would be happy with no sound in a GUI environment, especially at work. I don't like being interrupted by other peoples mail notifications, error beeps and odd tastes in music.