From fee1cd2fcd178989797848768a349a036c7030b4 Mon Sep 17 00:00:00 2001 From: milisbir Date: Mon, 2 Apr 2018 00:11:20 +0300 Subject: [PATCH] mps-oto-yukselt --- bin/mps | 142 +++++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 120 insertions(+), 22 deletions(-) diff --git a/bin/mps b/bin/mps index c1e7d520a..c574faba9 100755 --- a/bin/mps +++ b/bin/mps @@ -1125,19 +1125,20 @@ paketsiz_talimatlar(){ } paket_guncelle(){ - surum_kontrol $1 $2 + surum_kontrol $1 $2 $3 if [ -d "$VT/$1" ];then - devir_kontrol $1 $2 + devir_kontrol $1 $2 $3 fi } paket_guncelle_oto(){ derleme_listyap "$1" > /dev/null && local kpkt + GS_CIKTI="H" for kpkt in `cat gerek.konum.liste`;do durum=`kurulu_kontrol "$kpkt"` if [ "$durum" = "kurulu" ]; then - paket_guncelle "$kpkt" + paket_guncelle "$kpkt" $GS_CIKTI fi done listeleri_temizle @@ -1187,7 +1188,7 @@ guncelleme_tespit(){ done } -sistem_guncelle(){ +sistem_guncelle_eski(){ count=0 local kpkt _pkliste total=`ls $VT | wc -l` @@ -1212,13 +1213,94 @@ sistem_guncelle(){ ryaz 32 "\nSistem Güncellemesi Tamamlandı." } +sistem_guncelle_uygula(){ + local _gdosya + if [ "$2" ]; then + _gdosya="$2" + fi + [ ! -f ${_gdosya} ] && exit 1 + for gpkt in `cat ${_gdosya}`;do + durum=`kurulu_kontrol "$gpkt"` + if [ "$durum" = "kurulu" ]; then + paket_guncelle "$gpkt" $GS_CIKTI "E" + fi + done +} + +sistem_guncelle(){ + count=0 + local kpaket _pkliste _konum + guncelleme_dosya="/tmp/mps.guncellenecekler" + rm -f $guncelleme_dosya + touch $guncelleme_dosya + total=`ls $VT | wc -l` + pstr="[=======================================================================]" + #git_guncelle + #paketvt_guncelle + GS_CIKTI="H" + _pkliste=$(mktemp) + ls -rct $VT > ${_pkliste} + for _esgec in `echo ${esgec} | tr " " "\n"`;do + _satirno=$(grep -wxnr "${_esgec}" ${_pkliste} | cut -d':' -f1) + [ ! -z ${_satirno} ] && sed -i "${_satirno}d" ${_pkliste} + done + + 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 + kpaket=$(sed -n ${count}'p' ${_pkliste}) + if [ ! -z $kpaket ];then + satir=$(sed -n '7p' < $VT/$kpaket/META) + ksurum=${satir:1:${#satir}-1} + satir2=$(sed -n '8p' < $VT/$kpaket/META) + kdevir=${satir2:1:${#satir2}-1} + #deposurum=$(grep " $kpaket#" /depo/paketler/paket.vt | cut -d' ' -f3 | cut -d'#' -f 2 | cut -d'-' -f1) + _konum=$(talimat_bul $kpaket) + if [ "$_konum" = "-1" ];then + ryaz 31 "$kpaket $_talimat_bulunamadi $_surum_kontrol_iptal" + exit 1 + fi + + source $_konum/talimat + deposurum=`echo -e "$surum" | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n | head -n1` + depodevir=`echo -e "$devir" | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n | head -n1` + #echo $kpaket " : $ksurum ---> $deposurum" "$kdevir ---> $depodevir" + #sleep 3 + if [ "$ksurum" != "$deposurum" ];then + #printf "$kpaket -surum: ";echo "$ksurum ---> $deposurum" + echo $kpaket >> $guncelleme_dosya + elif [ "$kdevir" != "$depodevir" ];then + #printf "$kpaket -devir: ";echo "$kdevir ---> $depodevir" + echo $kpaket >> $guncelleme_dosya + fi + fi + done + ryaz 32 "\nSistem Güncelleme Taraması Tamamlandı." + ryaz 33 "aşağıdaki paketler güncellenecektir:" + cat $guncelleme_dosya + ryaz 31 "Güncellemesini istemediğiniz paketleri /tmp/mps.guncellenecekler dosyasından sildikten sonra onay veriniz!" + while true; do + ryaz 33 "listedeki paketler güncellensin mi?";read -p "e veya h-> " eh + case $eh in + [Ee]* ) sistem_guncelle_uygula $guncelleme_dosya; break;; + [Hh]* ) break;; + * ) echo "e veya h";; + esac + done +} + surum_kontrol(){ local _konum pk_sil _paket _paket=$1 GS_CIKTI="E" + G_ONAY="H" if [ "$2" ]; then GS_CIKTI="$2" fi + if [ "$3" ]; then + G_ONAY="$3" + fi local ksurum surum pkt dusuk yuksek durum durum="belirsiz" satir=`sed -n '7p' < $VT/$_paket/META` @@ -1262,15 +1344,19 @@ surum_kontrol(){ 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 [ $G_ONAY = "H" ];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 + else + gun_onay="e" + fi if [ "$gun_onay" = "e" ];then if [ -d "$talimatname/temel/$_paket" ]; then kurulum_dogrulama_icerik $_paket @@ -1298,9 +1384,13 @@ devir_kontrol(){ local _konum pk_sil _paket _paket="$1" GS_CIKTI="E" + G_ONAY="H" if [ "$2" ]; then GS_CIKTI="$2" fi + if [ "$3" ]; then + G_ONAY="$3" + fi local kdevir devir pkt dusuk yuksek durum gun_onay durum="belirsiz" satir=`sed -n '8p' < $VT/$_paket/META` @@ -1342,15 +1432,19 @@ devir_kontrol(){ 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 [ $G_ONAY = "H" ];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 + else + gun_onay="e" + fi if [ "$gun_onay" = "e" ];then paket_sil "$_paket" "evet" paket_inkur_oto $_paket @@ -3238,6 +3332,10 @@ ayarlar() { -GS|yukselt) sistem_guncelle exit 0 ;; + ### mps yukselt2 . = tüm sistemin güncellemesini gerçekleştirir. + -GS2|yukselt2) + sistem_guncelle_eski + exit 0 ;; #tekil temel paket guncelleme-single base package updating -tg) paket_sil "$2" "evet" && mps -ik $2 ;;