2017-08-07 04:00:50 +02:00
|
|
|
|
#!/bin/bash
|
|
|
|
|
. /etc/mpsd.conf
|
|
|
|
|
if [ -f /etc/mps.conf ];then
|
|
|
|
|
. /etc/mps.conf
|
|
|
|
|
fi
|
|
|
|
|
. /root/bin/fonks.sh
|
2017-12-14 06:40:19 +01:00
|
|
|
|
versiyon="1.1.7 Milis Paket Sistemi"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
iletisim="milisarge@gmail.com"
|
|
|
|
|
paketdepo="/depo/paketler/"
|
|
|
|
|
if [ -z ${sunucu+:} ]; then
|
|
|
|
|
sunucu="127.0.0.1:8000/"
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ -z ${git_sunucu+:} ]; then
|
|
|
|
|
git_sunucu="https://github.com/milisarge/malfs-milis"
|
|
|
|
|
fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ikaynak=""
|
|
|
|
|
betikad=${0##*/}
|
|
|
|
|
kurulum_onay="evet"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
talimatname="/root/talimatname"
|
|
|
|
|
anatalimatname="/sources/milis.git/talimatname"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
kokdizin="/"
|
|
|
|
|
VT="/var/lib/pkg/DB"
|
|
|
|
|
TARIHCE_DIZIN="/var/lib/pkg/tarihce"
|
|
|
|
|
LOGDIZIN="/var/log/mps"
|
|
|
|
|
tekrarkur="hayir"
|
|
|
|
|
logdosya=/var/log/mps/mps.log
|
|
|
|
|
#temel paket koruma
|
|
|
|
|
if [ -z ${tpk+:} ]; then
|
|
|
|
|
lokal="evet"
|
|
|
|
|
fi
|
|
|
|
|
if [ -z ${lokal+:} ]; then
|
|
|
|
|
lokal="tr"
|
|
|
|
|
fi
|
|
|
|
|
if [ -z ${docsil+:} ]; then
|
|
|
|
|
docsil="evet"
|
|
|
|
|
fi
|
|
|
|
|
if [ -z ${yerelsil+:} ]; then
|
|
|
|
|
yerelsil="silme"
|
|
|
|
|
fi
|
|
|
|
|
if [ -z ${ektalimatname+:} ]; then
|
|
|
|
|
ektalimatname="/root/talimatlar"
|
|
|
|
|
[ ! -d /root/talimatlar ] && mkdir -p /root/talimatlar
|
|
|
|
|
fi
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
if [ -z ${sunucular+:} ]; then
|
|
|
|
|
declare -a sunucular=("paketler.milislinux.org")
|
|
|
|
|
awk ' {print;} NR == 1 { print "sunucular=(paketler.milislinux.org/)"; }' /etc/mps.conf > /etc/mps2.conf
|
|
|
|
|
mv /etc/mps2.conf /etc/mps.conf
|
|
|
|
|
fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ -z ${silme_esgec+:} ]; then
|
|
|
|
|
declare -a silme_esgec=()
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Türkçe Mesajlar
|
|
|
|
|
_paket_adi_gerekli="paket ismi eksik!"
|
|
|
|
|
_dizin_bulunamadi="dizin bulunamadı!"
|
|
|
|
|
_talimat_sayisi_fazla="talimatnameler altında birden fazla talimat mevcut!"
|
|
|
|
|
_talimat_bulunamadi="ilgili talimat bulunamadı!"
|
|
|
|
|
_dosya_yolu_bulunamadi="dosya yolu bulunamadı!"
|
|
|
|
|
_shasum_uyumsuzluk="shasum uyumsuzluğu tespit edildi!"
|
|
|
|
|
_gerekler_belirleniyor="bağımlılıkları belirleniyor."
|
|
|
|
|
_paket_kuruldu="paketi kuruldu."
|
|
|
|
|
_paket_kurulu_degil="paketi kurulu değil!"
|
|
|
|
|
_paket_silindi="paketi silindi."
|
|
|
|
|
_paket_silinsinmi="paketi kaldırılsın mı?"
|
|
|
|
|
_paket_tanimsiz="paketi tanımsız!"
|
|
|
|
|
_paket_bulunamadi="ilgili paket bulunamadı!"
|
|
|
|
|
_paketvt_guncelleniyor="paket veritabanı güncelleniyor."
|
|
|
|
|
_paket_onbellek_depoda_var="paketi önbellek depoda bulunmakta."
|
|
|
|
|
_paket_depoda_yok="paket depoda bulunmuyor ve gereksiz,"
|
|
|
|
|
_siliniyor="siliniyor"
|
|
|
|
|
_git_guncelleniyor="git sunucudan güncelleme çekiliyor."
|
|
|
|
|
_git_guncel="git deposu güncel"
|
|
|
|
|
_git_guncellendi="git deposu güncellendi."
|
|
|
|
|
_yerel_esitlendi="yerele eşitleme tamam."
|
|
|
|
|
_yerel_esitleniyor="yerele eşitleniyor."
|
|
|
|
|
_devir_kontrol_iptal="devir kontrolü iptal edildi!"
|
|
|
|
|
_surum_kontrol_iptal="sürüm kontrolü iptal edildi!"
|
|
|
|
|
_zaten="zaten"
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
icerik_ekle(){
|
2017-09-25 17:41:26 +02:00
|
|
|
|
if [ -f "$1" ];then
|
|
|
|
|
paketad=`echo "$1" | cut -d'#' -f1`
|
|
|
|
|
paketad=`basename $paketad`
|
|
|
|
|
ryaz 34 $paketad" paketi kuruluyor-> $kokdizin"
|
|
|
|
|
if [ -f /usr/bin/bsdtar ];then
|
|
|
|
|
bsdtar -C /tmp --extract --file=$1 .PRE 1 2> /tmp/$paketad_pre.log
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
2017-09-25 17:41:26 +02:00
|
|
|
|
tar -C /tmp --extract --file=$1 .PRE 1 2> /tmp/$paketad_pre.log
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
#kos-kur kontrolu
|
|
|
|
|
if [ -f /tmp/.PRE ];then
|
|
|
|
|
if [ "$kokdizin" == "/" ];then
|
|
|
|
|
bash /tmp/.PRE
|
|
|
|
|
else
|
|
|
|
|
cp /tmp/.PRE $kokdizin/tmp/$paketad.PRE
|
|
|
|
|
fi
|
|
|
|
|
rm /tmp/.PRE
|
|
|
|
|
fi
|
|
|
|
|
mkdir -p kur.$paketad &&
|
|
|
|
|
if [ -f /usr/bin/bsdtar ];then
|
|
|
|
|
bsdtar xf $1 -C kur.$paketad
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
2017-09-25 17:41:26 +02:00
|
|
|
|
tar xf $1 -C kur.$paketad
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
#istenmeyen yerellerin silinmesi
|
|
|
|
|
if [ -d kur.$paketad/usr/share/locale ] && [ "$yerelsil" == "evet" ];then
|
|
|
|
|
for lkl in `ls kur.$paketad/usr/share/locale/`;do
|
|
|
|
|
if [ "$lkl" != "$lokal" ];then rm -r kur.$paketad/usr/share/locale/$lkl; fi
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
#doc dizini silinmesi
|
|
|
|
|
if [ -d kur.$paketad/usr/share/doc ] && [ "$docsil" == "evet" ];then
|
|
|
|
|
rm -r kur.$paketad/usr/share/doc
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
mkdir -p $kokdizin$VT/"$paketad" &&
|
2017-09-25 17:41:26 +02:00
|
|
|
|
cp -v -afr kur.$paketad/* $kokdizin > kur.$paketad/kurulan
|
2017-12-14 06:40:19 +01:00
|
|
|
|
cp kur.$paketad/kurulan /tmp/ &&cat kur.$paketad/kurulan | cut -d '>' -f2 > $kokdizin$VT/"$paketad"/kurulan &&
|
|
|
|
|
#mv kur.$paketad/.MTREE $VT/"$paketad"/files &&
|
|
|
|
|
mv kur.$paketad/.META $kokdizin$VT/"$paketad"/META &&
|
2017-09-25 17:41:26 +02:00
|
|
|
|
|
|
|
|
|
#kur-kos calistirilmasi
|
|
|
|
|
if [ -f kur.$paketad/.POST ];then
|
|
|
|
|
if [ "$kokdizin" == "/" ];then
|
|
|
|
|
bash kur.$paketad/.POST
|
|
|
|
|
else
|
|
|
|
|
cp kur.$paketad/.POST $kokdizin/tmp/$paketad.POST
|
|
|
|
|
fi
|
|
|
|
|
rm kur.$paketad/.POST
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
rm -r kur.$paketad
|
|
|
|
|
if [ -f $kokdizin/etc/ld.so.conf ];then
|
|
|
|
|
ldconfig -r $kokdizin
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 34 $paketad" $_paket_kuruldu"
|
|
|
|
|
loglama "$paketad $_paket_kuruldu"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
else
|
|
|
|
|
ryaz 31 "icerik_ekle:paket konum parametresi boş!!!"
|
|
|
|
|
exit 1
|
2017-08-08 21:39:37 +02:00
|
|
|
|
fi
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_sil(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local paket kkont sil_onay oto_silme
|
|
|
|
|
local _etkilenen=()
|
2017-08-07 04:00:50 +02:00
|
|
|
|
paket="$1"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
tersbag_goster="hayir"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ "$2" ]; then
|
|
|
|
|
oto_silme="$2"
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
if [ "$3" ]; then
|
|
|
|
|
tersbag_goster="evet"
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ "$tpk" = "evet" ] && [ -d "$talimatname/temel/$1" ];then
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ryaz 31 "$1 temel sistem paketidir.Silinemez!!!"
|
|
|
|
|
hataloglama "$1 temel sistem paketidir.Silinemez!!!"
|
|
|
|
|
else
|
|
|
|
|
kkont=`kurulu_kontrol "$1"`
|
|
|
|
|
if [ "$kkont" = "kurulu" ];then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ -f "$VT/$paket/kurulan" ];then
|
2017-08-07 04:00:50 +02:00
|
|
|
|
#dizin koruma
|
2017-09-25 17:41:26 +02:00
|
|
|
|
etkilenen_kurtar $1
|
2017-12-14 06:40:19 +01:00
|
|
|
|
cat $VT/$paket/kurulan | cut -d '>' -f2 > /tmp/$paket.sil
|
2017-09-25 17:41:26 +02:00
|
|
|
|
if [ "$tersbag_goster" = "evet" ];then
|
|
|
|
|
ryaz 31 "ters bagimliliklar"
|
|
|
|
|
ryaz 31 "------------------"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ters_bagimli_bilgi "$paket"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
ryaz 31 "------------------"
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
#_etkilenen=$(silme_etkilenen_kontrol /tmp/$paket.sil $paket)
|
|
|
|
|
|
|
|
|
|
#if [ -f "${_etkilenen[0]}" ];then
|
2017-09-25 17:41:26 +02:00
|
|
|
|
ryaz 31 "etkilenen dosyalar"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ryaz 31 "------------------"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
silme_etkilenen_kontrol /tmp/$paket.sil $paket
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ryaz 31 "------------------"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
#fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ "$oto_silme" = "evet" ];then
|
|
|
|
|
sil_onay="e"
|
|
|
|
|
else
|
|
|
|
|
while true; do
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 34 $paket" $_paket_silinsinmi";read -p "e veya h-> " eh
|
2017-08-07 04:00:50 +02:00
|
|
|
|
case $eh in
|
|
|
|
|
[Ee]* ) sil_onay="e"; break;;
|
|
|
|
|
[Hh]* ) break;;
|
|
|
|
|
* ) echo "e veya h";;
|
|
|
|
|
esac
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
if [ "$sil_onay" = "e" ];then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
_konum=$(talimat_bul $paket)
|
|
|
|
|
[ -f "$_konum/$paket.kos-sil" ] && bash "$_konum/$paket.kos-sil"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
xargs rm -r -f < /tmp/$paket.sil &&
|
2017-12-14 06:40:19 +01:00
|
|
|
|
rm -r -f "$VT/$paket" &&
|
|
|
|
|
[ -f "$_konum/$paket.sil-kos" ] && bash "$_konum/$paket.sil-kos"
|
|
|
|
|
ryaz 34 $paket" $_paket_silindi"
|
|
|
|
|
loglama "$paket $_paket_silindi"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
rm -f /tmp/$paket.sil
|
|
|
|
|
else
|
|
|
|
|
rm -f /tmp/$paket.sil
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "kritik mesaj:kurulanlar dosyası yok."
|
|
|
|
|
hataloglama "kritik mesaj:kurulanlar dosyası yok."
|
|
|
|
|
fi
|
|
|
|
|
elif [ "$kkont" = "degil" ];then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "$_zaten $_paket_kurulu_degil"
|
|
|
|
|
hataloglama "$_zaten $_paket_kurulu_degil"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "$_paket_tanimsiz"
|
|
|
|
|
hataloglama "$_paket_tanimsiz"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
}
|
2017-09-25 17:41:26 +02:00
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
paket_ara(){
|
|
|
|
|
paket="$1"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
for pkt in `cat /depo/paketler/paket*.vt | grep $paket | awk '{print $1}'`; do
|
2017-12-14 06:40:19 +01:00
|
|
|
|
pakdesc=$(find $talimatname -name "$pkt" | xargs -I % sed -n '1{p;q}' %/talimat | sed s'/# Tanım: //g');
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ryaz 34 "$pkt - $pakdesc";
|
|
|
|
|
done
|
|
|
|
|
}
|
2017-09-25 17:41:26 +02:00
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
paket_liste(){
|
|
|
|
|
mps_paketler_listesi="/tmp/mps_paketler_listesi"
|
|
|
|
|
local cikti _grup
|
|
|
|
|
_grup="yok"
|
|
|
|
|
cikti="--normal"
|
|
|
|
|
if [ "$1" ]; then
|
|
|
|
|
if [ "$1" == "--json" ];then
|
|
|
|
|
cikti="--json"
|
|
|
|
|
else
|
|
|
|
|
_grup="$1"
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
if [ "$2" ]; then
|
|
|
|
|
cikti="$2"
|
|
|
|
|
fi
|
|
|
|
|
#echo "cikti:$cikti"
|
|
|
|
|
#echo "grup:$_grup"
|
|
|
|
|
#exit 1
|
|
|
|
|
if [ $_grup == "yok" ];then
|
|
|
|
|
if [ $cikti == "--json" ];then
|
|
|
|
|
[ -f $mps_paketler_listesi ] && rm -rf $mps_paketler_listesi
|
|
|
|
|
for pkt in $(cat /depo/paketler/paket*.vt | awk '{print $1}'); do
|
|
|
|
|
printf "$pkt," >> $mps_paketler_listesi
|
|
|
|
|
done
|
|
|
|
|
sed -i s'/.$//' $mps_paketler_listesi
|
|
|
|
|
else
|
|
|
|
|
cat /depo/paketler/paket*.vt | awk '{print $1}'
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
if [ $cikti == "--json" ];then
|
|
|
|
|
grup_paketler_liste $_grup $cikti
|
|
|
|
|
else
|
|
|
|
|
grup_paketler_liste $_grup
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_grup_liste(){
|
|
|
|
|
mps_paket_grup_listesi="/tmp/mps_paket_grup_listesi"
|
|
|
|
|
local cikti
|
|
|
|
|
cikti="normal"
|
|
|
|
|
if [ "$1" ]; then
|
|
|
|
|
cikti="$1"
|
|
|
|
|
fi
|
|
|
|
|
_gruplar=`grep -ri "Grup:" $talimatname/* $ektalimatname/* | cut -d':' -f3 | sed 's/^ *//;s/ *$//' | sort -u`
|
|
|
|
|
if [ $cikti == "--json" ];then
|
|
|
|
|
[ -f $mps_paket_grup_listesi ] && rm -rf $mps_paket_grup_listesi
|
|
|
|
|
#printf "[" >> $mps_paket_grup_listesi
|
|
|
|
|
for grp in $(grep -ri "Grup:" $talimatname/* $ektalimatname/* | cut -d':' -f3 | sed 's/^ *//;s/ *$//' | sort -u); do
|
|
|
|
|
printf "$grp," >> $mps_paket_grup_listesi
|
|
|
|
|
done
|
|
|
|
|
sed -i s'/.$//' $mps_paket_grup_listesi
|
|
|
|
|
#printf "]" >> $mps_paket_grup_listesi
|
|
|
|
|
else
|
|
|
|
|
echo $_gruplar
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
grup_paketler_liste(){
|
|
|
|
|
mps_grup_paketler_listesi="/tmp/mps_grup_paketler_listesi"
|
|
|
|
|
local cikti _grup _paketler
|
|
|
|
|
_grup="$1"
|
|
|
|
|
cikti="normal"
|
|
|
|
|
if [ "$2" ]; then
|
|
|
|
|
cikti="$2"
|
|
|
|
|
fi
|
|
|
|
|
_paketler=`grep -rli "Grup: $_grup" $talimatname/* $ektalimatname/* | cut -d':' -f3 | sed 's/^ *//;s/ *$//' | xargs -I {} dirname {} | xargs -I {} basename {} | sort -u`
|
|
|
|
|
if [ $cikti == "--json" ];then
|
|
|
|
|
[ -f $mps_grup_paketler_listesi ] && rm -rf $mps_grup_paketler_listesi
|
|
|
|
|
#printf "[" >> $mps_paket_grup_listesi
|
|
|
|
|
for pkt in $(grep -rli "Grup: $_grup" $talimatname/* $ektalimatname/* | cut -d':' -f3 | sed 's/^ *//;s/ *$//' | xargs -I {} dirname {} | xargs -I {} basename {} | sort -u); do
|
|
|
|
|
printf "$pkt," >> $mps_grup_paketler_listesi
|
|
|
|
|
done
|
|
|
|
|
sed -i s'/.$//' $mps_grup_paketler_listesi
|
|
|
|
|
#printf "]" >> $mps_paket_grup_listesi
|
|
|
|
|
else
|
|
|
|
|
echo $_paketler
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
kelime_bul(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
grep --color -H -ri "$1" $talimatname
|
2017-08-07 04:00:50 +02:00
|
|
|
|
grep --color -H -ri "$1" $ektalimatname
|
|
|
|
|
}
|
2017-09-25 17:41:26 +02:00
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
paket_bilgi2(){
|
|
|
|
|
local paket kkont
|
|
|
|
|
kkont=`kurulu_kontrol "$1"`
|
|
|
|
|
if [ "$kkont" = "kurulu" ];then
|
|
|
|
|
paket="$1"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
cat "$VT/$paket"/META
|
2017-08-07 04:00:50 +02:00
|
|
|
|
elif [ "$kkont" = "degil" ];then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
echo "$_paket_kurulu_degil"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
echo "$_paket_tanimsiz"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_bilgi(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local paket kkont cikti _yaz _yaz_uyari _yaz_son
|
|
|
|
|
cikti="--renkli"
|
|
|
|
|
_yaz_son=""
|
|
|
|
|
if [ "$2" ]; then
|
|
|
|
|
cikti="$2"
|
|
|
|
|
fi
|
|
|
|
|
if [ $cikti == "--html" ];then
|
|
|
|
|
_yaz="echo"
|
|
|
|
|
_yaz_uyari="echo"
|
|
|
|
|
_yaz_son="<br>"
|
|
|
|
|
elif [ $cikti == "--renkli" ];then
|
|
|
|
|
_yaz="ryaz 32"
|
|
|
|
|
_yaz_uyari="ryaz 31"
|
|
|
|
|
else
|
|
|
|
|
cikti="normal"
|
|
|
|
|
fi
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
kkont=`kurulu_kontrol "$1"`
|
2017-12-14 06:40:19 +01:00
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ "$kkont" = "kurulu" ];then
|
|
|
|
|
paket="$1"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
satir=`sed -n '1p' < $VT/"$paket"/META`
|
|
|
|
|
$_yaz "ADI :" ${satir:1:${#satir}-1} #$_yaz_son
|
|
|
|
|
satir=`sed -n '2p' < $VT/"$paket"/META`
|
|
|
|
|
$_yaz "TANIM :" ${satir:1:${#satir}-1} #$_yaz_son
|
|
|
|
|
satir=`sed -n '3p' < $VT/"$paket"/META`
|
|
|
|
|
$_yaz "URL :" ${satir:1:${#satir}-1} #$_yaz_son
|
|
|
|
|
satir=`sed -n '5p' < $VT/"$paket"/META`
|
|
|
|
|
$_yaz "PAKETÇİ :" ${satir:1:${#satir}-1} #$_yaz_son
|
|
|
|
|
satir=`sed -n '6p' < $VT/"$paket"/META`
|
|
|
|
|
satir=${satir:1:${#satir}-1}
|
|
|
|
|
printf -v boyut '%d\n' "$satir" 2>/dev/null
|
|
|
|
|
if [ $boyut -lt 1048576 ];then
|
|
|
|
|
boyut=$(($boyut/1024))
|
|
|
|
|
_ek="kb"
|
|
|
|
|
else
|
|
|
|
|
boyut=$(($boyut/1024/1024))
|
|
|
|
|
_ek="mb"
|
|
|
|
|
fi
|
|
|
|
|
$_yaz "KUR BOYUT :" "$boyut $_ek (tahmini)" #$_yaz_son
|
|
|
|
|
satir=`sed -n '7p' < $VT/"$paket"/META`
|
|
|
|
|
$_yaz "SÜRÜM :" ${satir:1:${#satir}-1} #$_yaz_son
|
|
|
|
|
satir=`sed -n '8p' < $VT/"$paket"/META`
|
|
|
|
|
$_yaz "DEVİR :" ${satir:1:${#satir}-1} #$_yaz_son
|
|
|
|
|
satir=`sed -n '9p' < $VT/"$paket"/META`
|
|
|
|
|
$_yaz "PAKETLENME :" `date -d @${satir:1:${#satir}-1}` #$_yaz_son
|
|
|
|
|
satir=`sed -n '10p' < $VT/"$paket"/META`
|
|
|
|
|
$_yaz "MİMARİ :" ${satir:1:${#satir}-1} #$_yaz_son
|
|
|
|
|
satir=`sed -n '11p' < $VT/"$paket"/META`
|
|
|
|
|
$_yaz "GRUP :" ${satir:1:${#satir}-1} #$_yaz_son
|
2017-08-07 04:00:50 +02:00
|
|
|
|
elif [ "$kkont" = "degil" ];then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
_konum=$(talimat_bul $1)
|
|
|
|
|
_ad=$(grep -ri "isim=" $_konum/talimat | head -1 | cut -d '=' -f2)
|
|
|
|
|
_tanim=$(grep -ri "# Tanım:" $_konum/talimat | cut -d ':' -f2-)
|
|
|
|
|
_url=$(grep -ri "# Url:" $_konum/talimat | cut -d ':' -f2-)
|
|
|
|
|
_paketci=$(grep -ri "# Paketçi:" $_konum/talimat | cut -d ':' -f2-)
|
|
|
|
|
_surum=$(grep -ri "surum=" $_konum/talimat | head -1 | cut -d '=' -f2)
|
|
|
|
|
_devir=$(grep -ri "devir=" $_konum/talimat | head -1 | cut -d '=' -f2)
|
|
|
|
|
_grup=$(grep -ri "# Grup:" $_konum/talimat | head -1 | cut -d ':' -f2)
|
|
|
|
|
$_yaz "ADI :" ${_ad} #$_yaz_son
|
|
|
|
|
$_yaz "TANIM :" ${_tanim} #$_yaz_son
|
|
|
|
|
$_yaz "URL :" ${_url} #$_yaz_son
|
|
|
|
|
$_yaz "PAKETÇİ :" ${_paketci} #$_yaz_son
|
|
|
|
|
$_yaz "SÜRÜM :" ${_surum} #$_yaz_son
|
|
|
|
|
$_yaz "DEVİR :" ${_devir} #$_yaz_son
|
|
|
|
|
$_yaz "GRUP :" ${_grup} #$_yaz_son
|
|
|
|
|
$_yaz_uyari "$1 $_paket_kurulu_degil"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
$_yaz_uyari "$1 $_paket_tanimsiz"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
}
|
2017-08-07 04:00:50 +02:00
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
paket_bilgi_html(){
|
|
|
|
|
_dosya=$1
|
|
|
|
|
icerik="<table border=1>"
|
|
|
|
|
while IFS='' read -r satir || [[ -n "$line" ]]; do
|
|
|
|
|
icerik+="<tr>"
|
|
|
|
|
_sutun_baslik="$(echo $satir | cut -d':' -f1)"
|
|
|
|
|
_sutun_deger="$(echo $satir | cut -d':' -f2-)"
|
|
|
|
|
|
|
|
|
|
#icerik+="<td>$_sutun_deger</td>"
|
|
|
|
|
if [ "${_sutun_baslik}" != "${_sutun_deger}" ];then
|
|
|
|
|
icerik+="<td>$_sutun_baslik</td>"
|
|
|
|
|
icerik+="<td>$_sutun_deger</td>"
|
|
|
|
|
fi
|
|
|
|
|
icerik+="</tr>"
|
|
|
|
|
done < "$_dosya"
|
|
|
|
|
|
|
|
|
|
if [[ "${_sutun_baslik}" == *"${_paket_kurulu_degil}"* ]] || [[ "${_sutun_baslik}" == *"${_paket_tanimsiz}"* ]];then
|
|
|
|
|
icerik+="<tr bgcolor='red'><td>DURUM</td><td>${_sutun_baslik}</td></tr>"
|
|
|
|
|
else
|
|
|
|
|
icerik+="<tr bgcolor='green'><td>DURUM</td><td>kurulu</td></tr>"
|
|
|
|
|
fi
|
|
|
|
|
icerik+="</table>"
|
|
|
|
|
echo "$icerik" > $_dosya.html
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
yeniden_paketle(){
|
|
|
|
|
cd $1
|
|
|
|
|
bsdtar -r -f ../"$1".mps .META
|
|
|
|
|
bsdtar -r -f ../"$1".mps *
|
|
|
|
|
cd ..
|
|
|
|
|
lzip -9 "$1".mps
|
|
|
|
|
}
|
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
talimat_bul(){
|
|
|
|
|
if [ -z "$1" ];then echo "$_paket_adi_gerekli";exit 1;fi
|
|
|
|
|
local _apaket="$1"
|
|
|
|
|
_bulunan=()
|
|
|
|
|
#_bulunan=$(find $talimatname $ektalimatname -name $_apaket)
|
|
|
|
|
_bulunan=()
|
|
|
|
|
while IFS= read -r -d $'\0'; do
|
|
|
|
|
_bulunan+=("$REPLY")
|
|
|
|
|
done < <(find $talimatname $ektalimatname -name ${_apaket} -print0)
|
|
|
|
|
if [ ${#_bulunan[@]} -gt 1 ];then echo "$(date +'%F %T') ${_apaket} $_talimat_sayisi_fazla" >> $LOGDIZIN/mps-hata.log;fi
|
|
|
|
|
if [ ${_bulunan[0]} ] ; then
|
|
|
|
|
if [ -f "${_bulunan[0]}/talimat" ];then
|
|
|
|
|
echo "${_bulunan[0]}"
|
|
|
|
|
else
|
|
|
|
|
echo "0"
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
echo "-1"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_analiz(){
|
|
|
|
|
_gcc_uyumsuz_paketler="/tmp/gcc_uyumsuz_paketler"
|
|
|
|
|
_pkvt="paket.vt"
|
|
|
|
|
if [ -z "$1" ];then echo "$_paket_adi_gerekli";exit 1;fi
|
|
|
|
|
local pkt _apaket _konum
|
|
|
|
|
pkt=$1
|
|
|
|
|
if [ -f $pkt ];then
|
|
|
|
|
_apaket=$(basename $pkt |cut -d'#' -f 1)
|
|
|
|
|
_konum=$(anatalimat_bul $_apaket)
|
|
|
|
|
_depo_sha=$(cat "$paketdepo$_pkvt" | grep " $_apaket#" | cut -d' ' -f2)
|
|
|
|
|
_paket_sha=$(sha1sum $pkt | cut -d ' ' -f1)
|
|
|
|
|
if [[ $_konum != "-1" && $_konum != "0" ]];then
|
|
|
|
|
source $_konum/talimat
|
|
|
|
|
if [ -f $pkt ];then
|
|
|
|
|
bsdtar xf $pkt .META
|
|
|
|
|
if [ -f $PWD/.META ];then
|
|
|
|
|
mv .META /tmp/$_apaket.META
|
|
|
|
|
satir=$(sed -n '7p' < /tmp/$_apaket.META)
|
|
|
|
|
psurum=${satir:1:${#satir}-1}
|
|
|
|
|
satir2=$(sed -n '8p' < /tmp/$_apaket.META)
|
|
|
|
|
pdevir=${satir2:1:${#satir2}-1}
|
|
|
|
|
deposurum=`echo -e "$surum" | sort -V | head -n1`
|
|
|
|
|
depodevir=`echo -e "$devir" | sort -V | head -n1`
|
|
|
|
|
_surumbilgi="gereken_sürüm:$deposurum ! paket_sürüm:$psurum"
|
|
|
|
|
_devirbilgi="gereken_devir:$depodevir ! paket_devir:$pdevir"
|
|
|
|
|
ryaz 33 "$pkt"
|
|
|
|
|
if [ "$deposurum" != "$psurum" ];then
|
|
|
|
|
ryaz 31 "$_surumbilgi"
|
|
|
|
|
echo "$pkt" >> $_gcc_uyumsuz_paketler
|
|
|
|
|
fi
|
|
|
|
|
if [ "$depodevir" != "$pdevir" ];then
|
|
|
|
|
ryaz 31 "$_devirbilgi"
|
|
|
|
|
echo "$pkt" >> $_gcc_uyumsuz_paketler
|
|
|
|
|
fi
|
|
|
|
|
if [ "$_paket_sha" != "$_depo_sha" ];then
|
|
|
|
|
ryaz 31 "$_shasum_uyumsuzluk"
|
|
|
|
|
echo "$pkt" >> $_gcc_uyumsuz_paketler
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$_apaket depoda yok. mps -i $_apaket"
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$_apaket depoda yok. mps -i $_apaket"
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 $_talimat_bulunamadi"
|
|
|
|
|
fi
|
|
|
|
|
rm -f /tmp/$_apaket.META
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$pkt $_dosya_yolu_bulunamadi"
|
|
|
|
|
exit 0
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paketdepo_analiz(){
|
|
|
|
|
paketvt_guncelle
|
|
|
|
|
_aranandepo=$1
|
|
|
|
|
_uyumsuz_paketler="/tmp/uyumsuz_paketler"
|
|
|
|
|
if [[ -d $_aranandepo && ! -f $_aranandepo ]];then
|
|
|
|
|
rm -f $_uyumsuz_paketler
|
|
|
|
|
_gcc_uyumsuz_paketler="/tmp/gcc_uyumsuz_paketler"
|
|
|
|
|
for pkt in $(ls $_aranandepo*mps.lz);do
|
|
|
|
|
paket_analiz $pkt
|
|
|
|
|
echo "-"
|
|
|
|
|
done
|
|
|
|
|
echo "tarama bitti"
|
|
|
|
|
sort -u $_gcc_uyumsuz_paketler > $_uyumsuz_paketler
|
|
|
|
|
echo "file://$_uyumsuz_paketler"
|
|
|
|
|
exit 0
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 $_dizin_bulunamadi"
|
|
|
|
|
exit 1
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
anatalimat_bul(){
|
|
|
|
|
if [ -z "$1" ];then echo "$_paket_adi_gerekli";exit 1;fi
|
|
|
|
|
local _apaket="$1"
|
|
|
|
|
_bulunan=()
|
|
|
|
|
_bulunan=()
|
|
|
|
|
while IFS= read -r -d $'\0'; do
|
|
|
|
|
_bulunan+=("$REPLY")
|
|
|
|
|
done < <(find $anatalimatname -name ${_apaket} -print0)
|
|
|
|
|
if [ ${#_bulunan[@]} -gt 1 ];then echo "$(date +'%F %T') ${_apaket} $_talimat_sayisi_fazla" >> $LOGDIZIN/mps-hata.log;fi
|
|
|
|
|
if [ ${_bulunan[0]} ] ; then
|
|
|
|
|
if [ -f "${_bulunan[0]}/talimat" ];then
|
|
|
|
|
echo "${_bulunan[0]}"
|
|
|
|
|
else
|
|
|
|
|
echo "0"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
echo "-1"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
derleme_listyap_kontrol(){
|
|
|
|
|
|
|
|
|
|
if [ -f tumgerekler.liste ];then
|
|
|
|
|
mv tumgerekler.liste tumgerekler.eski.liste
|
|
|
|
|
fi
|
|
|
|
|
if [ -f gerek.liste ];then
|
|
|
|
|
mv gerek.liste gerek.eski.liste
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
touch tumgerekler.liste
|
|
|
|
|
touch gerek.liste
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
gerekleri_dosyala(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local _altgerek _konum
|
|
|
|
|
_altgerek="$1"
|
|
|
|
|
_konum=$(talimat_bul $_altgerek)
|
|
|
|
|
if [[ $konum != "-1" && $konum != "0" ]];then
|
|
|
|
|
printf "."
|
|
|
|
|
echo "$_altgerek" >> tumgerekler.liste
|
|
|
|
|
if [ ! -d "$talimatname/temel/$_altgerek" ];then
|
|
|
|
|
echo "$_konum" >> gerek.liste
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 $_talimat_bulunamadi"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dly_yeni(){
|
|
|
|
|
dlymap["$1"]=1
|
|
|
|
|
altgerekler=($(bagimlilar $1))
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [[ "$altgerekler" != "0" && "$altgerekler" != "-1" ]];then
|
2017-09-25 17:41:26 +02:00
|
|
|
|
for altgerek in ${altgerekler[@]};do
|
|
|
|
|
if [[ ! ${dlymap["$altgerek"]} ]] ; then
|
|
|
|
|
dly_yeni $altgerek
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
dlyD+=("$1")
|
|
|
|
|
gerekleri_dosyala "$1"
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 talimatı bulunamadı."
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
kly_yeni(){
|
|
|
|
|
#[ ! ${klyD[0]} ] && klyD+=("$1")
|
|
|
|
|
[ ! -d "$VT/$1" ] && klymap["$1"]=1
|
|
|
|
|
altgerekler=($(bagimlilar $1))
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [[ "$altgerekler" != "0" && "$altgerekler" != "-1" ]];then
|
2017-09-25 17:41:26 +02:00
|
|
|
|
for altgerek in ${altgerekler[@]};do
|
|
|
|
|
if [ ! -d "$VT/$altgerek" ] ;then
|
|
|
|
|
if [[ ! ${klymap["$altgerek"]} ]] ; then
|
|
|
|
|
#klyD+=("$altgerek")
|
|
|
|
|
#echo ${klyD[-1]}
|
|
|
|
|
kly_yeni $altgerek
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
klyD+=("$1")
|
|
|
|
|
gerekleri_dosyala ${klyD[-1]}
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 talimatı bulunamadı."
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
derleme_listyap(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "$1 $_gerekler_belirleniyor"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
local pkt dlyp
|
|
|
|
|
dlyD=()
|
|
|
|
|
declare -A dlymap
|
|
|
|
|
derleme_listyap_kontrol
|
|
|
|
|
dly_yeni $1
|
2017-12-14 06:40:19 +01:00
|
|
|
|
echo "${dlyD[@]}"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
kurulum_listyap(){
|
|
|
|
|
klyD=()
|
|
|
|
|
declare -A klymap
|
|
|
|
|
kly_yeni "$1"
|
|
|
|
|
}
|
2017-08-07 04:00:50 +02:00
|
|
|
|
|
|
|
|
|
derleme_listbilgi(){
|
|
|
|
|
ryaz 34 "yapim asamasında"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# -derlist
|
|
|
|
|
paket_derle_liste(){
|
|
|
|
|
for dpktyer in `cat $1`;do
|
|
|
|
|
dpkt=`basename $dpktyer`
|
|
|
|
|
echo $dpkt "derleniyor...."
|
|
|
|
|
zorla_derle="yok"
|
|
|
|
|
paket_derle $dpktyer
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#otomatik derle kontrollu kur
|
|
|
|
|
# -derle
|
|
|
|
|
paket_derle_kur(){
|
|
|
|
|
tekrarkur="hayir"
|
|
|
|
|
derleme_listyap_kontrol
|
2017-12-14 06:40:19 +01:00
|
|
|
|
derleme_listyap "$1" && paket_derle_liste gerek.liste
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# odkp
|
|
|
|
|
oto_derle_kur_paketle(){
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paketvt_guncelle
|
2017-08-07 04:00:50 +02:00
|
|
|
|
# mps -kur
|
2017-12-14 06:40:19 +01:00
|
|
|
|
_konum=$(talimat_bul $1)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
paket_inkur_oto $1 &&
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ -f "$_konum/$1.sira" ];then
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ryaz 32 "sıralı derleme yapılacak."
|
2017-12-14 06:40:19 +01:00
|
|
|
|
paket_derle_liste "$_konum/$1.sira"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
|
|
|
|
paket_derle_kur $1
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
rm -rf {gerek.eski,gerek,kurulanlar,silinenler,tumgerekler.eski,tumgerekler}.liste
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_kur_oto(){
|
|
|
|
|
local kpkt pkt pak kliste
|
|
|
|
|
if [ "$1" = "-H" ];then
|
|
|
|
|
ls *.mps.lz > "otokur.list"
|
|
|
|
|
kliste="otokur.list"
|
|
|
|
|
else
|
|
|
|
|
kliste="$1"
|
|
|
|
|
fi
|
|
|
|
|
for kpkt in `cat $kliste`;do
|
|
|
|
|
for pkt in `ls $kpkt* | cut -d'#' -f1`;do
|
|
|
|
|
pak=`ls "$pkt#"*`
|
|
|
|
|
mps -k "$pak" && paket_inkur_oto "$pkt"
|
|
|
|
|
done
|
|
|
|
|
done
|
|
|
|
|
rm -rf otokur.list
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_kur_oto_zorla(){
|
|
|
|
|
local kpkt pkt pak kliste
|
|
|
|
|
if [ "$1" = "-H" ];then
|
|
|
|
|
ls *.mps.lz > "otokur.list"
|
|
|
|
|
kliste="otokur.list"
|
|
|
|
|
else
|
|
|
|
|
kliste="$1"
|
|
|
|
|
fi
|
|
|
|
|
for kpkt in `cat $kliste`;do
|
|
|
|
|
for pkt in `ls $kpkt* | cut -d'#' -f1`;do
|
|
|
|
|
pak=`ls "$pkt#"*`
|
|
|
|
|
paket_sil "$pkt" "evet"
|
|
|
|
|
mps -k "$pak" && paket_inkur_oto "$pkt"
|
|
|
|
|
done
|
|
|
|
|
done
|
|
|
|
|
rm -rf otokur.list
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_kur_liste(){
|
|
|
|
|
local kpkt pkt pak
|
|
|
|
|
for kpkt in `cat $1`;do
|
|
|
|
|
for pkt in `ls $kpkt* | cut -d'#' -f1`;do
|
|
|
|
|
pak=`ls "$pkt#"*`
|
|
|
|
|
mps -k "$pak"
|
|
|
|
|
done
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_kur_liste_zorla(){
|
|
|
|
|
local kpkt pkt pak
|
|
|
|
|
for kpkt in `cat $1`;do
|
|
|
|
|
for pkt in `ls $kpkt* | cut -d'#' -f1`;do
|
|
|
|
|
pak=`ls "$pkt#"*`
|
|
|
|
|
paket_sil "$kpkt" "evet"
|
|
|
|
|
mps -k "$pak"
|
|
|
|
|
done
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#otomatik kontrollu kur
|
|
|
|
|
paket_kur_oto2(){
|
|
|
|
|
derleme_listyap_kontrol
|
2017-12-14 06:40:19 +01:00
|
|
|
|
derleme_listyap "$1" > /dev/null && mps -ok gerek.liste
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_inkur_liste_direk(){
|
|
|
|
|
local kpkt
|
|
|
|
|
for kpkt in `cat $1`;do
|
|
|
|
|
agdan_kur "$kpkt"
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_inkur_liste(){
|
|
|
|
|
local kpkt
|
|
|
|
|
for kpkt in `cat $1`;do
|
|
|
|
|
paket_inkur_oto "$kpkt"
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# otomatik kontrollu kur
|
|
|
|
|
# -kur
|
|
|
|
|
paket_inkur_oto(){
|
2017-09-25 17:41:26 +02:00
|
|
|
|
local konum anakonum kurdurum
|
2017-08-07 04:00:50 +02:00
|
|
|
|
derleme_listyap_kontrol
|
2017-09-25 17:41:26 +02:00
|
|
|
|
#derleme_listyap "$1" | grep "bulunamadı"
|
|
|
|
|
kurulum_listyap "$1" | grep "bulunamadı"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
local kpkt
|
2017-12-14 06:40:19 +01:00
|
|
|
|
for paketkonum in `cat gerek.liste`;do
|
2017-08-07 04:00:50 +02:00
|
|
|
|
# önce talimat-anatalimat karşılaştırması yapılır.
|
|
|
|
|
kpkt=`basename $paketkonum`
|
2017-12-14 06:40:19 +01:00
|
|
|
|
konum="`find "$talimatname" -name $kpkt`"
|
|
|
|
|
anakonum="`find "$anatalimatname" -name $kpkt`"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ekkonum="`find "$ektalimatname" -name $kpkt`"
|
|
|
|
|
if [ -f "$anakonum/talimat" ];then
|
|
|
|
|
if [ "`dosya_karsilastir $konum/talimat $anakonum/talimat`" = "evet" ];then
|
|
|
|
|
agdan_kur "$kpkt"
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$kpkt talimat eşitsizliğinden atlandı."
|
|
|
|
|
fi
|
|
|
|
|
elif [ -f "$ekkonum/talimat" ];then
|
|
|
|
|
agdan_kur "$kpkt"
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$kpkt talimatı bulunamadı!"
|
|
|
|
|
fi
|
|
|
|
|
done
|
2017-09-25 17:41:26 +02:00
|
|
|
|
if [ $(kurulu_kontrol $1) = "degil" ];then
|
|
|
|
|
kurdurum="kurulu değil"
|
|
|
|
|
elif [ $(kurulu_kontrol $1) = "kurulu" ];then
|
|
|
|
|
kurdurum="kurulu"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "\n$1 $kurdurum "
|
2017-09-25 17:41:26 +02:00
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
kurdurum="$_paket_tanimsiz"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
rm -rf *.liste
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_sil_oto(){
|
|
|
|
|
local spkt
|
|
|
|
|
for spkt in `cat $1`;do
|
|
|
|
|
oto_silme="evet"
|
|
|
|
|
paket_sil "$spkt" "$oto_silme"
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_sil_oto_onayli(){
|
|
|
|
|
local spkt
|
2017-12-14 06:40:19 +01:00
|
|
|
|
#for spkt in `perl -e 'print reverse <>' $1`;do
|
|
|
|
|
for spkt in $(tac $1);do
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_sil "$spkt" "hayir" "evet"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_sil_gerekli(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local _onay
|
2017-09-25 17:41:26 +02:00
|
|
|
|
if [ -d $VT/$1 ];then
|
|
|
|
|
bagimli_bilgi_dosyala "$1"
|
|
|
|
|
rm -f /tmp/$1.silinecekler
|
|
|
|
|
touch /tmp/$1.silinecekler
|
|
|
|
|
for pkaltb in $(cat /tmp/$1.gerekler.liste);do
|
|
|
|
|
if [ -d $VT/$pkaltb ];then
|
|
|
|
|
tbsonuc=()
|
2017-12-14 06:40:19 +01:00
|
|
|
|
tbsonuc=$(ters_bagimli_bilgi $pkaltb "kurulu")
|
2017-09-25 17:41:26 +02:00
|
|
|
|
if [ ${#tbsonuc[0]} = 0 ];then
|
|
|
|
|
ryaz 32 "$pkaltb silinebilir."
|
|
|
|
|
echo "$pkaltb" >> /tmp/$1.silinecekler
|
2017-12-14 06:40:19 +01:00
|
|
|
|
elif [ "$tbsonuc" = "$1" ];then
|
|
|
|
|
ryaz 32 "$pkaltb silinebilir."
|
|
|
|
|
echo "$pkaltb" >> /tmp/$1.silinecekler
|
2017-09-25 17:41:26 +02:00
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$pkaltb silinemez."
|
2017-12-14 06:40:19 +01:00
|
|
|
|
echo "ters gerekleri: $tbsonuc"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
fi
|
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "$_zaten $pkaltb $_paket_kurulu_degil"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
fi
|
|
|
|
|
done
|
2017-12-14 06:40:19 +01:00
|
|
|
|
_onay="onay"
|
|
|
|
|
# otomatik onay verme durum kontrolü
|
|
|
|
|
if [ ! -z "$2" ];then _onay="$2";fi
|
|
|
|
|
#cat /tmp/$1.silinecekler
|
|
|
|
|
if [ $_onay = "oto" ];then
|
|
|
|
|
paket_sil_oto "/tmp/$1.silinecekler"
|
|
|
|
|
else
|
|
|
|
|
paket_sil_oto_onayli "/tmp/$1.silinecekler"
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "$_zaten $1 $_paket_kurulu_degil"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
paketsiz_talimatlar(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
for talimatyol in `( ls -d $talimatname/genel/*/* & ls -d $ektalimatname/*/* ) | cat`;do
|
2017-09-25 17:41:26 +02:00
|
|
|
|
#echo $talimat
|
|
|
|
|
if [ -d $talimatyol ];then
|
|
|
|
|
talimat=$(basename $talimatyol)
|
|
|
|
|
if [[ ! $(cat $paketdepo/paket*.vt | grep $talimat#) ]] ;then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ -d $talimatname/*/*/$talimat ];then
|
|
|
|
|
ack=`grep -e '# Tanım:' $talimatname/genel/*/$talimat/talimat | cut -d':' -f2`
|
2017-09-25 17:41:26 +02:00
|
|
|
|
elif [ -d $ektalimatname/*/$talimat ];then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ack=`grep -e '# Tanım:' $ektalimatname/*/$talimat/talimat | cut -d':' -f2`
|
2017-09-25 17:41:26 +02:00
|
|
|
|
fi
|
|
|
|
|
printf '%s = %s \n' "$talimat" "$ack"
|
|
|
|
|
fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_guncelle(){
|
|
|
|
|
surum_kontrol $1 $2
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ -d "$VT/$1" ];then
|
|
|
|
|
devir_kontrol $1 $2
|
|
|
|
|
fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paket_guncelle_oto(){
|
2017-09-25 17:41:26 +02:00
|
|
|
|
derleme_listyap "$1" > /dev/null &&
|
2017-08-07 04:00:50 +02:00
|
|
|
|
local kpkt
|
2017-12-14 06:40:19 +01:00
|
|
|
|
for kpkt in `cat gerek.liste`;do
|
2017-09-25 17:41:26 +02:00
|
|
|
|
durum=`kurulu_kontrol "$kpkt"`
|
|
|
|
|
if [ "$durum" = "kurulu" ]; then
|
|
|
|
|
paket_guncelle "$kpkt"
|
|
|
|
|
fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
done
|
2017-12-14 06:40:19 +01:00
|
|
|
|
rm gerek.liste tumgerekler.liste
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dongu_gosterge(){
|
|
|
|
|
count=0
|
|
|
|
|
total=$1
|
|
|
|
|
pstr="[=======================================================================]"
|
|
|
|
|
while [ $count -lt $total ]; do
|
|
|
|
|
sleep 0.5 # yapılacak iş veya uyutulur.
|
|
|
|
|
count=$(( $count + 1 ))
|
|
|
|
|
pd=$(( $count * 73 / $total ))
|
|
|
|
|
printf "\r%3d.%1d%% %.${pd}s" $(( $count * 100 / $total )) $(( ($count * 1000 / $total) % 10 )) $pstr
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
guncelleme_tespit(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local _konum
|
2017-09-25 17:41:26 +02:00
|
|
|
|
guncelleme_dosya="/tmp/mps.guncellenecekler"
|
|
|
|
|
rm -f $guncelleme_dosya
|
|
|
|
|
touch $guncelleme_dosya
|
|
|
|
|
for kpaket in $(ls $VT/);do
|
|
|
|
|
satir=$(sed -n '7p' < $VT/$kpaket/META)
|
|
|
|
|
surum=${satir:1:${#satir}-1}
|
|
|
|
|
satir2=$(sed -n '8p' < $VT/$kpaket/META)
|
|
|
|
|
devir=${satir2:1:${#satir2}-1}
|
|
|
|
|
#deposurum=$(grep " $kpaket#" /depo/paketler/paket.vt | cut -d' ' -f3 | cut -d'#' -f 2 | cut -d'-' -f1)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
_konum=$(talimat_bul $kpaket)
|
|
|
|
|
if [[ "$_konum" = "0" || "$_konum" = "-1" ]];then
|
|
|
|
|
ryaz 31 "$kpaket $_talimat_bulunamadi $_surum_kontrol_iptal"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
source $_konum/talimat
|
|
|
|
|
deposurum=`echo -e "$surum" | sort -V | head -n1`
|
|
|
|
|
depodevir=`echo -e "$devir" | sort -V | head -n1`
|
2017-09-25 17:41:26 +02:00
|
|
|
|
#echo $kpaket " : $surum ---> $deposurum" "$devir ---> $depodevir"
|
|
|
|
|
#sleep 3
|
|
|
|
|
if [ "$surum" != "$deposurum" ];then
|
|
|
|
|
printf "$kpaket -surum: ";echo "$surum ---> $deposurum"
|
|
|
|
|
echo $kpaket >> $guncelleme_dosya
|
|
|
|
|
elif [ "$devir" != "$depodevir" ];then
|
|
|
|
|
printf "$kpaket -devir: ";echo "$devir ---> $depodevir"
|
|
|
|
|
echo $kpaket >> $guncelleme_dosya
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
}
|
2017-08-07 04:00:50 +02:00
|
|
|
|
|
|
|
|
|
sistem_guncelle(){
|
|
|
|
|
count=0
|
|
|
|
|
esgec=(xorg xorg-app xorg-font xorg-proto kernel-lts kernel-lts-src vlc)
|
|
|
|
|
local kpkt
|
|
|
|
|
local pk_guncelle
|
|
|
|
|
total=`ls $VT | wc -l`
|
|
|
|
|
pstr="[=======================================================================]"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
git_guncelle
|
|
|
|
|
paketvt_guncelle
|
2017-08-07 04:00:50 +02:00
|
|
|
|
GS_CIKTI="H"
|
|
|
|
|
while [ $count -lt $total ]; do
|
|
|
|
|
count=$(( $count + 1 ))
|
|
|
|
|
pd=$(( $count * 73 / $total ))
|
|
|
|
|
printf "\r%3d.%1d%% %.${pd}s" $(( $count * 100 / $total )) $(( ($count * 1000 / $total) % 10 )) $pstr
|
|
|
|
|
kpkt=$(ls -rct $VT | tr " " "\n" | sed -n ${count}'p')
|
|
|
|
|
pk_guncelle="e"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [[ "${esgec[*]}" =~ "${kpkt}" ]];then
|
|
|
|
|
pk_guncelle="h"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
if [ "$pk_guncelle" = "e" ];then
|
|
|
|
|
paket_guncelle "$kpkt" $GS_CIKTI
|
|
|
|
|
#printf "."
|
|
|
|
|
else
|
|
|
|
|
[ $GS_CIKTI = "E" ] && ryaz 31 $kpkt "güncellemesi atlandı"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
#ryaz 31 "$kpkt atlandı"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
ryaz 32 "\nSistem Güncellemesi Tamamlandı."
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
surum_kontrol(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local _konum pk_sil _paket
|
|
|
|
|
_paket=$1
|
2017-08-07 04:00:50 +02:00
|
|
|
|
GS_CIKTI="E"
|
|
|
|
|
if [ "$2" ]; then
|
|
|
|
|
GS_CIKTI="$2"
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local ksurum surum pkt dusuk yuksek durum
|
2017-08-07 04:00:50 +02:00
|
|
|
|
durum="belirsiz"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
satir=`sed -n '7p' < $VT/$_paket/META`
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ksurum=${satir:1:${#satir}-1}
|
2017-09-25 17:41:26 +02:00
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
_konum=$(talimat_bul $_paket)
|
|
|
|
|
if [[ "$_konum" = "0" || "$_konum" = "-1" ]];then
|
|
|
|
|
ryaz 31 "$_paket $_talimat_bulunamadi $_surum_kontrol_iptal"
|
|
|
|
|
pk_sil="e"
|
|
|
|
|
case "${silme_esgec[@]}" in *"$_paket"*) pk_sil="h" ;; esac
|
|
|
|
|
if [ "$pk_sil" = "e" ];then
|
|
|
|
|
ryaz 32 "$_paket $_paket_depoda_yok $_siliniyor"
|
|
|
|
|
mps -sz $_paket
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "$_paket silinmesi es geçildi"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
|
|
source $_konum/talimat
|
|
|
|
|
|
|
|
|
|
dusuk=`echo -e "$ksurum\n$surum" | sort -V | head -n1`
|
|
|
|
|
|
|
|
|
|
if [ "$ksurum" = "$surum" ];then
|
|
|
|
|
durum="guncel"
|
|
|
|
|
[ $GS_CIKTI = "E" ] && ryaz 33 "$_paket sürümü güncel"
|
|
|
|
|
#printf "."
|
|
|
|
|
else
|
|
|
|
|
if [ "$ksurum" = "$dusuk" ];then
|
|
|
|
|
durum="yukselt"
|
|
|
|
|
else
|
|
|
|
|
durum="dusur"
|
|
|
|
|
fi
|
|
|
|
|
gun_onay="h"
|
|
|
|
|
if [ "$durum" != "guncel" ];then
|
|
|
|
|
while true; do
|
|
|
|
|
printf "\n"
|
|
|
|
|
ryaz 34 "$_paket sürüm $durum""me işlemi uygulanacak. $ksurum <> $surum ";read -p "e veya h-> " eh
|
|
|
|
|
case $eh in
|
|
|
|
|
[Ee]* ) gun_onay="e"; break;;
|
|
|
|
|
[Hh]* ) break;;
|
|
|
|
|
* ) echo "e veya h";;
|
|
|
|
|
esac
|
|
|
|
|
done
|
|
|
|
|
if [ "$gun_onay" = "e" ];then
|
|
|
|
|
if [ -d "$talimatname/temel/$_paket" ]; then
|
|
|
|
|
kurulum_dogrulama_icerik $_paket
|
|
|
|
|
tpk="hayir"
|
|
|
|
|
paket_sil "$_paket" "evet"
|
|
|
|
|
paket_indir $_paket
|
|
|
|
|
pkt=`cat "$paketdepo""paket.vt" | grep "^$_paket " | cut -d' ' -f3`
|
|
|
|
|
icerik_ekle "$paketdepo$pkt"
|
|
|
|
|
else
|
|
|
|
|
paket_sil "$_paket" "evet"
|
|
|
|
|
paket_inkur_oto $_paket
|
|
|
|
|
fi
|
|
|
|
|
ryaz 33 "$_paket sürüm güncellemesi yapıldı"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 "$_paket sürüm güncellemesi yapılmadı"
|
|
|
|
|
hataloglama "$_paket sürüm güncellemesi yapılmadı"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
devir_kontrol(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local _konum pk_sil _paket
|
|
|
|
|
_paket="$1"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
GS_CIKTI="E"
|
|
|
|
|
if [ "$2" ]; then
|
|
|
|
|
GS_CIKTI="$2"
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local kdevir devir pkt dusuk yuksek durum gun_onay
|
2017-08-07 04:00:50 +02:00
|
|
|
|
durum="belirsiz"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
satir=`sed -n '8p' < $VT/$_paket/META`
|
2017-08-07 04:00:50 +02:00
|
|
|
|
kdevir=${satir:1:${#satir}-1}
|
2017-09-25 17:41:26 +02:00
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
_konum=$(talimat_bul $_paket)
|
|
|
|
|
if [[ "$_konum" = "0" || "$_konum" = "-1" ]];then
|
|
|
|
|
ryaz 31 "$_paket $_talimat_bulunamadi $_devir_kontrol_iptal"
|
|
|
|
|
pk_sil="e"
|
|
|
|
|
case "${silme_esgec[@]}" in *"$_paket"*) pk_sil="h" ;; esac
|
|
|
|
|
if [ "$pk_sil" = "e" ];then
|
|
|
|
|
ryaz 32 "$_paket $_paket_depoda_yok $_siliniyor"
|
|
|
|
|
mps -sz $_paket
|
|
|
|
|
else
|
|
|
|
|
ryaz 32 "$_paket silinmesi es geçildi"
|
|
|
|
|
fi
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
|
|
|
|
|
source $_konum/talimat
|
|
|
|
|
dusuk=`echo -e "$kdevir\n$devir" | sort -V | head -n1`
|
|
|
|
|
|
|
|
|
|
if [ "$kdevir" = "$devir" ];then
|
|
|
|
|
durum="guncel"
|
|
|
|
|
[ $GS_CIKTI = "E" ] && ryaz 33 "$_paket deviri güncel"
|
|
|
|
|
#printf "."
|
|
|
|
|
else
|
|
|
|
|
if [ "$kdevir" = "$dusuk" ];then
|
|
|
|
|
durum="yukselt"
|
|
|
|
|
else
|
|
|
|
|
durum="dusur"
|
|
|
|
|
fi
|
|
|
|
|
gun_onay="h"
|
|
|
|
|
if [ "$durum" != "guncel" ];then
|
|
|
|
|
while true; do
|
|
|
|
|
printf "\n"
|
|
|
|
|
ryaz 34 "$_paket devir $durum""me işlemi uygulanacak. $kdevir <> $devir ";read -p "e veya h-> " eh
|
|
|
|
|
case $eh in
|
|
|
|
|
[Ee]* ) gun_onay="e"; break;;
|
|
|
|
|
[Hh]* ) break;;
|
|
|
|
|
* ) echo "e veya h";;
|
|
|
|
|
esac
|
|
|
|
|
done
|
|
|
|
|
if [ "$gun_onay" = "e" ];then
|
|
|
|
|
paket_sil "$_paket" "evet"
|
|
|
|
|
paket_inkur_oto $_paket
|
|
|
|
|
ryaz 33 "$_paket devir güncellemesi yapıldı"
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$_paket devir güncellemesi yapılmadı"
|
|
|
|
|
hataloglama "$_paket devir güncellemesi yapılmadı"
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
}
|
2017-09-25 17:41:26 +02:00
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
talimat_surum_takip(){
|
|
|
|
|
local konum _takip_uzanti
|
|
|
|
|
_takip_uzanti=".takip"
|
|
|
|
|
konum=$(talimat_bul $1)
|
|
|
|
|
if [[ $konum == "-1" || $konum == "0" ]];then
|
|
|
|
|
ryaz 31 "$1 $_talimat_bulunamadi"
|
|
|
|
|
exit 1
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ -f "$konum/$1$_takip_uzanti" ];then
|
|
|
|
|
source $konum/$1$_takip_uzanti
|
|
|
|
|
if [ "`type -t surum_takip`" = "function" ];then
|
|
|
|
|
ryaz 32 "$1 paketinin kaynak kod arşivleri inceleniyor..."
|
|
|
|
|
surum_takip
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 "$1 talimatının sürüm takip işlevi yok!"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 talimatının takip betiği yok!"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
2017-12-14 06:40:19 +01:00
|
|
|
|
|
|
|
|
|
kaynak_kod_indir(){
|
|
|
|
|
local konum adres adres2
|
|
|
|
|
_kk_indir="wget --no-check-certificate -q --show-progress"
|
|
|
|
|
konum=$(talimat_bul $1)
|
|
|
|
|
if [[ $konum == "-1" || $konum == "0" ]];then
|
|
|
|
|
ryaz 31 "$1 $_talimat_bulunamadi"
|
|
|
|
|
exit 1
|
|
|
|
|
else
|
|
|
|
|
source $konum/talimat
|
|
|
|
|
for adres in $kaynak;do
|
|
|
|
|
|
|
|
|
|
urlkont='(https?|ftp|file)://[-A-Za-z0-9\+&@#/%?=~_|!:,.;]*[-A-Za-z0-9\+&@#/%=~_|]'
|
|
|
|
|
if [[ $adres =~ $urlkont ]];then
|
|
|
|
|
if [[ $adres =~ "::" ]];then
|
|
|
|
|
adres2=$(echo $adres | cut -d':' -f-2)
|
|
|
|
|
ryaz 32 "$adres2 indiriliyor."
|
|
|
|
|
$_kk_indir $adres2
|
|
|
|
|
else
|
|
|
|
|
ryaz 32 "$adres indiriliyor."
|
|
|
|
|
$_kk_indir $adres
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
ryaz 32 "$adres kopyalanıyor."
|
|
|
|
|
[ -f $konum/$adres ] && cp $konum/$adres .
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
paket_derle(){
|
|
|
|
|
#parametre olarak direk konum gelecek
|
|
|
|
|
#eski derleme kalıntılarını temizle
|
2017-09-25 17:41:26 +02:00
|
|
|
|
rm -rf tmp.*
|
2017-08-07 04:00:50 +02:00
|
|
|
|
kaynakdizin_kontrol
|
|
|
|
|
local konum derleme_onay eh bagimd derpaket
|
|
|
|
|
derleme_onay="h"
|
|
|
|
|
if [ -d "$1" ];then
|
|
|
|
|
konum="$1"
|
|
|
|
|
derpaket=`basename $1`
|
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
konum=$(talimat_bul $1)
|
|
|
|
|
if [[ $konum == "-1" || $konum == "0" ]];then
|
|
|
|
|
ryaz 31 "$1 $_talimat_bulunamadi"
|
|
|
|
|
exit 1
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
derpaket="$1"
|
|
|
|
|
fi
|
|
|
|
|
if [ -d "$konum" ];then
|
|
|
|
|
mkdir -p tmp."$derpaket"
|
|
|
|
|
cp -a $konum/* tmp."$derpaket"/
|
|
|
|
|
cd tmp."$derpaket"
|
|
|
|
|
|
|
|
|
|
if [ "`kurulu_kontrol "$derpaket"`" = "kurulu" ] && [ "$zorla_derle" = "yok" ];then
|
|
|
|
|
derleme_onay="h"
|
|
|
|
|
else
|
|
|
|
|
derleme_onay="e"
|
|
|
|
|
fi
|
|
|
|
|
if [ "$derleme_onay" = "e" ];then
|
|
|
|
|
ryaz 33 "$derpaket" "derleniyor...."
|
|
|
|
|
echo "------------------------"
|
|
|
|
|
mpsd -d 2>&1|tee /tmp/"$derpaket".log
|
|
|
|
|
if ( grep "^=======>" /tmp/"$derpaket".log| tail -1 |grep "ERROR" > /dev/null);then
|
|
|
|
|
echo "derleme sisteminde hata oluştu -----> " /tmp/"$derpaket".log
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
if [ "$kurulum_onay" = "evet" ];then
|
|
|
|
|
for kpkt in `ls $derpaket* | cut -d'#' -f1`;do
|
|
|
|
|
mps -k "$kpkt#"*
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
mv *.mps.lz ../
|
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "$_zaten $_paket_kurulu,yine de derlemek için:
|
2017-08-07 04:00:50 +02:00
|
|
|
|
mps -zd $derpaket"
|
|
|
|
|
fi
|
|
|
|
|
cd ..
|
|
|
|
|
rm -r tmp."$derpaket"
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "talimat dosyası bulunamadı."
|
|
|
|
|
hataloglama "talimat dosyası bulunamadı."
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bagimlilar_eski(){
|
|
|
|
|
local bagimd konum
|
2017-12-14 06:40:19 +01:00
|
|
|
|
konum="`find "$talimatname" -name $1`"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
konumek="`find "$ektalimatname" -name $1`"
|
|
|
|
|
if [ -f "$konum/talimat" ];then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
bagimd=`cat $konum/talimat | grep "Gerekler" | cut -d':' -f2`
|
2017-08-07 04:00:50 +02:00
|
|
|
|
|
|
|
|
|
if [ -n "$bagimd" ]; then
|
|
|
|
|
bagimd=`echo "$bagimd" | sed 's/,/ /g'`
|
|
|
|
|
#sıralı gösterme
|
|
|
|
|
echo `echo "$bagimd" | sed 's/,/ /g'`
|
|
|
|
|
fi
|
|
|
|
|
elif [ -f "$konumek/talimat" ];then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
bagimd=`cat $konumek/talimat | grep "Gerekler" | cut -d':' -f2`
|
2017-08-07 04:00:50 +02:00
|
|
|
|
|
|
|
|
|
if [ -n "$bagimd" ]; then
|
|
|
|
|
bagimd=`echo "$bagimd" | sed 's/,/ /g'`
|
|
|
|
|
#sıralı gösterme
|
|
|
|
|
echo `echo "$bagimd" | sed 's/,/ /g'`
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
echo "talimatyok"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
##_ bagimlilar() : talimatta yer alan gereklerin listesinin alınması.
|
|
|
|
|
bagimlilar(){
|
|
|
|
|
local bagimd konum
|
|
|
|
|
konum=$(talimat_bul $1)
|
|
|
|
|
if [[ $konum != "-1" && $konum != "0" ]];then
|
|
|
|
|
bagimd=`cat $konum/talimat | grep "Gerekler" | cut -d':' -f2`
|
|
|
|
|
bagimd=$(echo "$bagimd" | sed 's/,/ /g')
|
|
|
|
|
echo "$bagimd"
|
|
|
|
|
else
|
|
|
|
|
echo "$konum"
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ters_bagimli_bilgi(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local gtbpaket _sadece_kurulu
|
|
|
|
|
_sadece_kurulu="hepsi"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
gtbpaket=$1
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ ! -z "$2" ];then _sadece_kurulu="$2";fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
tbgdosya=$(mktemp)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
grep -rli "\s${gtbpaket}\s.*Gerekler\|Gerekler.*\s${gtbpaket}\s" $talimatname > $tbgdosya ;
|
|
|
|
|
grep -rli "\s${gtbpaket}\s.*Gerekler\|Gerekler.*\s${gtbpaket}\s" $ektalimatname >> $tbgdosya ;
|
|
|
|
|
grep -rli "\s${gtbpaket}\s.*Gerekler\|Gerekler.*\s${gtbpaket}$" $ektalimatname >> $tbgdosya ;
|
|
|
|
|
grep -rli "\s${gtbpaket}\s.*Gerekler\|Gerekler.*\s${gtbpaket}$" $talimatname >> $tbgdosya ;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
cat $tbgdosya | xargs -I {} dirname {} | xargs -I {} basename {} | sort > /tmp/${gtbpaket}.tb.txt
|
|
|
|
|
rm -f $tbgdosya
|
2017-12-14 06:40:19 +01:00
|
|
|
|
[ -f /tmp/${gtbpaket}.tbk.txt ] && rm -f /tmp/${gtbpaket}.tbk.txt
|
|
|
|
|
if [ $_sadece_kurulu = "kurulu" ];then
|
|
|
|
|
for _kurulu_pkt in $(cat /tmp/${gtbpaket}.tb.txt);do
|
|
|
|
|
if [ -d $VT/$_kurulu_pkt ];then
|
|
|
|
|
echo "$_kurulu_pkt" >> /tmp/${gtbpaket}.tbk.txt
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
[ -f /tmp/${gtbpaket}.tbk.txt ] && cat "/tmp/${gtbpaket}.tbk.txt"
|
|
|
|
|
else
|
|
|
|
|
cat "/tmp/${gtbpaket}.tb.txt"
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
rm -rf $tbgdizin
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
kirik_ters_bagimli_bilgi(){
|
|
|
|
|
ryaz 32 "Aşağıdaki kurulu ters bağımlılıklarda kırılım araması yapılacaktır."
|
|
|
|
|
ters_bagimli_bilgi $1
|
|
|
|
|
ryaz 32 "........"
|
|
|
|
|
talimatlar=$(cat /tmp/$1.tb.txt)
|
|
|
|
|
for tal in $talimatlar;do
|
|
|
|
|
#paket kuruluysa kontrolu yapılacak
|
|
|
|
|
if [ -d "$VT/$tal" ];then
|
|
|
|
|
ryaz 34 "$tal paketi araştırılıyor:"
|
|
|
|
|
kirik_kontrol_paket $tal
|
|
|
|
|
ryaz 34 "--------------------------"
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
bagimli_bilgi(){
|
|
|
|
|
local bagimd konum bag
|
2017-12-14 06:40:19 +01:00
|
|
|
|
bkonum="`find "$talimatname" -name $1`"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
bekkonum="`find "$ektalimatname" -name $1`"
|
|
|
|
|
if [ $bkonum ];then
|
|
|
|
|
konum=$bkonum
|
|
|
|
|
elif [ $bekkonum ];then
|
|
|
|
|
konum=$bekkonum
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 talimatı bulunamadı!"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
bagimd=`cat $konum/talimat | grep "Gerekler" | cut -d':' -f2`
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ -n "$bagimd" ]; then
|
|
|
|
|
bagimd=`echo "$bagimd" | sed 's/,/ /g'`
|
|
|
|
|
#sıralı gösterme
|
|
|
|
|
#echo `echo "$bagimd" | sed 's/,/ /g'`
|
|
|
|
|
#kurulu kontrollu gosterim
|
|
|
|
|
for bag in $bagimd;do
|
2017-09-25 17:41:26 +02:00
|
|
|
|
if [ "$2" = "dogrula" ];then
|
|
|
|
|
kurulum_dogrulama_icerik "$bag"
|
|
|
|
|
else
|
|
|
|
|
echo "$bag" "`kurulu_kontrol $bag`"
|
|
|
|
|
fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
done
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
if [ "$2" = "dogrula" ];then
|
|
|
|
|
kurulum_dogrulama_icerik "$1"
|
|
|
|
|
else
|
|
|
|
|
echo "$1" "`kurulu_kontrol $1`"
|
|
|
|
|
fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bagimli_bilgi_dosyala(){
|
2017-09-25 17:41:26 +02:00
|
|
|
|
rm -f "/tmp/$1.gerekler.liste"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
local bagimd konum bag
|
2017-12-14 06:40:19 +01:00
|
|
|
|
bkonum="`find "$talimatname" -name $1`"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
bekkonum="`find "$ektalimatname" -name $1`"
|
|
|
|
|
if [ $bkonum ];then
|
|
|
|
|
konum=$bkonum
|
|
|
|
|
elif [ $bekkonum ];then
|
|
|
|
|
konum=$bekkonum
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 talimatı bulunamadı!"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
bagimd=`cat $konum/talimat | grep "Gerekler" | cut -d':' -f2`
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ -n "$bagimd" ]; then
|
|
|
|
|
bagimd=`echo "$bagimd" | sed 's/,/ /g'`
|
|
|
|
|
#sıralı gösterme
|
|
|
|
|
#echo `echo "$bagimd" | sed 's/,/ /g'`
|
|
|
|
|
#kurulu kontrollu gosterim
|
|
|
|
|
for bag in $bagimd;do
|
2017-09-25 17:41:26 +02:00
|
|
|
|
echo $bag >> "/tmp/$1.gerekler.liste"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
done
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
echo "$1" >> "/tmp/$1.gerekler.liste"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
silme_etkilenen_kontrol(){
|
|
|
|
|
paketet="$2"
|
|
|
|
|
mkdir -p /var/lib/pkg/etkilenen
|
|
|
|
|
mkdir -p /var/lib/pkg/etkilenen/$paketet
|
2017-08-07 04:00:50 +02:00
|
|
|
|
local dizin
|
|
|
|
|
for f in $(cat $1) ; do
|
|
|
|
|
dizin="${f%\'}"
|
|
|
|
|
dizin="${dizin#\'}"
|
|
|
|
|
if [ -d "$dizin" ];then
|
|
|
|
|
for g in `ls "$dizin"` ; do
|
|
|
|
|
if ! grep -Fxq " '$dizin/$g'" "$1"
|
|
|
|
|
then
|
|
|
|
|
echo "$dizin/$g"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
cp -rf "$dizin/$g" /var/lib/pkg/etkilenen/$paketet
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
# bir paket ile kurulacak yeni paketlerin listesini verir.
|
|
|
|
|
|
|
|
|
|
yeni_kurulacak_paketler(){
|
|
|
|
|
[ -f /tmp/mevcut_kurulu.liste ] && rm -rf /tmp/mevcut_kurulu.liste
|
|
|
|
|
ls $VT > /tmp/mevcut_kurulu.liste
|
|
|
|
|
derleme_listyap $1 &> /dev/null
|
|
|
|
|
comm -13 <(sort /tmp/mevcut_kurulu.liste) <(sort tumgerekler.liste)
|
|
|
|
|
[ -f tumgerekler.liste ] && rm -rf tumgerekler.liste
|
|
|
|
|
[ -f gerek.liste ] && rm -rf gerek.liste
|
|
|
|
|
}
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
# iki dosyanın içerik karşılaştırması yapar.
|
|
|
|
|
dosya_karsilastir(){
|
|
|
|
|
if cmp -s "$1" "$2"
|
|
|
|
|
then
|
|
|
|
|
echo "evet"
|
|
|
|
|
else
|
|
|
|
|
echo "degil"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
log_analiz(){
|
|
|
|
|
local zaman durum
|
|
|
|
|
zaman=$1
|
|
|
|
|
durum=$2
|
|
|
|
|
if [ -f "/var/log/mps/mps.log" ];then
|
|
|
|
|
cat $logdosya | grep "$zaman" | grep "$durum" | cut -d' ' -f3
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "mps.log bulunamadı!"
|
|
|
|
|
hataloglama "mps.log bulunamadı!"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
etkilenen_kurtar(){
|
2017-08-07 04:00:50 +02:00
|
|
|
|
local dizin paket
|
|
|
|
|
paket=$1
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ -f $VT/$paket/kurulan ];then
|
|
|
|
|
cat $VT/$paket/kurulan | cut -d '>' -f2 > /tmp/$paket.sil
|
2017-08-07 04:00:50 +02:00
|
|
|
|
for f in $(cat /tmp/$paket.sil) ; do
|
|
|
|
|
dizin="${f%\'}"
|
|
|
|
|
dizin="${dizin#\'}"
|
|
|
|
|
if [ -d "$dizin" ];then
|
|
|
|
|
for g in `ls "$dizin"` ; do
|
|
|
|
|
if ! grep -Fxq " '$dizin/$g'" "/tmp/$paket.sil"
|
|
|
|
|
then
|
|
|
|
|
if [ -f /tmp/$paket.kurtar ];then
|
|
|
|
|
rm /tmp/$paket.kurtar
|
|
|
|
|
fi
|
|
|
|
|
echo " '$dizin'" >> "/tmp/$paket.kurtar"
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
if [ -f /tmp/$paket.kurtar ];then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
mv $VT/$paket/kurulan $VT/$paket/ilk.kurulan
|
|
|
|
|
grep -v -F -x -f "/tmp/$paket.kurtar" "/tmp/$paket.sil" > $VT/$paket/kurulan
|
2017-09-25 17:41:26 +02:00
|
|
|
|
ryaz 32 "$paket etkilenen dosyaları kurtarıldı."
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
2017-09-25 17:41:26 +02:00
|
|
|
|
ryaz 32 "$paket etkilenen dosyası yok."
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
rm -f /tmp/$paket.sil
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "kurulan paket yok!"
|
|
|
|
|
hataloglama "kurulan paket yok!"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ters_bagimli_kontrol(){
|
2017-09-25 17:41:26 +02:00
|
|
|
|
ters_bagimli_bilgi $1
|
|
|
|
|
cat /tmp/${1}.tb.txt | sort > tersb.liste
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ls $VT/ | sed "/$1/d" | sort > simdiki.liste
|
2017-08-07 04:00:50 +02:00
|
|
|
|
comm -12 tersb.liste simdiki.liste
|
|
|
|
|
rm tersb.liste simdiki.liste
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
kurulu_kontrol(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local _konum _apaket
|
|
|
|
|
_apaket=$1
|
|
|
|
|
if [ -d "$kokdizin$VT/$_apaket" ];then
|
2017-08-07 04:00:50 +02:00
|
|
|
|
echo "kurulu"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
exit 0
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
_konum=$(talimat_bul $_apaket)
|
|
|
|
|
|
|
|
|
|
if [[ "$_konum" = "0" || "$_konum" = "-1" ]];then
|
2017-08-07 04:00:50 +02:00
|
|
|
|
echo "tanimsiz"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
else
|
|
|
|
|
echo "degil"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
exit 1
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
sistem_kur(){
|
|
|
|
|
local spaket
|
|
|
|
|
for spaket in `cat $1`;do
|
|
|
|
|
./$betikad -ik "$spaket" -kok $2;
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
kaynakdizin_kontrol(){
|
|
|
|
|
if [ ! -d $DERLEME_KAYNAKDIZIN ];then
|
|
|
|
|
mkdir $DERLEME_KAYNAKDIZIN
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
logdizin_kontrol(){
|
|
|
|
|
if [ ! -d $kokdizin$LOGDIZIN ];then
|
|
|
|
|
mkdir $kokdizin$LOGDIZIN
|
|
|
|
|
fi
|
|
|
|
|
if [ ! -d $kokdizin$LOGDIZIN/derleme ];then
|
|
|
|
|
mkdir $kokdizin$LOGDIZIN/derleme
|
|
|
|
|
fi
|
|
|
|
|
if [ ! -f $kokdizin$LOGDIZIN/mps.log ];then
|
|
|
|
|
touch $kokdizin$LOGDIZIN/mps.log
|
|
|
|
|
fi
|
|
|
|
|
if [ ! -f $kokdizin$LOGDIZIN/mps-hata.log ];then
|
|
|
|
|
touch $kokdizin$LOGDIZIN/mps-hata.log
|
|
|
|
|
fi
|
|
|
|
|
if [ ! -f $kokdizin$LOGDIZIN/mps-git.log ];then
|
|
|
|
|
touch $kokdizin$LOGDIZIN/mps-git.log
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
tarihce_dkontrol(){
|
|
|
|
|
if [ ! -d $TARIHCE_DIZIN ];then
|
|
|
|
|
mkdir $TARIHCE_DIZIN
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
temel_tarihce_kontrol(){
|
|
|
|
|
if [ ! -f $TARIHCE_DIZIN/temel-pkvt.tar.lz ];then
|
|
|
|
|
tarihce_olustur "temel"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
tarihce_liste(){
|
|
|
|
|
tarihce_dkontrol
|
|
|
|
|
ls $TARIHCE_DIZIN/
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
tarihce_yap(){
|
|
|
|
|
tarihce_dkontrol
|
|
|
|
|
local t_isim
|
|
|
|
|
if [ "$temel_tarihce" = "evet" ];then
|
|
|
|
|
t_isim="temel"
|
|
|
|
|
else
|
|
|
|
|
t_isim=`date +%m-%d-%y.%H%M%S`
|
|
|
|
|
fi
|
|
|
|
|
tarihce_olustur "$t_isim"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
tarihce_olustur(){
|
|
|
|
|
bsdtar -P -r -f $TARIHCE_DIZIN/"$1"-pkvt.tar $VT
|
|
|
|
|
lzip -9 $TARIHCE_DIZIN/"$1"-pkvt.tar
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
tarihce_yukle(){
|
|
|
|
|
tarihce_dkontrol
|
|
|
|
|
local islem_onay cikis
|
|
|
|
|
sil_onay="h"
|
|
|
|
|
if [ -f $TARIHCE_DIZIN/"$1-pkvt.tar.lz" ];then
|
|
|
|
|
bsdtar -p -o -C /tmp -xf $TARIHCE_DIZIN/"$1-pkvt.tar.lz" 2>/dev/null
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ls /tmp$VT/ > hedef.pkvt
|
|
|
|
|
ls $VT/ > simdiki.pkvt
|
2017-08-07 04:00:50 +02:00
|
|
|
|
grep -v -F -x -f hedef.pkvt simdiki.pkvt > sil.liste
|
|
|
|
|
grep -v -F -x -f simdiki.pkvt hedef.pkvt > kur.liste
|
|
|
|
|
#rm hedef.pkvt simdiki.pkvt
|
|
|
|
|
rm -r /tmp/var
|
|
|
|
|
cikis=""
|
|
|
|
|
if [ -s sil.liste ];then
|
|
|
|
|
ryaz 32 "silinecekler"
|
|
|
|
|
ryaz 32 "------------"
|
|
|
|
|
cat sil.liste
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [ -s kur.liste ];then
|
|
|
|
|
ryaz 32 "kurulacaklar"
|
|
|
|
|
ryaz 32 "------------"
|
|
|
|
|
cat kur.liste
|
|
|
|
|
fi
|
|
|
|
|
if [ ! -s sil.liste ] && [ ! -s kur.liste ];then
|
|
|
|
|
ryaz 32 "sistem zaten hedef durumda!"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
while true; do
|
|
|
|
|
ryaz 34 "otomatik geri dönüşüm başlasın mı?";read -p "e veya h-> " eh
|
|
|
|
|
case $eh in
|
|
|
|
|
[Ee]* ) islem_onay="e"; break;;
|
|
|
|
|
[Hh]* ) break;;
|
|
|
|
|
* ) echo "e veya h";;
|
|
|
|
|
esac
|
|
|
|
|
done
|
|
|
|
|
if [ "$islem_onay" = "e" ];then
|
|
|
|
|
mps -os sil.liste
|
2017-09-25 17:41:26 +02:00
|
|
|
|
mps kurul kur.liste
|
2017-08-07 04:00:50 +02:00
|
|
|
|
mv sil.liste silinenler.liste
|
|
|
|
|
mv kur.liste kurulanlar.liste
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
mv sil.liste sil_iptal.liste
|
|
|
|
|
mv kur.liste kur_iptal.liste
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "ilgili tarihce dosyası bulunamadı!"
|
|
|
|
|
hataloglama "ilgili tarihce dosyası bulunamadı!"
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
[ -f $PWD/hedef.pkvt ] && rm $PWD/hedef.pkvt
|
|
|
|
|
[ -f $PWD/simdiki.pkvt ] && rm $PWD/simdiki.pkvt
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
tarihce_sil(){
|
|
|
|
|
tarihce_dkontrol
|
|
|
|
|
if [ -f $TARIHCE_DIZIN/"$1-pkvt.tar.lz" ];then
|
|
|
|
|
rm -f $TARIHCE_DIZIN/"$1-pkvt.tar.lz"
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "ilgili tarihce dosyası bulunamadı!"
|
|
|
|
|
hataloglama "ilgili tarihce dosyası bulunamadı!"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
sunucu_ayarla(){
|
|
|
|
|
wget -q --spider "$1/paket.vt"
|
|
|
|
|
yenisun="$1"
|
|
|
|
|
if [ $? -eq 0 ]; then
|
|
|
|
|
sed -i.bak 's/^\(sunucu=\).*/\1"xverix\/"/' /etc/mps.conf
|
|
|
|
|
sed -i "s|xverix|$1|" /etc/mps.conf
|
|
|
|
|
mps -sun
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "Tanımsız paket sunucusu!"
|
|
|
|
|
hataloglama "Tanımsız paket sunucusu!"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
sunucu_ayarla_y(){
|
|
|
|
|
wget -q --spider "$1/paket.vt"
|
|
|
|
|
yenisun="$1"
|
|
|
|
|
if [ $? -eq 0 ]; then
|
|
|
|
|
source /etc/mps.conf
|
|
|
|
|
ydizi=("${sunucular[@]}")
|
|
|
|
|
ydizi[0]="$1"
|
|
|
|
|
echo ${ydizi[@]}
|
|
|
|
|
esnc=${sunucular[0]}
|
|
|
|
|
ysnc=${ydizi[0]}
|
|
|
|
|
sed -i "/^sunucular/s/"${esnc}"\'"$ysnc"'/g" /etc/mps.conf
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "Tanımsız paket sunucusu!"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
loglama(){
|
|
|
|
|
logdizin_kontrol
|
|
|
|
|
echo "$(date +'%F %T') $1" >> "$kokdizin/$LOGDIZIN/mps.log"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
hataloglama(){
|
|
|
|
|
logdizin_kontrol
|
|
|
|
|
echo "$(date +'%F %T') $1" >> "$kokdizin/$LOGDIZIN/mps-hata.log"
|
|
|
|
|
}
|
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
indir_talimat_paketle(){
|
|
|
|
|
local dosya _ip _talkonum
|
|
|
|
|
_wget="wget --quiet --no-check-certificate"
|
|
|
|
|
if [ ! -z "$1" ];then dosya=$1;else ryaz 31 "link parametre eksik";exit 1;fi
|
|
|
|
|
if [ ! -z "$2" ];then _ip=$2;else ryaz 31 "ip tipi parametresi eksik";exit 1;fi
|
|
|
|
|
if [ ! -z "$3" ];then _talkonum=$3;else ryaz 31 "talimatname konum parametre eksik";exit 1;fi
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
urlkont='(https?|ftp|file)://[-A-Za-z0-9\+&@#/%?=~_|!:,.;]*[-A-Za-z0-9\+&@#/%=~_|]'
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [[ $dosya =~ $urlkont ]];then
|
2017-08-07 04:00:50 +02:00
|
|
|
|
gdosya=`mktemp`
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [[ $_ip =~ "-6" ]]; then
|
|
|
|
|
ryaz 32 "talimat ipv6 linkten cekilecek"
|
|
|
|
|
$_wget $_ip $dosya -O $gdosya
|
|
|
|
|
else
|
|
|
|
|
ryaz 32 "talimat ipv4 linkten cekilecek"
|
|
|
|
|
$_wget $_ip $dosya -O $gdosya
|
|
|
|
|
fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
dosya=$gdosya
|
2017-12-14 06:40:19 +01:00
|
|
|
|
else
|
|
|
|
|
ryaz 31 "link geçersiz"
|
|
|
|
|
exit 1
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ ! -f $dosya ];then
|
|
|
|
|
ryaz 31 "$dosya talimat dosyasi yok!"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local _isim
|
|
|
|
|
_isim=()
|
|
|
|
|
_isim=`grep 'name=' $dosya | cut -d'=' -f 2`
|
|
|
|
|
paketisim="${_isim[0]}"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ ! -n "$paketisim" ]; then
|
|
|
|
|
ryaz 31 "paket ismi degiskeni bulunamadı!"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ ! -d $_talkonum/${paketisim:0:1}/$paketisim ];then
|
|
|
|
|
mkdir -p $_talkonum/${paketisim:0:1}/$paketisim
|
|
|
|
|
cp -f $dosya $_talkonum/${paketisim:0:1}/$paketisim/talimat
|
|
|
|
|
talimat_degisken_cevrim $_talkonum/${paketisim:0:1}/$paketisim/talimat
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ryaz 32 "$paketisim talimatı hazırlandı."
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$paketisim talimatı zaten talimatnamede var!"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
talimat_degisken_cevrim(){
|
|
|
|
|
_dosya=$1
|
|
|
|
|
if [ -f $_dosya ];then
|
|
|
|
|
sed -i 's/name=/isim=/g' $_dosya
|
|
|
|
|
sed -i 's/$name/$isim/g' $_dosya
|
|
|
|
|
sed -i 's/${name}/${isim}/g' $_dosya
|
|
|
|
|
sed -i 's/version=/surum=/g' $_dosya
|
|
|
|
|
sed -i 's/$version/$surum/g' $_dosya
|
|
|
|
|
sed -i 's/${version}/${surum}/g' $_dosya
|
|
|
|
|
sed -i 's/${version%.*}/${surum%.*}/g' $_dosya
|
|
|
|
|
sed -i 's/release=/devir=/g' $_dosya
|
|
|
|
|
sed -i 's/$release/$devir/g' $_dosya
|
|
|
|
|
sed -i 's/${release}/${devir}/g' $_dosya
|
|
|
|
|
sed -i 's/source=/kaynak=/g' $_dosya
|
|
|
|
|
sed -i 's/build()/derle()/g' $_dosya
|
|
|
|
|
sed -i 's/build ()/derle()/g' $_dosya
|
|
|
|
|
sed -i 's/Description:/Tanım:/g' $_dosya
|
|
|
|
|
sed -i 's/Description=/Tanım:/g' $_dosya
|
|
|
|
|
sed -i 's/Url=/Url:/g' $_dosya
|
|
|
|
|
sed -i 's/description:/Tanım:/g' $_dosya
|
|
|
|
|
sed -i 's/Description :/Tanım:/g' $_dosya
|
|
|
|
|
sed -i 's/Packager:/Paketçi:/g' $_dosya
|
|
|
|
|
sed -i 's/packager:/Paketçi:/g' $_dosya
|
|
|
|
|
sed -i 's/Packagers:/Paketçi:/g' $_dosya
|
|
|
|
|
sed -i 's/Packager :/Paketçi:/g' $_dosya
|
|
|
|
|
sed -i 's/Depends on:/Gerekler:/g' $_dosya
|
|
|
|
|
sed -i 's/Depends:/Gerekler:/g' $_dosya
|
|
|
|
|
sed -i 's/Depends on :/Gerekler:/g' $_dosya
|
|
|
|
|
sed -i '/Maintainer:/d' $_dosya
|
|
|
|
|
sed -i '/Optional:/d' $_dosya
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "ilgili talimat dosyası bulunamadı."
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
talimat_olustur(){
|
|
|
|
|
if [ "$1" = '?' ];then
|
|
|
|
|
ryaz 34 "kullanım : mps -to paket_ismi"
|
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local isim
|
|
|
|
|
isim=$1
|
|
|
|
|
mkdir -p $isim
|
|
|
|
|
tee "$isim/talimat" > /dev/null <<EOF
|
|
|
|
|
# Tanım: paket açıklaması
|
|
|
|
|
# Url: paketin ilgili web sayfası
|
|
|
|
|
# Paketçi: paketçi
|
|
|
|
|
# Gerekler:
|
|
|
|
|
|
|
|
|
|
isim=$isim
|
|
|
|
|
surum=1
|
|
|
|
|
devir=1
|
|
|
|
|
kaynak=()
|
|
|
|
|
|
|
|
|
|
derle() {
|
|
|
|
|
cd \$isim-\$surum
|
2017-08-07 04:00:50 +02:00
|
|
|
|
./autogen.sh
|
|
|
|
|
./configure --prefix=/usr
|
|
|
|
|
make
|
2017-12-14 06:40:19 +01:00
|
|
|
|
make DESTDIR=\$PKG install
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
EOF
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 34 $isim "talimatı oluşturuldu."
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
git_guncelle() {
|
|
|
|
|
kaynakdizin_kontrol
|
|
|
|
|
gitayar_kontrol
|
|
|
|
|
cd $DERLEME_KAYNAKDIZIN
|
|
|
|
|
#git sunucudan guncelleme
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 33 "$_git_guncelleniyor"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ ! -d milis.git ];then
|
|
|
|
|
git clone $git_sunucu milis.git
|
|
|
|
|
rsync -av /sources/milis.git/rootfs/* /
|
|
|
|
|
else
|
|
|
|
|
cd milis.git
|
|
|
|
|
git pull >& $LOGDIZIN/mps-git.log
|
|
|
|
|
if grep -q "Already\ up-to-date" $LOGDIZIN/mps-git.log; then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "$_git_guncel"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
|
|
|
|
#ryaz 32 `cat $LOGDIZIN/mps-git.log`
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "$_git_guncellendi"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
#baslangic betiklerinin guncellenmesi
|
|
|
|
|
rsync -aviz -q --delete /sources/milis.git/rootfs/lib/services/* /lib/services/
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
cd `dirname $talimatname`
|
|
|
|
|
ryaz 33 "$_yerel_esitleniyor"
|
|
|
|
|
rm -r $talimatname
|
|
|
|
|
mkdir -p $talimatname
|
|
|
|
|
rsync -aviz -q --delete $DERLEME_KAYNAKDIZIN/milis.git/talimatname/ $talimatname
|
|
|
|
|
rm -r `dirname $talimatname`/bin/*
|
|
|
|
|
rsync -aviz -q --delete $DERLEME_KAYNAKDIZIN/milis.git/bin/ `dirname $talimatname`/bin
|
|
|
|
|
rm -r `dirname $talimatname`/ayarlar/*
|
|
|
|
|
rsync -aviz -q --delete $DERLEME_KAYNAKDIZIN/milis.git/ayarlar/ `dirname $talimatname`/ayarlar
|
2017-08-07 04:00:50 +02:00
|
|
|
|
#ikili dosyaların /usr/bin altına kısayol atılması
|
|
|
|
|
for i in /root/bin/*; do
|
|
|
|
|
j=`basename $i`
|
|
|
|
|
if [ ! -f /usr/bin/$j ];then
|
|
|
|
|
ln -s /root/bin/$j /usr/bin/$j
|
|
|
|
|
fi
|
|
|
|
|
done
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "$_yerel_esitlendi"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
git_proje_kur(){
|
|
|
|
|
local proje proj_dizin git_link
|
|
|
|
|
git_link="https://github.com/milisarge"
|
|
|
|
|
proje="$1"
|
|
|
|
|
proj_dizin="/opt"
|
|
|
|
|
mkdir -p $proj_dizin
|
|
|
|
|
if [ -d "$proj_dizin/$proje" ];then
|
|
|
|
|
cd $proj_dizin/$proje
|
|
|
|
|
git pull
|
|
|
|
|
|
|
|
|
|
if [ -f mops ];then
|
|
|
|
|
. mops
|
|
|
|
|
mops_gun
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
git clone "$git_link/$proje" "$proj_dizin/$proje"
|
|
|
|
|
cd $proj_dizin/$proje
|
|
|
|
|
|
|
|
|
|
if [ -f mops ];then
|
|
|
|
|
. mops
|
|
|
|
|
mops_kur
|
|
|
|
|
mops_sil
|
|
|
|
|
mops_gun
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
op_kur(){
|
|
|
|
|
local mopsyol mops
|
|
|
|
|
mops=$1
|
|
|
|
|
mopsyol="~/mops/$mops"
|
|
|
|
|
# talimatnameye bak
|
|
|
|
|
if [ -d $mopsyol ]; then
|
|
|
|
|
$mopsyol/talimat kur
|
|
|
|
|
# yerelde ara
|
|
|
|
|
elif [ -f $PWD/"$mops" ]; then
|
|
|
|
|
./"$mops" kur
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 mops talimatı bulunamadı!"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
op_sil(){
|
|
|
|
|
local mopsyol mops
|
|
|
|
|
mops=$1
|
|
|
|
|
mopsyol="~/mops/$mops"
|
|
|
|
|
# talimatnameye bak
|
|
|
|
|
if [ -d $mopsyol ]; then
|
|
|
|
|
$mopsyol/talimat sil
|
|
|
|
|
# yerelde ara
|
|
|
|
|
elif [ -f $PWD/"$mops" ]; then
|
|
|
|
|
./"$mops" sil
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 mops talimatı bulunamadı!"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
servis_kur(){
|
|
|
|
|
cd /sources/milis.git/ayarlar/servisler
|
|
|
|
|
if make kur-$1
|
|
|
|
|
then
|
|
|
|
|
ryaz 32 "$1 servisi kuruldu"
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 servisi kurulum olumsuz!!!"
|
|
|
|
|
hataloglama "$1 servisi kurulum olumsuz!!!"
|
|
|
|
|
fi
|
|
|
|
|
cd -
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
servis_sil(){
|
|
|
|
|
cd /sources/milis.git/ayarlar/servisler
|
|
|
|
|
if make sil-$1
|
|
|
|
|
then
|
|
|
|
|
ryaz 32 "$1 servisi silindi"
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 servisi silme olumsuz!!!"
|
|
|
|
|
hataloglama "$1 servisi silme olumsuz!!!"
|
|
|
|
|
fi
|
|
|
|
|
cd -
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
servisler_kontrol(){
|
|
|
|
|
servisler=`ls /sources/milis.git/ayarlar/servisler/mbd/init.d`
|
|
|
|
|
for ser in $(ls /etc/init.d/) ; do
|
|
|
|
|
if [ ! -f /sources/milis.git/ayarlar/servisler/mbd/init.d/$ser ];then
|
|
|
|
|
printf "%12s %s\n" "$ser mbd kaydı bulunamadı!"
|
|
|
|
|
else
|
|
|
|
|
if cmp -s "/sources/milis.git/ayarlar/servisler/mbd/init.d/$ser" "$ser"
|
|
|
|
|
then
|
|
|
|
|
printf "%12s %s\n" "$ser" "mbd uyumsuz"
|
|
|
|
|
else
|
|
|
|
|
#ryaz 32 "$ser mbd +++++"
|
|
|
|
|
printf "%12s %s\n" "$ser" "mbd +++++"
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
talimat_bilgi(){
|
2017-12-14 06:40:19 +01:00
|
|
|
|
local _konum _apaket
|
|
|
|
|
_apaket=$1
|
|
|
|
|
_konum=$(talimat_bul $_apaket)
|
|
|
|
|
if [[ "$_konum" = "0" || "$_konum" = "-1" ]];then
|
|
|
|
|
ryaz 31 "$_apaket $_paket_tanimsiz"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
exit 1
|
2017-12-14 06:40:19 +01:00
|
|
|
|
else
|
|
|
|
|
grep "build()" -B 12 $_konum/talimat |sed '$ d'
|
|
|
|
|
ryaz 32 "file://$_konum/talimat"
|
|
|
|
|
ryaz 32 "https://raw.githubusercontent.com/milisarge/malfs-milis/master/$(echo $_konum | cut -d'/' -f3-6)/talimat"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
sistem_kontrol(){
|
|
|
|
|
paketvt_kontrol
|
|
|
|
|
sunucu_kontrol
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
sunucu_kontrol(){
|
2017-09-25 17:41:26 +02:00
|
|
|
|
uzunluk=${#sunucular[@]}
|
|
|
|
|
for ((i=1;i<=$uzunluk;i++)); do
|
|
|
|
|
pktsunucu=${sunucular[$i-1]}
|
|
|
|
|
wget --no-check-certificate -q --spider "$pktsunucu/paket.vt"
|
|
|
|
|
if [ $? -eq 0 ]; then
|
|
|
|
|
ryaz 32 "$pktsunucu paket sunucu aktif"
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$pktsunucu sunucu erişim dışı"
|
|
|
|
|
fi
|
|
|
|
|
done
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
gitayar_kontrol(){
|
|
|
|
|
if [ ! -f /root/.gitconfig ];then
|
|
|
|
|
git_ssl_iptal
|
|
|
|
|
git_otokimlik
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
kirik_kontrol_sistem(){
|
|
|
|
|
local onek sonek
|
|
|
|
|
onek="'"
|
|
|
|
|
sonek="'"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
for paket in `ls $VT/`
|
2017-08-07 04:00:50 +02:00
|
|
|
|
do
|
|
|
|
|
ryaz 33 $paket "kontrol ediliyor."
|
|
|
|
|
kirik_kontrol_paket $paket
|
|
|
|
|
ryaz 33 $paket "kontrol edildi."
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
kirik_kontrol_paket(){
|
|
|
|
|
local onek sonek
|
|
|
|
|
onek="'"
|
|
|
|
|
sonek="'"
|
|
|
|
|
for kdosya in `kurulum_dosya_listele $1`
|
|
|
|
|
do
|
|
|
|
|
dosya=${kdosya#$onek}
|
|
|
|
|
dosya=${dosya%$sonek}
|
|
|
|
|
#echo "${dosya}"
|
|
|
|
|
if [ -f $dosya ];then
|
|
|
|
|
if [[ $(milis-ldd -d $dosya | grep not\ found) ]] ;then
|
|
|
|
|
echo $kdosya
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
kurulum_dogrulama(){
|
|
|
|
|
for kuruland in `ls $VT`
|
|
|
|
|
do
|
|
|
|
|
if [ ! -f "$VT/$kuruland/kurulan" ]; then
|
|
|
|
|
ryaz 32 "$kuruland hasarlı kurulum tesbiti!"
|
|
|
|
|
rm -r $VT/$kuruland
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_indir $kuruland
|
2017-08-07 04:00:50 +02:00
|
|
|
|
mps -k "$paketdepo/$kuruland"*.mps.lz
|
|
|
|
|
ryaz 32 "$kuruland hasarlı kurulum onarıldı."
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_icerik_dogrulama(){
|
|
|
|
|
local dosyayol kontpaketadi tempmpslz pidanayol
|
|
|
|
|
kontpaketadi="$1"
|
|
|
|
|
if [ -f "$paketdepo/$kontpaketadi#"*.mps.lz ];then
|
|
|
|
|
tempmpslz=$(mktemp)
|
|
|
|
|
if [ -d $2 ];then
|
|
|
|
|
pidanayol="$2"
|
|
|
|
|
tar tf "$paketdepo/$kontpaketadi#"*.mps.lz > $tempmpslz
|
|
|
|
|
IFS=''
|
|
|
|
|
while read dosyayol;do
|
|
|
|
|
if [ ! -f $pidanayol$dosyayol ] && [ ! -d $pidanayol$dosyayol ] && [ $dosyayol != ".MTREE" ] && [ $dosyayol != ".META" ]; then
|
|
|
|
|
ryaz 31 "$pidanayol$dosyayol hasarlı"
|
|
|
|
|
while true; do
|
|
|
|
|
ryaz 34 $kontpaketadi" paketi yenilensin mi?";read -p "e veya h-> " eh
|
|
|
|
|
case $eh in
|
|
|
|
|
[Ee]* ) tekrarkur="evet";agdan_kur "$kontpaketadi";break;;
|
|
|
|
|
[Hh]* ) break;;
|
|
|
|
|
* ) echo "e veya h";;
|
|
|
|
|
esac
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
done < $tempmpslz
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$2 kök dizini bulunamadı!"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 paketi bulunamadı!"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
kurulum_dogrulama_icerik_tum(){
|
2017-09-25 17:41:26 +02:00
|
|
|
|
ryaz 33 "paket veritabanı yedekleniyor"
|
|
|
|
|
tarihce_yap
|
|
|
|
|
for kurulanpak in `ls $VT`
|
2017-08-07 04:00:50 +02:00
|
|
|
|
do
|
2017-09-25 17:41:26 +02:00
|
|
|
|
if [ -f "$VT/$kurulanpak/kurulan" ]; then
|
|
|
|
|
kurulum_dogrulama_icerik $kurulanpak
|
|
|
|
|
ryaz 32 "$kurulanpak kurulum icerik onarıldı."
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
chr_yordam() {
|
|
|
|
|
[ "$1" -lt 256 ] || return 1
|
|
|
|
|
printf "\\$(printf '%03o' "$1")"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ord_yordam() {
|
|
|
|
|
LC_CTYPE=C printf '%d' "'$1"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
kurulum_dogrulama_icerik(){
|
|
|
|
|
paketadi="$1"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
onar="hayir"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
#echo $VT
|
|
|
|
|
#tarihce_yap
|
2017-09-25 17:41:26 +02:00
|
|
|
|
ryaz 33 "$paketadi içeriği kontrol ediliyor."
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ -f "$VT/$paketadi/kurulan" ]; then
|
|
|
|
|
ilksatir=`head -n 1 $VT/$paketadi/kurulan`
|
|
|
|
|
if [[ `echo ${ilksatir}` =~ ^‘ ]] ; then
|
|
|
|
|
ryaz 32 "temel sistem paket kurulan hatası düzeltildi!"
|
|
|
|
|
sed -i 's/‘/'\''\//;s/’/'\''/' $VT/$paketadi/kurulan
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
#for dosyayol in $(cat $VT/$paketadi/kurulan);do
|
|
|
|
|
while read dosyayol; do
|
|
|
|
|
#for dosyayol in $(<$VT/$paketadi/kurulan);do
|
|
|
|
|
dosyayol=$(echo $dosyayol | sed 's/^.\(.*\).$/\1/')
|
|
|
|
|
netdosyayol="${dosyayol:1:${#dosyayol}-1}"
|
|
|
|
|
if [ ! -f $dosyayol ] && [ ! -d $dosyayol ] ; then
|
|
|
|
|
ryaz 31 "$dosyayol hasarlı"
|
|
|
|
|
onar="evet"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
done < $VT/$paketadi/kurulan
|
|
|
|
|
|
|
|
|
|
if [ $onar = "evet" ];then
|
|
|
|
|
ryaz 34 "$paketadi hasarlı dosya barındırıyor,düzeltilsin mi?";read -p "e veya h-> " eh
|
|
|
|
|
case $eh in
|
|
|
|
|
[Ee]* ) tekrarkur="evet";agdan_kur "$paketadi";;
|
|
|
|
|
[Hh]* ) ryaz 31 "$paketadi pas geçildi.";;
|
|
|
|
|
* ) echo "e veya h";;
|
|
|
|
|
esac
|
|
|
|
|
fi
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ryaz 32 "$paketadi kurulum doğrulama tamamlandı."
|
|
|
|
|
elif [ -d "$VT/$paketadi" ]; then
|
2017-09-25 17:41:26 +02:00
|
|
|
|
cp -rf $VT $VT.yedek
|
|
|
|
|
ryaz 31 "$paketadi hasarlı kurulum tesbiti!"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
#onarma
|
2017-09-25 17:41:26 +02:00
|
|
|
|
rm -r $VT/$paketadi
|
|
|
|
|
paket_indir $paketadi
|
|
|
|
|
mps -k "$paketdepo/$paketadi#"*.mps.lz
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ryaz 32 "$paketadi hasarlı kurulum onarıldı."
|
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 "$paketadi $_paket_kurulu_degil"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
tamir_temel_kurulan(){
|
|
|
|
|
if [ ! -d $VT ] ; then
|
|
|
|
|
ryaz 31 "paket kurulum vt bulunamadı!"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
for paketadi in `ls $VT`
|
|
|
|
|
do
|
|
|
|
|
sed -i 's/‘/'\''\//;s/’/'\''/' $VT/$paketadi/kurulan
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
depo_paketler_liste(){
|
|
|
|
|
ls $paketdepo*.mps.lz
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
depo_paketler_sil(){
|
|
|
|
|
while true; do
|
|
|
|
|
pktsay="0"
|
|
|
|
|
[[ $(ls $paketdepo*.mps.lz) ]] && pktsay=$(ls $paketdepo/*.mps.lz | wc -l)
|
|
|
|
|
ryaz 34 "$paketdepo altındaki $pktsay paket silinecek?";read -p "e veya h-> " eh
|
|
|
|
|
case $eh in
|
|
|
|
|
[Ee]* ) rm $paketdepo/*.mps.lz;ryaz 32 "$paketdepo paketler temizlendi."; break;;
|
|
|
|
|
[Hh]* ) break;;
|
|
|
|
|
* ) echo "e veya h";;
|
|
|
|
|
esac
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
kurulum_dosya_listele(){
|
|
|
|
|
cat "$VT/$1/kurulan"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# bir dosyanın kurulmuş hangi pakette olduğunu bulur.
|
|
|
|
|
kurulan_dosya_bul(){
|
|
|
|
|
grep -rli "$1" "$VT/" | cut -d "/" -f6
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
paketvt_kontrol(){
|
|
|
|
|
mkdir -p /depo/paketler
|
|
|
|
|
if [ ! -f /depo/paketler/paket.vt ];then
|
|
|
|
|
touch /depo/paketler/paket.vt
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
pvt_olustur(){
|
|
|
|
|
if [ ! -f paket.vt ];then
|
|
|
|
|
touch paket.vt
|
|
|
|
|
fi
|
|
|
|
|
if [ -f "paket.vt" ];then
|
|
|
|
|
mv "paket.vt" "paket.vt.eski"
|
|
|
|
|
fi
|
|
|
|
|
ryaz 32 "paket.vt oluşturuluyor...."
|
|
|
|
|
for paket in `ls *.mps.lz`
|
|
|
|
|
do
|
|
|
|
|
paketad="`echo $paket|cut -d "#" -f1`"
|
|
|
|
|
shaek=`sha1sum $paket`
|
|
|
|
|
|
|
|
|
|
echo $paketad $shaek >> paket.vt
|
|
|
|
|
done
|
|
|
|
|
ryaz 32 "paket.vt oluşturuldu."
|
|
|
|
|
}
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paketvt_guncelle(){
|
|
|
|
|
uzunluk=${#sunucular[@]}
|
|
|
|
|
#for snc in "${sunucular[@]}"
|
|
|
|
|
for ((i=1;i<=$uzunluk;i++)); do
|
|
|
|
|
pktsunucu=${sunucular[$i-1]}
|
|
|
|
|
pkvt=""
|
|
|
|
|
if [ $i = 1 ];then
|
|
|
|
|
pktvt="paket.vt"
|
|
|
|
|
else
|
|
|
|
|
pktvt="paket${i-1}.vt"
|
|
|
|
|
fi
|
|
|
|
|
wget --no-check-certificate -q --spider "$pktsunucu""paket.vt"
|
|
|
|
|
if [ $? -eq 0 ]; then
|
|
|
|
|
ryaz 32 $pktsunucu
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 32 "$_paketvt_guncelleniyor" "$paketdepo""$pktvt"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
if [ -f "$paketdepo""$pktvt" ];then
|
|
|
|
|
mv "$paketdepo""$pktvt" "$paketdepo""$pktvt.eski"
|
|
|
|
|
fi
|
|
|
|
|
wget --no-check-certificate -q --show-progress -P "$paketdepo" "$pktsunucu""paket.vt" -O "$paketdepo""$pktvt"
|
|
|
|
|
#rm /tmp/paket.vt*
|
2017-08-08 21:39:37 +02:00
|
|
|
|
else
|
2017-09-25 17:41:26 +02:00
|
|
|
|
ryaz 31 "$pktsunucu paket veritabanı güncelleme olumsuz."
|
|
|
|
|
hataloglama "paket veritabanı güncelleme olumsuz."
|
2017-08-08 21:39:37 +02:00
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
done
|
2017-08-08 21:39:37 +02:00
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
}
|
|
|
|
|
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_indir(){
|
|
|
|
|
if [ -f "$paketdepo""paket.vt" ];then
|
|
|
|
|
local pkt
|
|
|
|
|
uzunluk=${#sunucular[@]}
|
|
|
|
|
#paketin paketin sunucularında aranaması,buldugu sunucudan indirmesi
|
|
|
|
|
for ((i=1;i<=$uzunluk;i++)); do
|
|
|
|
|
pktsunucu=${sunucular[$i-1]}
|
|
|
|
|
pkvt=""
|
|
|
|
|
if [ $i = 1 ];then
|
|
|
|
|
pktvt="paket.vt"
|
|
|
|
|
else
|
|
|
|
|
pktvt="paket${i-1}.vt"
|
|
|
|
|
fi
|
|
|
|
|
pkt=`cat "$paketdepo$pktvt" | grep "^$1 " | cut -d' ' -f3`
|
|
|
|
|
#ryaz 32 "$1 paketi $pktsunucu altında aranıyor"
|
|
|
|
|
if [ $pkt ];then
|
|
|
|
|
#ryaz 32 "$1 paketi $pktsunucu altında bulundu"
|
|
|
|
|
ekontdeg=`cat "$paketdepo$pktvt" | grep "^$1 " | cut -d' ' -f2`
|
|
|
|
|
cpaket="${pkt/'#'/'%23'}"
|
|
|
|
|
#paketin sunucuda varlık kontrolu
|
|
|
|
|
wget -q --spider "$pktsunucu$cpaket"
|
|
|
|
|
if [ $? -eq 0 ]; then
|
|
|
|
|
wget --no-check-certificate -nc -q --show-progress -P "$paketdepo" "$pktsunucu$cpaket"
|
|
|
|
|
if [[ "$?" != 0 ]]; then
|
|
|
|
|
ryaz 31 "indirme hatalı"
|
|
|
|
|
hataloglama "indirme hatalı"
|
|
|
|
|
else
|
|
|
|
|
mkontdeg=`sha1sum "$paketdepo$pkt" | cut -d' ' -f1`
|
|
|
|
|
if [ "$ekontdeg" != "$mkontdeg" ];then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 "$_shasum_uyumsuzluk,paket tekrar indiriliyor."
|
|
|
|
|
hataloglama "sha1sum uyusmaslik tespit edildi,paket tekrar indiriliyor."
|
2017-09-25 17:41:26 +02:00
|
|
|
|
rm -f "$paketdepo$pkt"
|
|
|
|
|
paket_indir "$1"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
#else
|
|
|
|
|
#ryaz 32 "$_zaten $1 $_paket_onbellek_depoda_var"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$1 paketi bulunamadı $pktsunucu dan silinmiş olmalı!"
|
|
|
|
|
fi
|
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 "$pktsunucu $1 paketi bulunmuyor!"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$paketdepo altında paket.vt dosyanız yok.Güncelleme yapınız!"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2017-08-07 04:00:50 +02:00
|
|
|
|
yerelden_kur(){
|
|
|
|
|
local silme
|
|
|
|
|
pkontrol=`basename $1 | grep -w "mps.lz"`
|
|
|
|
|
if [ ! -z "$pkontrol" -a "$pkontrol" != "" ]; then
|
|
|
|
|
paketad=`echo "$1" | cut -d'#' -f1`
|
|
|
|
|
kkont=`kurulu_kontrol "$paketad"`
|
|
|
|
|
|
|
|
|
|
if [ "$kkont" = "degil" ];then
|
|
|
|
|
icerik_ekle "$1"
|
|
|
|
|
elif [ "$kkont" = "kurulu" ];then
|
|
|
|
|
if [ "$tekrarkur" = "hayir" ];then
|
|
|
|
|
while true; do
|
|
|
|
|
ryaz 31 "$1 paketi zaten kurulu silinip kurulsun mu?"
|
|
|
|
|
read -p "e veya h -> " eh
|
|
|
|
|
case $eh in
|
|
|
|
|
[Ee]* ) silme="e"; break;;
|
|
|
|
|
[Hh]* ) break;;
|
|
|
|
|
* ) echo "e veya h";;
|
|
|
|
|
esac
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
if [ "$silme" = "e" ];then
|
|
|
|
|
ryaz 33 "silinecekelerin kontrolu için"
|
|
|
|
|
paket_sil "$paketad"
|
|
|
|
|
icerik_ekle "$1"
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
icerik_ekle "$1"
|
|
|
|
|
#while true; do
|
|
|
|
|
#ryaz 31 "$1 paketi talimatname dışı.Yine de kurulsun mu? (kokdizin=$kokdizin) "
|
|
|
|
|
#read -p "e veya h -> " eh
|
|
|
|
|
#case $eh in
|
|
|
|
|
# [Ee]* ) icerik_ekle "$1"; break;;
|
|
|
|
|
# [Hh]* ) break;;
|
|
|
|
|
# * ) echo "e veya h";;
|
|
|
|
|
#esac
|
|
|
|
|
#done
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "yerelde mps paketi bulunamadı."
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
agdan_kur(){
|
|
|
|
|
local kontroldeg
|
|
|
|
|
kkont=`kurulu_kontrol "$1"`
|
|
|
|
|
if [ "$kkont" = "degil" ] || [ "$tekrarkur" = "evet" ];then
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_indir "$1"
|
|
|
|
|
if [ $(find $paketdepo -name $1#* | head -1) ];then
|
|
|
|
|
if [ -f $(ls -1t "$paketdepo$1#"* | head -1) ];then
|
2017-08-08 21:39:37 +02:00
|
|
|
|
if [ "$kurulum_onay" = "evet" ];then
|
|
|
|
|
if [ "$tekrarkur" = "evet" ];then
|
|
|
|
|
paket_sil "$1" "evet"
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
#depo/paketler altında birden fazla sürüm kontrolü yapılır,güncel olan seçilir.
|
|
|
|
|
surumler=$(ls "$paketdepo$1#"* | wc -l)
|
|
|
|
|
if [ $surumler = 1 ];then
|
|
|
|
|
icerik_ekle $(ls "$paketdepo$1#"*)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
elif [ $surumler -gt 1 ];then
|
2017-09-25 17:41:26 +02:00
|
|
|
|
ryaz 31 "$1 paketinin birden fazla sürümü var!"
|
|
|
|
|
kurulacak_guncel_paket=$(ls -1t "$paketdepo$1#"* | head -1)
|
|
|
|
|
ryaz 32 "$kurulacak_guncel_paket sürümü kuruluyor"
|
|
|
|
|
icerik_ekle $kurulacak_guncel_paket
|
|
|
|
|
fi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
2017-08-08 21:39:37 +02:00
|
|
|
|
else
|
2017-09-25 17:41:26 +02:00
|
|
|
|
ryaz 31 "$1 indirme hatası"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
elif [ "$kkont" = "kurulu" ];then
|
2017-08-07 04:00:50 +02:00
|
|
|
|
#ryaz 32 "$1 paketi zaten kurulu!"
|
|
|
|
|
printf "."
|
2017-09-25 17:41:26 +02:00
|
|
|
|
else
|
|
|
|
|
ryaz 31 "tanımsız paket veya tekrar kurulum iptali var!"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ayarlar() {
|
|
|
|
|
|
|
|
|
|
while [ "$1" ]; do
|
|
|
|
|
case $1 in
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### Milis_Paket_Sistemi_Yardim
|
|
|
|
|
### --------------------------
|
|
|
|
|
### mps -i paketismi = sadece paketi indirir,paket kurulmaz.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-i|--indir)
|
|
|
|
|
kurulum_onay="olumsuz"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_indir "$2"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps -ik paketismi = ilgili paketi indirirve kurar.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-ik|--inku)
|
|
|
|
|
if [ "$3" == "-kok" ] && [ -d "$4" ]; then
|
|
|
|
|
kokdizin="$4"
|
|
|
|
|
fi
|
|
|
|
|
agdan_kur "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps -ikz|yekur paketismi = ilgili indirip tekrardan kurar,kurulu olmasına bakılmaz.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-ikz|yekur)
|
|
|
|
|
tekrarkur="evet"
|
|
|
|
|
agdan_kur "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps -k paketismi..mps.lz = yerel dizindeki paketi kurar.
|
|
|
|
|
-k)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ "$3" == "-kok" ] && [ -d "$4" ]; then
|
|
|
|
|
kokdizin="$4"
|
|
|
|
|
tekrarkur="evet"
|
|
|
|
|
fi
|
|
|
|
|
yerelden_kur "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps sil|-s paketismi = ilgili paketi onaylı kaldırır.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-s|sil)
|
|
|
|
|
if [[ "$2" == "py-"* ]]; then
|
|
|
|
|
pypaket=`echo "$2" | cut -d'-' -f 2`
|
|
|
|
|
echo $pypaket "pip2 ile silinecek"
|
|
|
|
|
pip uninstall $pypaket
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
if [[ "$2" == "py3-"* ]]; then
|
|
|
|
|
pypaket=`echo "$2" | cut -d'-' -f 2`
|
|
|
|
|
echo $pypaket "pip3 ile silinecek"
|
|
|
|
|
pip3 uninstall $pypaket
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_sil "$2"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps zorsil|-sz paketismi = ilgili paketi onaysız kaldırır.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-sz|zorsil)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
paket_sil "$2" "evet"
|
|
|
|
|
exit 0 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps gsil paketismi = ilgili paketi güvenli(ters bağımlılıklarına da bakarak) kaldırır.
|
|
|
|
|
gsil)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
paket_sil "$2" "hayir" "evet"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps -S paketismi = ilgili paketi altbağımlılıklarını da sorarak kaldırır.
|
|
|
|
|
-S)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_sil_gerekli "$2"
|
|
|
|
|
exit 0 ;;
|
2017-12-14 06:40:19 +01:00
|
|
|
|
### mps -Sz paketismi = ilgili paketi altbağımlılıklarını da sormadan sırayla kaldırır.
|
|
|
|
|
-Sz)
|
|
|
|
|
paket_sil_gerekli "$2" "oto"
|
|
|
|
|
exit 0 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps ara aranan = paket isimleri ve açıklamalarında anahtar kelime arar.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-pa|ara)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_ara "$2"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps bul aranan = talimat dosyaları içinde anahtar kelimeyi arar.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
bul)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
kelime_bul "$2"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps -d paketisimi = sadece paketi bağımlıksız derler.Genelde bağımlılığı olmayan paketler için kullanılır.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-d|--pkde)
|
|
|
|
|
zorla_derle="yok"
|
|
|
|
|
kurulum_onay="olumsuz"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_derle "$2"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps -zd paketismi = Pake kurulu olsa bile derleme yapılır.Bağımlıksız derleme için kullanılır.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-zd|--pkzde)
|
|
|
|
|
zorla_derle="evet"
|
|
|
|
|
kurulum_onay="olumsuz"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paket_derle "$2"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps odkp paketismi = bir paketi bağımlılık zinciri çıkarıp gereklileri önce kurar gerekli olanları derler,paketler ve kurar.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
odkp)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
if [ -d "$talimatname/temel/$2" ] ; then
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ryaz 31 "temel paket için odkp kullanılamaz!"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
oto_derle_kur_paketle "$2"
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-dk|--pkdk)
|
|
|
|
|
paket_derle "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps -derlist liste = verilen liste dosyasındaki paketleri derler.Alt alta yazılı olmalıdır.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-derlist)
|
|
|
|
|
paket_derle_liste "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps derle paketismi = paketismi için bağımlılık zinciri çıkarıp gerekli tüm paketleri derler,paketler ve kurar.
|
|
|
|
|
derle)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
paket_derle_kur "$2"
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-ok|--pkok)
|
|
|
|
|
paket_kur_oto "$2" ;;
|
|
|
|
|
-okz)
|
|
|
|
|
paket_kur_oto_zorla "$2" ;;
|
|
|
|
|
-okl|--pkokl)
|
|
|
|
|
paket_kur_liste "$2" ;;
|
|
|
|
|
-oklz)
|
|
|
|
|
paket_kur_liste_zorla "$2" ;;
|
|
|
|
|
-kh)
|
|
|
|
|
local templist
|
|
|
|
|
templist=`mktemp`
|
|
|
|
|
ls *.mps.lz > $templist
|
|
|
|
|
mps -okz -H $templist ;;
|
|
|
|
|
-ko|--pkko)
|
|
|
|
|
paket_kur_oto2 "$2" ;;
|
|
|
|
|
-kuruld)
|
|
|
|
|
paket_inkur_liste_direk "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps kurul liste = verilen liste dosyasındaki paketleri kurar.Alt alta yazılı olmalıdır.
|
|
|
|
|
kurul)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ -f $PWD/mps-liste ]; then
|
|
|
|
|
paket_inkur_liste mps-liste
|
|
|
|
|
else
|
|
|
|
|
paket_inkur_liste "$2"
|
|
|
|
|
fi ;;
|
|
|
|
|
-kur)
|
|
|
|
|
paket_inkur_oto "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps gkur paketismi = git-paketvt günceller ve yerelde mps.lz varsa yereldekini yoksa sunucudan paketi indirip kurar.
|
|
|
|
|
gkur)
|
|
|
|
|
git_guncelle && paketvt_guncelle && paket_inkur_oto "$2" ;;
|
|
|
|
|
### mps kur paketismi = yerelde mps.lz varsa yereldekini yoksa sunucudan paketi indirip kurar.
|
|
|
|
|
kur)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [[ "$2" == "py-"* ]]; then
|
|
|
|
|
pypaket=`echo "$2" | cut -d'-' -f 2`
|
|
|
|
|
echo $pypaket "pip2 ile kurulacak"
|
|
|
|
|
pip install $pypaket
|
2017-12-14 06:40:19 +01:00
|
|
|
|
exit 0
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
if [[ "$2" == "py3-"* ]]; then
|
|
|
|
|
pypaket=`echo "$2" | cut -d'-' -f 2`
|
|
|
|
|
echo $pypaket "pip3 ile kurulacak"
|
|
|
|
|
pip3 install $pypaket
|
2017-12-14 06:40:19 +01:00
|
|
|
|
exit 0
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi
|
|
|
|
|
if [[ "$2" == *"mps.lz"* ]]; then
|
|
|
|
|
if [ "$3" == "-kok" ] && [ -d "$4" ]; then
|
|
|
|
|
kokdizin="$4"
|
|
|
|
|
tekrarkur="evet"
|
|
|
|
|
fi
|
|
|
|
|
yerelden_kur "$2"
|
|
|
|
|
else
|
|
|
|
|
paket_inkur_oto "$2"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
fi
|
|
|
|
|
exit 0 ;;
|
2017-12-14 06:40:19 +01:00
|
|
|
|
### mps kaynak paketismi = ilgili paketin kaynak kodunu indirir.
|
|
|
|
|
kaynak)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "paket ismi eksik"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
kaynak_kod_indir "$2"
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
# özel git projesi kurmak için
|
|
|
|
|
gitkur)
|
|
|
|
|
git_proje_kur "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
# otomatik proje sistemi
|
2017-08-07 04:00:50 +02:00
|
|
|
|
# özel git projesi kurmak için
|
|
|
|
|
opk)
|
|
|
|
|
op_kur "$2" ;;
|
|
|
|
|
# özel git projesi silmek için
|
|
|
|
|
ops)
|
|
|
|
|
op_sil "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps serkur paketismi = ilgili paketin servisini kurar
|
2017-08-07 04:00:50 +02:00
|
|
|
|
serkur)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
servis_kur "$2"
|
|
|
|
|
exit 0 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps sersil paketismi = ilgili paketin servisini siler
|
2017-08-07 04:00:50 +02:00
|
|
|
|
sersil)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
servis_sil "$2"
|
|
|
|
|
exit 0 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps serkon paketismi = servislerin değişmemezlik kontrolünü yapar.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
serkon)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
servisler_kontrol
|
|
|
|
|
exit 0 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps kurkos paketismi = ilgili paketin kurulumdan sonraki çalışması gereken betiğini çalıştırır.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
kurkos)
|
|
|
|
|
local pkt
|
2017-12-14 06:40:19 +01:00
|
|
|
|
pkt=$(talimat_bul $2)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ -f $pkt/$2.kur-kos ];then
|
|
|
|
|
bash $pkt/$2.kur-kos
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$2 kur-kos yok!"
|
|
|
|
|
hataloglama "$2 kur-kos yok!"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
exit 1
|
|
|
|
|
fi;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps koskur paketismi = ilgili paketin kurulumdan önceki çalışması gereken betiğini çalıştırır.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
koskur)
|
|
|
|
|
local pkt
|
2017-12-14 06:40:19 +01:00
|
|
|
|
pkt=$(talimat_bul $2)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ -f $pkt/$2.kos-kur ];then
|
|
|
|
|
bash $pkt/$2.kos-kur
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$2 kos-kur yok!"
|
|
|
|
|
hataloglama "$2 kos-kur yok!"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
exit 1
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps silkos paketismi = ilgili paketin silindikten sonraki çalışması gereken betiğini çalıştırır.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
silkos)
|
|
|
|
|
local pkt
|
2017-12-14 06:40:19 +01:00
|
|
|
|
pkt=$(talimat_bul $2)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ -f $pkt/$2.sil-kos ];then
|
|
|
|
|
bash $pkt/$2.sil-kos
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$2 sil-kos yok!"
|
|
|
|
|
hataloglama "$2 sil-kos yok!"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
exit 1
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps kossil paketismi = ilgili paketin silindikten önceki çalışması gereken betiğini çalıştırır.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
kossil)
|
|
|
|
|
local pkt
|
2017-12-14 06:40:19 +01:00
|
|
|
|
pkt=$(talimat_bul $2)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ -f $pkt/$2.kos-sil ];then
|
|
|
|
|
bash $pkt/$2.kos-sil
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "$2 kos-sil yok!"
|
|
|
|
|
hataloglama "$2 kos-sil yok!"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
exit 1
|
2017-08-07 04:00:50 +02:00
|
|
|
|
fi ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps -kdl paketismi = ilgili paketin sistemdeki kurulmuş olması gereken dosyalarını gösterir.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-kdl)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "paket ismi eksik"
|
|
|
|
|
hataloglama "(-kdl) paket ismi eksik"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
kurulum_dosya_listele "$2"
|
|
|
|
|
exit 0 ;;
|
2017-12-14 06:40:19 +01:00
|
|
|
|
### mps -kkp paketismi = ilgili paketin çalışması için eksik olan dosyaları tespit eder.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-kkp)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "paket ismi eksik"
|
|
|
|
|
hataloglama "(-kkp) paket ismi eksik"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
kirik_kontrol_paket "$2"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps kirma paketismi = ilgili paketin sistemde kırdığı paketler tespit edilir.
|
|
|
|
|
kirma)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "paket ismi eksik"
|
|
|
|
|
hataloglama "(kirma) paket ismi eksik"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
kirik_ters_bagimli_bilgi "$2"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps -kks . = sistemde kurulu tüm paketlerin kırık kontrolünü yapar.Eksik dosyaları tespit eder.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-kks)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
kirik_kontrol_sistem
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-pak|--paketle)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "paketlenecek dizin ismi eksik"
|
|
|
|
|
hataloglama "paketlenecek dizin ismi eksik"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
yeniden_paketle "$2"
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-psk|--paksiskur)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "paket liste yok"
|
|
|
|
|
hataloglama "paket liste yok"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
if [ ! "$3" ]; then
|
|
|
|
|
ryaz 31 "hedef dizin yok"
|
|
|
|
|
hataloglama "hedef dizin yok"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
sistem_kur "$2" "$3"
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-po)
|
|
|
|
|
pvt_olustur ;;
|
|
|
|
|
-os|--pkos)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "silme listesi yok"
|
|
|
|
|
hataloglama "silme listesi yok"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
paket_sil_oto "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps liste . = sistemde kurulu olan paket listesini verir.
|
|
|
|
|
-kl|liste)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ls $VT ;;
|
|
|
|
|
### mps paketler grup_ismi = paket deposundaki paket listesini verir.(grup_ismi verilmezse tüm paketler)
|
|
|
|
|
-ptl|paketler)
|
|
|
|
|
paket_liste "$2" "$3"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps gruplar . = paket deposundaki paket grup listesini verir.
|
|
|
|
|
-pgl|gruplar)
|
|
|
|
|
paket_grup_liste "$2"
|
|
|
|
|
exit 0 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps -dly paketismi = ilgili paketin genel ve tüm bağımlılık listesini verir,oluşturur.
|
2017-12-14 06:40:19 +01:00
|
|
|
|
-dly|dliste)
|
|
|
|
|
derleme_listyap "$2"
|
|
|
|
|
exit 0 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps -kly paketismi = ilgili paketin ve kurulması gereken altgereklerini verir,oluştur.
|
|
|
|
|
-kly)
|
|
|
|
|
kurulum_listyap "$2" ;;
|
2017-12-14 06:40:19 +01:00
|
|
|
|
### mps -ykp paketismi = ilgili paketin kurulmak istenirse,kurulacak yeni paketleri listeler.
|
|
|
|
|
-ykp)
|
|
|
|
|
yeni_kurulacak_paketler "$2"
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
#sunucu bilgisi alma
|
2017-09-25 17:41:26 +02:00
|
|
|
|
-sun2|sunucu)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ryaz 32 $sunucu ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps sunucular . = paket sunucularını verir.
|
|
|
|
|
-sun|sunucular)
|
|
|
|
|
ryaz 32 ${sunucular[@]} ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
sun)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "sunucu bilgi eksik"
|
|
|
|
|
hataloglama "sunucu bilgi eksik"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
sunucu_ayarla "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
-bb|bagbil)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
bagimli_bilgi "$2" | column -t;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
-bbdog|bdogrula)
|
|
|
|
|
bagimli_bilgi "$2" "dogrula";;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-bbd)
|
|
|
|
|
bagimli_bilgi_dosyala "$2" ;;
|
2017-12-14 06:40:19 +01:00
|
|
|
|
### mps -tb talimatismi = ilgili talimata gerek duyan(ters-gerekler) talimatları listeler.
|
2017-09-25 17:41:26 +02:00
|
|
|
|
-tb|tersbag)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ters_bagimli_bilgi "$2"
|
|
|
|
|
exit 0;;
|
|
|
|
|
-tbk)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
ters_bagimli_kontrol "$2" ;;
|
2017-12-14 06:40:19 +01:00
|
|
|
|
### mps pka paketismi = ilgili paketin depo-gitdepo uyumluluğunu kontrol eder.
|
|
|
|
|
pka)
|
|
|
|
|
paket_analiz "$2"
|
|
|
|
|
exit 0;;
|
|
|
|
|
### mps pda paketdepo = paketlerin olduğu dizindeki paketlerin depo-gitdepo uyumluluğunu kontrol eder.
|
|
|
|
|
pda)
|
|
|
|
|
paketdepo_analiz "$2"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps tbilgi paketismi = ilgili paketin talimat bilgilerini verir.
|
|
|
|
|
tbilgi)
|
|
|
|
|
talimat_bilgi "$2"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps -b paketismi = ilgili paketin kurulum bilgilerini verir.
|
|
|
|
|
-b)
|
|
|
|
|
if [ $2 ];then
|
|
|
|
|
touch "/tmp/mps_paket_bilgi_$2"
|
|
|
|
|
paket_bilgi "$2" "$3" | tee "/tmp/mps_paket_bilgi_$2"
|
|
|
|
|
[ $2 = "--html" ]; paket_bilgi_html "/tmp/mps_paket_bilgi_$2"
|
|
|
|
|
else
|
|
|
|
|
ryaz 31 "paket ismi eksik"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
exit 0 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps bilgi paketismi = ilgili paketin talimat ve kurulum bilgilerini verir.
|
2017-12-14 06:40:19 +01:00
|
|
|
|
bilgi)
|
|
|
|
|
paket_bilgi "$2"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
talimat_bilgi "$2"
|
2017-12-14 06:40:19 +01:00
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-to)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "talimat ismi eksik"
|
|
|
|
|
hataloglama "talimat ismi eksik"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
talimat_olustur "$2"
|
|
|
|
|
exit 0 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps log yyyy-aa-gg olay = mps.log verisi çekmek için (ör: mps log 2017-01-01 silindi)
|
2017-08-07 04:00:50 +02:00
|
|
|
|
log)
|
|
|
|
|
local logyardim
|
|
|
|
|
logyardim="mps log zaman durum (ör: mps log 2017-01-01 silindi)"
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "zaman parametresi eksik"
|
|
|
|
|
hataloglama "zaman parametresi eksik"
|
|
|
|
|
ryaz 32 $logyardim
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
if [ ! "$3" ]; then
|
|
|
|
|
ryaz 31 "durum parametresi eksik"
|
|
|
|
|
hataloglama "durum parametresi eksik"
|
|
|
|
|
ryaz 32 $logyardim
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
log_analiz "$2" "$3" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps guncelle . = paket veritabanı ve git güncellemesi-talimatname bilgilerini günceller.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
guncelle)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
mps -GG && mps -G
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps -GG . = git güncellemelerini ve talimatname bilgilerini günceller.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-Ggit|-GG)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
git_guncelle
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps -G . = paket veritabanı bilgilerini günceller.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-G|--pvtg)
|
|
|
|
|
paketvt_guncelle
|
2017-09-25 17:41:26 +02:00
|
|
|
|
mps -kudo
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps tespit . = tüm sistemin güncellemesi için güncellenecek paket listesini gösterir.
|
|
|
|
|
tespit)
|
|
|
|
|
guncelleme_tespit
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
### mps yukselt . = tüm sistemin güncellemesini gerçekleştirir.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-GS|yukselt)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
sistem_guncelle
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
#tekil temel paket guncelleme-single base package updating
|
|
|
|
|
-tg)
|
|
|
|
|
paket_sil "$2" "evet" && mps -ik $2 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps -g paketismi = ilgili paketi tekil günceller.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-g|--pkgu)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
git_guncelle && paketvt_guncelle
|
2017-08-07 04:00:50 +02:00
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "paket ismi eksik"
|
|
|
|
|
hataloglama "paket ismi eksik"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
local durum
|
|
|
|
|
durum=`kurulu_kontrol "$2"`
|
|
|
|
|
if [ "$durum" = "kurulu" ]; then
|
|
|
|
|
paket_guncelle "$2"
|
|
|
|
|
elif [ "$durum" = "degil" ]; then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 "$2 $_paket_kurulu_degil"
|
|
|
|
|
hataloglama "$2 $_paket_kurulu_degil"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
else
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 "$2 $_paket_tanimsiz"
|
|
|
|
|
hataloglama "$_paket_tanimsiz"
|
|
|
|
|
fi
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
#bagimliliklariyla beraber paket guncelleme-package updating with depencies
|
|
|
|
|
-go|--pkgo)
|
|
|
|
|
if [ ! "$2" ]; then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 "$_paket_adi_gerekli"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
paket_guncelle_oto "$2";;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps -kk paketismi = ilgili paketin kurulu olma durumunu gösterir.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-kk|--kurulu-kontrol)
|
|
|
|
|
if [ ! "$2" ]; then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 "$_paket_adi_gerekli"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 `kurulu_kontrol "$2"`
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-kudo)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
kurulum_dogrulama
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-kdi|dogrula)
|
|
|
|
|
if [ ! "$2" ]; then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 "$_paket_adi_gerekli"
|
2017-08-07 04:00:50 +02:00
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
kurulum_dogrulama_icerik "$2" ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
-pid|pdogrula)
|
|
|
|
|
kokdzn=""
|
|
|
|
|
if [ ! "$2" ]; then
|
2017-12-14 06:40:19 +01:00
|
|
|
|
ryaz 31 "$_paket_adi_gerekli"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
exit 1
|
|
|
|
|
elif [ ! "$3" ]; then
|
|
|
|
|
kokdzn="/"
|
|
|
|
|
else
|
|
|
|
|
kokdzn="$3"
|
|
|
|
|
fi
|
|
|
|
|
paket_icerik_dogrulama "$2" "$kokdzn";;
|
|
|
|
|
-kdit|tumdogrula)
|
|
|
|
|
kurulum_dogrulama_icerik_tum
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-kdk)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
etkilenen_kurtar $2 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-suko)
|
|
|
|
|
sunucu_kontrol ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps -pot . = talimatı olup ta paketi henüz depoda yer almayan talimatları listeler.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-pot)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
paketsiz_talimatlar
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
-dpl|deplist)
|
|
|
|
|
depo_paketler_liste
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
-dps|depsil)
|
|
|
|
|
depo_paketler_sil
|
|
|
|
|
exit 0 ;;
|
2017-12-14 06:40:19 +01:00
|
|
|
|
### mps link url_adres = verilen url adresindeki talimatı ektalimatname/topluluk altına inidirir.
|
|
|
|
|
link)
|
|
|
|
|
mkdir -p $ektalimatname/topluluk
|
|
|
|
|
indir_talimat_paketle $2 "-4" "$ektalimatname/topluluk"
|
|
|
|
|
exit 0 ;;
|
|
|
|
|
ti)
|
|
|
|
|
indir_talimat_paketle $2 "-4" "$talimatname/genel"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-cf|--config-file)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
echo "ayardosyası gerek $1"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
ayar_dosyasi="$2"
|
|
|
|
|
shift ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps -hp aranan = ilgili aranan ifadenin hangi paketlerde olabileceğini listeler.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-hp)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "paket ismi eksik"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
2017-09-25 17:41:26 +02:00
|
|
|
|
kurulan_dosya_bul "$2"
|
|
|
|
|
exit 0 ;;
|
2017-12-14 06:40:19 +01:00
|
|
|
|
### mps tgs talimat = ilgili talimatın kaynak kodunun yeni sürümü olup olmadığını kontrol eder.
|
|
|
|
|
tgs)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "talimat ismi eksik"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
talimat_surum_takip "$2"
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-tro)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
tarihce_yap
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-trot)
|
|
|
|
|
temel_tarihce="evet"
|
2017-09-25 17:41:26 +02:00
|
|
|
|
tarihce_yap
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-try)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "tarihce dosyasi eksik $1"
|
|
|
|
|
hataloglama "tarihce dosyasi eksik $1"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
tarihce_yukle "$2"
|
|
|
|
|
shift ;;
|
|
|
|
|
-trl)
|
|
|
|
|
tarihce_liste ;;
|
2017-12-14 06:40:19 +01:00
|
|
|
|
### mps tdc talimat_dosyası = ilgili talimat dosyasının Türkçe değişken çevrimii yapar.
|
|
|
|
|
tdc)
|
|
|
|
|
talimat_degisken_cevrim $2
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-tamir-tk)
|
|
|
|
|
tamir_temel_kurulan ;;
|
|
|
|
|
dos)
|
2017-09-25 17:41:26 +02:00
|
|
|
|
tarihce_yukle "temel"
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-trs)
|
|
|
|
|
if [ ! "$2" ]; then
|
|
|
|
|
ryaz 31 "parametre eksik $1"
|
|
|
|
|
hataloglama "parametre eksik $1"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
tarihce_sil "$2"
|
|
|
|
|
shift ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
### mps -v . = mps sürüm bilgilerini gösterir.
|
2017-08-07 04:00:50 +02:00
|
|
|
|
-v)
|
|
|
|
|
ryaz 33 "$betikad $versiyon $iletisim"
|
|
|
|
|
exit 0 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
|
|
|
|
|
-y|-h|yardim)
|
2017-12-14 06:40:19 +01:00
|
|
|
|
yardim_icerik
|
2017-08-07 04:00:50 +02:00
|
|
|
|
exit 0 ;;
|
2017-09-25 17:41:26 +02:00
|
|
|
|
*)
|
|
|
|
|
ryaz 31 "Geçersiz Parametre! --> mps yardim "
|
|
|
|
|
exit 0 ;;
|
2017-08-07 04:00:50 +02:00
|
|
|
|
esac
|
|
|
|
|
shift
|
|
|
|
|
done
|
|
|
|
|
}
|
2017-09-25 17:41:26 +02:00
|
|
|
|
yardim_icerik(){
|
|
|
|
|
cat /root/bin/mps | sed -e 's/^[ \t]*//' | sed -n '/^###/p' | sed '/ /s/^###//g' | awk '{split($0,a,"="); printf "%-6s %-13s %-18s %-40s \n",$1,$2,$3,a[2]}'
|
|
|
|
|
}
|
2017-08-07 04:00:50 +02:00
|
|
|
|
|
|
|
|
|
ana(){
|
|
|
|
|
if [ `id -u` = 0 ] ; then
|
|
|
|
|
ayarlar "$@"
|
|
|
|
|
else
|
|
|
|
|
sudo mps "$@"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
ana "$@"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#31 kirmizi
|
|
|
|
|
#32 yesil
|
|
|
|
|
#33 sari
|
|
|
|
|
#34 mavi
|
|
|
|
|
#34 mor
|