K.Mandla's blog of Linux experiences

Software

I am a harsh software critic. I’m usually willing to try something new if there’s the possibility it will do a better job than my current favorite, but I hold grudges against programs — and sometimes even entire desktop environments — if they disappoint me.

In addition, I am a minimalistmaximalist. I have a clear set of criteria that I use to judge a program.

Do one thing, and only one thing. Everybody likes a flexible program. But I don’t like software that tries to do too much at once. For example, I resent music management software suites or photo management applications. I manage the photos. I manage the music. The application shows it, or plays it. Period. If you try to be all things at once to me, you will only disappoint.

Do that one thing well. A program needs focus — that goes without saying. If it achieves that goal and doesn’t muddle the final product, it is a winner. In other words, if you can’t do it right, don’t bother trying at all.

Don’t drag my system down. If you burden my installation with pointless libraries and dependencies that don’t add anything to your software, you fail. Some of the greatest software ever written has about two dependencies. Some of the worst drags in all of Gnome just to put an icon on the screen. That is inexcusable.

Finally, points are awarded for style. I can forgive and even adopt an ugly or cumbersome program if it achieves in the first three categories. But if you manage to capture all three and have a clever interface or a smooth look, then I embrace thee through the power of the Internets.

The odd consequence of all these points is that I tend to rely on console-based, or at least framebuffer-oriented software over “standard” graphical applications.

And considering that has been the case for quite some time, I think I’m safe in recommending command-line applications over graphical alternatives. The more I use them, the more I realize that terminal-based software can do 99 percent of the work a graphical desktop does, with ten times the speed and a tenth of the resources.

Now before the mutt fans go all wild and crazy and foam at the mouth, let me just say up front that, as I have mentioned in the past, my e-mail demands are not that great. All I look for in an e-mail client is a way to check four or five e-mail addresses without too much stress or strain, a few times a day and not much more than that. It’s really only a way to circumvent logging in and out of a Web interface four times in a row, just to check my e-mail.

And so yes, I know, the cool kids all use mutt. And I tried that, I admit. I’ve tried many times as a matter of fact, but something always went south, and the results were usually a big goose egg.

On the other hand, alpine looks, feels and works like an e-mail client, even though it’s much more than that. Setting up alpine to read and send e-mails took all of about 30 seconds for one account, and less than 5 minutes total to cover everything I need it for. Compare that to the hours it took me to get mutt to not work.

Yes, I know. mutt is manna, straight from heaven. I am a lesser human being because I can’t get mutt to work. I fail and resign myself to an eternity in the Abyss because I rely on alpine to read e-mails.

But I can tell you what works for me, and what was easy to set up, and what did the job without too much complaint. I’m no alpine expert, but if I have to choose between a five-minute setup to read an e-mail from mom, or a four-hour torture session to read but not send, I’ll take the former. It’s not perfect (configuration is a huge frothy mess, for one thing), but it works and that’s the best part.

I thought I had discovered a hole in space and time, or at least a hole in the canvas of console applications, when I couldn’t recall ever seeing a proper graphical equalizer — in other words, a utility that specifically shapes sound output to compensate for environmental issues. Most people in the average listening environment don’t truly need one (I used to be an audiophile) and I fall into that group these days, but that didn’t make it any less necessary to find one.

alsaequal is a great add-on for the ALSA subsystem that neatly, correctly and fluently adjusts the bands of your audio output, and uses the conventional alsamixer utility as the framework for it. So it’s not only a familiar interface, but it’s easy to manage, works in real time, and does no more and no less than promised. Ideally it would be nice to have a preset system, or at least a system of memorized settings, but as it stands this is a utility that does something right, without being a burden.

It’s an unfortunate circumstance of my job that I occasionally need to edit Word files before forwarding them to a coworker, and an even more unfortunate circumstance that I sometimes have to do it at home. antiword is the quickest and lightest solution to that problem, but since it does little more than extract body text from files and spew it onto your screen, there’s little more than that to tell about it.

If antiword doesn’t satisfy, consider wv as a possible solution; I stick with antiword only because it requires less in dependencies to do essentially the same thing.

Programs that do a good job and don’t take up much space and don’t ever prove troublesome are usually difficult to write about. That’s the case with aspell, which is an excellent spell checker with a list of options and flags a mile long. That proves its flexibility, even if it doesn’t really seem like much.

I usually use aspell in conjunction with charm, which gives me a one-pass spellchecker with a convenient interface, customizable dictionaries and a lightweight profile all at once. There are a bunch of different language sets available; I find with the English one I still need to add quite a few “jargonish” terms to my personal dictionary so I don’t have to keep ignoring things like “GNU.”

axel is a download manager — and a darned good one at that. This, like some of the other utilities and programs I mention, doesn’t actually have much of an interface, but what it lacks in good looks it recovers several times over in sheer awesomeness. Web masters hate it, end-users love it, and the only reason either side feels that way about it is because axel works well.

I won’t make any promises about tripling your download speed, and if your speed is already pegged by your hardware limitations or your line speed, then installing axel won’t make your car start on cold mornings or keep your toast from burning. On the other hand, it will search out alternative file locations, split out the connection between hosts and hopefully, in that fashion, bring in the file you want a little quicker than was previously thought possible.

No guarantees of course, but it’s always worth trying. If you want something with a little more “flexibility” in what method you can use to download something, check out the slightly chubbier but no less powerful aria2.

Mentioning bc as an analogue to a desktop calculator application is a little like mentioning a chainsaw as a can opener: They can both do the job, although it’s a bit overkill. bc isn’t going to thrill you with its interface, and it isn’t going to win any points for user-friendliness, but it’s a good way to balance your checkbook or make sure your boss isn’t shaving your paycheck. It’s probably better suited to calculating radio emissions from distant stars, but what you do with it is your business.

As an alternative, don’t forget you have wcalc at your disposal, probably.

Games are just as important at the command line as they are in a graphical interface. There aren’t too many 3D-shooters out there for the console (don’t laugh, they exist), but there’s not necessarily a loss of challenge or fun just because there isn’t much in the way of graphics. Remember, fun wasn’t invented in 1988.

Neither was the classic pen-and-paper Battleship game, even if this electronic, ncurses-driven rendition could have been. Battleships won’t monopolize your life like some games, or threaten your relationships or even make it harder to get a job, but it could possibly absorb you for 20 minutes or so. Well arranged, clean, easy to control, colorized and with a few variants to keep you enticed, and bs is a viable console game that you can actually share with small kids. If you can tear them away from their regular games, that is.

“Art” and “console” don’t usually go together, although ASCII art and its venerable counterpart, typewriter art, are classic examples of mixing the two ideas. In that respect, cadubi gets a thumbs-up for being a fundamental artistic creation for the command-line: a punch-button pen-stamping art program. It’s simple, it’s obvious and functional, and it’s vaguely artistic.

cadubi has the additional bonuses of being able to save and import files, which means it suddenly doubles as a way of touching up image-to-text conversions, and saving them as console-readable colorized art files. Which means with a little creativity, you could actually use the Mona Lisa as your login prompt. And creativity is of course, what it’s about. …

I debated listing cdf here, but if I left it out, it would be a lie of omission implying that I didn’t use it. It’s installed and it comes in handy at times — as a refreshable disk meter, for example — but it would be equally dishonest to say it did more than show colored bars representing disk usage.

In that sense it’s not much, but like a lot of things in life, cdf is only as functional and cool as you make it. As a counterpart to cdf, take a look at pydf. Same idea, different approach.

centerim is my weapon of choice when it comes to internet messaging. I have used it with both Yahoo and GMail accounts, and even with a mix of the two, and it works perfectly for me. A simpler endorsement than that is probably unnecessary.

Chat and instant message clients are a finicky lot, mostly because if you don’t have an account that works with them, then there’s little use in even discussing it. So in that sense it might not be much of an endorsement at all, but if you use either of those services or any of the others it supports, I would suggest trying it. It has some idiosyncrasies — like odd double-key commands — but a lot of customizable features that make it my personal favorite. It might be yours too.

I am so, so happy I found Charm. WordPress.com’s Web-based interface continues to pack on the pounds, becoming more and more an obstruction with every “improvement.” All I need is something decent for writing — something that can post the text without bogging down a perfectly good 1Ghz machine in the process.

Charm is so much the complete opposite of the WordPress.com interface that I can run it on a 100Mhz Pentium with only 16Mb of memory. Charm technically doesn’t edit anything — you do that in an external editor of your choice. But the dirty work is all done with Charm, and done amazingly well. Manage posts, spellcheck, view, delete, upload, you name it. I use for 95 percent of the stuff you see on this site; the only exception being link-heavy posts or pages, like the one you’re reading now.

Charm plays nice with WordPress.com and a half-dozen other hosting services. I strongly recommend it, even if you don’t rely completely on a console-based environment.

Some programs I keep around solely for their value as a sort of console “screensaver” in conjunction with screen. clockywock is one of those, although it certainly isn’t confined to that role. Animation is smooth and clean, and you can customize it to a small degree, but ultimately the objective — an analogue clock drawn with console characters — is simple and direct.

I know of no other analog clocks for the console, even if there are alternatives for clocks within other applications. In that sense clockywock might be unique.

Like clockywock, cmatrix is on board for its value as a screensaver. Also like clockywock, it doesn’t do much aside from an animation effect on screen. It’s an excellent distraction though, and fun to look at. Some packaged versions come with a Matrix-esque font that will work against the framebuffer, adding to the effect.

cmatrix is a standby in most distros, so chances are it’ll take up all of a few seconds to get into place.

dehtml is like a lot of other conversion tools, in that its value is its ability to change formatted text into something plainer and easier to work with. If you spend any time working with text pages that need conversion from html, then this tool will be a huge asset. It has enough options to be flexible and adjustable to whatever suits you. But aside from its ability to convert from html to plain text, there’s not much to say for it. Use it as it serves you.

Renaming tools are plentiful for the console, but detox is unusual in that it is primarily intended to convert from unusual character sets to base ASCII. It’s a rather esoteric function, but if you need something that will make file handling easier, whether its converting to similar character shapes or replacing spaces with underscores, detox can do those things. And its profile system makes it a better and more easily configured tool than some of its counterparts.

dict falls into the category of command line tools that abbreviate the need to jockey a browser just to get information. surfraw is like that too; with dict, you need only enter a word you want to define, and dict relays any number of possible definitions from online sources. Combined with your favorite pager, it becomes a lightning fast dictionary utility with no more effort involved than typing out the word you want to know. It doesn’t spellcheck, it doesn’t guess at spellings, and it doesn’t jam ads in your face when all you want is a quick understanding of the word “millipeds.” It has a good mix of available dictionaries too, along with a thesaurus or two. Most desktop environments recognize the utility of this one, and offer desktop trinkets that are really just frontends for this.

Web browsing, given the hoopla of Web 2.0 and yadda yadda yadda, is strictly within the demesne of the graphical environment. Any attempt to browse without visual elements is fruitless and pointless and a waste of time. I mean, what about Flash? What about Java? What about lightbox effects? Rollover CSS effects? YouTube videos? Popup logins? These things are completely inaccessible to a text-based browser, and for that reason, it’s a non-issue.

Or is it? It’s a matter of perspective really, and here’s mine: Flash, Java, rollover CSS effects, popup logins, lightbox effects … all of those things are distractions really — attempts to delude you into thinking you’re getting a higher grade of content from a particular site. You should be skeptical, not embracing, of a site that employs so much glitter and sleight-of-hand that it’s hard to tell if it’s quality or questionable.

And that’s the beauty of ELinks. Here’s a text-based browser that employs a full range of features you expect — things like a tabbed interface, download manager and right-click menus — and strips away all the dreck and drool that drip from so many Web sites these days.

I can give you an example — Jamendo.com. Don’t get me wrong: I love Jamendo. But the fact is, there are so many rollover buttons, embedded Flash players, nested doodads and quasi-friends connections … sigh. Let’s just say navigating it is a chore. The content — which is to say, the music — is there, but you have to dig for it.

But not with ELinks. ELinks ignores all the crud and presents you with the stuff you’re really interested in, like the download link for a particular torrent.

Perhaps more importantly, ELinks isn’t counterintuitive or intertwined with strange keyboard commands. It’s menu-driven, it looks and behaves like a GUI application, it’s unbelievably fast, it has so many features and options that I don’t have time to go through all of them here. … If you’re like me and you’d just as soon strip away the garbage that encrusts so much of the Web today, ELinks is truly a gift from heaven. Install and enjoy.

Technically fbgrab is another “non-application,” but if a standard desktop comes with a screenshot tool, fbgrab is a viable candidate for a framebuffer-based console system. You’ll need to set your display to operate at the color depth fbgrab can handle, but after that, it does a neat spill into a png format file. Check out one or two of the options for deeper uses; the -s option will give you a time delay, which is otherwise essential in a screenshot utility.

figlet is another deceptively simple tool that works so well with other command-line applications (cadubi comes to mind almost immediately) that it’s hard to imagine working without it. On the surface all it does is change text into oversized letters and output them back to the terminal.

But it also has unique fonts, with any number of effects. It can accept piped output, it can center against the space available in a terminal, it can trim and break at certain points. From those humble beginnings it has the potential to work as a terrifically lightweight screensaver, as a starting point for customized logins or /etc/issue files, or even just to spice up e-mail signatures.

figlet sounds like a cute tool, and it is a cute tool, but don’t let it deceive you. It’s definitely one of the best, simplest and yet most amazing things available to you in a distribution — and since it’s been around for quite a while, it’s probably in yours.

fim is the opposite of fbgrab in one sense: It displays image files by painting them against the framebuffer. There are other utilities that do this, and fim is technically still in the works, but it works quite well for me in its prerelease state, and it doesn’t require a lot of the dependencies that some others — like fbida, et al. — do, which means its lighter and faster for me at low speeds.

Also like fbgrab it’s perfectly useless to you if you run a console system without a framebuffer, or if your framebuffer is misconfigured for what fim can do. But the beauty of using fim is its ability to hook neatly into other programs like elinks, and become a default image viewer. So suddenly, that stereotype of a console system being without conventional image access fades away. …

Just about every computer on the planet that has been tainted by Microsoft has a generic Freecell game installed, and it would be wrong for mine to be very different. To that end, this text-only rendition is a tiny bit cumbersome at first, but then suddenly interesting and finally dangerous.

Dangerous because it has simplified gameplay to the point where most moves are four quick keystrokes, and the puzzle is all the more immediate. No painted card faces or click-and-drag stacks, just two clean colors, easy-card codes and viciously speedy, terrifically addictive play.

It’s quick, it’s easy to work and it doesn’t take up more than a few hundred kilobytes of space on your hard drive. Install it and try it out, but do it at your own peril. If it doesn’t hook you immediately and threaten to take up most of your idle hours, I’ll be surprised.

Including gnupg in this list is kind of like including the kernel: It’s usually in there by default and the people who know how to use it, or need to use it, don’t think twice about having it installed.

All the same gnupg is useful for handling encrypted files or validating software sources, and a lot of other things. I keep it installed in systems even if it isn’t something I need on a daily basis. Personal files transferred over insecure networks, encrypting plain text e-mails or keeping password-protected documents in archives — all these things are perfect for gnupg.

I don’t give hnb nearly as much attention as I should, measured by how much I use it. For random scratchy notes thrown together without much organization, vim or another editor will do the trick just fine. And if some sort of connection might be useful between pages of random scratchy notes, then vimwiki, a personal wiki for vim, is another great idea. But if there’s a hierarchy to a list, or a series of calendar dates or any kind of outline-esque structure involved, hnb is simply my favorite.

Light as a feather, quick as a flash and easy to learn too — with a tutorial and introduction that pops up in your face the first time you run it. Multicolor, customizable and able to export in several different formats. I strongly recommend this one.

htop is a vast improvement over the standard top package that exists in many distros by default. It’s a system monitor and a process viewer, and also gives you a decent look at what’s taking up space — or stalled and spinning its gears.

htop wins points for me because it uses color. Just kidding. htop is a lot easier to control and adjust than top, which means its quicker on the draw for finding and killing zombies, or yanking annoying processes. It’s also very customizable, from the colors it uses to the different types of meters it displays. Poke around and see what you can come up with.

There are a lot of system monitors and resource profilers for graphical environments, but for the console, you only need this one.

htop is a great system monitor, and iftop makes a great counterpart to it. It’s not as colorful, but it does show a visual array of network traffic with plenty of details and options. I would prefer it if it didn’t require root access to watch an interface, but there are ways around that.

As a second-place finisher in the network monitor category, slurm is a good substitute. It’s not as “professional” or “detailed” as iftop, and it doesn’t scale well to unusual window sizes, but it is colorized, animated and has several styles to pick from. From time to time, I switch from one to the other.

By my last calculations, there are only about 6,000 chat clients out there for the console, and each one of those has a fork or two to its credit. Which one you use can trickle all the way down to what country you happen to live in, and there’s absolutely nothing wrong with that.

But most folks make their introduction to console applications by way of irssi, and it shouldn’t be any surprise. irssi is, in many ways, the top banana of terminal chat clients, and I have yet to find a distribution that didn’t have it in its repositories, if not included by default.

I won’t say irssi is necessarily better than any other client; again, your account and your preferences determine which one you pick. irssi is a good starting place, and furthermore, there’s nothing wrong with sticking with it. And now that I’ve said all that, I can remind you that I use irssi and join freenode.net probably … once a month. 😉

Including a library on this page might seem kind of weird, but the caca array does some neat things with colorized ASCII characters. Furthermore, it comes with one or two extra demo programs — in other words, viable screensavers. A few of them are actually quite beautiful.

In any case, the caca libraries are, a lot of times, included in the larger distros; the problem is that they usually don’t include the accompanying demos by default. Even more frustrating, building the libraries might drag in X dependencies, so whether or not you use this on a console system depends on how you get around those points. Personally, I build mine on a graphical system and import the package to the X-less one; running the demos doesn’t require X be installed. Perhaps that’s a hint for you.

File management is another area where most people don’t think beyond the obvious graphical application, with out realizing that at its core, file management is really just pushing files around. Sure, there are times when you edit or you view or you rename or whatever, but aside from those points, what’s so important that requires a graphical interface?

Midnight Commander, or just mc, does the job as well as any other file manager, and in some ways better. This one also takes the two-pane design that was popularized in the late 1980s, although it doesn’t have to be — mc can swap its arrangement for a file previewer, editor or another feature. mc does an amazing amount of work for such an exceptionally light program. FTP access and virtual file systems? Check. Shell access and command-line options? Check. Menu-driven configuration and checkbox settings dialogs? Check. Mouse support, tab completion and onboard text editor? Check, check, check.

In some ways, mc does more and gives you more than most graphical file managers can or do. Sure, it won’t play a preview of an audio tune if you hover the mouse over it, but it will allow you to cue the audio player of your choice directly to the file in question, all at the press of a few keys. Don’t overlook this one.

For a very long time I was a proponent of cplay, mostly because it was a clear, clean and intuitive tool for playing back music without relying on an entire X environment for a couple of pretty buttons. Unfortunately, cplay drifted away into that hazy gray area where free software goes to die (I have heard rumors of a revival, but seen nothing yet). It had a lot of potential and it still does, but the fact of the matter is that all the things I wished for cplay are already in moc.

moc handles just about any file type you can throw at it. It has an obvious two-pane arrangement that you can customize to your liking. It has a progress bar, three or four different timers, easy-to-learn key assignments and it can stream from the Internet too. It even has theme support for different color schemes, which is completely impossible to comprehend from a console program.

It’s not for everyone — nothing ever is — but if you just want to play some tunes and you don’t want to go through the harangue of setting up some of the more complex arrangements, moc does the job very, very, very well.

I suspect that any machine with at least 300Mhz of muscle in it can push a standard X desktop in a lightweight distribution to show most DVD rips without too much hassle. I say that because I’ve done it, running a mid-grade Pentium II machine with not much guts to show xvid and divx encoded rips on older versions of Xorg in Arch Linux.

mplayer is particularly useful in that role though, since it allows you to trim away everything but framebuffer support at compile time. That might be more work than you would ordinarily consider for simple video playback, but what it means is that you might — just might — be able to push early Pentium IIs and maybe even high-end Socket 7 machines to show DVD encoded files against the framebuffer.

Your video card can come into play here, since a machine with any kind of video muscle will always get by with a weaker processor, but not necessarily the opposite. But don’t look down on a slow machine with solid framebuffer support, because it might have the ability to show a clean and not-too-high-detail DVD rip once or twice before it expires. Stranger things have happened.

As games go, it’s difficult to get past a solid arcade knockoff as an occasional distraction. myman is a direct conversion of the classic Pac-Man game, and while it seems primitive at first, it is in fact particularly impressive … if you take the time to examine the options.

It’ll run in a full-board ncurses mode, plus modes that require a framebuffer for pixel-to-pixel renditions of what look like the original game graphics. There are dozens — I mean dozens — of game variations and graphic versions on hand, including some of the classic game sequels, all rendered in color.

As games go, there are some fun ones out there, even for the console. And as games go, there are some amazing ones out there, and myman is one that will surprise you.

ncdu is not a file manager, but not a disk utility either … it’s something in between. If you have ever been on a seek-and-destroy mission to find a file that’s hogging your disk, what you’ve wanted is ncdu. It doesn’t do much more than sort out files by size, and maybe let you delete a file when you find it, but it does it in a way that is so clean, fast and intuitive that you’ll be amazed.

It’s not a new program and it’s not a particularly popular program but once you put it on a system you’ll dread the idea of being without it. It’s stable, looks good and scratches an itch that you didn’t even know you had. Try it and see what I mean; then remember it for the times when you really need it.

Don’t expect ncmatrix to be too much different from cmatrix, with the added flair of a few color streaks representing network traffic. It’s a safe amalgamation of a graphic display and network monitor, and in that sense not terrifically different from cmatrix. It works nicely as a screensaver, in the same way cmatrix does, and works as a network monitor like any of a number of other applications. On anything but a wildly active line though, there’s not much to separate it from its ancestry, so you can install this one over the earlier, and get two programs for the price of one.

The ntp package is worth having on board if you work with older machines, because very often the internal clocks are weak and can’t necessarily track as well as they used to. It’s also possible that with some customized kernels, I left out core timing elements and that too contributed to clock skew. Either way, setting up a twice-a-week clock synchronization isn’t anything tough, and saves you wondering why one machine is so far apart from another. A quick ntpdate -u pool.ntp.org as root, and all is right with the world again.

In the same way antiword or wv slices away the Word encoding, o3read can strip out the text from an OpenOffice.org file. It’s nothing particularly stellar in that sense, except in the way a program ought to be — it works, and it doesn’t get in the way of anything else. And best of all, it’s feather-light.

A file renamer for the console — and probably by extension an mp3 tag editor for the console — are about the only obvious holes in the landscape of console utilities I can find. It isn’t that there aren’t any possibilities, only that the possibilities that are out there are still not quite as interface driven as I’d like.

For my own purposes, I rely on the qmv and qcp utilities in the renameutils package to handle mass-renaming, which means relying in actuality on the search-and-replace features or editing functions of an outside text editor, like vim. It’s not ideal and I wouldn’t recommend it unless you’re sure there isn’t another option available to you — like mc’s internal moving and renaming abilities — but for my own machine, this is what I use.

I suppose there’s little I can say about rtorrent that I haven’t said already — and repeatedly — but I should say that my original arrangement of a dedicated slave as a dumping spot for torrent traffic is still what I use.

But I also have a tendency to install rtorrent on all the machines I have, since many times it’s light enough and quick enough and convenient enough to start up without overloading a machine. So in that sense, it works as both a lightweight torrent slave and a sort of download manager for torrent-based traffic on an individual machine.

Provided that the overall network traffic doesn’t monopolize my network, I haven’t seen a situation yet where running two instances of rtorrent on two different machines caused problems or compromised a router. And I don’t expect it should.

In the same way I am probably guilty of talking too much about rtorrent, I probably talk too much about GNU screen with the vertical split patch installed. Framebuffer or no, this gives you quite a bit more space to use, and makes it relatively easy to manage. If you’ve used screen in the past it’s no different than the vanilla version, with the added bonus of being able to arrange “windows” vertically.

Because screen is updated only when Halley’s Comet is scheduled to appear, the patch is already in place in most high-end distros, like Ubuntu or others. There are other solutions for managing terminal space — dvtm is a close second-place finisher in this category — but screen (with or without the patch) is sufficiently light and fast as to outshine the others, in my opinion.

screen should be part of your arsenal anyway, if you consider life at the terminal; installing it with the patch takes only minutes even on machines as slow as mine. And you’ll be much happier once you get it in place. Trust me this time. 😈

Snownews is another application I debated putting on here, and again because it’s rare that I use it. I get my news through other sources, and as it is, there are too many choices for news and feed readers out there to settle on just one.

But it is on my system, and I do have a long string of feeds that I occasionally browse through. It’s not perfect — there are some keystrokes I resent, and I should probably move to something paneled instead of nested — but it does the job and generally doesn’t get in my way. I can’t complain, but I also don’t really need an application like this, so it works well enough.

In the dictionary of Rogue-like games that have been invented since 1984 or whenever, Stone Soup is by far one of the most interesting, immersing and intriguing games available.

I say that with an immense amount of respect for the reigning title NetHack, which should by all rights be the only console adventure game available on the planet. But Stone Soup has taken everything about NetHack that I liked, improved on the things I don’t like, and then turned it into a game that is so challenging, I almost take it personally.

Stone Soup reverts the genre of dungeon hack toward something different, by taking out a lot of the normal hackneyed functions (things like selling off treasure to buy more and more powerful weapons) and forcing you to rely on your innate choices to make your way through the dungeon … and back out again.

Before this is all over, if there was one program I would ask you to install and try, this is the one. Take out your oldest, slowest and least useful machine, get something running on it and try Stone Soup, and I can guarantee with 99 percent certainty that you’ll be locked to it for the next hour. And the next. And the next. And the. …

There’s nothing to see with surfraw. I could show you a picture of it, but as soon as you start it, it’s finished, and so there’s nothing to take a picture of … unless you count the browser you use, which you’ve probably seen plenty of.

Surfraw hard-wires search utilities into your command prompt — an idea so obvious and simple that it’s a wonder it hasn’t been done before (or maybe it has). You enter the search page you want, the terms you want to feed it, and surfraw dumps the results into your defined browser, be it text-based or — gasp! — graphical. That’s all.

It might sound like a trivial application, especially if you’re like me and you usually set your home page to the Scroogle SSL search page. I’m always one or two keypresses away from searching for what I need anyway.

But it’s actually quicker and easier to use surfraw, if I know where I’m going already — be it Wikipedia, Amazon.com, the Arch Linux package database, Jamendo or what have you. surfraw saves me the added step of jumping to the search page I want, then searching, and then finding the place I was going to anyway.

It’s something you should try out before you dismiss it. When you see how quick and simple (and yes, obvious) it is, it’s difficult to put down again.

Every now and again, someone takes a traditional idea, puts a new spin on it, and comes up with something better. teapot might be better than a run-of-the-mill spreadsheet, and it does approach the idea in a slightly different manner, but you decide if it proves more useful than some of the others.

I can’t get into too many details without describing basic functions and turning this into a tutorial, but suffice to say the short time it takes to get used to teapot is well spent. I have used it once or twice and it proved its mettle; I wish I could say I used it more often than that, but my spreadsheet needs are few and far between.

So far as I know it won’t convert between spreadsheet formats or extract to a comma-separated list, so in that sense it’s probably only useful if you’re willing to use it as the standard for your spreadsheet functions. It might be worth it though, if you need a console-based spreadsheet that badly.

tidy is one of those programs that few people seem to know about, even if it is a very useful, very stable and well-established program with a long history in a lot of distros. tidy does nothing fantastic, unless you consider cleaning up muddled HTML code to be something fantastic.

I do. I had more than one run-in with HTML pages that didn’t need extracted, just cleaned up, and tidy did the job perfectly each time. It’s flexible so you can insert and control the output without mangling the final product, plus some bonuses like indentation, conversion in and out of uppercase codes, and following strict coding rules.

tidy isn’t something I use every day, but when it is needed it’s a gift straight from above. Don’t forget it the next time you have to clean up a blog post that WordPress.com chewed on for a few days. …

tpp is one of those programs I wish I had more need for. After all, there’s nothing I’d rather do than drag in my 14-year-old laptop, hook it up to a US$400 overhead display and give a slide presentation at 120Mhz.

Oh well. I’m not going to be looking around for a new job just so I can ooh and aah a boardroom with a leftover Pentium machine and a crafty, intelligent piece of software written for the framebuffer. It’s not worth the effort.

On the other hand, if you ever find yourself in need of a lightweight slideshow application that won’t require a US$1200 laptop to push, you can probably get by with this one. The help and configuration files will get you started, and there is adequate documentation elsewhere to handle most of your obvious questions. And I’m guessing you have adequate disk space and memory to get it going. 😉

clockywock has its digital cousin in tty-clock, which is one of those under-the-radar applications that otherwise probably wouldn’t be heard of. It’s mission is so simple as to be a high school computer class project: Put a digital clock on the screen, and keep time with it.

But tty-clock comes in several colors, has several effects, can handle special time formats and even bounces around the screen for your amusement. It’s another application that’s technically still in beta, but usable without fear of kernel panic in its current state. My suggestion is to give it a go as a screensaver, along with its cousin and a few other tricks.

I’m not going to get into the debate over text editors. There are more than enough out there to keep anyone busy, and if it wasn’t for the fact that vim just happened to be lighter than some others, and offer a way of wrapping words without line breaks, I might be using one of those.

Yes, I know your favorite editor does those same things, and I know you can check your e-mail with it and access your Swiss bank account while playing Tetris from within your text editor. I am not telling you vim is great — in fact, there are times I hate it — but it’s not likely to be changed any time soon. It does the job, doesn’t hog my system and thus far hasn’t infuriated me to a level of jettisoning it. And that’s all I have to say about that.

For an even-lighter editor (only 10kb!) and one that probably follows the keystrokes you’re used to, take a stab at e3.

Unrelated to vi the editor, this is another game that’s sufficiently speedy at low clock rates to be used on anything down to ground-floor Pentiums, and likely to prove sufficiently entertaining. There are more than one Tetris remake available to Linux, and a good assortment at the console level; vitetris happens to be my favorite.

Most of the interesting options are controlled at the compilation level, so if you see something there that you like, you might consider rebuilding it from scratch. Supposedly it can handle joystick input and even networked games; I make no promises on that just because I have neither the desire to play online, nor the need to wire a joystick up.

All that being said, it’s a colorful and clean rendition of the Tetris classic, with enough options and game variations to keep you challenged and busy. Don’t spend all your time on it now, you hear?

For a long time I was enchanted by calcurse, and my early efforts to adopt wyrd were abortive — mostly because it works at a level of detail that I don’t need. But I have been won over as of late, and oddly enough it’s because of wyrd’s level of detail.

But just being able to schedule and visually arrange appointments at the quarter-hour level isn’t the only thing I like about wyrd. It’s built-in ability to generate monthly calendars and weekly planners is amazing. It’s reliance on a remind text file means I don’t have to worry about program crashes eating my calendar.

And best of all, it’s fast and light and easy to arrange, so I don’t waste time learning obscure commands just to put a dinner date in my appointment book for next Friday. One last bonus: You can actually type in appointment details like you’re talking about it to your friend, and wyrd will decipher what you’ve typed and add it directly to your calendar. I kid you not. …

Graphical applications

If I can’t convince you to abandon graphical applications, perhaps I can at least suggest some that won’t drag you to your death, if you’re running older hardware.

Openbox // I learned a long time ago that a lighter window manager was the key to using old machines. Desktop environments are usually overcoded and bogged down with libraries you don’t need or want. I’ve tried just about all of the *box sisters and most of the tiling window managers; if you must have a title bar on the screen, I recommend Openbox.

ObMenu // Unless you enjoy editing XML files, I strongly recommend using ObMenu as a way of streamlining your right-click menu. ObMenu is quite old now and has fallen behind on most of the new features that Openbox handles, but it still beats hand-editing configuration files, just to add a menu item.

gtk+ 2.0 Change Theme // Changing your GTK2 theme is important on lightweight desktops, or else you have to pretend it’s still 1998. Several applications will do it for you; this is one of the best, partly because it comes free of attachments to other desktop environments, and is a clean and direct way of previewing and switching your theme.

Potamus // I’ve run through a lot of audio players, and truth be told most of them are overweening, obfuscated messes that require an armload of dependencies when all they’re really supposed to do is play music. Potamus is the opposite of that — drag and drop, buttons for controls and a few effects for fun. Small, tidy and instantly likeable. See if it suits you.

emelFM2 // Two-pane file managers are just quicker and more natural for me, and emelfm2 is the best extension of that principle for the GTK2 desktop. Extremely customizable, very powerful, lightweight for a graphical application and looks good too.

Recorder // This is an offshoot of PyBurn and follows a very comfortable level of simplicity. Can handle any type of burning task without cluttering the desktop or drawing in unwanted dependencies. Intuitive, clean and attractive. Another nice piece of work.

Leafpad // Leafpad is essential because Leafpad avoids adding on too many frills, and focuses on editing text files. If you want nifty code folding or syntax highlighting, look elsewhere. If you want integrated file management and ftp access from the menu bar, look elsewhere. If you want a clean, basic text editor, look no further.

Zim // Desktop wikis become necessary only after you start using them; before that, the idea seems bizarre. Zim is a good way to start, mostly because it behaves and acts like an online wiki, making the transition easy and obvious. Once you get used to Zim, you’ll appreciate it for other functions, like individualized wikis and exporting to HTML.

Mirage // As a basic image viewer with rudimentary image manipulation options, Mirage is my best suggestion. It’s not an image manager, but it’s a great way to skip through thumbnails and trim out files, or to spin photos before sending them on other applications. This is a very nice, straightforward program.

ePDFView // ePDFView is another lightweight marvel, as an excellent little PDF viewer. It carries most of the functions available to heavier, more chunky programs, but without unnecessary weight. Good for viewing, previewing and arranging PDFs, in the same way Mirage is good with images.

Sylpheed // Sylpheed is one of only about a thousand e-mail clients for Linux. I like it best because it does the job without complaint and requires little in supporting software. Configuration is also straightforward and easy to figure out, and once installed, it’s easy to handle. Try and see.

Osmo // Osmo is a calendar, it’s a task manager, it’s an appointment book, it’s an address book. It’s about ten different things all at once, and surprisingly, it does all of those things without turning into a lunk of a program. I know I said I like programs that do one thing only, and so in this sense, Osmo’s one thing is all those other little things that nothing else here does.

Thanks for getting me into Openbox. I kept referring back to this page the whole way through the installation.

I ended up with just docker installed on the desktop. I missed the little clock in the corner — so I installed a program called lal (http://d.minuslab.net/?p=62). You’ll like it — next to no dependencies, just Xlib pretty much, and low memory use. Sits in the system tray.

And if you still prefer a GTK browser, there is Midori, based on webkit like Arora pointed out above, still beta but already usable (with a VERY small memory and disk footprint)http://www.twotoasts.de/

Just wanted to say that your site is a very big resource for me, now that I’m going to have to get an EXTREMELY low end computer to function as my main computer now. I’ve always wanted to play around with lighter apps that didn’t depend on all of gnome. Thanks to the resources here, I think I’ve got it.. 😀

I do have a simple question though.

IM and IRC. What are two apps that you’d recommend that don’t have a lot of dependencies. (One IM app, preferably GTK+ 1.2, and one IRC app, please…)

Thanks very much for the great resource that you’ve put together here! 😀

Sylpheed is awesome! Thanks for that recommendation. If nothing else, that was worth the read.

I use ePDFViewer exclusively, but then again, I always did. Never did care for adobe’s viewer.

I found Recorder in Arch’s Forum, but it is definitely worth the mention. The newest one is pretty slick, allowing for options to be passed, provided you know the command-line options for the backend programs your using.

I’m trying out Kazehakase, Xpad, Zim, and Osmo based on your recommendations as well, but I haven’t had enough time to really play with them yet. Kaze, in particular, is going to take a little getting used to, like installing java64 for instance. (I had to jump through a few little hoops to do it in Firefox, too, so it isn’t a real surprise.)

You’re welcome. 😀 I still keep an eye on Kazehakase but I haven’t had much luck building the recent releases, so I have to rely on Firefox again. 😦 A year ago it was the only thing I’d use, but I ran into a string of mysteriously unbuildable versions after about 0.5.0, and so I’ve been away from it for a while.

Ok… I have discovered the one and only issue I have with Zim… spell checking. I am using a current Arch, I have gtkspell installed, and I looked over the manual.

I am not sure where to specify the language spell checker needs in order to operate. The Documentation is not overly clear on this point. I “think” it is supposed to be in the main config file, which I found. However, I have not been able to figure out the format zim wants it in.

(Kazehakase compiled from the AUR without a hitch, but I am using a 64 bit system… you may be running into issues because of older hardware? I know… it makes no sense to me either.)

I like the idea of using one programm for only one puropse. As a political science student i have to write papers and have to read a lot of papers. To get these tasks done i use gvim to write papers (latex), to read other papers i use acroread.
To get the rest done i started using online apps from goole:
-gmail (offline support)
-greader (offline support)
.gcal (offline support)

with these apps its possible to store all data in “the cloud” and i dont have to manage my data by myself. the other advantage is that i can access my data everywhere.

in my oppionen this is the easiest way to get everything done.. all i need is vim, acroread and firefox.

I’ll try lxappearance again. The last time I tried it (which might have been as long ago as six months), it couldn’t differentiate between icon and GTK themes, and had the whole business scrambled. And since changing the icon theme for me is just a quick one-word edit of the .gtkrc.mine file, I kind of stayed with gtk-chtheme.

dvtm and screen are both worth mention, you’re right. (Me adds them to the to-do list.)

I know that you’re in a terminal only phase but when you get back to X I suggust you try out the browser Midori. It’s small, fast, and has a much better memory profile than Firefox (that’s not too hard though). It uses the WebKit rendering engine so it gets 100/100 on the Acid 3 tests. It’s still pretty early in development though, although it’s improved a lot since I last used it though. Also the guys at XFCE look like they will be adopting it as a official browser for XFCE.

Oh and I second that suggustion for lxappearance. I used to use gtk-chtheme and manually edit my icon prefs but with lxappearance around it just makes that kind of silly.

Since the mc userforums somehow have beenswallowed by a black hole or so. I come here to ask:
Is there a way to set “run actions” for files? Like when I doulble- click on a mp3 it should open it with alsaplayer?
Or when I double click a movie it’ll invoke mplayer …….
Any hints?

I’ve tried the Japanese browser, Midori and Arora. According to htop, Arora is the lightest on resources by quite a margin, though all three are lighter than Opera which in turn is way lighter than IE or FF.

By the way, for your Openbox mention of Obmenu, there are two other GUI bits that work on the rc.xml… Obconf and Obkey. Obkey with with keybindings (not mousebindings) and obconf does pretty much everything else, except mousebindings and per application specifications. (Obkey is only available in the Arch’s AUR, while the other two are in Arch’s repo.)

I wonder how long it will take Obconf, Obmenu, and Obkey to merge into a single, tabbed GUI, maybe with a mousebinding’s controller, too. It would clean up my menu rather nicely.

Hear hear. I would love to see ObConf absorb ObMenu, particularly because the latter hasn’t seen an update in the entire time I’ve been using Linux. Openbox has changed enough to warrant updates (for example, you can label separators manually, but ObMenu doesn’t support that) but ObMenu must have stalled years ago, because it’s seen no improvements that I’m aware of. 😐

Hey K-man, thought you’d be interested in volwheel, this app I found in Arch’s community repos today–it’s a nice light tray app for controlling volume, and works well with fbpanel and the like. It runs well as a daemon at startup and uses whatever gtk theme is loaded as well. Try it out and let me know what you think.

Awesome site!
Awesome page!
I have changed a lot of my configuration now.
I am a gentoo fan, and no I don’t wanna start an argument here over what’s best Ubuntu or Gentoo
What I really want to say is Thanks for this awesome compilation of softwares!
I am compiling openbox (as I type) and I am gonna get rid of all the stupid KDE apps that I run on my Fluxbox! (yes, I was stupid enough to use fluxbox+konqueror+amork+konsole combo)

you have given excellent alternatives
few queries and suggestion from my side

1. Mirage vs gqview
Try gqview, its just like mirage, but is more user friendly (you don’t have to change dir manually, standard flipping/rotating images can be done right from their)

2. epdfview
saved my life from that crappy acroread! thanks a ton
i was thoroughly disappointed by gv (i don’t know why I use it but removing both acroread and gv)

3. terminal ??
I use aterm (with transperancy and nowindow, so it sticks to my desktop) So I can’t use multiple aterm’s.
the xterm comes by default with the X server which i don’t like (no tabs)
So I use Konsole (I know, too many KDE dependancies)
but i think i like the keyboard shortcuts and multiple tabs in konsole
can you suggest me good terminal which has tabs feature?

4.volwheel
thank god, I don’t know why I started using KMix (prolly due to konqueror and konsole pulling most of KDE stuff)
I definitely like this one 🙂

5.Amarok alternative NOT alsaplayer
Apart from playing the mp3 file I want my music player to be able to build collection too. Why? its easy to pick song according to artist/album or even name if you have such collection.
I don’t think alsaplayer can do that. What would you like to recommend? Rhythembox ? or Audacious ??

Thanks again for this awesome page!
hope to see your reply (here or my inbox, anything will do)

thanks for the MrXVT tip
I am using it rite now
i changed mrxvtrc
now it has no borders,no menubar, no tab bar buttons, no scroll bar, complete transperancy and it looks awesome
i don’t have a screenshot utility, otherwise i would’ve shown my desktop screenshot here 🙂
BTW, any suggestion on screenshot utility?
i have gimp+gqview already installed

I know you were looking for K. Mandla to reply but I’ll give you some suggestions too.

I’m assuming you’re looking at GTK apps now so those are what I’ll suggest. For a terminal I would suggest Sakura. It has pretty light dependencies and K. Mandla used it for a while too. Yes there are tabs.

For a music player I would either suggest Consonance (look here for K. Mandla’s post about it) or MPD and Sonata. Consonance is a very light music manager which you should feel comfortable in coming from Amarok. MPD (with Sonata or another client) is a bit different and more advanced. Use it if you want more control over your player and music library.

I tried MPD
but somehow didn’t like the idea of running a server/daemon
that was long before, I will give it another go.
Sakura is pulling 3 dependencies
vte (its required, i undertand), xmlrpc ??? and cmake ???
anyways, i don’t mind pulling in cmake (will remove it after compiling sakura)
The problem is with VolWheel and consonance
both are not in portage 😦
I use gentoo and portage is the legendary package manager of gentoo
looks like i have to compile them manually 🙂

No problem. If the issue is that you’re not sure how to manually compile them the process isn’t too hard. VolWheel should be a snap. Download the source, unzip it and then read the README file for installation instructions and dependencies.

Consonance is pretty similar. Download the source, unzip and read the README. Make sure you have the dependencies, you can use the Arch AUR page for that as it lists all of the dependencies.

MPD+Sonata :
I tried mpd, but didn’t like it. The whole idea of some server running through my music directory and another client listening to it, is too much for me. I don’t know why, perhaps I am missing something. Anyways, I installed, and then removed mpd+sonata.

Consonance :
Did as you said, download source, unzip, install according to the Readme. AUR page was helpful.
It installed without a hitch, started using it
Very simple good intereface
BUT!BUT!!BUT!!!
cpu intensive! i have c2d 2.4GHz and its uses 20 to 40 % cpu
WTF??
when i read the FAQ, I’ll copy paste it here-
“””
Q. Why the fsck does a freaking music player consume so much CPU ?
A. Use the HW device directly in ALSA (hw:0,0). The ‘default’ device is dmix which is setup with a samplerate of 48Khz while most tracks are in 44.1Khz samplerate. Resampling is cpu intensive. Using the HW device, bypassing the dmix plugin is the current workaround. Of course, you lose the advantages of dmix in the process.
“””
anyways, this is no place for troubleshooting consonance. Also I really need the functionality to search song as i type (by artist/album/name etc.)

I am gonna try alsaplayer and audacious.

Sakura:
I am using sakura, and its a bliss to remove konsole and its KDE dependancies. (y0y0!!)

FileManager-
I removed Konqueror (y0y0!! again :D) now I have to try good file manager (konqueror is too heavy)
any suggestions?
I have installed emelFM2 and first impression is “great”!!
but I won’t mind trying another file manager

*phew*
had too much fun today
do suggest me if there is more
I will come back here tommorrow 🙂

Yeah, at first I didn’t like the idea of running a daemon just for music but now I don’t really have that problem as I’ve seen how useful it is. It’s nice being able to restart X and have my music continue. Or just have the ability to listen to music without a client running. But to each his own.

As for the CPU intensive Consonance stuff this is a problem in ALSA not Consonance. You can configure dmix to stop re-sampling or just not use dmix. There are pages in the Gentoo wiki about this I believe. If not then the Arch wiki should help.

I highly recommended Audacious. I’m not too sure about ALSAPlayer but it should be good if K. Mandla likes it. I used Audacious for a pretty long time and I was quite happy with it. The reason I didn’t suggest it is because there is no music library. But if you have your music nicely organized in a directory then it’s easy just to drag and drop into it.

If you like emelFM2 then my all means stick with it. If you want to experiment, some other popular choices are PCmanFM and Thunar. Thunar can be made to be very minimal or (how I use it) a glue to keep the parts of your system together. You can use it with the thunar-volman package to make it automount your hal devices. It’s up to you. I’ve never tired PCmanFM but I’ve heard good things about it, same with emelFM2.

and i am back… after a long time 🙂
had to change my ethernet card
now the eth link goes up/down every min for a second, but at least my internet is working

@sean
i did not try thunar as it showed xfce4 dependencies on my gentoo machine (should there by any? i don’t know)

i am happy with emelfm2
so i’ll stick with it

as for audio player, i came across soundbird (i know, its heavy, needs gstreamer and xulrunner and what not)
but i was trying exaile at the time when i downloaded its ready to use tarball and exaile had already installed gstreamer for me, xulrunner was not a problem as the tarball itself comes with its own libraries

it’s an iTunes (and also amarok) killer app
hence i am NOT going to recommend it to you guys 😛
it has all the features one would ever need (yes, scrobbling library and all) PLUS an inbuilt web browser!!!
hey! i didn’t ask for it, but where did it come from??
the answer is that the huge (~30mb) tarball comes with its own libraries and uses its own stuff (hence the xulrunner and all stuff)
though its a big buggy if it can’t find some system library it actually requires and you have no clue where to get it

i have installed audacious alongwith it
and i loved it!
alsaplayer somehow isn’t playing any mp3s for me (dunno why) and i think i like audacious2 🙂

now apart from this
i am still on fluxbox, as i love my current desktop way too much (and am way too lazy to configure openbox from scratch 😛 )

all kde apps are gone, so is qt,qt4 (wow!!)
not much gnome stuff either(yay !!)

the volwheel is highly unresponsive mixer (scrolling and actual change in volume differs almost by couple of seconds!) so trying new mixers

i am searching for a good FTP client (i am using fireftp extension of firefox for now) but will soon need a gui (gFTP??) client

also, in most probable case, i’ll be setting up an FTP server
any suggestions on that?
tried proftp, it has gui (thank god), but would like to try other, easy to use servers
vsftpd is too geeky for me (can’t sit and configure files running into 100s of option=value lines)

i removed mplayer (some library problem, wont compile/run on my machine… and wanted to try new stuff)
installed vlc first
only to realise no GUI (it’s qt based)
now using xine (xine-ui is not that bad, if you ask me)

*phew*!!
excuse me if I wrote too much
and also pardon my English/typos

@Prince, yeah Thunar has some XFCE dependencies because it’s the defualt file manager of XFCE. Anyways I just use the thunar-light package in the Arch AUR which builds it without the silly dependencies and other annoyances like the xfce4-panel requirement just for a trash plugin.

That’s a good question. It’s been a year since the last update, and I wonder if perhaps the authors are preoccupied. If you can read or speak Japanese you might be able to trace some of the development, but other than skimming the mailing list or watching the update page, I have no more information than you. It would be sad if it stalled. 😦

I have to disagree, f-spot is a very nice program. It takes generically named photo dumps like from your camera and sorts them based on date in a timeline archive. And when you browse through to check that you got all the pictures off the camera and took all your snapshots you can do the tedious task of flipping the pictures if you like. It does a few other useful things but I never had an issue it being wasteful.

Call me old fashioned, but I still mainly listen from *CD*s. Alsaplayer is a simple no-fuss player that allows me to do that. In this era of mp3 and other digital formats and the like, you don’t know what hard it actually was to find something like that.

For the record, I just use (gnome-)mplayer for playing most other things. It plays whatever you throw at it, and I don’t need the music management options. (Or even advanced tuning options – my aural needs are very basic). It also has that useful browser plugin.

Hello !
Long time not many comments on this page 🙂
Anyways, I am currently using audacious (media-sound/audacious-2.0.1) in gentoo portage. Its good but the problem is sudden spike in CPU usage. The behaviour seem totaly random, usually when i am monitoring by htop, i see 2-3% CPU usage by audacious, and suddenly it hogs on to 40-60% usage !!
I am playing normal mp3 files, with 256kbps CBR
running $ audacious2 -N gave no errors (apart from GTK warnings) and show no more debugging info for the sudden spike in CPU usage.
I don’t know if this can be fixed, but I would like to try another audio player.
Any suggestions?
library support is highly appreciated, but i can do well without it.
Last.fm scrobbling will be simply great 😉

Good luck.
One thing I found hard about Openbox was the lack of a Panel to have applications hidden and running in (there are external apps that will do this easily and lightly if you want it). Openbox also takes a lot of configuring to get it just right, but you’ll get it (Obconf will help a lot).

IMHO, although it also takes some configuration, Qingy is better than SLiM. Still graphical, options to shutdown/restart/etc the computer, choose session — but the X server isn’t used, just DirectFB. 😀

k mandla awesome blog i find it both informative and inspiring. many thanx.

Time and circumstance has left me with a laptop running a full install of ubuntu intrepid ibex!! which i have been swapping out various applications, influenced by this blog. Rythmnbox is the ubuntu music player i don’t like it much the way it organises files after ripping, encoding. tagging is head f*** in it itself when your offline. but it was all the extra folders /home/unknown/unknown… and the subsequent reorganisation with rythmnbox that ended it for me. i am now using “MOC” as a player, and “abcde” to rip, encode and tag.

Jack??? i noticed this afternoon that “Jack” running in the terminal does much the same thing as “abcde” but it has a little screen so you monitor the speeds it rips and encodes and it shows you how much hdd space you use. also it puts a .toc image in the folder with the tracks if you wanna burn a disc. Does anyone use Jack? i’m interested to know if jack gets cd info if you are online when its running?

Personally, I’ve long had a strong aversion against the curses-class of applications. I use a lot of cli-apps but if I need a GUI, I’d rather step up to an X program instead of making do with an ascii-art representation. This is not intended as a slight against any particular library or application—WordGrinder is particularly well thought out—it’s an æsthetic principle. CLI apps welcome—faux »text GUI« ones: not so much.

My current exception to this is rtorrent, which I’m looking to replace soon because it has some quirks.

I was thinking you might like ncmpcpp… it’s an mpd client for the console…

Also, torrent stuff… I like rtorrent, but if you need something else there’s ctorrent (which is outdated) and Enhanced Ctorrent which has become the new ctorrent on many distros… http://www.rahul.net/dholmes/ctorrent/

Just wanted to drop a note to say thanks for all of the great info you have on your site. I’ve been a linux user off and on for around 10 years and there is just tons of interesting stuff that I never knew about that I’ve found through this site. htop, hnb, framebuffer stuff, etc. Keep up the good work!

If alsaplayer could replace the playlist with opened files, and start playing opened files immediately, I’d use it. So, I’ll have to stick with smplayer or parole (Parole is on goodies.xfce.org)

Thanks for telling mt about gtk-chtheme though. I was hoping to get a scanner chooser gui or get a cups gui for lxde or xfce like gnome has, but… no such luck. (It needs to be able to tell SANED that my HP AIO is a scanner.)

Oh yeah, –no-install-recommends is your friend if you want a pure desktop. can’t believe how many things I can not install in ubuntu apt-get by putting on that flag (install mini.iso and compare installing firefox to installing firefox with that flag on.)

I generally avoid reading blogs like I avoid the plague, because they are almost always annoying, self-promoting, and filled with pure crap.
But reading your blog page here was a pleasure! Lots of neat applications mentioned, very practical information, and your comedic use of the English language gave me a few giggles 🙂

For the record, I stumbled onto this page somehow while Googling around trying to figure out if DVTM actually supported multi-monitors or not (I still haven’t decided) but now that I’ve seen this page, I’ll be back to read more of your blog articles in the coming days/months.

I was looking around and stumbled upon gqview in stead of mirage… it seems faster and it works really well. Not sure if you’re interested or not. Just figured I’d mention it since I found it when you suggested wbar.

Looks like it needs gtk… that’s the only real dep I see. I just tried it and noticed that it was loads faster than mirage since I think mirage is python based.
It seemed to be pretty lightweight dependency wise, but I could be wrong.

I’ve stopped going to most linux sites for the last couple of years ‘cuz they’ve been been mostly the same on the same subjects , but you’ve managed to turn a minor interest for console use into a MAJOR interest! The information I find here has all but been lost in the general noise of the typical linux site ( a indicator of whether or not the linux desktop has arrived,……. it’s time to leave it ).

Hi, really nice to see people using computers to the limit and moving away from today’s consumerism. Maybe you already now http://ginatrapani.github.com/todo.txt-cli/ but I thought that some people would appreciate it. Keep posting!

After reading several of your articles I’m dying of regret after having sold my HP Jornada 728… I thought there wasn’t much I could do with it, even after I installed JLime linux, but your blog proves I was wrong.

BTW, about hnb. Since you are a vim person, like myself, all you need is the vim-outliner. Check it out 😉

Disclaimer: I attest that I have accepted completely your point of view for five weeks and completely obliterated all my computer use patterns and fully embraced yours, I have bigoted on your blog trolls and commenters, I have asked for advises and followed yours and others, so I can say I completely immersed myself in the user experience you proclaim, so this post is a result of a careful in depth analysis of my experience in the light of the real world computing as of today!
I also have to say that I have master degree in ecology and environmental protection as well as bachelor degree in software design, so I strongly support the notion that old hardware that still works (meaning it is not physically damaged) should be re-purposed in any way possible and put into use and even more – repaired until practical and again used before it is dumped. This was one of the main reasons to invest my time and energy into investigating your position on the matter of old computers and practical uses for it. However I don’t think your statements on practicality and usability are true and thus the following long exposé on the (considered to be so by my humble mind) false assumptions you make in writing your blog. The full text can be found on my blog ( http://malwkgad.livejournal.com/234947.html )

I am happy to report that my adventurous love affair with your blog is now over.

I find it mostly waste of time for the following reasons:

* while all your arguments and howtos are viable and practical, you tend to proclaim the fallacy that:

— using console interface is the path to the true computing, which is (scientifically and measurably) untrue —

Using keyboard only to navigate between several contexts might look to you like you are more effective, but it is actually not, it just seems that way for you. Adequately measuring the performance from a remote stand point will reveal that this is not the truth, it just is apprehended that way by the operator/user because the brain is actively involved in doing the switching between the contexts, while when using the X (or any other window environment) this is mostly ‘brainless’ operation, your hand moves the mouse to the point where your eyes see the task/context, you proceed to the task as you see it, you don’t have to know where it is, it is simple mechanical exercise.

* your statement discards the true nature of the www

— while it is true that some web authors tens to overuse the styling capabilities of the modern browser environment, it is also entirely true that the user have complete absolute control over the presentation of the information in the browser —

css can be disabled completely, image loading can be disabled, javascript can be disabled, advertising can be disabled, plugins can be disabled. More over, the learning curve for text only browser compared to one time configuration of a modern browser to display the information as text only browser is significantly more acceptable. One can share its browser configuration and while text only browser configuration can also be shared between users still the high learning curve for navigation and adequate advanced uses remains, while regular browser learning curve is pretty much one step – learn to use the mouse to point to an object and click. More over – it requires expertise way beyond the one of the average user to configure video/picture display (content that IS important, unless one is only interested in technical documentation, because all other documentation can benefit from diagrams and other image representation of the data) which is point 3 in your fallacy statements:

* all image/video/graphics/sounds embedded in a web page are useless and distract the user from the actual content

— while this can be true in some cases, most viable sources of information at least try to use the tools of modern day web environment for the benefit of the user and not for distraction—

Again, the user have complete control over the user experience received from the web (which is NOT the case for regular application, will get there in a minute). Lots and lots of web applications simply would not exists without the modern capabilities of the browser environment. Applications that ARE useful, like web calendars (I will not go into the cloud vs personal data here, you can run your calendar application on your server as well as on google/yahoo and still make it available on your phone!), banking applications, data mining and visualization, real time data presentation and so on. Using audio directly in the browser is very scarcely used anyway, while using video to present the outlines of a big chunk of information or demoing a large project is very popular and NOT because people are lazy to read the full article, it is just more easily apprehended because it involves presenting more dense bits in shorter time. It is as simple as that, sorry but it is truth. Also images ARE important, how fast can one describe the snow on his street in words and in picture? Even you have to admit it. And it is also true, today 99% of the pictures are exchanged via http. Take for example the density of information you can get from a photo blog using elinks and firefox/webkit – load the blog and go… I bet I will be finished with the blog before you can even load the first 10 pictures. Talking about effective use of our time, not “right way to use computers”

* console applications are more useful: i don’t even have to comment on this one, but I will

— while there are some very capable console application, (for example newsbeuter is extremely powerful in its filtering!), the learning curve for them and the usability are much lower, which makes the statement that computing is not for grandpas true, which thank god is not anymore! —

First of all pointing and clicking on well known icon / signs (like the play sign which is UNIVERSAL and well known and easy to remember and recognize) is much much more easy to learn and easy to use than remember how the same action is performed in each and every application (as console applications tend to NOT follow some sort of standard on how things are done, there are almost no music/video players to make the same thing the same way in console world). Second – contest switching from point one is valid here too – one does not really have to switch context first before perform action in another context, while 2 or more contexts can be observed and acted upon if desired.

Lets say I have browser and torrent client. In console I have to first switch from browsing to torrent context, then perform the desired action. In regular GUI i just perform the action should both context are observable (which (if they are) I can decide and not rely on specific predefined configuration like I have to in console (using screen or similar utility)).

And then we have again density of information: representing actions as buttons with well known signs / icons is very powerful, as the sign is the same while the action can be relevant: example: in torrent client play sign will start the file while in music player the same will play the song, in IDE it will run make, in service configuration tool it will start the service. The user can guess the action from the context of it, while in console application while some provide “help” menu somewhere the user mostly HAVE to know how to perform an action. eventually most user will learn, but it is pointless and wasting time. The performance in account of the user interaction will never reach the one of GUI app.

Here we face also the language barrier: most applications are written in English, should the user NOT know the language – we are done. Some console apps can be translated easily, some might not at all, but using icons and buttons IS universal. So stating that using console applications is more powerful is complete fallacy, how powerful an application is depends on the developer not the medium. The same applies to its resource demands: while it is true that pretty much all GUI apps require more resources to run, it is also true that this depends entirely on the developer: I for one have developed WEB interface for an application and the GUI for it is run on the browser, while the application work is headless. The application of its own requires as low resources as one written for the console and still provides more useful interface to its functionality. The fact that most applications rely on GTK/QT/KDElibs is true, but it is related to laziness and speed of development, the original Xlib was a small hell and very very hard to use. This is why GUI libs are predominant, they open the computing world to more developers. Same with Web apps – making useful things with javascript is so easy, pretty much anyone can start using it!

Web app can be very easily translated and can be upgraded and updated as much as the author wants, edge cases (where for example no JS is avalable) can also be handled, more over the application can be easily modified on the user side (using client scripting for example – something that is mostly impossible for you for example, as you do not know C and cannot modify the applications you use, you rely entirely on the developer).

I am not sure if anyone here will agree on any of this, but now I am completely sure you and your followers apprehend yourselves as some cast that knows the right path to the computing and everyone else for you is lost in the non-sense of modern computing. I was trying to follow your path of thinking and made this experiment, I have lived without normal computing environment for over a month. It slowed me down, It made me spend more time in front of the computer and it made me lag on performing very simple tasks (for example copying text from one application to another is pain in the console when the application has its own windowing, like finch of irsii or elinks!!!).

This said – now I believe you are on the wrong path, for users like you I believe the right path would be – run web applications (your own!), write them to be fast and efficient and have only web interface, very simple one, but web, and use whatever you feel like as browser to access all of them! browser environment can be effective even without images, sounds and plugins! one can also configure handlers for flash video in a regular browser ( so the video can be played by mplayer or just downloaded and so on), all images can be saved at once and on and on possibilities, that you delude users into forgetting and hang themselves in an era not 10 =12 years ago but 30! because text terminals were used 30 years ago! Just watch Crockford’s first hour presentation on history of computing and you’ll see what I am referring!

I realize that you made a few decent arguments, but not all of them are completely valid.

When you said the console is the path to “true computing”, you then proceed to argue that it’s more efficient. These are different arguments. The console has you running the commands that other programs would be hiding in the background. Also, it really depends on what you’re doing if it’s more efficient. You could use screen or tmux to make it easy to switch between windows. The whole concept of the console is that you don’t need the mouse.

Also, while CSS and the like CAN be disabled in a modern browser, that still does not avoid the overhead of a graphical environment and everything extra that browser has to render. On old hardware – even semi-old hardware – firefox or chrome will murder the processor and eat the RAM for breakfast. Elinks, on the other hand, happily plugs along.

There have also been points made in this blog that the content on the web is not pointless, there are just alternatives that work just as well. For example: grooveshark, a (mostly) html5 music player online. That’s fine, why why use it when you don’t need the overhead of a browser? Such as with Jamendo. Not quite the same, but you still get loads of music to listen to.

The idea that console applications are useful is a matter of preference. I personally love console applications for their speed and simplicity. Take, for example (someone will kill me for this) amarok vs ncmpcpp. Amarok does so much extra stuff that I will never ever need. Oh, you want the wikipedia page for the band? Let’s use the resources to load it even if you don’t want it. ncmpcpp, on the other hand, uses mpd, a lightweight daemon to play the music and organize it with ncmpcpp.

Torrents, as well, I’m not sure what you were talking about. Possibly pausing or stopping them, but I have to say that starting them is a whole heck of a lot easier. Drop the torrent in the folder and let it run. Other actions take no more energy than clicking the icon of your torrent client. I simply go to a new terminal and type rtorrent. Oh, look! There it is! Almost instantly too, unlike many graphical torrent applications.

I guess lastly, I have to say that this may not reflect the views of K.mandla or even the other users on this blog. They’re my own personal opinions and when someone attacks someone I agree with, no matter what they say before hand to say that they read it before, I am inclined to defend them.

By the way, if this starts a flame war, I’m really sorry about that. Not what I was aiming for.

I I completely understand your point of view and I am not arguing that it is not valid, it is valid as long as stated as ‘i like it this way’ and not stated as ‘this is the better way’, like Mr Mandla points it out often.

I like the way console folks always point out the behemoths of the GUI applications and compare them to the console ones. There are very small and very simple and small GUI applications. For example why not compare mpd clients but instead compare amarok to ncmpd?

I have to admit. I am in love of the idea that we can use old computers for useful things.

But I honestly believe console apps is not the right path.

Oh and by the way – all torrent clients can do the same thing you mention. And firefox can be configured to not use cache at all! Try it sometime. It seems like you just do not want to explore what can be achieved in GUI land. Ah, and one more thing – clicking on torrent in GUI skips the ‘place in a directory’ step – ff starts the torrent with the file downloaded. I guess this is even faster:)

One thing I would want to point out: KDElibs and GTK are getting more and more big and complicated. Instead of holding onto console, why not write toolkit that is simple and fast, does not have any fancy in it, but is useful?

I’m almost positive K.mandla has said in some places that he knows that this isn’t the way for everyone. The “better” way for him may not be the “better” way for everyone else.

Alright, a slightly fairer comparison would be gmpc + mpd to amarok, but that is still not a console application.

Console applications take up a much lighter footprint. Even if you configure firefox to not use a cache, it still eats memory like no other. Also, you can configure elinks to do different things with different files, just like you can with firefox.

Also, I have no problem with gtk+. It’s actually quite lightweight and efficient when compared to other toolkits if you’re using a decent engine (I personally prefer mist). I’m not arguing against a graphical environment. I agree that it’s efficient for some things. I just think that there are plenty of options for the command line if you’re running old hardware and still want to put it to good use. Or if you want to spend $50 on a computer in stead of a few hundred.

Writing a toolkit from scratch would be nice, but I wish you luck. gtk and Qt are HUGE projects and even starting a basic toolkit would be a huge undertaking. Also, getting projects to adopt your toolkit when other, better supported ones are available would be hard. If you want lightweight and pretty, look into e17. Only downside: it’s unstable as hell. You won’t get much support there.

I don’t completely disagree with you, but I still think console apps are more efficient in some situations, like developing code and using stuff like git or hg. Also, vim is amazing.

Some of my own choices:
mksh-a shell that’s MUCH faster than bash
oleo–but hacked to compile, and recompiled with Lesstif
Ted-an RTF editor, handles tables far better than AbiWord, needs just GTK2 or Motif (not a dozen libraries for every file format known to man).
Claws mail, but I think Sylpheed is actually better in some ways
gvim–especially using nextaw or motif
nedit/gtkedit for simpler editors
geg for graphing, xcalc or ” busybox dc” (RPN) for regular calculations
xmms/mpg123/ogg123/aplay for sound
links2 or links-hacked for browsing, sometimes
urxvt/urxvtd+urxvtc
R and GRASS are some of the heavyweights here.

Great page.. I agree with your overall philosophy, some of my choices are different (naturally) but I’m always interested in such programs and when more than 50% is “compatible”, it usually means I can be introduced to a tool I did not know..

I think a table-of-contents would improve this specific post a lot (just the list of software on top)…

Just a tip : With midnightcommander it’s also possible to view .pdf files on console 🙂
So it shows you the plain text if you put the marker on the file and press the F3 – if you want to view a .pdf on console and you need to display the pictures in it, then I’d reccomend the fbgs – that’s a wrapper script which uses gs (GhostScript) and fbi (framebuffer-imageviewer) – also
PS (PostScript) files can be displayed with this tool on the console.