GNU IceCat-3.0.2-g1 released

Hello!

I am pleased to announce the new 3.0.2-g1 version for the GNU IceCat web browser, based on the latest Mozilla Firefox 3.0.2 source code.

GNU IceCat is based on the Mozilla Firefox source code. While the basic Mozilla Firefox source code is free software, and we thank them for their significant contributions to the community, some non-free files are distributed in the Firefox source tree, and Firefox can recommend non-free plugins. IceCat is entirely Free Software.

In addition, CAcert.org, already used for https://savannah.gnu.org, was added to the builtin root certificates.

You can get the files here:

ftp://ftp.gnu.org/gnu/gnuzilla/3.0.2-g1/gnuzilla_privacy.xpi
ftp://ftp.gnu.org/gnu/gnuzilla/3.0.2-g1/icecat-3.0.2-g1-i386.tar.gz
ftp://ftp.gnu.org/gnu/gnuzilla/3.0.2-g1/icecat-3.0.2-g1-i386.tar.lzma
ftp://ftp.gnu.org/gnu/gnuzilla/3.0.2-g1/icecat-3.0.2-g1.tar.gz
ftp://ftp.gnu.org/gnu/gnuzilla/3.0.2-g1/icecat-3.0.2-g1.tar.lzma

MD5 and SHA1 checksums:
0562ea71d246402e313415302ad70f5e gnuzilla_privacy.xpi
4ea640371e9de730bdc1dfc4d2becc89 icecat-3.0.2-g1-i386.tar.gz
88ea53bc513cbc15824159e4b176d2d2 icecat-3.0.2-g1-i386.tar.lzma
76c5aff1987d400cd3cdfb82f739e29c icecat-3.0.2-g1.tar.gz
b06831afc020c0dc387386816eef304b icecat-3.0.2-g1.tar.lzma

af54b373f90355900284277c32794858c6ccb662 gnuzilla_privacy.xpi
bde55f4aec2161c079114562d5c861bdc512b99f icecat-3.0.2-g1-i386.tar.gz
cc88f18f022414b3f30d830813d263be495206ba icecat-3.0.2-g1-i386.tar.lzma
7178039635f5f2158f73e02ad99800ccdf6582ab icecat-3.0.2-g1.tar.gz
e43d85ee216423255fff628825c632ad9d0de5f4 icecat-3.0.2-g1.tar.lzma


Please report any problem or feedback to the bug-gnuzilla@gnu.org mailing list.

Happy hacking!

--
Giuseppe Scrivano

IceCat + zpspell

I got a message from Samed Beyribey, sharing the changes he made to get GNU IceCat working with zpspell for Turkish spell-checking, on Arch GNU/Linux. We are sharing this in hope it can be useful to someone.

Why zpspell? Because "aspell doesn't support Turkish language". For using zpspell, you need to install zemberek-server and zpspell. They're both available in AUR.

The patch used here is made by Pardus developers and they release their patch under the GPL, so this is Free Software :)



PKGBUILD:
# Contributor: Samed Beyribey
# Thanks for Pardus GNU/Linux developers for Spellchecking patch
pkgname=icecat-zemberek
_pkgname=icecat
pkgver=3.0.1g1
_pkgver=3.0.1-g1
pkgrel=1
pkgdesc="GNU version of the Firefox browser."
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/gnuzilla/"
license=('GPL2' 'MPL' 'LGPL')
depends=('gtk2' 'libxt' 'libidl2' 'nss' 'zpspell' 'zemberek-server')
makedepends=('zip' 'tar')
provide=('icecat' 'iceweasel-bin' 'iceweasel' 'firefox' 'mozilla-firefox' \
'mozilla-firebird' 'phoenix' 'swiftweasel' 'swiftfox' \
'icecat-bin' 'icecat-cvs')
conflicts=('icecat' 'icecat-cvs' 'icecat-bin' 'iceweasel-bin')
replaces=()
install=(icecat.install)
source=(ftp://ftp.gnu.org/gnu/gnuzilla/${_pkgver}/${_pkgname}-${_pkgver}.tar.bz2 \
${_pkgname}.desktop \
${_pkgname}-safe.desktop \
${_pkgname}.sh \
${_pkgname}-launcher.sh \
${_pkgname}16.png \
${_pkgname}32.png \
${_pkgname}48.png \
${_pkgname}48.xpm \
icecat_new_files.tar.bz2 \
icecat_icons.tar.gz \
zemberek-firefox3.patch)
md5sums=('c52f5ff97179fa8c5c12f1577e232f9c' \
'2965d6561c4c4473e1e392a20f5e61cb' \
'5c498b31bd52c1f1d92c8d7da27c5d6f' \
'70d93e9755af53ad4d310966a7d55a55' \
'c6ab71d3ed1ee3c767391cd981099a03' \
'ddd0c466cced06ee9f7068a0fc5dda3a' \
'2de250a85719545d3853ebc92240f42a' \
'a04aec7bc8f760f95a3573c641c687e6' \
'df60f7e4f3c6fe3d8b3540f338d4f7fd' \
'1d3e97b290cd4b38a251bffcd10cc9bc' \
'5b3b7e11439e4d3dee52c2f798284e75' \
'43f0783e6284afafbf08d9c1899dfa0a')

#options=('!makeflags')
ICECATDIR="/usr/lib/icecat-${_pkgver}" && export ICECATDIR

build() {
ICECATDIR="/usr/lib/icecat-${_pkgver}" && export ICECATDIR
cd ${startdir}/src/${_pkgname}-${_pkgver}/
#########################################################################
patch -Np1 -i ${srcdir}/zemberek-firefox3.patch

## Temp. solutions: -----------------------------------------------------
tar -zxvf ${startdir}/src/icecat_icons.tar.gz

tar -jxvf ${startdir}/src/icecat_new_files.tar.bz2 || return 1
#unset CFLAGS
#unset CXXFLAGS
#export LDFLAGS="-Wl,-rpath,${ICECATDIR}"
#########################################################################


## Changes in .mozconfig: -----------------------------------------------
## We can just replace whatever .mozconfig given and use our own:
#rm -f ${startdir}/src/${_pkgname}-${_pkgver}/.mozconfig &&
#cp ${startdir}/src/mozconfig \
# ${startdir}/src/${_pkgname}-${_pkgver}/.mozconfig
if [ -f "${startdir}/src/${_pkgname}-${_pkgver}/.mozconfig" ]
then
sed -i 's|--prefix=/usr/local|--prefix=/usr|' \
${startdir}/src/${_pkgname}-${_pkgver}/.mozconfig
else
cp ${startdir}/src/mozconfig \
${startdir}/src/${_pkgname}-${_pkgver}/.mozconfig
echo "ac_add_options --disable-official-branding" \
>>${startdir}/src/${_pkgname}-${_pkgver}/.mozconfig
fi
echo "ac_add_options --with-default-mozilla-five-home=\"${ICECATDIR}\"" \
>>${startdir}/src/${_pkgname}-${_pkgver}/.mozconfig || return 1
##change this to suite your optimization:
if [ "$CARCH" == "i686" ]; then
echo "ac_add_options --enable-optimize=\"${CFLAGS}\"" \
>>${startdir}/src/${_pkgname}-${_pkgver}/.mozconfig || return 1
else
echo "ac_add_options --enable-optimize" \
>>${startdir}/src/${_pkgname}-${_pkgver}/.mozconfig || return 1
fi
export MAKEFLAGS="-j1"
#########################################################################


## configure && make && make install-------------------------------------
./configure --prefix=/usr || return 1
make || return 1
install --directory ${startdir}/pkg
make DESTDIR=${startdir}/pkg install || return 1
#########################################################################


## Final arrangements: --------------------------------------------------
install --directory ${startdir}/pkg/usr/share/applications
install -m644 ${startdir}/src/${_pkgname}.desktop \
${startdir}/pkg/usr/share/applications
install -m644 ${startdir}/src/${_pkgname}-safe.desktop \
${startdir}/pkg/usr/share/applications
install --directory ${startdir}/pkg/usr/share/pixmaps
install -m644 ${startdir}/src/${_pkgname}48.xpm \
${startdir}/pkg/usr/share/pixmaps/${_pkgname}.xpm
install --directory ${startdir}/pkg${ICECATDIR}/chrome/icons/default
rm -f ${startdir}/pkg${ICECATDIR}/chrome/icons/default/default*
install -m644 ${startdir}/src/${_pkgname}16.png \
${startdir}/pkg${ICECATDIR}/chrome/icons/default/default16.png
install -m644 ${startdir}/src/${_pkgname}32.png \
${startdir}/pkg${ICECATDIR}/chrome/icons/default/default32.png
install -m644 ${startdir}/src/${_pkgname}48.png \
${startdir}/pkg${ICECATDIR}/chrome/icons/default/default48.png
install -m644 ${startdir}/src/${_pkgname}48.xpm \
${startdir}/pkg${ICECATDIR}/chrome/icons/default/default.xpm
install --directory ${startdir}/pkg${ICECATDIR}/icons
install -m644 ${startdir}/src/${_pkgname}48.xpm \
${startdir}/pkg${ICECATDIR}/icons/default.xpm
install --directory ${startdir}/pkg/etc/profile.d/
install -m755 ${startdir}/src/${_pkgname}.sh \
${startdir}/pkg/etc/profile.d/
install --directory ${startdir}/pkg/usr/bin/
install -m755 ${startdir}/src/${_pkgname}-launcher.sh \
${startdir}/pkg/usr/bin/${_pkgname}-launcher
cd ${startdir}/pkg${ICECATDIR}
ln -s ${_pkgname} firefox
ln -s ${_pkgname}-bin firefox-bin
# We need to touch tr-TR dictionary files for enabling Turkish dictionary.
touch ${startdir}/pkg${ICECATDIR}/dictionaries/{tr-TR.aff,tr-TR.dic}
}



Here is the zemberek-firefox3.patch.


The rest of the files can be found at: http://aur.archlinux.org/packages/icecat/icecat/

And the PKGBUILD is available on AUR as: icecat-zemberek

Credit: Abdussamed Beyribey (aka ras0ir) + thanks to Pardus GNU/Linux developers for Spellchecking patch.

Create a xpi language extension for IceCat

In the previous post I've explained how to compile IceCat with native support for the language of your choice. Now, I'll explain how to create a xpi language extension to install in IceCat.

Note that the extension gets the name firefox-3.0.1-g1.locale.langpack (for the European Portuguese, the name is firefox-3.0.1-g1.pt-PT.langpack.xpi). I don't know if this is due to the language files, a makefile or something else.

To create a xpi extension, just follow all the steps preceding the compilation of IceCat, like described in the previous post. Then, compile IceCat without the locale flag (just sudo ./configure; sudo make), go to browser/locales inside IceCat's source and execute this command (replacing pt-PT with your locale):

  • sudo make langpack-pt-PT
The xpi extension will be created in dist/install/, in IceCat's source. You'll just have to install it in IceCat in order to have it available in another language.

Compile IceCat with support for your language

Note: This small howto was made using gNewSense. So, in Debian and Ubuntu the procedure will probably be similar, as in other GNU/Linux distributions. I'm assuming that you know which are the dependencies to compile IceCat and have them installed.

I have all my source files in /usr/src, so this will be the "work root".

Open up a terminal, go to /usr/src and run the following commands:

  • sudo cvs -z3 -d:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co mozilla/client.mk
  • sudo cvs -z3 -d:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co mozilla/tools/l10n

After that you will have a mozilla folder. Open it (cd mozilla) and execute the following command to download the locales (don't forget to replate pt-PT with the locale you want):
  • sudo make -f client.mk l10n-checkout MOZ_CO_PROJECT=browser MOZ_CO_LOCALES=pt-PT

When the download is done (that also downloads the mozilla source, but that's how it's explained in http://developer.mozilla.org/en/docs/Patching_a_Localization), a l10n directory will be created in /usr/src, containing the locale you specified. So, go back to /usr/src and enter l10n/pt-PT (remember that pt-PT must be replaced by the locale you downloaded). Now, enter the browser folder in l10n/pt-PT and use the following command:
  • sudo mkdir -p branding/unofficial

Now, without leaving that folder, you will need to copy the brand.dtd and brand.properties files and edit them:
  • sudo cp ../../chrome/branding/brand.*

My brand.dtd and brand.properties files look like this.

I also edit some other files, as you can see in this diff file.

After that, go to icecat's source in /usr/src and compile it with your locale:
  • sudo ./configure --enable-ui-locale=pt-PT; sudo make

User Contributed Packages

So far, we have a source tarball of GNU IceCat 3.0.1-g1, along with i386 binary version for GNU/Linux, and a Debian package as well. Those are the official ones.

Here are more user builds, in hope they will be useful for others, distributed only for the convenience.

WARNING: BY DOWNLOADING AND/OR USING ANY OF THE FOLLOWING, YOU ACCEPT TAKING FULL RESPONSIBILITY.

Arch GNU/Linux:
icecat-bin-3.0.1-3.tar.gz (PKGBUILD for i386 binary)
icecat-3.0g1-3.tar.gz (PKGBUILD)
icecat-3g1-3-i686.pkg.tar.gz (mirror) (binary)
>> md5sum: a7ff1557b886eb6c649a35ffe85c345a
>> sha1sum: 1d90fa098afb0899c29184649b0e9593aeae9f88

icecat-3g1-3-x86_64.pkg.tar.gz (binary) - thanks to Timothy L. (aka Pnevma)
>> compiled with x86_64 CFLAGS "-march-core2 -O2 -pipe"
>> md5sum: eaef0030bf1132631cab6e103787664d
>> sha1sum: ca1d2734c79344092d8cd943f715fb5bc2589fb3

icecat-cvs-20080628-2.tar.gz (PKGBUILD for IceCat 2.0.0.13-g1 from cvs) - thanks to Jan Ježek (aka smaart)

Gentoo GNU/Linux:
(ebuild)


Slackware GNU/Linux:
(slackbuild)

Announcing GNU IceCat 3.0.1-g1

Hello!

I am pleased to announce the new version for the GNU IceCat web browser.

GNU IceCat is based on the Mozilla Firefox source code. While the basic Mozilla Firefox source code is free software, and we thank them for their significant contributions to the community, some non-free files are distributed in the Firefox source tree, and Firefox can recommend non-free plugins. IceCat is entirely Free Software.

This new version is based on the new Firefox 3.0.1 source code that fixes some bugs present in the previous 3 release. In addition a support for the standard X -geometry option was added in
IceCat.

You can get the files here:
ftp://ftp.gnu.org/gnu/gnuzilla/3.0.1-g1/icecat-3.0.1-g1-i386.tar.bz2
ftp://ftp.gnu.org/gnu/gnuzilla/3.0.1-g1/icecat-3.0.1-g1-i386.tar.lzma
ftp://ftp.gnu.org/gnu/gnuzilla/3.0.1-g1/icecat-3.0.1-g1.tar.bz2
ftp://ftp.gnu.org/gnu/gnuzilla/3.0.1-g1/icecat-3.0.1-g1.tar.lzma
ftp://ftp.gnu.org/gnu/gnuzilla/3.0.1-g1/icecat_3-g1-1_i386.deb

MD5 and SHA1 checksums:
61ba1ba5994d59d5f4f6c1c014c9b310 icecat-3.0.1-g1-i386.tar.bz2
ad46e542b34bc2c0b5f5a1441b4a19b2 icecat-3.0.1-g1-i386.tar.lzma
c52f5ff97179fa8c5c12f1577e232f9c icecat-3.0.1-g1.tar.bz2
9653cdb4b150d87bf1f1f8cae178772b icecat-3.0.1-g1.tar.lzma
446d69c13ae46f16bdee51605a4a12ef icecat_3-g1-1_i386.deb
3deb0442f7a7c0249ced573c9a0a8f73a2529cc9 icecat-3.0.1-g1-i386.tar.bz2
d8058f4a7c60a9202da16acd3fde0a8fc5acd980 icecat-3.0.1-g1-i386.tar.lzma
5e1e7825a89e865eb18ce147f944f79c4929e0e9 icecat-3.0.1-g1.tar.bz2
5dac75a6b8b4c4eb8ca86a9285ae176aaae56202 icecat-3.0.1-g1.tar.lzma
f4896ac948951213faa391e9190a210dbc242cd2 icecat_3-g1-1_i386.deb

Please report any problem or feedback to the bug-gnuzilla mailing list.

Have fun!

Giuseppe Scrivano