New commits:
commit 79f366f1edcab712b6724575172615d4b9d84b51
Author: Pol Vinogradov <vin.public AT gmail.com>
Commit: Pol Vinogradov <vin.public AT gmail.com>
http/iceweasel: deprecated in favour of icecat
commit 0a50e47d740e12abb00287c320ca4a8211262e67
Author: Pol Vinogradov <vin.public AT gmail.com>
Commit: Pol Vinogradov <vin.public AT gmail.com>
http/icecat: new spell, the GNU version of the Firefox browser
diff --git a/ChangeLog b/ChangeLog
index 2c83c48..c326126 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2007-12-20 Pol Vinogradov <vin.public AT gmail.com>
+ * http/icecat: new spell, the GNU version of the Firefox browser
+ * http/iceweasel: deprecated in favour of icecat
+
2007-12-20 Vlad Glagolev <stealth AT sourcemage.org>
* net/ferm: new spell, tool to maintain complex firewalls written in
perl
diff --git a/http/icecat/BUILD b/http/icecat/BUILD
new file mode 100755
index 0000000..6a54b04
--- /dev/null
+++ b/http/icecat/BUILD
@@ -0,0 +1,34 @@
+ local ICECAT_HOME=${INSTALL_ROOT}/usr/lib/${SPELL} &&
+export MOZ_PHOENIX=1 &&
+
+export CFLAGS="${CFLAGS//-O3/-O2}" &&
+export CXXFLAGS="${CXXFLAGS//-O3/-O2}" &&
+
+OPTS="$ICECAT_MAILNEWS $ICECAT_CALENDAR $ICECAT_CHAT $ICECAT_COMPOSER \
+$ICECAT_MATHML $ICECAT_JS $OPTS" &&
+
+if [[ "$ICECAT_RENDER" != "none" ]]
+then
+ OPTS="--enable-svg-renderer=$ICECAT_RENDER $OPTS"
+fi &&
+
+./configure \
+ --prefix=${INSTALL_ROOT}/usr \
+ --with-user-appdir=.${SPELL} \
+ --with-pthreads \
+ --enable-application=browser \
+ --enable-reorder \
+ --enable-cpp-rtti \
+ --enable-strip \
+ --enable-optimize="$CFLAGS" \
+ --with-default-mozilla-five-home=$ICECAT_HOME \
+ --disable-debug \
+ --disable-tests \
+ --disable-installer \
+ --disable-pedantic \
+ --enable-single-profile \
+ --enable-extensions=default,typeaheadfind \
+ --enable-canvas \
+ $OPTS &&
+
+make
diff --git a/http/icecat/CONFIGURE b/http/icecat/CONFIGURE
new file mode 100755
index 0000000..e793ad1
--- /dev/null
+++ b/http/icecat/CONFIGURE
@@ -0,0 +1,38 @@
+config_query_option ICECAT_MAILNEWS \
+ 'Build Mail/News client?' \
+ y \
+ '--enable-mailnews' \
+ '--disable-mailnews' &&
+config_query_option ICECAT_CALENDAR \
+ 'Build Calendar component?' \
+ y \
+ '--enable-calendar' \
+ '--disable-calendar' &&
+config_query_option ICECAT_CHAT \
+ 'Build ChatZilla component?' \
+ y \
+ '--enable-chatzilla' \
+ '--disable-chatzilla' &&
+config_query_option ICECAT_COMPOSER \
+ 'Build Composer component?' \
+ y \
+ '--enable-composer' \
+ '--disable-composer' &&
+config_query_option ICECAT_MATHML \
+ 'Enable MathML?' \
+ y \
+ '--enable-mathml' \
+ '--disable-mathml' &&
+config_query_option ICECAT_JS \
+ 'Build JavaScript profile tool?' \
+ n \
+ '--enable-xpctools' \
+ '--disable-xpctools' &&
+config_query_list ICECAT_RENDER \
+ 'Possible SVG renderers:' \
+ 'cairo' 'libart' 'none' &&
+
+config_query ICECAT_NULLPLUGIN \
+"Do you want nullplugin installed (to enable auto search and install of
other plugins)" \
+ y
+
diff --git a/http/icecat/CONFLICTS b/http/icecat/CONFLICTS
new file mode 100755
index 0000000..3a22c84
--- /dev/null
+++ b/http/icecat/CONFLICTS
@@ -0,0 +1,3 @@
+conflicts iceweasel y &&
+conflicts iceweasel-bin y &&
+conflicts icecat-bin y
diff --git a/http/icecat/DEPENDS b/http/icecat/DEPENDS
new file mode 100755
index 0000000..246be2c
--- /dev/null
+++ b/http/icecat/DEPENDS
@@ -0,0 +1,79 @@
+depends g++ &&
+depends glib2 &&
+depends X11-LIBS "--with-x" &&
+
+case $ICECAT_RENDER in
+ cairo) depends cairo ;;
+ libart) depends libart_lgpl ;;
+ *) true ;;
+esac &&
+
+source $GRIMOIRE/FUNCTIONS &&
+
+if check_if_xorg_modular_libs ; then
+ optional_depends libxp \
+ "" \
+ "--disable-xprint" \
+ "for Xprint printing support" &&
+
+ optional_depends libxft \
+ "" \
+ "--disable-xft" \
+ "for Xft support" &&
+
+ optional_depends libxinerama \
+ "--enable-xinerama" \
+ "" \
+ "for Xinerama support"
+
+fi &&
+
+optional_depends freetype2 \
+ "" \
+ "--disable-freetype2" \
+ "for FreeType2 support" &&
+
+optional_depends gnome-vfs2 \
+ "" \
+ "--disable-gnomevfs" \
+ "for GnomeVFS support" &&
+
+optional_depends jpeg \
+ "--with-system-jpeg" \
+ "" \
+ "for system jpeg" &&
+
+optional_depends libgnomeui \
+ "" \
+ "--disable-gnomeui" \
+ "for libgnomeui support" &&
+
+optional_depends libpng \
+ "--with-system-png" \
+ "" \
+ "for system png" &&
+
+optional_depends nspr \
+ "--with-system-nspr" \
+ "" \
+ "for system NSPR" &&
+
+optional_depends openldap \
+ "" \
+ "--disable-ldap" \
+ "for LDAP support" &&
+
+optional_depends pango \
+ "--enable-pango" \
+ "" \
+ "for Pango font rendering support" &&
+
+optional_depends POSTSCRIPT-INTERPRETER \
+ "" \
+ "--disable-postscript" \
+ "for PostScript printing support" &&
+
+optional_depends zlib \
+ "--with-system-zlib" \
+ "" \
+ "for system libz"
diff --git a/http/icecat/DETAILS b/http/icecat/DETAILS
new file mode 100755
index 0000000..05317a2
--- /dev/null
+++ b/http/icecat/DETAILS
@@ -0,0 +1,34 @@
+ SPELL=icecat
+ VERSION=2.0.0.11-g1
+ SOURCE=${SPELL}-${VERSION}.tar.bz2
+ SOURCE2=${SOURCE}.sig
+ SOURCE_GPG="icecat.gpg:${SOURCE2}:UPSTREAM_KEY"
+ SOURCE2_IGNORE=signature
+ SOURCE_URL[0]=http://gnuzilla.gnu.org/download/${SOURCE}
+ SOURCE2_URL[0]=${SOURCE_URL}.sig
+SOURCE_DIRECTORY=${BUILD_DIRECTORY}/${SPELL}-${VERSION}
+ WEB_SITE=http://gnuzilla.gnu.org/
+ ENTERED=20071220
+ LICENSE[0]=MPL
+ KEYWORDS="http"
+ SHORT="the GNU version of the Firefox browser"
+cat << EOF
+Gnuzilla is the GNU version of the Mozilla suite, and IceCat is the GNU
+version of the Firefox browser. Its main advantage is an ethical one: it is
+entirely free software. While the source code from the Mozilla project is
free
+software, the binaries that they release include additional non-free
software.
+Also, they distribute non-free software as plug-ins. (IceCat does keep the
+triple licensing used by Firefox to facilitate the reuse of code.)
+
+In addition, IceCat includes some privacy protection features:
+
+ 1. Some sites refer to zero-size images on other hosts to keep track of
+ cookies. When IceCat detects this mechanism it blocks cookies from the
+ site hosting the zero-length image file. (It is possible to re-enable
+ such a site by removing it from the blocked hosts list.)
+ 2. Other sites rewrite the host name in links redirecting the user to
another
+ site, mainly to "spy" on clicks. When this behavior is detected, IceCat
+ shows a message alerting the user.
+
+To see these new features in action, some test pages are available.
+EOF
diff --git a/http/icecat/HISTORY b/http/icecat/HISTORY
new file mode 100644
index 0000000..2d82b08
--- /dev/null
+++ b/http/icecat/HISTORY
@@ -0,0 +1,4 @@
+2007-12-20 Pol Vinogradov <vin.public AT gmail.com>
+ * BUILD, cairo-fixes.patch, CONFIGURE, CONFLICTS, DEPENDS,
+ desktop/icecat.desktop, DETAILS, icecat, icecat.sh,
+ icecat.gpg, INSTALL, PRE_BUILD, PROVIDES: created this spell
diff --git a/http/icecat/INSTALL b/http/icecat/INSTALL
new file mode 100755
index 0000000..1a8a957
--- /dev/null
+++ b/http/icecat/INSTALL
@@ -0,0 +1,51 @@
+make_normal &&
+
+MOZILLA_HOME=$INSTALL_ROOT/usr/lib/icecat &&
+
+#
+# everything coming into /usr/lib/icecat-${VERSION/rc*}/
+# must actually go to /usr/lib/icecat/
+#
+mkdir -p $MOZILLA_HOME &&
+ln -fns $MOZILLA_HOME $MOZILLA_HOME-${VERSION/rc*} &&
+mkdir -p $INSTALL_ROOT/usr/share/idl/icecat &&
+ln -fns $TRACK_ROOT/usr/share/idl/icecat \
+ $INSTALL_ROOT/usr/share/idl/icecat-${VERSION/rc*} &&
+
+make install &&
+
+#
+# Script to set MOZILLA_FIVE_HOME
+#
+cp ${SCRIPT_DIRECTORY}/${SPELL}.sh $INSTALL_ROOT/etc/profile.d &&
+
+#
+# Create symlink from NSS Root CA store, if it exists. NSS requires this
+# to be in the same directory as the current application binary. See:
+# http://www.mozilla.org/projects/security/pki/nss/loadable_certs.html
+# https://bugzilla.mozilla.org/show_bug.cgi?id=128290
+# Only create if $MOZILLA_HOME/libnssckbi.so does not exist or is already a
+# symlink.
+#
+if test -f $INSTALL_ROOT/usr/lib/libnssckbi.so; then
+ if ! test -f $MOZILLA_HOME/libnssckbi.so ||
+ test -h $MOZILLA_HOME/libnssckbi.so; then
+ ln -sf $TRACK_ROOT/usr/lib/libnssckbi.so $MOZILLA_HOME/libnssckbi.so
+ fi
+fi &&
+if [[ "$ICECAT_NULLPLUGIN" == "n" ]]
+then
+ rm $MOZILLA_HOME/plugins/libnullplugin.so
+fi &&
+
+# make the pkgconfig files reference the nspr from the standalone nspr spell
+sedit 's/nspr/mozilla-nspr/'
${INSTALL_ROOT}/usr/lib/pkgconfig/icecat-js.pc &&
+sedit 's/nspr/mozilla-nspr/'
${INSTALL_ROOT}/usr/lib/pkgconfig/icecat-nss.pc &&
+sedit 's/nspr/mozilla-nspr/'
${INSTALL_ROOT}/usr/lib/pkgconfig/icecat-xpcom.pc &&
+
+#
+# install icecat script so it loads properly even if MOZILLA_FIVE_HOME is
+# not set or set to a different mozilla/firefox directory
+#
+install -m 755 -o root -g root $SCRIPT_DIRECTORY/icecat \
+ $INSTALL_ROOT/usr/bin
diff --git a/http/icecat/PRE_BUILD b/http/icecat/PRE_BUILD
new file mode 100755
index 0000000..adc6b49
--- /dev/null
+++ b/http/icecat/PRE_BUILD
@@ -0,0 +1,12 @@
+default_pre_build &&
+
+# remove /root/.mozconfig, it causes too much trouble
+if [ -f /root/.mozconfig ]; then
+ rm -f /root/.mozconfig
+fi &&
+
+# remove broken .mozconfig shipped with 1.0b
+rm -f $SOURCE_DIRECTORY/.mozconfig &&
+
+cd $SOURCE_DIRECTORY &&
+patch -p1 < $SCRIPT_DIRECTORY/cairo-fixes.patch
diff --git a/http/icecat/PROVIDES b/http/icecat/PROVIDES
new file mode 100755
index 0000000..e0c99a2
--- /dev/null
+++ b/http/icecat/PROVIDES
@@ -0,0 +1,4 @@
+WEB-BROWSER
+GRAPHICAL-WEB-BROWSER
+GECKO
+NS-PLUGIN-COMPATIBLE
diff --git a/http/icecat/cairo-fixes.patch b/http/icecat/cairo-fixes.patch
new file mode 100644
index 0000000..f11250e
--- /dev/null
+++ b/http/icecat/cairo-fixes.patch
@@ -0,0 +1,15 @@
+--- a/content/canvas/src/nsCanvasRenderingContext2D.cpp 2007-09-16
02:28:55.602763128 +0000
++++ b/content/canvas/src/nsCanvasRenderingContext2D.cpp 2007-09-16
02:28:27.527046255 +0000
+@@ -98,6 +98,12 @@
+ #include "nsTArray.h"
+
+ #include "cairo.h"
++typedef enum _cairo_font_type {
++ CAIRO_FONT_TYPE_TOY,
++ CAIRO_FONT_TYPE_FT,
++ CAIRO_FONT_TYPE_WIN32,
++ CAIRO_FONT_TYPE_ATSUI
++} cairo_font_type_t;
+ #include "imgIEncoder.h"
+ #ifdef MOZILLA_1_8_BRANCH
+ #define imgIEncoder imgIEncoder_MOZILLA_1_8_BRANCH
diff --git a/http/icecat/desktop/icecat.desktop
b/http/icecat/desktop/icecat.desktop
new file mode 100644
index 0000000..529236b
--- /dev/null
+++ b/http/icecat/desktop/icecat.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=IceCat
+Exec=icecat
+Icon=
+Terminal=false
+Type=Application
+Categories=Application;Network;Browsers;
diff --git a/http/icecat/icecat b/http/icecat/icecat
new file mode 100644
index 0000000..02985cf
--- /dev/null
+++ b/http/icecat/icecat
@@ -0,0 +1,18 @@
+#!/bin/sh
+#
+# Created by Eric Sandall 2004-12-09
+# Modified for IceCat by Pol Vinogradov 2007-10-22
+#
+# This script is here to set the correct LD_LIBRARY_PATH for icecat 2.0+
+# based on the information from this thread:
+# http://lists.freebsd.org/pipermail/freebsd-gnome/2004-October/008443.html
+#
+export MOZILLA_FIVE_HOME=/usr/lib/icecat
+export LD_LIBRARY_PATH=/usr/lib/icecat
+remote=""
+if /usr/lib/icecat/icecat-bin -remote "ping()" > /dev/null 2>&1 ; then
+ if [ -z "$@" ] ; then
+ remote='-remote xfeDoCommand(openBrowser)'
+ fi
+fi
+/usr/lib/icecat/icecat-bin $remote "$@"
diff --git a/http/icecat/icecat.gpg b/http/icecat/icecat.gpg
new file mode 100644
index 0000000..e474166
Binary files /dev/null and b/http/icecat/icecat.gpg differ
diff --git a/http/icecat/icecat.sh b/http/icecat/icecat.sh
new file mode 100644
index 0000000..fa5cbb1
--- /dev/null
+++ b/http/icecat/icecat.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+# First check if this variable is already set
+# then if not set, check it (maybe), then set it
+#
+# Set MOZILLA_FIVE_HOME for packages which need
+# the mozilla libs (e.g. monodevelop)
+#
+
+if [ -z "$MOZILLA_FIVE_HOME" ] ; then
+ MOZILLA_FIVE_HOME=/usr/lib/icecat
+fi
+export MOZILLA_FIVE_HOME
diff --git a/http/iceweasel/BUILD b/http/iceweasel/BUILD
index 2ffbd33..e893d3d 100755
--- a/http/iceweasel/BUILD
+++ b/http/iceweasel/BUILD
@@ -1,34 +1,34 @@
- local ICEWEASEL_HOME=${INSTALL_ROOT}/usr/lib/${SPELL} &&
-export MOZ_PHOENIX=1 &&
+# local ICEWEASEL_HOME=${INSTALL_ROOT}/usr/lib/${SPELL} &&
+# export MOZ_PHOENIX=1 &&
-config_query ICEWEASEL_NULLPLUGIN \
-"Do you want nullplugin installed (to enable auto search and install of
other plugins)" \
- y
+# config_query ICEWEASEL_NULLPLUGIN \
+# "Do you want nullplugin installed (to enable auto search and install of
other plugins)" \
+# y
-#
-# everything coming into /usr/lib/iceweasel-${VERSION/rc*}/
-# must actually go to /usr/lib/iceweasel/
-#
-mkdir -p $MOZILLA_HOME &&
-ln -fns $MOZILLA_HOME $MOZILLA_HOME-${VERSION/rc*} &&
-mkdir -p $INSTALL_ROOT/usr/share/idl/iceweasel &&
-ln -fns $TRACK_ROOT/usr/share/idl/iceweasel \
- $INSTALL_ROOT/usr/share/idl/iceweasel-${VERSION/rc*} &&
+# #
+# # everything coming into /usr/lib/iceweasel-${VERSION/rc*}/
+# # must actually go to /usr/lib/iceweasel/
+# #
+# mkdir -p $MOZILLA_HOME &&
+# ln -fns $MOZILLA_HOME $MOZILLA_HOME-${VERSION/rc*} &&
+# mkdir -p $INSTALL_ROOT/usr/share/idl/iceweasel &&
+# ln -fns $TRACK_ROOT/usr/share/idl/iceweasel \
+# $INSTALL_ROOT/usr/share/idl/iceweasel-${VERSION/rc*} &&
-make install &&
+# make install &&
-#
-# Script to set MOZILLA_FIVE_HOME
-#
-cp ${SCRIPT_DIRECTORY}/${SPELL}.sh $INSTALL_ROOT/etc/profile.d &&
+# #
+# # Script to set MOZILLA_FIVE_HOME
+# #
+# cp ${SCRIPT_DIRECTORY}/${SPELL}.sh $INSTALL_ROOT/etc/profile.d &&
-#
-# Create symlink from NSS Root CA store, if it exists. NSS requires this
-# to be in the same directory as the current application binary. See:
-# http://www.mozilla.org/projects/security/pki/nss/loadable_certs.html
-# https://bugzilla.mozilla.org/show_bug.cgi?id=128290
-# Only create if $MOZILLA_HOME/libnssckbi.so does not exist or is already a
-# symlink.
-#
-if test -f $INSTALL_ROOT/usr/lib/libnssckbi.so; then
- if ! test -f $MOZILLA_HOME/libnssckbi.so ||
- test -h $MOZILLA_HOME/libnssckbi.so; then
- ln -sf $TRACK_ROOT/usr/lib/libnssckbi.so $MOZILLA_HOME/libnssckbi.so
- fi
-fi &&
-if [[ "$ICEWEASEL_NULLPLUGIN" == "n" ]]
-then
- rm $MOZILLA_HOME/plugins/libnullplugin.so
-fi &&
+# #
+# # Create symlink from NSS Root CA store, if it exists. NSS requires this
+# # to be in the same directory as the current application binary. See:
+# # http://www.mozilla.org/projects/security/pki/nss/loadable_certs.html
+# # https://bugzilla.mozilla.org/show_bug.cgi?id=128290
+# # Only create if $MOZILLA_HOME/libnssckbi.so does not exist or is already a
+# # symlink.
+# #
+# if test -f $INSTALL_ROOT/usr/lib/libnssckbi.so; then
+# if ! test -f $MOZILLA_HOME/libnssckbi.so ||
+# test -h $MOZILLA_HOME/libnssckbi.so; then
+# ln -sf $TRACK_ROOT/usr/lib/libnssckbi.so $MOZILLA_HOME/libnssckbi.so
+# fi
+# fi &&
+# if [[ "$ICEWEASEL_NULLPLUGIN" == "n" ]]
+# then
+# rm $MOZILLA_HOME/plugins/libnullplugin.so
+# fi &&
-# make the pkgconfig files reference the nspr from the standalone nspr spell
-sedit 's/nspr/mozilla-nspr/'
${INSTALL_ROOT}/usr/lib/pkgconfig/iceweasel-js.pc &&
-sedit 's/nspr/mozilla-nspr/'
${INSTALL_ROOT}/usr/lib/pkgconfig/iceweasel-nss.pc &&
-sedit 's/nspr/mozilla-nspr/'
${INSTALL_ROOT}/usr/lib/pkgconfig/iceweasel-xpcom.pc &&
+# # make the pkgconfig files reference the nspr from the standalone nspr
spell
+# sedit 's/nspr/mozilla-nspr/'
${INSTALL_ROOT}/usr/lib/pkgconfig/iceweasel-js.pc &&
+# sedit 's/nspr/mozilla-nspr/'
${INSTALL_ROOT}/usr/lib/pkgconfig/iceweasel-nss.pc &&
+# sedit 's/nspr/mozilla-nspr/'
${INSTALL_ROOT}/usr/lib/pkgconfig/iceweasel-xpcom.pc &&
-#
-# install iceweasel script so it loads properly even if MOZILLA_FIVE_HOME is
-# not set or set to a different mozilla/firefox directory
-#
-install -m 755 -o root -g root $SCRIPT_DIRECTORY/iceweasel \
- $INSTALL_ROOT/usr/bin
+# #
+# # install iceweasel script so it loads properly even if MOZILLA_FIVE_HOME
is
+# # not set or set to a different mozilla/firefox directory
+# #
+# install -m 755 -o root -g root $SCRIPT_DIRECTORY/iceweasel \
+# $INSTALL_ROOT/usr/bin
diff --git a/http/iceweasel/PRE_BUILD b/http/iceweasel/PRE_BUILD
index adc6b49..6b7e7ff 100755
--- a/http/iceweasel/PRE_BUILD
+++ b/http/iceweasel/PRE_BUILD
@@ -1,12 +1,12 @@
-default_pre_build &&
+# default_pre_build &&
# remove /root/.mozconfig, it causes too much trouble
-if [ -f /root/.mozconfig ]; then
- rm -f /root/.mozconfig
-fi &&
+# if [ -f /root/.mozconfig ]; then
+# rm -f /root/.mozconfig
+# fi &&