It is well known that the 100% free software gNewSense GNU operating system distribution with Linux kernel (free replacement of Ubuntu) doesn't come with the GNU IceCat browser (free replacement of Mozilla Firefox) in its recent version 2.3. Furthermore, there is no standard and easy way to play Adobe Flash files served via the web. Despite the fact that Adobe Flash is a proprietary format and is widely spread because of the Adobe Flash Player plugin for various browsers, the GNU Gnash project has made progress in implementing a free alternative to do at least *some* Flash as standalone player application and GNU IceCat plugin. Both the richer features of GNU IceCat (in comparison to the gNewSense default browser Epiphany) and the basic support of Flash within the browser itself are reasons to build and install those components as long as they're not incorporated in future gNewSense releases. All instructions refer to a plain and fresh gNewSense installation, which should grant the reproducibility as long as the hardware meets the minimum requirements for each step and finally the program run.
To avoid the need to resolve a lot dependencies manually, a general patch update should be made by
sudo apt-get updatesudo apt-get upgradeThe next step is to obtain the GNU IceCat source code files. Download the package icecat-12.0.tar.xz from the GNUzilla project. Since the GNU packages are *.tar.xz compressed and gNewSense 2.3 doesn't come with xz-utils, download xz-5.0.4.tar.gz from the XZ Utils home page and compile/install it by
tar -xzf xz-5.0.4.tar.gzcd xz-5.0.4./configure -prefix=/usrmakesudo make installcd ..Now the IceCat package can be uncompressed and unpacked:
xz -d --keep icecat-12.0.tar.xztar -xf icecat-12.0.tarrm icecat-12.0.tar
In order to get ./configure of IceCat statisfied, further dependencies have to be resolved:
sudo apt-get install libgtk2.0-devsudo apt-get install libnotify-devsudo apt-get install libasound2-devsudo apt-get install libiw-devsudo apt-get install libxt-devsudo apt-get install mesa-common-dev
Only one dependency is still left – the Yasm Modular assembler. It can't get resolved by apt-get install yasm because the version in the repository is 0.5.0 where the IceCat build system requires at least 1.0.1. So download yasm-1.2.0.tar.gz from the Yasm project page and compile/install it by
tar -xzf yasm-1.2.0.tar.gzcd yasm-1.2.0./configure -prefix=/usrmakesudo make installcd ..After having all preparations in place, IceCat should finally compile/install successfully:
cd icecat-12.0./configure -prefix=/usrmakechmod +x ./build/unix/run-icecat.shsudo make installcd ..
IceCat should now come up when invoked by icecat & on the terminal.
Download the source code package gnash-0.8.10.tar.gz from the Gnash project, then
tar -xzf gnash-0.8.10.tar.gzcd gnash-0.8.10Now statisfy some dependencies by
sudo apt-get install libgconf2-devsudo apt-get install libboost-iostreams-devsudo apt-get install libltdl3-dev./configure -prefix=/usrsudo ./deb-attempt-install-dependencies.shsudo apt-get install libboost-serialization-devAfter this preparations, it should compile/install by
./configure -prefix=/usrmakesudo make installsudo make install-pluginNot alone is IceCat very useful at least for its HTML5 support, it is even capable of playing Flash wherever Gnash provides a free way of doing so. In case there are problems with this approach or there are questions about details of the procedure, feel free to contact me.