Updated: June 6, 2009
It's been approximately two years since I've written the first article, A (cool) list of Linux tools. The article proved quite popular with my audience, as it allowed Linux users, new converts in particular, a quick taste of some of the more useful programs available for Linux platforms, across a range of categories.
Since, a lot has changed. Two years is a long time. I have decided to write a new article, from scratch, cataloging an up-to-date collection of must-have programs. To make it even more interesting and useful, I decided to add screenshots wherever I can and link to tutorials explaining the use of these programs. So, not only will you have a nice list compiled, you will also have a preview of what they look like and detailed instructions how to configure them!
Like the last time, the programs will be sorted by categories. The list won't be too short, but it won't be too long, either. It will contain just enough great stuff to get you started, without being scarce or overwhelming. Considering the fact that almost anything in Linux can be done in fifteen different ways, it is very easy to get lost in the ocean of choices. I will try to maintain a right balance between quality and quantity. Furthermore, it is important to add that I am using or have at least thoroughly tested all and any application listed here. There will be no random entries.
I will not be listing games here. They belong in a separate category, although I will make a few references to several useful game-related articles I've written. If you're interested in learning more about Linux games, I recommend you check the entire section dedicated to this goal, with some 30+ titles reviewed in detail.
Likewise, there's a users' recommendation sub-section, so you can send me your suggestions and ideas. In general, the programs must be production-grade, no alphas or betas, easy to install and use, and supported by main distributions. I can't promise to include your choices here, but if I do, you'll be credited with your contribution. So, if you're ready, plunge in and enjoy!
Unison is a simple, lightweight backup program. It is GUI-driven, which makes it well suitable for new Linux users. It is capable of backing up files and folders to local and remote locations (via SSH) and can run scheduled. To learn more, you may want to read my backup tutorial.
TimeVault is a snapshot software, which, when activated will create copies of all files and folders that change, retained a detailed archive of all revisions. It is very useful for keeping track of frequent changes to important files. It also guarantees easy recovery of lost data. I have reviewed TimeVault some time ago.
CloneZilla is a fast, light imaging software that runs from a CD. It is well suited for desktop use, as well as massive deployment in server environment. The program can backup and restore high-quality, high-compression images on a variety of disk, partition and filesystem types, including NTFS.
Mondo is a text-driven system backup & restore utility. It is reliable and works well with a range of filesystems. Mondo is the module responsible for creating backup archives. Mindi is the module that packages archives into bootable .isos, so they can be burned and used on any machine. Please refer to this tutorial for more details.
PartImage is another powerful imaging software. It comes bundled with a large number of system rescue, recovery and backup distributions, like SystemRescueCD. Both CloneZilla and PartImage are featured in my Free imaging software tutorial.
Remastersys is very handy application that allows you to clone and backup your Linux distribution, including root, home, other partitions, and all personal, custom configuration to a fully deployable, bootable live CD. Remastersys works for several distributions, including Ubuntu and its derivatives, like Linux Mint and Klikit Linux. You may want to check a detailed usage tutorial.
remaster-on-the-fly is a Remastersys-like utility, included with PCLinuxOS 2009. It has the same function like Remastersys.
Firefox is my favorite browser, on all operating systems. It's robust, fast, safe, and most importantly, extensible. With thousands of add-ons available, the basic Firefox functionality can be significantly enhanced.
In fact, addons are what makes Firefox unbeatable when it comes to customization, flexibility and security. Some of the addons I would like to recommend are Noscript, Adblock Plus, Scrapbook, Sage, DownloadHelper, FEBE, CLEO, Zotero, and the very unique Ubiquity.
I have recently reviewed Firefox 3.1, including the many improvements and performance gains it brings. You can also find articles on how to configure Flash in Firefox on Linux platforms, how to install addons, how to backup the profile and extensions, SSL security, as well as some less known stuff like how to open .mht files in Firefox.
This is an excellent utility that enables you to run Internet Explorer on Linux, using WINE for emulation; it offers Internet Explorers 5 through 7, including Flash, making invalid the excuse of not switching to Linux because your favorite site only loads in Internet Explorer. I have written an extensive tutorial on IEs4Linux.
Opera is another solid browser. It is light, fast and includes built-in mail and a torrent client.
Guake is a semi-transparent drop-down console that you can use instead of your standard shell programs by having it always ready at the tip of your fingers. Guake allows you to work faster and with more fun.
Terminator is a console (terminal) utility that allows you to freely manage the layout of several windows inside a single frame, thus maintaining an unobstructed view of all workspaces.
Yakuake is a project very similar to Guake, except that is intended for KDE desktops. You can read a review/tutorial on both these, if you're interested.
DOSBox is an x86 PC emulator, complete with graphics, sound, mouse, and modem, allowing you to run old DOS-based games that are no longer supported by modern operating systems. It also supports IPX and Serial multiplayer modes. You can read more about DOS games that I have tested in DOSBox in these two articles. Furthermore, you may want to check this extensive Linux games review, for details not only about old games, but also many exciting modern titles.
QEMU is a multi-purpose processor emulator, with many additional features. For example, you can use it to create virtual machines or virtual hard disks and convert them.
WINE is not an emulator, according to the official information. It is a translation layer or a program loader, capable of running Windows applications on Linux and other UNIX-based systems. Nevertheless, I included it here, for the sake of simplicity.
A large number of popular programs, like Microsoft Office, Photoshop, and a slew of games are supported, although success and experience may vary. WINE is also used to run IEs4Linux (see above). An alternative to this approach is virtualization.
TrueCrypt is a powerful, cross-platform real-time on-the-fly encryption software. It can be used to create encrypted volumes (file containers), encrypt entire partitions or drives, and even encrypt the entire operating systems (Windows only). TrueCrypt supports standard and hidden volumes and can run from portable devices.
BackTrack is one of the more popular distributions in the white hat circles. It is specially suited for penetration testing, with more than 300 tools available for the task. Like both Helix and Protech, BackTrack is based on Ubuntu. This means good stability and hardware detection and a whole lot of software that can be easily obtained. I have reviewed BackTrack, if you're interested.
Helix is a dedicated rescue, recovery and incidence handling distribution, with both pure Linux live CD and in-vivo Windows modes. Helix can be used for system diagnostics, profiling, auditing, security checks, data collection, malware analysis, and a range of other Infosec tasks. For more about Helix, please check the extensive tutorial I've written.
FileZilla is a fast, popular, cross-platform FTP client, although there's also a server module, albeit only for Windows. The program supports FTP, SFTP and FTPS.
Bluefish is a powerful, multi-language editor, intended for use mainly by programmers and web developers. It supports many programming and markup languages and focuses on dynamic and interactive websites. Some of the many features included are unlimited undo/redo, automatic tag closing for HTML and XML documents, syntax highlighting, and numerous external plugins.
KompoZer (formerly Nvu)
KompoZer is a simple, lightweight WYSIWYG HTML editor, a continuation of the Nvu project. KompoZer solves a number of bugs that existed in the previous incarnation and introduces new features. It is very easy to use, even by people who have little knowledge of web languages. For more details, please check my Web development made easy with Bluefish and KompoZer article.
gtkam is a simple utility that supports numerous devices. In most cases, you should just plug your camera and start using it.
GIMP is a powerful, comprehensive image manipulation program. It offers an extremely wide range of tools for graphic editing of images, although it does require extensive knowledge to be fully utilized.
F-Spot is a photo management program for Gnome desktops; the program supports numerous file types and allows easy editing and tagging of photos, simplifying cataloging of large batches of images.
GwenView is a fast, east-to-use image viewer for KDE desktops, with quick-edit features that make it ideal for lightweight manipulation of images, compared to the more serious GIMP. GwenView also allows you to tag your images, rate them or present them in a slideshow.
Cheese is a very simple, powerful web camera utility that should work well and out of the box with most camera devices, including built-in gadgets in laptops. It takes very little effort to setup and configure, it can capture stills and add custom graphics to pictures.
This lovely applications comes bundled with several popular Linux distributions, including Fedora and PCLinuxOS 2009; you can see a demonstration of its use in live CD session in both these tutorials. For a general article on web camera support in Linux, you might be interested in this article; written approx. six months ago.
Ekiga (formerly GnomeMeeting)
Ekiga is a Voice over IP (VoIP), IP Telephony, and Video Conferencing application that allows you to make audio and video calls to remote users with SIP or H.323 compatible hardware and software. It supports many audio and video codecs and all modern VoIP features for both SIP and H.323. It also integrates nicely with web camera devices.
Kopete is an Instant Messaging program for KDE; Kopete supports AIM, ICQ, MSN, Yahoo, Jabber, IRC, Gadu-Gadu, Novell GroupWise Messenger, and more, as well as message encryption and archiving. Kopete also works with web cameras.
Pidgin (formerly GAIM)
Pidgin is a multi-protocol client and will allow you to connect to several networks, without using several (often) bloated and unneeded IM programs. GAIM supports AIM, ICQ, MSN, Yahoo!, IRC, Jabber, Gadu-Gadu, Silc, GroupWise, SameTime, and Zephyr networks.
Skype is a VoIP, video conferencing and instant messaging software that uses a proprietary format for communication. In return, it offers encryption and good quality of service.
This section is somewhat unusual. First, almost every single Linux distro comes as a bootable live CD. Second, narrowing down the huge list of good possibilities to just a small number of extremely great candidates is difficult. However, I have compiled a short presentation of the five smartest choices for new and intermediate users. These distros are all widely popular, stable, simple and friendly to use, easy to install and run, and offer a good mix of programs, security, updates, and support for their audience.
While this list contains only five entries, you're welcome to check my Software collection for dozens of distribution reviews and tutorials.
The tutorials, including the five distros mentioned below, all cover a broad range of topics in detail, including Wireless, Bluetooth, Compiz, NTFS support, digital and web cameras, multimedia codecs, installation, applications, software management and updates, and much more. You are most encouraged to read them.
Ubuntu is the de-facto Linux distribution. It is the most popular distribution these last four years and for a good reason. It has massive support and recognition, the forums are rich and lively, the repositories are fast, and the distro itself is stable, secure and very easy to use.
openSUSE is a mature distribution, supported by Novell. The main highlights of the distro is the range of new and innovative technologies included, centralized management using a powerful control center, support for enterprise solutions, good security, and a very large selection of applications.
This distribution is based on Ubuntu, with additional support for multimedia codecs and third-party software, which makes it instantly usable out-of-the-box and very appealing for Windows converts.
PCLinuxOS is a smaller distribution, which nevertheless delivers an almost perfect experience out of the box. The distribution comes with a huge collection of programs and utilities, with a focus on multimedia and audio-video processing.
Knoppix is a pure live CD distribution, however you should definitely consider using it, even if you do not intend to install it. This is because Knoppix offers phenomenal hardware detection and good stability, making it perfect for testing Linux.
As an appetizer, I've created a Compiz wall below, demonstrating 3D effects on each of these distributions:
Some other worthy candidates you may want to consider are Mandriva, Wolvix, SimplyMEPIS, Puppy, and Dreamlinux. The fact they are not listed here does not make them bad; it's simply that with the level of development and forum support that they offer and their general usability mode, they are less suitable than the other candidates.
Thunderbird is a cross-platform mail and news client developed by the Mozilla Foundation. Thunderbird can manage multiple accounts, including email, newsgroups and RSS feeds, and supports encryption. Like Firefox, its basic looks, functionality and security can be extended through the use of add-ons.
Brasero is a simple, lightweight CD/DVD burner software for Gnome desktops. It supports all types of media and can create data, audio or video discs, as well as burn images. It can also access files across the network and integrates with the Nautilus file manager, allowing users to drag 'n' drop files into their projects.
K3B is a CD burning utility for KDE, with lots of excellent features, including support for multiple El Torito boot images, audio CD burning, VCD, SVCD, mixed-mode CDs, eMovix CDs, CD copy and CD/DVD ripping, DVD burning, DivX/XviD encoding, blanking of CDR-Ws, writing of ISOs, and a whole lot more.
Audacity is a powerful cross-platform sound editor, allowing you to edit and record audio files. It also has a number of plugins available, including LAME mp3 encoder. You can read about Audacity in detail in my Working with multimedia files - Audio tutorial.
This simple utility allows you to convert various audio formats, including MP3, MPC, Ogg, FLAC, WMA, and others. It also supports batch conversion, allowing you to recurse through entire directories of music files. Two similar applications are audioKonverter (mainly for KDE) and audio-convert script, which are covered in this tutorial: Converting music file formats in Linux.
DeVeDe is a program that can create video DVDs and CDs (VCD, sVCD or CVD), suitable for home players, from any number of video files, in any of the formats supported by MPlayer. You can read more about DeVeDe in yonder tutorial.
Handbrake is an open-source, cross-platform DVD to MPEG-4 converter. Again, you may want to take a look at my tutorial explaining basic Handbrake usage.
ffmpeg is a Jack o' all Trades conversion utility, available on Linux and other operating systems, capable of converting just about anything to anything. It is a command line utility. You can read more about it in my Working with Multimedia - Flash tutorial.
Among many things that ffmpeg can do is: change bitrate, extract audio from Flash files, convert audio, video and flash formats, record streams, extract streams, and so much more.
recordMyDesktop is a simple, friendly movie recording software, which allows you to easily create high-quality, impressive animations of your desktop. You may want to refer to my detailed tutorial, which also contains a demonstration video.
XVidCap is another interesting, useful desktop recording software. I have used it to create my Compiz demonstration movies when I reviewed Ubuntu 7.10 Gutsy Gibbon. Xvidcap is very similar to recordMyDesktop. You can also read more about how to use the program in my video tutorial.
Wink is a tutorial and presentation creation software. It allows you to capture screenshots of the actions you take on the desktop, wrap them into an animation and export them as beautiful, classy Flash, PDF or even executable packages. Again, take a look at the detailed tutorial, which also contains a Flash animation demo.
Amarok is an excellent media player. Although it is mainly intended for KDE desktop, it will work well on other platforms. Some people argue whether the Amarok 2.0 is indeed better than the older Amarok 1.4, so you should check for yourself before deciding. I've listed Amarok as one the recommended applications in my Audio tutorial.
This is another great Linux music player. It works with a range of media formats and will naturally "plug in" to Web radio stations. For example, you can stream music from Last.fm directly into Rhythmbox.
MPlayer is a highly versatile media player for Linux, with a very good support of audio and video formats. It will play most MPEG/VOB, AVI, Ogg/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, RealMedia, Matroska, NUT, NuppelVideo, FLI, YUV4MPEG, FILM, RoQ, and PVA files, supported by many native, XAnim, and Win32 DLL codecs. You can watch VideoCD, SVCD, DVD, 3ivx, DivX 3/4/5, and even WMV movies.
Formerly known as Democracy Player (which featured in the last collection), Miro is a good-looking Internet TV platform; the player incorporates video RSS feeds, automatic downloads of videos, BitTorrent, and other exciting features. I've recently tested Miro and found it to be a very useful application.
Totem will also play a large assortment of audio and video formats. It can also stream podcasts, including Youtube. Totem is practical, elegant and with lots of great functions, including screenshot capture, slideshow and more.
VLC is an amazing open-source, cross-platform player, supporting a staggering collection of supported media formats, including Audio, Video and Flash. It should be one of your top choices whenever it comes to playing any sort of media. It is also a region-free DVD player.
This handy application allows you to add subtitles to movies. It comes included with the latest Slackware-based Wolvix 2 distribution. We will review Subtitle Editor, and several other subtitle editing tools in a dedicated tutorial soon.
Kile is a KDE frontend for the almighty LaTeX text processing language. The application look good and has many useful features. Using LaTeX allows you to create stylish, professional-looking documents in half the time it will take you by conventional means of office utilities. More about Kile here.
Alongside Kile, LyX is another tremendous, powerful LaTeX GUI. It allows you to create impressive documents in HTML, PS or PDF format rendered with unbeatably beautiful Computer Modern fonts. LyX is also available for Windows and is a little less difficult to use, in my opinion. I have reviewed LyX not that long ago.
This little word processor is much more powerful than it seems. It is lightweight, fast and has lots of rich features. AbiWord supports numerous file formats, including DOC, DOCX, ODT, and RTF. It is also extensible with plugins. Best of all, AbiWord comes with the ultra-sexy Computer Modern fonts included by default! You may be interested in a review: AbiWord - the underestimated word processor.
OpenOffice is a powerful office suite, with word, spreadsheet, presentation, drawing, database, and other applications. It runs on Linux, but you can also use it on Windows as a replacing for Microsoft Office. Like Firefox, OpenOffice has extensions, which further enhance its capabilities. I have recently reviewed the latest OpenOffice 3.
GParted is a partitioning software that can be run from live CD or inside installed systems. It can be used to create, resize, move, delete, reformat, or check partitions, including NTFS filesystem. GParted is robust, reliable and safe. I have written a thorough, detailed tutorial about GParted. You're welcome to read it.
aMule is the Linux version of eMule, a highly popular and successful P2P sharing application. While it may not be as fast as most BitTorrent clients, you're more likely to find less popular, older content than anywhere else. Using aMule takes patience, but it is rewarding. aMule uses ED2k servers and the KAD network.
Vuze is the successor to Azureus (a candidate in our last list). It's a BitTorrent client, which allows users to access shared content using a pleasant, interactive interface. In a way, it's similar to Miro. If you're interested, you may want to read this article.
Super Grub Disk is intended to run from a floppy disk or CD and is used for system rescue. Most importantly, it can be used to restore boot loaders, including GRUB, LILO and even Windows boot loader.
This is a live CD specifically geared toward rescue and recovery. The tools package includes some of the most important tools available for Linux user, like GParted, PartImage, Grub, Lilo, sfdisk, TestDisk, and more.
Another extremely important tool is TestDisk. This tool allows to recover lost partitions, make not-bootable disks boot again and restore delete files. It is one of the more effective and powerful utilities on the market. When everything else fails, TestDisk won't. TestDisk is included with the SystemRescueCD.
gufw is a simple and friendly GUI frontend for the powerful iptables kernel module on Ubuntu distro. It allows an easy management of the inbound and outbound rules using wizard-like graphical menus and is extremely suitable for new or less knowledgeable users. For more details, please take a look at a short tutorial on gufw.
nmap is probably the most popular network scanner in the whole world. It was even used with surprising accuracy by Trinity in Matrix against a Windows 2000 in a successful attempt to discover vulnerable services and gain entry. nmap is a command-line utility, but it can be used with a GUI; there are several versions available, including zenmap and others.
chkrootkit is a shell script that can check the system binaries for signs of rootkit modification. It is a useful tool in an environment that requires lax firewall rules and multiple installations from external sources.
Like chkrootkit, rkhunter can be used to check system files for unwanted changes. The two tools complement each other nicely.
Wireshark (formerly Ethereal)
Wireshark is a powerful packet collection and analysis suite, capable of capturing network data on all levels of the TCP/IP stack. It can collect data from Ethernet, IEEE 802.11, PPP, and loopback, supports hundreds of protocols, has rich traffic analysis filters, and can be enhanced with plugins.
Kiwi is a system imaging software for openSUSE. It is a tremendously versatile program that allows you to create custom-build images of openSUSE or other Linux distributions and convert them to virtual machine images, live CD/DVDs, bootable USB images, PXE thin install, OEM preload images, Amazon machines, and even migrate existing physical installations. Kiwi uses the extremely simply Image Creator and Product Creator wizards to manage image building, making it a breeze for just about anyone to roll professional custom distributions in a matter of hours.
Kiwi is a component of the complex, vastly powerful Build Service, which also covers the SUSE Studio. The Kiwi tutorial covers Image Creator; we'll learn about the Product Creator and the Studio in a separate article.
VirtualBox is a versatile, cross-platform virtualization software that allows you to run multiple guest operating systems on top of your existing desktop. VirtualBox is a must for software enthusiasts, testers and researchers, or people who want to try new operating systems without altering their existing setups. One of the possible uses is to run Windows software that has no alternatives on Linux.
VirtualBox also supports limited 3D acceleration for Windows and recently Linux guests. It also has a Seamless mode, which allows integration on virtual machines onto your desktop. VirtualBox can also run from USB drives, in portable mode and can even be installed in MojoPac. The last two flavors are for Windows, though. VirtualBox comes in two flavors - OSE and PUEL. PUEL is a closed-source version, with USB support. OSE version has less features, but it comes included in most repositories.
VMware Player is a simple, adequate virtualization solution for desktop use. It is less powerful than either VirtualBox or VMware Server (see below), but it allows home users to test new operating systems or new software for their existing platforms in guest machines, without altering their base setup. It also comes included in numerous repositories, so it is quite easy to install and maintain. You can check a review here.
VMware Server is another powerful desktop virtualization software. Alongside VirtualBox, it makes a great combo for exploring and testing new stuff. VMware Server has many useful features, including the ability to connect to remote machines, a mighty network stack, and offers 3D support for DirectX on Windows guests, complementing OpenGL on VirtualBox.
VMware Server also contains the VMware Player, so you are better off trying the Server in the first place. The Server can also create new virtual machines and supports VMware Tools, which enhance the guest performance significantly.
All software listed here has been recommended by fellow forum members, friends and readers via email. While I sincerely believe that these programs are benign and easy to use, I cannot fully guarantee your satisfaction. Nor can I be held reliable for these third-party suggestions, although, I repeat once again, I think they are perfectly safe and quite useful.
Before you send me any suggestions, I must emphasize several things: all emails must be in plain text, no attachments whatsoever, with text links to author's or vendor's website. The suggested software must be free for personal use, production quality, easy to install and use, preferably with .rpm or .deb installers and GUI frontend, open source is a bonus although not a must. Furthermore, you need to tell me why you think the specific product deserves special attention. That's it. Fire away.
I will periodically update the user-recommended list, so hop by once in a while if you're interested.
Users who contributed to this list, they deserve a big thanks:
chronomatic, Ocky, clansman77, Christos, Vadim, Phil, and rbo2 (so far ...).
Here's the list of user recommended software:
KOffice: KOffice is a fully fledged office suite for the KDE, although you can run it on other desktops, and even on Mac and Windows. You have the usual assortment of programs available, including word processor, spreadsheet and presentation modules, plus some extras like flowchart, vector drawing, paint, report and chart generators, formula, database, and project management. We will have a review soon.
digiKam: digiKam is an advanced photo management program. It allows you to view, manage, enhance, edit, and tag your images, and also has an interface to connect to digital cameras. We will have a detailed tutorial soon, focusing on digital camera software.
K9Copy: This is a simple, friendly utility for DVD manupulation. It can rip or burn DVDs, create images, slectively copy audio and subtitle tracks, and preserve original menus.
Kdenlive: Kdenlive is a free open-source video editor for GNU/Linux and FreeBSD, which supports DV and HDV editing, with experimental support for AVCHD.
WinFF: This utility is a frontend for the highly popular and versatile ffmpeg command-line multimedia convertion utility, which we have seen earlier. WinFF allows less knowledgeable users to comfortably lease the full power of ffmpeg.
Transmission: Transmission is a fast, easy, and free multi-platform BitTorrent client.
luckyBackup: This program is frontend for the rsync utility. luckyBackup is intended to be fast and reliable and easy to use. It is also fast, as it performs differential backups. luckyBackup features a simulation mode for testing your backup procedure before running it for real, profiles, scheduling, and more.
Shutter: This is a powerful, versatile screenshot program. Shutter allows you to take screenshots of a specific area, window, whole screen, or even entire web pages. It can also print and delete screenshots and auto-generate thumbnails.
Picasa: Picasa is a friendly, easy to use image management utility. It allows you to manage and edit digital photos, by sorting them into albums, tagging them and performing basic manipulations, like resizing, rotation, cropping, and a range of other visual effects.
That's it. A beautiful, thorough list of essential, must-have programs for Linux. Like I promised, the list is neither too short, nor too long; it has just a few programs in each category, to keep your appetite whetted.
I know I have missed a few programs (deliberately, maybe?), including 3D graphics software like Blender or educational software like Marble and Stellarium, but this is where you step in with your suggestions!
It has taken me almost a week of my time to carefully prepare and write this article. I would truly appreciate a word of feedback, comments, suggestions, and typo and link fixes. And if you do find this list useful, spread the word.
P.S. If you find this article useful, please support Dedoimedo.