Previous PagePrevious Page
Get rid of your non-free software! 60
  • 02 May 2012 18:19:39

To begin with, you should know what free software means. Think 'free speech' and not 'free beer' please. For a nice outline, read the Free Software Foundation's definition of free software.

Even if you are using a GNU/Linux system, chances are you are still using a lot more non-free software than you realize! (If you are using Microsoft Windows or Mac OS X, I hope you realize that probably a vast majority of your software is entirely non-free.) In fact, I hadn't put these ideas together as one-and-the-same until more recently, when reading Free as in Freedom 2.0 and Free Software, Free Society; you can download those works without paying, but if you buy the books, you get a nice hardcopy and also support the FSF! To some extent, I refer to similar ideas or arguments mentioned there, but many ideas here are my own, or are particularly promoting specific alternative software (in order to be helpful only...any free software you can use to accomplish these goals I support).

You can observe here and there my webpage directs to non-free software — usually I am at least complaining about that fact when I do so. In principle it should be better to entirely reject all non-free software. However, some people may find some non-free software to which there is at present no free software alternative (do you really know well did you search?). Therefore, at least on this page, I insist to tell you free software alternatives to many popular non-free programs.

For now I only cover several topics. I will plan to add to and expand this page from time to time.


One set of software you probably use that is non-free software is Adobe Flash. There are free software alternatives, outlined nicely at Freedom to look at code, play with it, and redistribute it are the most important. However, as a side effect, please realize how many viruses have come through Adobe Flash, and consider that this is a pure consequence of non-free software. Even in Gentoo GNU/Linux, which is infamous for being 'difficult' (I don't know why, it's easy), it was a cinch to set this up almost without even trying! If you didn't realize, most likely you view things like YouTube with Adobe Flash! That is non-free!


You are also possibly using Adobe Acrobat to view or edit PDFs; or if you use Mac OS X, some equally non-free software like Preview. To see an example of the bane of non-free software, consider a thread from some years ago, when I still used Mac OS X at all, complaining about an essential bug ("But daid, bugs are features!!") in Preview; that discussion was subsequently archived and closed, to my knowledge to this day Preview still behaves that way, and the archive has almost 1,000 views! If I had had the freedom to use that software, I would have resolved that issue myself!

If you need to edit PDFs (it's not meant to be an editable file type!), you can consider PDFedit; this is still based in Qt3, so installation can be tricky (I will post a tutorial on that later). However, PDFedit is quite handy for removing pesky IP addresses and copyright notices from, for example, AIP Conferene Proceedings (I sent a modified version to a co-author who was the PI, and he exclaimed, "What you've done is even better than the official one!")

As far as viewing and printing PDFs, there is a nice mail archive discussiong I had on the Gentoo user's mailing list with tons of alternatives, which you can see here. My favorite is still Xpdf even if it's a bit ugly (did anyone winning an Olymic Gold Medal in sprinting get chastised because of ugliness?). Indeed, if you want a nice command-line tool like PDF2Text, you probably need to install Poppler, which is from Xpdf, and maybe even included only under that package for your distros package manager. If you are using a GTK+ system, and Xpdf doesn't quite meet your requirements, you can check out the also lightweight ePDFView. If system overhead is not your concern, or you want to view a lot more file types than just PDF with one program, if you prefer GTK+ try Evince, and if you prefer Qt4 try Okular. Sadly, my favorite PDF viewer of all time, KPDF, was retired owing to its dependency on Qt3 and the switch to Okular. If I ever have a ton of free time and can learn Qt, I think I'll need to revive that project (it had all the speed of Xpdf without the ugly).

Please note, I only give my personal highlights to PDF viewers here, and the mail list discussion I linked has even more alternatives!

Voice Over IP etc

It's pretty absurd that Skype has become so popular that the brand name is used to refer to a general protocol which has existed for years, and it is even transformed into a verb (ie 'Skyping'). Voice over IP ("VoIP") has been around for ages, so if you want to VoIP with someone, don't use the product name Skype to refer to this general use of computers. Non-free software is especially frightening in the realm of personal voice and/or video communication; who knows what backdoors or sniffing the company is doing to you while you use their software. It is also very probable that Skype is using your computer to route other calls. In any case, if nothing else, their code base is horribly inefficient, because it uses far too much processor and memory power for a simple task like live VoIP with video. They clearly represent themselves as developers of non-free software simply in the version releases of their binaries (5.9 for Windows, 5.7 for Mac OS X, and 2.2 for GNU/Linux at the time of writing...even iOS already has version 4.0 and it is surely about two decades older than the GNU/Linux system!).

There are many, many, many ways to VoIP. But one project I will promote is Ekiga. Their protocol and servers are fully compatible with many other operating systems. For a very nice review of different programs and their properties, please visit the relevent Ekiga wiki.


The commonly used Java Development Kit by Sun Microsystems (owned by Oracle) is non-free software. Please consider instead to use something like IcedTea employing the OpenJDK tools when you need to run or develop code in the Java language.

        (__)               __(^^)              /   /    (__)      / PhD  \  (oO)     /|  /---^^---/     / | /| daid  ||    *  || ||------||
Next page