Click here to close now.

Welcome!

Linux Authors: Carmen Gonzalez, Lori MacVittie, Esmeralda Swartz, Jason Bloomberg, Asad Ali

Related Topics: Linux

Linux: 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
Wearable technology was dominant at this year’s International Consumer Electronics Show (CES) , and MWC was no exception to this trend. New versions of favorites, such as the Samsung Gear (three new products were released: the Gear 2, the Gear 2 Neo and the Gear Fit), shared the limelight with new wearables like Pebble Time Steel (the new premium version of the company’s previously released smartwatch) and the LG Watch Urbane. The most dramatic difference at MWC was an emphasis on presenting wearables as fashion accessories and moving away from the original clunky technology associated with t...
After making a doctor’s appointment via your mobile device, you receive a calendar invite. The day of your appointment, you get a reminder with the doctor’s location and contact information. As you enter the doctor’s exam room, the medical team is equipped with the latest tablet containing your medical history – he or she makes real time updates to your medical file. At the end of your visit, you receive an electronic prescription to your preferred pharmacy and can schedule your next appointment.
Containers and microservices have become topics of intense interest throughout the cloud developer and enterprise IT communities. Accordingly, attendees at the upcoming 16th Cloud Expo at the Javits Center in New York June 9-11 will find fresh new content in a new track called PaaS | Containers & Microservices Containers are not being considered for the first time by the cloud community, but a current era of re-consideration has pushed them to the top of the cloud agenda. With the launch of Docker's initial release in March of 2013, interest was revved up several notches. Then late last...
The WebRTC Summit 2014 New York, to be held June 9-11, 2015, at the Javits Center in New York, NY, announces that its Call for Papers is open. Topics include all aspects of improving IT delivery by eliminating waste through automated business models leveraging cloud technologies. WebRTC Summit is co-located with 16th International Cloud Expo, @ThingsExpo, Big Data Expo, and DevOps Summit.
SOA Software has changed its name to Akana. With roots in Web Services and SOA Governance, Akana has established itself as a leader in API Management and is expanding into cloud integration as an alternative to the traditional heavyweight enterprise service bus (ESB). The company recently announced that it achieved more than 90% year-over-year growth. As Akana, the company now addresses the evolution and diversification of SOA, unifying security, management, and DevOps across SOA, APIs, microservices, and more.
GENBAND has announced that SageNet is leveraging the Nuvia platform to deliver Unified Communications as a Service (UCaaS) to its large base of retail and enterprise customers. Nuvia’s cloud-based solution provides SageNet’s customers with a full suite of business communications and collaboration tools. Two large national SageNet retail customers have recently signed up to deploy the Nuvia platform and the company will continue to sell the service to new and existing customers. Nuvia’s capabilities include HD voice, video, multimedia messaging, mobility, conferencing, Web collaboration, deskt...
SYS-CON Media announced today that @WebRTCSummit Blog, the largest WebRTC resource in the world, has been launched. @WebRTCSummit Blog offers top articles, news stories, and blog posts from the world's well-known experts and guarantees better exposure for its authors than any other publication. @WebRTCSummit Blog can be bookmarked ▸ Here @WebRTCSummit conference site can be bookmarked ▸ Here
SYS-CON Events announced today that Cisco, the worldwide leader in IT that transforms how people connect, communicate and collaborate, has been named “Gold Sponsor” of SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. Cisco makes amazing things happen by connecting the unconnected. Cisco has shaped the future of the Internet by becoming the worldwide leader in transforming how people connect, communicate and collaborate. Cisco and our partners are building the platform for the Internet of Everything by connecting the...
Temasys has announced senior management additions to its team. Joining are David Holloway as Vice President of Commercial and Nadine Yap as Vice President of Product. Over the past 12 months Temasys has doubled in size as it adds new customers and expands the development of its Skylink platform. Skylink leads the charge to move WebRTC, traditionally seen as a desktop, browser based technology, to become a ubiquitous web communications technology on web and mobile, as well as Internet of Things compatible devices.
SYS-CON Events announced today that robomq.io will exhibit at SYS-CON's @ThingsExpo, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. robomq.io is an interoperable and composable platform that connects any device to any application. It helps systems integrators and the solution providers build new and innovative products and service for industries requiring monitoring or intelligence from devices and sensors.
Docker is an excellent platform for organizations interested in running microservices. It offers portability and consistency between development and production environments, quick provisioning times, and a simple way to isolate services. In his session at DevOps Summit at 16th Cloud Expo, Shannon Williams, co-founder of Rancher Labs, will walk through these and other benefits of using Docker to run microservices, and provide an overview of RancherOS, a minimalist distribution of Linux designed expressly to run Docker. He will also discuss Rancher, an orchestration and service discovery platf...
SYS-CON Events announced today that Vitria Technology, Inc. will exhibit at SYS-CON’s @ThingsExpo, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. Vitria will showcase the company’s new IoT Analytics Platform through live demonstrations at booth #330. Vitria’s IoT Analytics Platform, fully integrated and powered by an operational intelligence engine, enables customers to rapidly build and operationalize advanced analytics to deliver timely business outcomes for use cases across the industrial, enterprise, and consumer segments.
SYS-CON Events announced today that Solgenia will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY, and the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. Solgenia is the global market leader in Cloud Collaboration and Cloud Infrastructure software solutions. Designed to “Bridge the Gap” between Personal and Professional Social, Mobile and Cloud user experiences, our solutions help large and medium-sized organizations dr...
SYS-CON Events announced today that Liaison Technologies, a leading provider of data management and integration cloud services and solutions, has been named "Silver Sponsor" of SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York, NY. Liaison Technologies is a recognized market leader in providing cloud-enabled data integration and data management solutions to break down complex information barriers, enabling enterprises to make smarter decisions, faster.
@ThingsExpo has been named the Top 5 Most Influential M2M Brand by Onalytica in the ‘Machine to Machine: Top 100 Influencers and Brands.' Onalytica analyzed the online debate on M2M by looking at over 85,000 tweets to provide the most influential individuals and brands that drive the discussion. According to Onalytica the "analysis showed a very engaged community with a lot of interactive tweets. The M2M discussion seems to be more fragmented and driven by some of the major brands present in the M2M space. This really allows some room for influential individuals to create more high value inter...
The world's leading Cloud event, Cloud Expo has launched Microservices Journal on the SYS-CON.com portal, featuring over 19,000 original articles, news stories, features, and blog entries. DevOps Journal is focused on this critical enterprise IT topic in the world of cloud computing. Microservices Journal offers top articles, news stories, and blog posts from the world's well-known experts and guarantees better exposure for its authors than any other publication. Follow new article posts on Twitter at @MicroservicesE
The list of ‘new paradigm’ technologies that now surrounds us appears to be at an all time high. From cloud computing and Big Data analytics to Bring Your Own Device (BYOD) and the Internet of Things (IoT), today we have to deal with what the industry likes to call ‘paradigm shifts’ at every level of IT. This is disruption; of course, we understand that – change is almost always disruptive.
SYS-CON Events announced today the IoT Bootcamp – Jumpstart Your IoT Strategy, being held June 9–10, 2015, in conjunction with 16th Cloud Expo and Internet of @ThingsExpo at the Javits Center in New York City. This is your chance to jumpstart your IoT strategy. Combined with real-world scenarios and use cases, the IoT Bootcamp is not just based on presentations but includes hands-on demos and walkthroughs. We will introduce you to a variety of Do-It-Yourself IoT platforms including Arduino, Raspberry Pi, BeagleBone, Spark and Intel Edison. You will also get an overview of cloud technologies s...
SYS-CON Events announced today that SafeLogic has been named “Bag Sponsor” of SYS-CON's 16th International Cloud Expo® New York, which will take place June 9-11, 2015, at the Javits Center in New York City, NY. SafeLogic provides security products for applications in mobile and server/appliance environments. SafeLogic’s flagship product CryptoComply is a FIPS 140-2 validated cryptographic engine designed to secure data on servers, workstations, appliances, mobile devices, and in the Cloud.
SYS-CON Events announced today that Akana, formerly SOA Software, has been named “Bronze Sponsor” of SYS-CON's 16th International Cloud Expo® New York, which will take place June 9-11, 2015, at the Javits Center in New York City, NY. Akana’s comprehensive suite of API Management, API Security, Integrated SOA Governance, and Cloud Integration solutions helps businesses accelerate digital transformation by securely extending their reach across multiple channels – mobile, cloud and Internet of Things. Akana enables enterprises to share data as APIs, connect and integrate applications, drive part...