Which Applications Are Going to Turn My Linux Box into a Lean, Mean, GUI Shredding Machine?
When using my favorite window manager, Fluxbox, I get a lot done in console windows: moving files around, programming, editing documents, etc. I, however, was dependent on several applications that I used for surfing the net, instant messaging, playing music, and monitoring my system. The following are some of the console applications I found that allowed me to ditch X.
Important things first: How are we going to play those mp3's in the console? We could use one of those boring command line players, but why would we where there is mp3blaster. Mp3blaster has a well designed ncurses interface. It is easy control the audio mixer, browse the available options, play files from the playlist, and control shuffle and repeat all from the main window. Selecting mp3's to play is also a breeze with mp3blaster's file manager. Multiple files can be selected one at a time or by recursively selecting directories. One of my favorite features in mp3blaster is its ability to let you create groups within the playlist. This allows for added flexibility in the order that your music is played and also is convenient for adding and deleting groups of music. If you're an Ogg Vorbis fan, mp3blaster has you covered with ogg support.
Now that the tunes are blasting lets look at instant messaging software (another area where my expectations were low). CenterICQ is the console user's answer to instant messaging. It supports several networks: aim, icq2000, yahoo!, jabber, and IRC. It can also connect to the MSN network with a patch that can be found in the forums at the CenterICQ fan site. It sports an ncurses UI that perfectly makes visible everything necessary to view online buddies and carry on several conversations at once. It has excellent menus for detailed configuration and is feature rich with options such as using Emacs key bindings in the text editor, mode settings for sorting groups, and nice menus for searching for users, viewing chat history, and viewing user details.
If you are running network services IPTraf makes it easy to monitor TCP and UDP connections. It can provide various real-time statistics on each or all network interface and custom filters can be created to monitor specific traffic from a specified port for monitoring services like HTTP or STMP. IPTraf supports logging of interface traffic to the disk (it will create a file per interface) and several other useful configuration options. It's UI is also ncurses based making the output easy to read and maneuver through. For monitoring other aspects of your system don't forget about the good old top and ps commands.
If your a P2P file sharing fan you will be pleased to know about giFT. It has become pretty popular amongst Linux users and can connect to its own openFT network along with the popular FastTrack and Gnutella networks. It works by combining a daemon (giftd) that connects to the networks of your choice and allows various interfaces to connect to it. GiFTcurs is the ncurses front end and it is easy to use. Combining the configuration options of the giFT daemon and giFTcurs (mostly achieved by altering giFTcurs.conf) the user is provided with a highly configurable tool that returns good results on searches. My only complaint with giFTcurs is that as far as I can tell it does not, by default or configuration, have some of the features that other P2P clients or interfaces have. The search options are very basic (search string and type of file), the detailed information about search results requires scrolling on each result, and the results are not sortable by this detailed information.
The last two applications I will present are Midnight Commander and Emacs. Both are GNU applications that have long histories. Midnight Commander is a file manager that is roughly compared to MSDOS's Norton Commander and at first glance reminded me of the old DOSSHELL program. It has many more features than both of the DOS managers mentioned and also includes an editor that supports syntax highlighting and key combinations similar to those found in Emacs. Because it is where I spend so much of my time, I can not help but mention the Emacs text editor/environment, despite the fact that everyone reading this has most likely heard about it or uses it. What is nice about Emacs is that it allows you to do key combinations that help you to edit text quickly. It also includes many features like its own E-Mail program, file browser, games, and is very configurable with the use of LISP scripts. There are several good tutorials to help with learning Emacs and I also suggest getting O'Reilly's "GNU Emacs Pocket Reference". Any effort you put towards getting past the initial learning curve that is associated with this editor will pay off in productivity due to Emacs infinite customability and huge number of features. Aspell is also worth mentioning because it is a powerful spell checker that provides better suggestions than many other, more popular, spell checkers that I have used. It is capable of checking plain text files, HTML files, TEX files, e-mails, and many other types. So after or during your Emacs session you can jump into Aspell and be on your way to superb spelling.Conclusion
The applications available for the console are at a level of quality that should satisfy a large array of *nix users whether your goal is to add some new applications to your arsenal or to use the console exclusively. My favorite advantage gained by using console applications is the ability to run a ssh daemon and access these applications from anywhere with a basic ssh client. All of you console applications are instantly available to you making it easy to, for example, log in to your computer load up CenterICQ and have a messenger that is instantly configured and connected without having to install various clients on the local machine you are working on. It becomes easy to log in and load up IPTraf to monitor network traffic or to edit the source code, html documents, etc. Using the console exclusively also gives you the advantage of using less system resources, which can be important on a slower machine and it enables you confuse and/or impress your Windows using friends when they catch a glimpse of your monitor. In conclusion I will mention GNU's screen application because it allows you to switch between multiple applications in the same console window. This is very useful when working with a limited number of consoles. Enjoy the freedom of options that GNU/Linux and its developers provide.
I am a Computer Science student at CSU Chico. I started exploring GNU/Linux some years back with the RedHat 5 distribution and have since tried numerous distributions, learned a lot, and have had much of fun. I am currently running Gentoo and Arch Linux and I am very happy with both. My web site can be found at http://hypexr.homelinux.org.
- "Console Applications That Shine, Page 1"
- "Console Applications That Shine, Page 2"