|
From the Desktop: Blackbox
No Thanks to the RebateI had to buy a new monitor for my Linux box last week, thanks to the death of the old monitor's mode controller. Not having the time to wait for a mail-order delivery, and since using Linux with just a keyboard and a mouse is a bit tricky for me, I ran over to the local computer superstore to grab a replacement. It should be said that these people know me pretty well, since I am in there about once a month buying something or another for my collection of PCs and notebooks. To them, I am one of "those" people: a homo penguinus, traitor to my own kind. I first got their attention when I actually had to fight with them to not get the big rebate for the PC I picked up to be a Linux box. I had to get the PC there because once again I could not wait for the mail order people to get one too me. Such is the curse of someone who does not plan their life out. Anyway, the rebate would knock the price of the PC down to $450, if I sold my soul for two years of Compuserve. "But I don't want the rebate," I said to the minion as he handed me the rebate form written in lawyer-speak. His eyes actually goggled, which is really very disturbing if you think about it. "You don't want the rebate?" he stammered. "No, there's no need, I'm not going to use Compuserve," I replied. "But don't you want to save $700?" he asked, trying to appeal to me with the ultimate sense of reason. "Sure," I answered, getting the tickle of danger down my spine, "but I need this machine today, so I can't custom order a box from someone else, and I am absolutely not going to use Compuserve, so it would be dishonest of me to claim the rebate." One more try: "Well, Compuserve is not that bad, really--" I cut him off, knowing full well the impact my next words would have on his Borg soul: "This is going to run Linux." He blinked and goggled again. I'm pretty sure his synapses misfired. "What?" "Linux. I'm installing Linux on it. Let's get it off the shelf and onto this cart, okay?" Then came the most desperate statement of all: "Uh, I'm not sure Linux will run on this computer." At this point, I was getting more than a little irritated at putting this much effort into something that should have amounted to a grab-and-go operation. This last statement was so ludicrous, however, I invested the next five minutes of my journey through the space-time continuum explaining to this dolt not only would Linux run on this box, it would run a hell of a lot faster and better than the (fill in the expletive) installed on it now. At the end of my diatribe, he just blinked again (an action I am now convinced was an outward manifestation of his sales-spiel program rebooting itself) and said once more, "Maybe you should give Compuserve a try." This went on for another 15 minutes, which ended after pulling the store manager into the fray and me signing three forms saying that I would not get the rebate, that I and my kind were the biggest idiots in the world for passing up this sweet deal cooked up by Compuserve, and I was forever branded as the "Schmuck Who Paid Full Price for a PC." I did not go quietly into that good night, either. Basically I harangued the two of them all the way out the door and reminded them that not all their customers were sheep lulled into complacency by Microsoft, Intel, and whoever else I could think of at the time. The investment of time and energy paid off, I am happy to say. The salespeople utterly understand my position now, and do not argue when I come in and pick something up. For this new monitor, the transaction consisted of me pointing at the monitor, saying "thank you" after the guy loaded the huge box into cart, and walking the whole thing up to the cashier. So now I have a new monitor and my three-year-old has a huge new cardboard box to play house in, all nice and set up in my office for me to trip over in the dark when I stagger in at 3 a.m. to see if people in England have gotten around to answering my e-mails yet. And, in perhaps the most contrived segue way ever devised, this week's window manager tour takes us to Blackbox. Must be one of those Circle of Life things.
Back in BlackboxThe popularity of the NeXT interface among Linux users forms a strong undercurrent in the GUI community. Like Trekkers on a letter-writing campaign, this stalwart group of users keeps this interface alive by emulating it in other X window managers. After Step and Window Maker are two such window mangers based on NeXT, as well as the GUI du jour: Blackbox. For those of you who have not tried this window manager, let's air something out right now: if you just want something simple to run your apps in a graphic interface, without a lot of frills, go download and install Blackbox right away. Of all of the window managers in this class that I have seen, this is definitely one of the fastest and most intuitive. (I am defining this class, by the way, to be NeXT-type interfaces.) Now, if you like your interfaces heavy on the control panels, automated configurations, and what not, hang on and keep reading this article--Blackbox may still be of use to you. Blackbox's authors, Brad Hughes and Jeff Raven, stipulate on the Blackbox Web site that this is meant to be a minimalist interface, and they aren't kidding. The toolbar, root menu, and windows menu are the only on-screen tools available, something that could make the hard-core Gnome/KDE user hyperventilate in panic. After they breathe into a paper bag, they would see that the interface can handle a lot of tasks despite its simplicity. Blackbox is austere without being stark. Another solid feature of this window manager is the availability of utility applications designed specifically for Blackbox. These tools include bbmail, bbppp, and bbdate, just to name a few. More are available and several more are in the works. Now, here's how the interface basically works. This is just an overview, mind you, which I feel okay in giving you since Blackbox has pretty good documentation available. The Toolbar is the center of the action, and displays the current workspace name and the name of the focussed window. Adjacent to these two displayed names are control buttons that let you cycle through all available workspaces and all open windows in pretty short order. One nifty feature I liked was the ability to right-click on the current workspace name and type in your own. Workspaces are also accessed by the Workspace menu, available on the far left of the Toolbar. This menu displays all the workspaces on the desktop so you can shift the view to them and also can add new workspaces. Windows are moved between workspaces very easily with each window's Window menu, activated by right-clicking a window's title bar. This menu will shade, iconify, and move the window to any available workspace in just a couple of clicks, among other things. Iconify is a bit of a misnomer, since there are no icons in the pure Blackbox interface. You have to use the Workspace menu's Icons submenu to gain access to iconed windows. The only other control, and the only one that is configurable, is the Root menu, which displays favorite applications in one place. Configuration of the Root menu is done manually in the Blackbox menu file; copy to home directory before editing. Before making changes to the menu file, simply point the session.menuFile setting in the ~/.blackboxrc file to the absolute file location of the copied menu file. Changing the menu file was an easy exercise, as it is full of commented examples to display how its syntax behaves. I found it really simple to add my own commands and submenus to the Root menu using just these examples. The online documentation I mentioned before also has a few more techniques you can incorporate into your own Root menu. Once the Root menu is configured, you are left with one fast window manager in its purest form. For those who crave a bit more meat, Blackbox does feature limited KDE support, able to run that environment atop Blackbox. This combination would give some additional interface features, such as actual icons. Those wanting to use Gnome will be disappointed, as Blackbox's developers do not and are not planning to agree with the current version of the Gnome window manager specification, another assertion they have made on the Blackbox web site. There will be some functionality eventually built-in for Gnome applications in future versions, but not with the Gnome specs, which I learned in an on-line interview with Jeff Raven, the co-developer of Blackbox.
The Men in BlackboxUnlike some other window managers, Blackbox has not fallen into a state of nebulous development, where updates are few and far between. Hughes and Raven are planning on a new release this very week, based on the development version that has been "solid for a while now," according to Raven. Raven was asked to become the co-developer of Blackbox in preparation for Hughes' relocation to Oslo, Norway this past May to work for TrollTech. Since that time, the division of labor has been pretty casual. "I've taken over managing the source tree and packaging up the releases, but other than that we pretty much just work on what moves us," Raven said, "Since coming on board I've mainly been focussed on making Blackbox more efficient and eliminating bugs. Meanwhile, Brad's been kept fairly busy at TrollTech, but even so he's still found the time to speed up a number of points in the code." Raven is quick to point out that while it is officially he and Hughes working on the project, there have been a lot of people pitching in to help with patches, translations, and that solid documentation mentioned earlier. "The development version of Blackbox includes support for foreign locales, and when people started submitted translations I was quite amazed at how diverse our user base is, and how eager folks were to help," Raven said, "A number of improvements in the developmental Blackbox owe themselves to outside sources: there's an amazingly detailed man page courtesy of Wilbert Berendsen, as well as cthulhain's bsetbg utility. "Heck, that's just the tip of the iceberg... there's really just too many of them to mention them all by name," he continued. I asked Raven what is coming up for Blackbox, and he informed me of their immediate goal to get the new release out the door on October 9. "...We can get everyone caught up and using the new features that have been available in the development version for some time," Raven explained, "Besides, it's been so long since I've run the old stable version I have a dickens of a time trying to help people with questions about it." Raven then went on in more detail on the less immediate goals he and Hughes have for Blackbox. The first big change they have in mind is to merge support for the NET window manager specification into Blackbox. The NET specification something that is pretty close to home, Raven explained. "Part of Brad's work at Troll has been on the KDE2 implementation of the new NET window manager spec, which has at its core some KDE-independent C++ objects. If things go as planned, these will also be used by Blackbox when it gets support for the spec," Raven said. "[Merging in the NET specification] will let KDE and Gnome apps rely on a common set of window manager extensions, and hopefully let you replace their default window managers without giving up too much functionality," he continued. Which translates into more of a presence of the Blackbox window manager working in tandem with these two environments. Following this development, Raven hopes to modify the architecture of the window manager to accommodate the tools that have grown up around it even better. "Over the course of the last few major releases Blackbox has undergone a series of internal changes so that some of its components could be more easily used by the tools (like bbkeys, bbpager, bbmail, etc.) which have risen up around it," Raven explained. "Even so, the programs still have to copy the code, and in some cases modify it for their purposes. "I'd like to rework some of the classes and the event loop so that it is a little more generic, and try moving it to a shared library. Ideally this should help reduce the total memory cost of running Blackbox and these apps, but we'll have to see how it works out to see if it's really worthwhile," Raven concluded. It is clear that Blackbox is not an interface that will fall by the wayside anytime soon, which is good news for fans of fast and simple window managers. If successful, the incorporation of the NET specification will let Gnome and KDE users benefit from Blackbox as well.
|