f9adc4
#!/bin/bash
f9adc4
#set -x
f9adc4
set -e
f9adc4
usage()
f9adc4
{
f9adc4
cat << EOF
f9adc4
usage: $0 options
f9adc4
f9adc4
This script downloads calendar langpacks for Thunderbird.
f9adc4
f9adc4
OPTIONS:
f9adc4
   -h      Show this message
f9adc4
   -v      Version string (7.0.1)
f9adc4
   -b      Build number (1, 2, 3)
f9adc4
   -r      Reuse downloaded files (when you don't want to redownload)
f9adc4
EOF
f9adc4
}
f9adc4
f9adc4
VER=
f9adc4
BUILDNUM=
f9adc4
LANG_DATE=`date "+%Y%m%d"`
f9adc4
while getopts “hv:b:r” OPTION
f9adc4
do
f9adc4
     case $OPTION in
f9adc4
         h)
f9adc4
             usage
f9adc4
             exit 1
f9adc4
             ;;
f9adc4
         v)
f9adc4
             VER=$OPTARG
f9adc4
             ;;
f9adc4
         b)
f9adc4
             BUILDNUM=$OPTARG
f9adc4
             ;;
f9adc4
         ?)
f9adc4
             usage
f9adc4
             exit
f9adc4
             ;;
f9adc4
     esac
f9adc4
done
f9adc4
f9adc4
if [ -z "$VER" -o -z "$BUILDNUM"  ]
f9adc4
then
f9adc4
     echo "Missing version or build number."
f9adc4
     usage
f9adc4
     exit 1
f9adc4
fi
f9adc4
f9adc4
WHITE='\033[1;33m'
f9adc4
NC='\033[0m' # No Color
f9adc4
f9adc4
LOCALES=`curl -f https://archive.mozilla.org/pub/thunderbird/candidates/$VER-candidates/build$BUILDNUM/linux-i686/ | grep "a href"|sed -e "s|.*/\([^/]*\)/\".*|\1|"|tail -n+2 |grep -v xpi`
f9adc4
#echo $LOCALES
f9adc4
rm -rf lightning-langpacks
f9adc4
mkdir -p lightning-langpacks
f9adc4
cd lightning-langpacks
f9adc4
LOCALE_COUNT=`echo $LOCALES| tr ' ' '\n' | wc -l`
f9adc4
LOCALE_NUM=0
f9adc4
for lang in $LOCALES; do
f9adc4
  LOCALE_NUM=$((LOCALE_NUM+1))
f9adc4
  echo -e "${WHITE}Processing calendar locale: $lang ($LOCALE_NUM/$LOCALE_COUNT)${NC}"
f9adc4
  mkdir -p extracted_lightning
f9adc4
  mkdir -p calendar-locales
f9adc4
  #echo Downloading TB binary for locale: $lang
f9adc4
  wget --quiet https://archive.mozilla.org/pub/thunderbird/candidates/$VER-candidates/build$BUILDNUM/linux-i686/$lang/thunderbird-$VER.tar.bz2
f9adc4
f9adc4
  cd extracted_lightning
f9adc4
  tar -xf ../thunderbird-$VER.tar.bz2 thunderbird/distribution/extensions/\{e2fda1a4-762b-4020-b5ad-a41df1933103\}.xpi
f9adc4
  set +e
f9adc4
  unzip -qq thunderbird/distribution/extensions/\{e2fda1a4-762b-4020-b5ad-a41df1933103\}.xpi
f9adc4
  set -e
f9adc4
  LIGHTNING_VERSION=`cat app.ini |grep "^Version="|sed -e 's/Version=//'`
f9adc4
  BUILD_ID=`cat app.ini |grep "^BuildID="|sed -e 's/BuildID=//'`
f9adc4
  MAX_VERSION=`cat app.ini |grep MaxVersion|sed -e s/MaxVersion=//`
f9adc4
  MIN_VERSION=`cat app.ini |grep MinVersion|sed -e s/MinVersion=//`
f9adc4
  rm -rf thunderbird
f9adc4
  mkdir -p ../calendar-locales/chrome
f9adc4
  cp -r chrome/calendar-$lang ../calendar-locales/chrome
f9adc4
  cp -r chrome/lightning-$lang ../calendar-locales/chrome
f9adc4
  cd -
f9adc4
f9adc4
  cd calendar-locales
f9adc4
  # create manifest
f9adc4
  cat > manifest.json <
f9adc4
{
f9adc4
  "languages": {
f9adc4
    "$lang": {
f9adc4
      "chrome_resources": {
f9adc4
        "calendar": "chrome/calendar-$lang/locale/$lang/calendar/",
f9adc4
        "lightning": "chrome/lightning-$lang/locale/$lang/lightning/"
f9adc4
      },
f9adc4
      "version": "$LIGHTNING_VERSION"
f9adc4
    }
f9adc4
  },
f9adc4
  "applications": {
f9adc4
    "gecko": {
f9adc4
      "strict_min_version": "$MIN_VERSION",
f9adc4
      "id": "langpack-cal-$lang@lightning.mozilla.org",
f9adc4
      "strict_max_version": "$MAX_VERSION"
f9adc4
    }
f9adc4
  },
f9adc4
  "langpack_id": "$lang",
f9adc4
  "version": "7.$LIGHTNING_VERSION.$BUILD_ID",
f9adc4
  "name": "$lang Language Pack Calendar",
f9adc4
  "manifest_version": 2,
f9adc4
  "sources": {
f9adc4
    "browser": {
f9adc4
      "base_path": "browser/"
f9adc4
    }
f9adc4
  },
f9adc4
  "author": "Mozilla.cz (contributors: Pavel Cvrček, Pavel Franc, Michal Stanke, Michal Vašíček)",
f9adc4
  "description": "Language pack for Thunderbird for $lang, this was repacked by Fedora/RHEL package maintainer from original binaries."
f9adc4
}
f9adc4
f9adc4
EOL
f9adc4
  zip --quiet -r ../langpack-cal-$lang@lightning.mozilla.org.xpi *
f9adc4
  cd -
f9adc4
  rm -rf calendar-locales
f9adc4
  rm -rf extracted_lightning
f9adc4
f9adc4
  rm -f thunderbird-$VER.tar.bz2
f9adc4
done
f9adc4
echo "Creating lightning-langpacks-$VER.tar.xz..."
f9adc4
tar cJf ../lightning-langpacks-$VER.tar.xz *.xpi
f9adc4
cd ..
f9adc4
rm -rf lightning-langpacks