Gentoo Wiki


Please improve it in any way that you see fit, and remove this notice {{Cleanup}} from the article. For tips on cleaning and formatting see Cleanup process



Some of you want to run only free software for a lot of different reasons: from moral reasons to more pragmatical ones. See here for the differences between kernel space and userspace proprietary programs and why not to use kernel space proprietary drivers.

If you're wondering why Macromedia's Flash player and Sun's Java implementation are not free software, see this and this.


Acrobat reader

We all know Xpdf. It's great and lightweight (even works under linux pda). Other options are Evince (Gnome/gtk), KPDF (KDE/qt), and epdfview (independent/gtk).

Media Player

A lot of audio and movie files are encoded in proprietary formats. media-video/mplayer (which might be illegal in the USA) and media-video/mplayerplug-in provides playback for mostly any media files, also in your web browser. On x86_64, use media-video/mplayer-bin and media-video/mplayerplug-in-bin (for mplayerplug-in-bin, see [1]). See also Mplayerplug-in. Note: this way of watching proprietary formats generally uses proprietary codecs linked into mplayer (hence the need for the 32bit mplayer-bin on 64bit systems, to support the, until recently, 32bit-only codecs that are released by most companies). This can NOT be said to be a"running only Free Software" -- it's only the main program that is Free. So it is well worth pushing any institutions or governments on the point if they opt for a non-open media format without FOSS support.


Flash is a format often used for ads or complex websites. There are even games and movies in flash. So not having flash also means not seeing the ads...

But some people could want flash in order to view these websites or play games. The most advanced free flash player is gnash, which is a Flash 7 player and plugin for several browsers (just like the proprietary flash player). Before, the gnash ebuild didn't install the plugin because it was considered too experimental and could crash Firefox. Now it's included, but there is the following message at the end of the installation:

gnash is still in heavy development
please report gnash bugs upstream to the gnash devs

The stand-alone player is perfectly stable but needs 3D acceleration (OpenGL rendering) to go fast. Mesa 3D's software OpenGL renderer can be used, but gnash will be sluggish. Not every feature of flash is supported yet.

gnash is known to crash Firefox when playing encapsulated movies (flash based mpg or wmv players), however regular animations seem to be no problem.


Use the plugin for viewing animations


If you'd need Flash just for watching youtube videos like me, there's a simple script to download the clips directly so you can watch them with mplayer or similar. Also in portage as net-misc/youtube-dl

You can also use some UserJS to replace embedded flash player with video object, which can be played using mplayerplug-in.


you have several kinds of games that run under linux/unixes(some have linux compatibility layers):




Sun Java is now released under GPL look at for more details. Mentioned because in that case it could be emerged without hassle.

The Java classpath/code can't be released under GPL - at least not completely. There is a GPL fork/extension: icedtea. It's roughly the GPL part of sun's Java release plus some ported classpath code or new implementations to replace the non-GPL plugs. An experimental ebuild is currently part of the java overlay and can be emerged - however the bootstrap process requires a sun jdk at the moment. Icedtea is mainly pushed by red hat, and red hat will push the GPL parts to sun, but don't expect a full GPL sdk before the Java 1.7 release.

What is Java?

First, we must know the difference between Java Script and Java. Java Script doesn't require a Java implementation, and the integration in free web browsers is already free. However, a web browser depends on Java to run Java applets (1). Java can also be used as a normal programming language like C or perl. In fact, it can run inside virtual machines or be compiled.

Sun's JAVA has different standards (different api functions available):The Standard Edition for desktops, The Enterprise Edition for servers and The Micro Edition for embedded consumer products.

So, for example, if you want a lightweight embedded operating system you are not obligated to include java if you don't plan to run java apps.

Recently Sun have begun the process of releasing Java under the GPLv2, so we could see a free version of Java soon.

I thought that blackdown was free.

Blackdown is not free or open-source. See its license for more details (need more explanations).

So how can I cope with it?

There aren't any free java implementations in portage, but it's a Google Summer of Code, so when finishes, we will have a lot of programs that will use GNU Classpath or similar code (like GCJ or some virtual machine that both share code with classpath, a library).

(1)we need an example of java applet TODO: here they talk about Real time Java that need acess to physical ram if Real time is a specification used in real time apps just tell the user not to use it otherwise move it to the kernel-space section

Some java programs

program with the java use flag that isn't set by default:

problematic programs:

rar and unrar

There aren't any free software rar compressor implementations, but there is a decompresser unrar gpl (note that it can only decompress rar archives with version number 2.0 or less). Tar with bzip2 is a good alternative to rar.

TODO: there are some programs such as guitar that depends on rar and unrar instead of unrar-gpl so we could add some use flag we could also change unrar and unrar-gpl status into a virtual dependency

7-zip's 7z archive format is a good alternative to rar, has a slightly better compression ratio. 7-zip also supports rar archives but uses a non-free plugin to do the uncompression and is under the LGPL.


Opera is not free software. Maybe firefox 1.5 with some plugin can obtain the same functionalities.


Wine (Wine Is Not an Emulator) is a free implementation of the Windows API on GNU/Linux.

Wine enables a lot of native Windows applications to run "natively" on the GNU/Linux-desktop, often with even better performance than in Windows. DirectX is somewhat implemented, and a lot of games may also run with Wine. Many games that do not work properly with Wine might work with the proprietary fork Cedega.

kernel space


QEMU is too slow, so it can be virtualised with KQEMU kernel module (available on GNU GPL since version 1.3.0pre10, previously a non redistribuable freeware) See Qemu.

Wifi Drivers

See Wikipedia for a comparison of the drivers.

Other Package Managers

Paludis has the option to sort and install only packages using certain licences. Paludis is still under heavy development though so this feature may not be totally functional.

Portage also includes this feature with version 2.2.

Retrieved from ""

Last modified: Sun, 05 Oct 2008 09:13:00 +0000 Hits: 15,835