#!/bin/sh
# Author: Blake, Kuo-Lien Huang
# License: GPL
# Description:
#    mirror drbl relative repository from opensource.nchc.org.tw

usage() {
  echo "Usage: $0 mirror_dir"
  exit
}

apt-get update
apt-get install debmirror lftp -y

if [ "$1" = "" ]; then usage; fi
if [ "$1" = "-h" ]; then usage; fi
mirror_dir=$1

has_debmirror=`dpkg -l | grep "debmirror"`
if [ "$has_debmirror" = "" ]; then
  echo "NO debmirror found! Please check your /etc/apt/sources.list and install debmirror using apt-get"
  exit
fi
has_lftp=`dpkg -l | grep "lftp"`
if [ "$has_lftp" = "" ]; then
  echo "NO lftp found! Please check your /etc/apt/sources.list and install lftp using apt-get"
  exit
fi

mirror_site="opensource.nchc.org.tw"
# mirror debian woody 
mkdir $mirror_dir/debian
/usr/bin/debmirror $mirror_dir/debian/ -a i386 -d woody -h $mirror_site --nosource --progress

# mirror debian non-US woody
mkdir $mirror_dir/debian-non-US
/usr/bin/debmirror $mirror_dir/debian-non-US/ -a i386 -d woody/non-US -h $mirror_site -r debian-non-US --nosource --progress
#
# mirror debian woody security updates
mkdir $mirror_dir/debian-security
/usr/bin/debmirror $mirror_dir/debian-security/ -a i386 -d woody/updates -h $mirror_site -r debian-security --nosource --progress

# mirror kde 3.1
mkdir -p $mirror_dir/apt/kde/3.1
#lftp_args="'o http://$mirror_site/apt/kde/3.1 && lcd $mirror_dir/apt/kde/3.1 && mirror --delete --verbose && quit'"
#eval "/usr/bin/lftp -e $lftp_args"
/usr/bin/debmirror $mirror_dir/apt/kde/3.1 -a i386 -d woody -s main -h $mirror_site -r packages/KDE/stable/3.1.4/Debian --nosource --progress

# mirror xfree86-4.3
mkdir -p $mirror_dir/apt/xfree86-4.3/woody
lftp_args="'o http://$mirror_site/apt/xfree86-4.3/woody && lcd $mirror_dir/apt/xfree86-4.3/woody && mirror --delete --verbose && quit'"
eval "/usr/bin/lftp -e $lftp_args"

# mirror drbl
mkdir -p $mirror_dir/apt/drbl
lftp_args="'o http://$mirror_site/apt/drbl && lcd $mirror_dir/apt/drbl/ && mirror --delete --verbose && quit'"
eval "/usr/bin/lftp -e $lftp_args"

####
echo "Please check the following directories are not empty"
echo "  $mirror_dir/debian"
echo "  $mirror_dir/debian-non-US"
echo "  $mirror_dir/debian-security"
echo "  $mirror_dir/apt/kde/3.1"
echo "  $mirror_dir/apt/xfree86-4.3"
echo "  $mirror_dir/apt/drbl"
echo "If not, the mirror progression were successful!!"
echo
echo "If the mirror is only for yourself,"
echo "you can edit your /etc/apt/sources.list as follow:"
echo 
echo "deb file:///$mirror_dir/debian woody main contrib non-free"
echo "deb file:///$mirror_dir/debian-non-US woody/non-US main contrib non-free"
echo "deb file:///$mirror_dir/debian-security woody/updates main contrib non-free"
echo "deb file:///$mirror_dir/apt/kde/3.1 woody main"
echo "#deb file:///$mirror_dir/apt/xfree86-4.3 ./"
echo "deb file:///$mirror_dir/apt/drbl ./"
echo
echo "Otherwise, you can export them on the web or ftp site and please let us know."
echo "We will list your site on http://drbl.nchc.org.tw/"
####
