#!/bin/bash echo "==> CKIT - Construction KIT" #account ftp foo="" bar="" # CONTROLLO AZIONE if test -z "$1" then echo "==> SOMARO! Devi darmi un'azione!" echo "==> Scegli tra build, add o remove." exit 0 else touch ~/pkg/CKIT/lista echo "==> Ok, azione scelta $1." fi # BUILD if [ "$1" == "build" ] then # CONTROLLO GLI ARGOMENTI DEL BUILD if test -z "$2" || test -z "$3" || test -z "$4" then echo "==> Per il build mi servono [pacchetto] [flag1] [flag2]" echo "==> flag1=1 per prendere da AUR il PKGBUILD" echo "==> flag2=1 per compilare da root" exit 0 else echo "==> Compilo senza uppare. Preparativi per il PKGBUILD." cd ~/pkg/yaourtbuild # PKGBUILD if [ "$3" == "1" ] then echo "==> Tiro il pacco da aur" wget http://aur.archlinux.org/packages/$2/$2.tar.gz tar -xf "$2.tar.gz" rm ~/pkg/yaourtbuild/$2.tar.gz else echo "==> Uso il PKGBUILD locale" fi cd $2 # makepkg if [ "$4" == "1" ] then echo "==> Compilo da root!" sudo makepkg -i --asroot else echo "==> Compilo da comune mortale!" makepkg -i fi if [ -f $2*-i686.pkg.tar.gz ] then echo "==> Ok," $2 "fatto :)" cd ~/pkg/CKIT mv ~/pkg/yaourtbuild/$2/$2*-i686.pkg.tar.gz ~/pkg/CKIT echo $2 >> /tmp/CKIT cat /tmp/CKIT lista > /tmp/lista rm /tmp/CKIT mv /tmp/lista lista echo "==> Attualmente ci sono questi pacchetti da aggiungere al repo:" cat lista else echo "==> Spiacente, il pacco" $2 "non compila :(" fi fi # CONTROLLO ARGOMENTI DEL BUILD fi # BUILD # ADD if [ "$1" == "add" ] then echo "==> Non compilo un cacchio, aggiungo al repo tutti pacchetti presenti nel workspace." cd ~/pkg/CKIT # CONTROLLO SE ESISTONO PACCHETTI COMPILATI if [ `stat -c%s lista` == 0 ] then echo "==> Non c'è niente da aggiungere, fai qualche pacco prima!" exit 0 fi if [ -f deelab.db.tar.gz ] then rm deelab.db.tar.gz fi wget http://www.deelab.org/arch/i686/deelab.db.tar.gz #aggiungo al repo echo "==> Aggiungo al repo." for file in *i686.pkg.tar.gz; do repo-add deelab.db.tar.gz $file done #db echo "==> Invio il db." lftp -u "$foo,$bar" ftp.deelab.org/arch/i686 -e "set ftp:ssl-protect-data true; put deelab.db.tar.gz; exit" #sego i vecchi echo "==> Sego i vecchi pacchetti." for riga in `cat lista`; do lftp -u "$foo,$bar" ftp.deelab.org/arch/i686 -e "set ftp:ssl-protect-data true; glob rm -f $riga-*-*-i686.pkg.tar.gz; exit" done rm lista #invio i nuovi echo "==> Invio i nuovi pacchetti." for file in *i686.pkg.tar.gz; do lftp -u "$foo,$bar" ftp.deelab.org/arch/i686 -e "set ftp:ssl-protect-data true; put $file; exit" mv $file ~/pkg/cache done echo "==> Fine aggiornamento repository." fi # ADD # REMOVE if [ "$1" == "remove" ] then # CONTROLLO GLI ARGOMENTI DEL REMOVE if test -z "$2" then echo "==> Dammi anche un pacchetto da cavare però!" exit 0 else cd ~/pkg/CKIT if [ -f deelab.db.tar.gz ] then rm deelab.db.tar.gz fi wget http://www.deelab.org/arch/i686/deelab.db.tar.gz repo-remove deelab.db.tar.gz $2 echo "==> Segato dal DB!" echo "==> Invio il DB." lftp -u "$foo,$bar" ftp.deelab.org/arch/i686 -e "set ftp:ssl-protect-data true; put deelab.db.tar.gz; exit" echo "==> Cancello il pacco." lftp -u "$foo,$bar" ftp.deelab.org/arch/i686 -e "set ftp:ssl-protect-data true; glob rm -f $2-*-*-i686.pkg.tar.gz; exit" fi fi # REMOVE # AZIONE NON VALIDA if [ "$1" != "build" ] && [ "$1" != "add" ] && [ "$1" != "remove" ] then echo "==> CAPRA! $1 non è un'azione valida!!!" exit 0 fi cd ~ echo "==> Fine esecuzione CKIT!"