#/bin/sh # # SlackBuild by George Vlahavas (vlahavas~at~gmail~dot~com) # # This builds all available language packs for mozilla firefox # Get the language packs (xpi files) from # http://download-installer.cdn.mozilla.net/pub/firefox/releases/$VERSION/linux-i686/xpi/ # and put them all in a directory named firefox-xpi-$VERSION and create # a tarball out of it. # Don't mind the linux-i686 in the URL, the localization packages work # for x86_64 platforms as well, as long as you use the correct # installation directories. VERSION=52.2.0esr MAINVER="${VERSION%%.*}esr" BUILD=1gv if [ -z $ARCH ]; then echo "ERROR: You have to set the ARCH variable. Use either i686 or x86_64." exit 1 fi startdir=`pwd` rm -rf {pkg,src,mozilla-firefox-l10n-packages-$MAINVER-$ARCH-$BUILD} mkdir {pkg,src,mozilla-firefox-l10n-packages-$MAINVER-$ARCH-$BUILD} if [ ! -f $startdir/firefox-xpi-$VERSION.tar.xz ]; then echo "ERROR: firefox-xpi-$VERSION.tar.xz not found." exit 1 fi tar xf $startdir/firefox-xpi-$VERSION.tar.xz -C $startdir/src cd $startdir/src/firefox-xpi-$VERSION for i in `basename -a -s ".xpi" *.xpi`; do grep "^#$i " $startdir/firefox-langs || \ echo "WARNING: No definition for $i" done for i in `basename -a -s ".xpi" *.xpi`; do unzip -q $i.xpi -d $i done for i in `basename -a -s ".xpi" *.xpi`; do mkdir -p $startdir/pkg/mozilla-firefox-l10n-$i/usr/lib/firefox-$MAINVER/browser/extensions/langpack-$i@firefox.mozilla.org cp -a $startdir/src/firefox-xpi-$VERSION/$i/* $startdir/pkg/mozilla-firefox-l10n-$i/usr/lib/firefox-$MAINVER/browser/extensions/langpack-$i@firefox.mozilla.org/ mkdir -p $startdir/pkg/mozilla-firefox-l10n-$i/install LONGLANG=`grep "^#$i " $startdir/firefox-langs | sed "s/^#$i //g"` sed "s/__lang__/$i/g" $startdir/slack-desc.template | \ sed "s/__longlang__/$LONGLANG/g" > $startdir/pkg/mozilla-firefox-l10n-$i/install/slack-desc cd $startdir/pkg/mozilla-firefox-l10n-$i # install the Salix search engines rm $startdir/pkg/mozilla-firefox-l10n-$i/usr/lib/firefox-$MAINVER/browser/extensions/langpack-$i\@firefox.mozilla.org/browser/chrome/$i/locale/browser/searchplugins/* cp $startdir/duckduckgo{,-lite}.xml $startdir/pkg/mozilla-firefox-l10n-$i/usr/lib${LIBDIRSUFFIX}/firefox-$MAINVER/browser/extensions/langpack-$i\@firefox.mozilla.org/browser/chrome/$i/locale/browser/searchplugins/ echo -e "duckduckgo\nduckduckgo-lite\n" > $startdir/pkg/mozilla-firefox-l10n-$i/usr/lib${LIBDIRSUFFIX}/firefox-$MAINVER/browser/extensions/langpack-$i\@firefox.mozilla.org/browser/chrome/$i/locale/browser/searchplugins/list.txt # disable updates rm $startdir/pkg/mozilla-firefox-l10n-$i/usr/lib/firefox-$MAINVER/browser/extensions/langpack-$i@firefox.mozilla.org/chrome/$i/locale/$i/mozapps/extensions/update.* rm -rf $startdir/pkg/mozilla-firefox-l10n-$i/usr/lib/firefox-$MAINVER/browser/extensions/langpack-$i@firefox.mozilla.org/chrome/$i/locale/$i/mozapps/update chown -R root:root . find . \ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ -exec chmod 755 {} \; -o \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; if [ $ARCH = "x86_64" ];then mv usr/lib usr/lib64 fi /sbin/makepkg -l y -c n $startdir/mozilla-firefox-l10n-packages-$MAINVER-$ARCH-$BUILD/mozilla-firefox-l10n-$i-$MAINVER-$ARCH-$BUILD.txz ( cd $startdir/mozilla-firefox-l10n-packages-$MAINVER-$ARCH-$BUILD md5sum mozilla-firefox-l10n-$i-$MAINVER-$ARCH-$BUILD.txz > mozilla-firefox-l10n-$i-$MAINVER-$ARCH-$BUILD.md5 ) done rm -rf $startdir/{pkg,src}