Welcome!

Linux Containers Authors: Elizabeth White, Yeshim Deniz, Pat Romanski, Liz McMillan, Amit Gupta

Related Topics: Linux Containers

Linux Containers: Article

Window-managers 101: The desktop beyond GNOME and KDE

Plus, a backgrounder on X Window System

(LinuxWorld) -- Many of my most recent columns have speculated exclusively on GNOME and KDE as if they're the only realistic choices for Linux or UNIX desktops. Nothing could be further from the truth. There are dozens of window managers available for X11, which is the most common foundation for graphical applications on UNIX.

If you're already familiar with X11, the concept of window managers and the most common window managers, skip on ahead to the next section entitled "The obscure and the arcane." If it's new to you, here's a layman's approximate description of how this all works together.

X11 is a network-enabled client/server graphics engine. If you use Linux, you're likely to be using the XFree86 version of X11R6.

The concept of X11 is simple, although the way X11 defines client and server are counterintuitive to the average user. An X11 server does little more than paint graphics on the screen and accept input from devices like a mouse or keyboard. You run an X11 server on the machine you are using to do work, which is the computer you normally think of as your client machine. The X11 server runs on your client. Remember that.

The X11 definition of client is an application, such as a word processor. The magic of X11 is that you can run this client application on your local machine, on any of the servers in your company, on the computer in the cubicle next to you or on a computer thousands of miles away. All other things being equal, you won't be able to tell the difference no matter where this application runs.

To recap: the X11 client application does all the useful work, like formatting paragraphs, spell-checking, etc. The X11 server running on your local computer simply serves up graphics and keyboard-input functions to that client.

X11 stops there. Outside of what I've described above, X11 is remarkably free of any end-user features. For example, it doesn't provide a way to move, resize or otherwise arrange application windows. You need to add what's called a window manager to get these features.

Are GNOME and KDE window managers? No. They include window managers, but they themselves are not window managers. GNOME uses a window manager named Sawfish (formerly called Sawmill) by default, and you can swap Sawfish with other window managers and still use GNOME. I used to prefer a window manager called Icewm for use with GNOME. KDE uses a window manager called kwin by default. It is less common to swap kwin with other window managers for use with KDE, but it is certainly possible.

GNOME and KDE provide many of the usability enhancements that window-managers lack. For example, they provide launch panels, taskbars and other graphics components as separate entities. But even these features aren't the most important ones you get with GNOME and KDE. The most promising features in GNOME and KDE have to do with the network object models they support. One uses these as part of an application framework to build sophisticated applications that should integrate and interoperate well with each other and the desktop.

If you didn't know about anything discussed above and all you care about is using your word processor, MPEG player and other favorite applications, then you should probably pick either GNOME or KDE and stick with it. These are the easiest graphical environments to configure and use, and that's all you probably care about.

The obscure & the arcane

As for the rest of you, if you already know how X11 and window managers work, then you are undoubtedly already familiar with the most popular and commonly installed alternative windowing environments to GNOME and KDE. These generally include WindowMaker, Icewm, Enlightenment, Fvwm, Twm and perhaps a few others. I won't bore you with an overview of those.

You may not be as familiar with some other experimental and minimalist window managers, however. Here's how to tell if you should try any of them. It's my standard geek test, so you may already be familiar with it: Just count to three.

Go ahead, count.

If you counted "1...2...3," then you probably shouldn't bother with any of the window managers I'm about to mention. If you counted "0...1...2," then you've got enough geek in your blood to give these a try. Read on.

Blackbox

Outside of Sawfish, Blackbox is perhaps the most sophisticated of the minimalist window managers. It's the one you most likely know about even if you're only part geek. Blackbox is an all-new window manager written in C++, and it is an enormously attractive choice because it's pretty, fast and uses remarkably few resources. If you're only part geek, and you like Windows 9x, then go for Icewm. If you're only part geek, and you don't like Windows 9x, then go for Blackbox.

Blackbox's minimalist approach to the taskbar and virtual desktops take some getting used to, but there are a few add-on utilities that will help you make the transition from one of the other window managers (such as Fvwm) to Blackbox. I suggest you look into bbrun, bbkeys and bbpager:

  • bbrun lets you pop up a dialog to launch programs as you would from a command line.
  • bbkeys lets you redefine keystrokes to perform functions like "switch to the next desktop."
  • bbpager adds a traditionally styled virtual desktop pager that gives you an easier way to jump from virtual desktop to virtual desktop than Blackbox's default method.

Sawfish

I know I mentioned Sawfish as part of GNOME, but you can also use this window manager without GNOME. I happen to like Sawfish, but not enough to use it by itself. This is due, in part, to the fact that the design choices behind Sawfish are enigmatic to me.

Sawfish has two distinguishing features:

  • First, it lets you assign different themes to different windows. This means you can make the window title bar for your word processor different than the window title bar for your browser. If you're anything like me, I know what you're thinking. The only thing more mysterious to me than why the authors included this feature is why anyone would want to use it. Each to his or her own, I guess.
  • Second, you can extend Sawfish by using a language called lisp. Lisp is a favorite language for users of the editor GNU/emacs, which uses elisp as a scripting language for extensibility.

It is possible that lisp fans will like both Sawfish and emacs, and this assumption presents another interesting enigma. If you know anything about emacs, you know that people have extended it to do just about everything imaginable. You can use emacs to browse Web sites, play games, read and respond to e-mail, visit newsgroups and more. If you use emacs for all these things, then why would you need a window manager at all? You'd only need one window on the screen: emacs.

larswm

Larswm used to be one of my favorites among the extreme minimalist window managers. When I first tried it, it automatically tiled all the windows you open. The active application always took up most of the screen, and the rest of your open applications were automatically tiled in a vertical stack on the right of the screen. I love this behavior because it's much easier to see the work you're doing in various applications than if you minimize inactive applications to taskbar/icons or assign them to other virtual desktops.

This approach wasn't without its problems, however. For one thing, the default behavior of the old larswm could be pretty annoying whenever your application popped up a dialog box. This dialog box usually switched itself to be the active application, which means it expanded to fill the active portion of the screen and assigned your main window to the tiled stack on the right.

Over the past few years, the author(s) of larswm has addressed this and many other issues, but the solution seems worse than the problems to me. You can now customize the behavior of windows, keys and applications so that some applications will appear at predefined sizes and desktop locations, others will automatically tile, dialogs will not expand automatically and so on.

Forcing applications that were designed for traditional window environments to work in an auto-tiling environment solves one problem, but the last time I tried larswm, its default behavior wasn't anything I liked. I looked into what it would take to make it work the way it used to and solve the annoying problems. I concluded that I'd have to invest hours of testing and editing configuration files to get to my goal. That was simply too great a price to pay, so I gave up. If you've got time to twiddle, though, look into larswm.

pwm and fluxbox

Aside from larswm, the most inventive window managers I've seen so far are pwm and fluxbox. They're not based on the same code, but they share one great feature in common: they let you combine multiple applications into a single tabbed window. You can switch between the applications by clicking on the appropriate tabs. Think of it the same way you can select between open browser windows in Mozilla, Opera and Galeon (and coming soon to Konqueror). You may be more familiar with the same tabbed-selection feature in KDE's terminal application Konsole or GNOME's terminal application multi-gnome-terminal.

Pwm and fluxbox extend this capability to unrelated windows. This means you can connect an X11 terminal to a Mozilla browser and a word processor in a single-tabbed window and switch between them using the tabs. It's purely a personal preference, but I believe this is the most efficient use of screen space possible. It's also more convenient than virtual desktops as a way to switch between applications without having them create clutter or compete for screen space.

So which should you try? Both. If you like the look and feel of Blackbox, then be sure to give fluxbox a try. It is based on the Blackbox code and has basically the same elegant look.

Summary

There are countless other window managers out there. Some have so few features they're practically useless, while others have innovative approaches to window management like pwm, fluxbox and larswm. I featured the ones I feel are the most interesting, but if you are inclined to try more, search Freshmeat or another software index and you may be surprised at the variety of ideas and implementations of window managers you can find.

More Stories By Nicholas Petreley

Nicholas Petreley is a computer consultant and author in Asheville, NC.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


@ThingsExpo Stories
Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...
Amazon started as an online bookseller 20 years ago. Since then, it has evolved into a technology juggernaut that has disrupted multiple markets and industries and touches many aspects of our lives. It is a relentless technology and business model innovator driving disruption throughout numerous ecosystems. Amazon’s AWS revenues alone are approaching $16B a year making it one of the largest IT companies in the world. With dominant offerings in Cloud, IoT, eCommerce, Big Data, AI, Digital Assista...
The Founder of NostaLab and a member of the Google Health Advisory Board, John is a unique combination of strategic thinker, marketer and entrepreneur. His career was built on the "science of advertising" combining strategy, creativity and marketing for industry-leading results. Combined with his ability to communicate complicated scientific concepts in a way that consumers and scientists alike can appreciate, John is a sought-after speaker for conferences on the forefront of healthcare science,...
In his session at Cloud Expo, Alan Winters, U.S. Head of Business Development at MobiDev, presented a success story of an entrepreneur who has both suffered through and benefited from offshore development across multiple businesses: The smart choice, or how to select the right offshore development partner Warning signs, or how to minimize chances of making the wrong choice Collaboration, or how to establish the most effective work processes Budget control, or how to maximize project result...
In his keynote at 19th Cloud Expo, Sheng Liang, co-founder and CEO of Rancher Labs, discussed the technological advances and new business opportunities created by the rapid adoption of containers. With the success of Amazon Web Services (AWS) and various open source technologies used to build private clouds, cloud computing has become an essential component of IT strategy. However, users continue to face challenges in implementing clouds, as older technologies evolve and newer ones like Docker c...
Personalization has long been the holy grail of marketing. Simply stated, communicate the most relevant offer to the right person and you will increase sales. To achieve this, you must understand the individual. Consequently, digital marketers developed many ways to gather and leverage customer information to deliver targeted experiences. In his session at @ThingsExpo, Lou Casal, Founder and Principal Consultant at Practicala, discussed how the Internet of Things (IoT) has accelerated our abilit...
When shopping for a new data processing platform for IoT solutions, many development teams want to be able to test-drive options before making a choice. Yet when evaluating an IoT solution, it’s simply not feasible to do so at scale with physical devices. Building a sensor simulator is the next best choice; however, generating a realistic simulation at very high TPS with ease of configurability is a formidable challenge. When dealing with multiple application or transport protocols, you would be...
Data is the fuel that drives the machine learning algorithmic engines and ultimately provides the business value. In his session at Cloud Expo, Ed Featherston, a director and senior enterprise architect at Collaborative Consulting, discussed the key considerations around quality, volume, timeliness, and pedigree that must be dealt with in order to properly fuel that engine.
Dion Hinchcliffe is an internationally recognized digital expert, bestselling book author, frequent keynote speaker, analyst, futurist, and transformation expert based in Washington, DC. He is currently Chief Strategy Officer at the industry-leading digital strategy and online community solutions firm, 7Summits.
Two weeks ago (November 3-5), I attended the Cloud Expo Silicon Valley as a speaker, where I presented on the security and privacy due diligence requirements for cloud solutions. Cloud security is a topical issue for every CIO, CISO, and technology buyer. Decision-makers are always looking for insights on how to mitigate the security risks of implementing and using cloud solutions. Based on the presentation topics covered at the conference, as well as the general discussions heard between sessio...
Detecting internal user threats in the Big Data eco-system is challenging and cumbersome. Many organizations monitor internal usage of the Big Data eco-system using a set of alerts. This is not a scalable process given the increase in the number of alerts with the accelerating growth in data volume and user base. Organizations are increasingly leveraging machine learning to monitor only those data elements that are sensitive and critical, autonomously establish monitoring policies, and to detect...
In his session at @ThingsExpo, Arvind Radhakrishnen discussed how IoT offers new business models in banking and financial services organizations with the capability to revolutionize products, payments, channels, business processes and asset management built on strong architectural foundation. The following topics were covered: How IoT stands to impact various business parameters including customer experience, cost and risk management within BFS organizations.
Recently, REAN Cloud built a digital concierge for a North Carolina hospital that had observed that most patient call button questions were repetitive. In addition, the paper-based process used to measure patient health metrics was laborious, not in real-time and sometimes error-prone. In their session at 21st Cloud Expo, Sean Finnerty, Executive Director, Practice Lead, Health Care & Life Science at REAN Cloud, and Dr. S.P.T. Krishnan, Principal Architect at REAN Cloud, discussed how they built...
In his keynote at 18th Cloud Expo, Andrew Keys, Co-Founder of ConsenSys Enterprise, provided an overview of the evolution of the Internet and the Database and the future of their combination – the Blockchain. Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settl...
IoT solutions exploit operational data generated by Internet-connected smart “things” for the purpose of gaining operational insight and producing “better outcomes” (for example, create new business models, eliminate unscheduled maintenance, etc.). The explosive proliferation of IoT solutions will result in an exponential growth in the volume of IoT data, precipitating significant Information Governance issues: who owns the IoT data, what are the rights/duties of IoT solutions adopters towards t...
With tough new regulations coming to Europe on data privacy in May 2018, Calligo will explain why in reality the effect is global and transforms how you consider critical data. EU GDPR fundamentally rewrites the rules for cloud, Big Data and IoT. In his session at 21st Cloud Expo, Adam Ryan, Vice President and General Manager EMEA at Calligo, examined the regulations and provided insight on how it affects technology, challenges the established rules and will usher in new levels of diligence arou...
Organizations planning enterprise data center consolidation and modernization projects are faced with a challenging, costly reality. Requirements to deploy modern, cloud-native applications simultaneously with traditional client/server applications are almost impossible to achieve with hardware-centric enterprise infrastructure. Compute and network infrastructure are fast moving down a software-defined path, but storage has been a laggard. Until now.
DXWorldEXPO LLC announced today that All in Mobile, a mobile app development company from Poland, will exhibit at the 22nd International CloudEXPO | DXWorldEXPO. All In Mobile is a mobile app development company from Poland. Since 2014, they maintain passion for developing mobile applications for enterprises and startups worldwide.
Digital Transformation is much more than a buzzword. The radical shift to digital mechanisms for almost every process is evident across all industries and verticals. This is often especially true in financial services, where the legacy environment is many times unable to keep up with the rapidly shifting demands of the consumer. The constant pressure to provide complete, omnichannel delivery of customer-facing solutions to meet both regulatory and customer demands is putting enormous pressure on...
The best way to leverage your CloudEXPO | DXWorldEXPO presence as a sponsor and exhibitor is to plan your news announcements around our events. The press covering CloudEXPO | DXWorldEXPO will have access to these releases and will amplify your news announcements. More than two dozen Cloud companies either set deals at our shows or have announced their mergers and acquisitions at CloudEXPO. Product announcements during our show provide your company with the most reach through our targeted audienc...