mps-silme-onay-düzenleme

This commit is contained in:
milisbir 2018-11-07 04:48:32 +02:00
parent 09587eeba3
commit 28c67177af
1 changed files with 54 additions and 71 deletions

125
bin/mps
View File

@ -139,6 +139,12 @@ fi
esgec="xorg xorg-app"
kurulum_onay="evet"
# Bir paketin silinme onayı 1 ise silme onaylanır.
onayli_sil=1
# Bir paketin silinirken etkilenen dizin kontrolü
silme_etki_kontrol=1
# Bir paketin silinirken ters gereklerinin gösterilmesi
silme_tersbag=0
VT="/var/lib/pkg/DB"
TARIHCE_DIZIN="/var/lib/pkg/tarihce"
@ -297,32 +303,31 @@ icerik_ekle(){
}
paket_sil(){
local paket kkont sil_onay oto_silme _silinecekler _sek
[ -z $1 ] && hata_olustu "_paket_adi_gerekli" || paket=$1
tersbag_goster="hayir"
_silinecekler=/tmp/$paket.sil
_sek=1
cikti="--renkli"
if [ "$2" ]; then
if [ "$2" == "--renksiz" ];then
cikti_renk_ayarla "--renksiz"
else
oto_silme="$2"
fi
if [ "$2" == "--sekyok" ];then
_sek=0
fi
# paket silme işlevinin parametrelerinin işlenmesi
_paket_sil_args(){
if [[ "${args}" =~ "--onayla" ]];then
_arg="--onayla";_arg_sil
onayli_sil=0
fi
if [ "$3" ]; then
if [ "$3" == "--renksiz" ];then
cikti_renk_ayarla "--renksiz"
else
tersbag_goster="evet"
fi
if [[ "${args}" =~ "--sekyok" ]];then
_arg="--sekyok";_arg_sil
silme_etki_kontrol=0
fi
if [[ "${args}" =~ "--tersbag" ]];then
_arg="--tersbag";_arg_sil
silme_tersbag=1
fi
}
paket_sil(){
local paket kkont sil_onay _silinecekler _sek
# paket silinmesi için gelen parametrelerin işlenmesi
_paket_sil_args
[ -z $1 ] && hata_olustu "_paket_adi_gerekli" || paket=$1
_silinecekler=/tmp/$paket.sil
if [ "$tpk" = "evet" ] && [ -d "$talimatname/temel/$1" ];then
$_yaz_uyari "$1 temel sistem paketidir.Silinemez!!!"
hataloglama "$1 temel sistem paketidir.Silinemez!!!"
@ -333,7 +338,7 @@ paket_sil(){
#eski dizin koruma
#etkilenen_kurtar $1 $cikti
cat $VT/$paket/kurulan | cut -d '>' -f2 > ${_silinecekler}
if [ "$tersbag_goster" = "evet" ];then
if [ ${silme_tersbag} -eq 1 ];then
$_yaz_uyari "ters bagimliliklar"
$_yaz_uyari "------------------"
ters_bagimli_bilgi "$paket"
@ -348,10 +353,10 @@ paket_sil(){
do
sed -i '\|'\'${_kkurtar}\''|d' ${_silinecekler}
done
# diğer paketler için
else
[ ${_sek} -eq 1 ] && silme_etkilenme_tespit $paket
silme_etki_kontrol=0
fi
# diğer paketler için
[ ${silme_etki_kontrol} -eq 1 ] && silme_etkilenme_tespit $paket
# silme listesi güncelleme - dizin koruma
# bir paket silinirken dizin yapısındaki diğer paketlerin dosyaları korunacak.
if [ -f /tmp/${paket}_kd.liste ];then
@ -362,7 +367,7 @@ paket_sil(){
#else
#$_yaz_bilgi "kurtarılacak dosya yok."
fi
if [ "$oto_silme" = "evet" ];then
if [ ${onayli_sil} -eq 0 ];then
sil_onay="e"
else
while true; do
@ -943,7 +948,7 @@ paket_kur_oto_zorla(){
for _kpkt in `cat $_kliste`;do
for _pkt in `ls $_kpkt* | cut -d'#' -f1`;do
_pak=`ls "$_pkt#"*`
paket_sil "$_pkt" "evet"
paket_sil "$_pkt" "--onayla"
echo $_pak
yerelden_kur "$_pak" && paket_inkur_oto "$_pkt"
done
@ -966,7 +971,7 @@ paket_kur_liste_zorla(){
for kpkt in `cat $1`;do
for pkt in `ls $kpkt* | cut -d'#' -f1`;do
pak=`ls "$pkt#"*`
paket_sil "$kpkt" "evet"
paket_sil "$kpkt" "--onayla"
yerelden_kur "$pak"
done
done
@ -1046,8 +1051,7 @@ paket_inkur_oto(){
paket_sil_oto(){
local spkt
for spkt in `cat $1`;do
oto_silme="evet"
paket_sil "$spkt" "$oto_silme"
paket_sil "$spkt" "--onayla"
done
}
@ -1055,7 +1059,7 @@ paket_sil_oto_onayli(){
local spkt
#for spkt in `perl -e 'print reverse <>' $1`;do
for spkt in $(tac $1);do
paket_sil "$spkt" "hayir" "evet"
paket_sil "$spkt" "--tersbag"
done
}
@ -1505,7 +1509,7 @@ surum_kontrol(){
if [ "$pk_sil" = "e" ];then
$_yaz "$_paket $_paket_depoda_yok $_siliniyor"
paket_sil "$_paket" "evet"
paket_sil "$_paket" "--onayla"
else
$_yaz "$_paket silinmesi es geçildi"
fi
@ -1545,12 +1549,12 @@ surum_kontrol(){
if [ -d "$talimatname/temel/$_paket" ]; then
kurulum_dogrulama_icerik $_paket
tpk="hayir"
paket_sil "$_paket" "evet"
paket_sil "$_paket" "--onayla"
paket_indir $_paket
pkt=`cat "$paketdepo""paket.vt" | grep "^$_paket " | cut -d' ' -f3`
icerik_ekle "${paketdepo}${pkt}"
else
paket_sil "$_paket" "evet"
paket_sil "$_paket" "--onayla"
paket_inkur_oto $_paket
fi
$_yaz_tm "$_paket sürüm güncellemesi yapıldı"
@ -1595,7 +1599,7 @@ devir_kontrol(){
if [ "$pk_sil" = "e" ];then
$_yaz "$_paket $_paket_depoda_yok $_siliniyor"
paket_sil "$_paket" "evet"
paket_sil "$_paket" "--onayla"
else
$_yaz "$_paket silinmesi es geçildi"
fi
@ -1631,7 +1635,7 @@ devir_kontrol(){
gun_onay="e"
fi
if [ "$gun_onay" = "e" ];then
paket_sil "$_paket" "evet"
paket_sil "$_paket" "--onayla"
paket_inkur_oto "$_paket"
$_yaz_bilgi "$_paket devir güncellemesi yapıldı"
else
@ -2014,26 +2018,6 @@ bagimli_bilgi_dosyala(){
fi
}
silme_etkilenen_kontrol(){
paketet="$2"
mkdir -p /var/lib/pkg/etkilenen
mkdir -p /var/lib/pkg/etkilenen/$paketet
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"
cp -rf "$dizin/$g" /var/lib/pkg/etkilenen/$paketet
fi
done
fi
done
}
# güncellemelerin alınması talimatname üzerinden
guncellemeler(){
#diff --changed-group-format='***%>' --unchanged-group-format='' --new-group-format='+++%>' \
@ -3147,7 +3131,7 @@ agdan_kur(){
if [ -f $(ls -1t "$paketdepo$1#"* | head -1) ];then
if [ "$kurulum_onay" = "evet" ];then
if [ "$tekrarkur" = "evet" ];then
paket_sil "$1" "evet"
paket_sil "$1" "--onayla"
fi
#depo/paketler altında birden fazla sürüm kontrolü yapılır,güncel olan seçilir.
surumler=$(ls "$paketdepo$1#"* | wc -l)
@ -3223,16 +3207,13 @@ ayarlar() {
yerelden_kur $args
exit 0 ;;
### mps sil|-s paketismi = ilgili paketi onaylı kaldırır.
### mps sil|-s paketismi = --onayla -> onaysız kaldırır. (zorla silme)
-s|sil)
paket_sil $args
exit 0 ;;
### mps zorsil|-sz paketismi = ilgili paketi onaysız kaldırır.
-sz|zorsil)
paket_sil "$2" "evet" "$3"
exit 0 ;;
### mps gsil paketismi = ilgili paketi güvenli(ters bağımlılıklarına da bakarak) kaldırır.
gsil)
paket_sil "$2" "hayir" "evet"
paket_sil "$2" "--tersbag"
exit 0 ;;
### mps -S paketismi = ilgili paketi altbağımlılıklarını da sorarak kaldırır.
### mps -S paketismi = ve oto eklenirse ilgili paketi altbağımlılıklarını da sormadan sırayla kaldırır.
@ -3642,15 +3623,15 @@ ayarlar() {
kurulum_dogrulama;
#guncelleme_tespit;
exit 0 ;;
### mps -GG . = git güncellemelerini ve talimatname bilgilerini günceller.
-Ggit|-GG)
git_guncelle
exit 0 ;;
### mps -G . = paket veritabanı bilgilerini günceller.
-G|--pvtg)
paketvt_guncelle
kurulum_dogrulama
exit 0 ;;
### mps -GG . = git güncellemelerini ve talimatname bilgilerini günceller.
-Ggit|-GG)
git_guncelle
exit 0 ;;
### mps -GGG . = ek git repo bilgilerini günceller.
-GGG)
git_ek_guncelle
@ -3670,9 +3651,6 @@ ayarlar() {
-GS|yukselt)
sistem_guncelle $args
exit 0 ;;
#tekil temel paket guncelleme-single base package updating
-tg)
paket_sil "$2" "evet" && mps -ik $2 ;;
### mps -g paketismi = ilgili paketi tekil günceller.
-g|--pkgu)
git_guncelle && paketvt_guncelle
@ -3729,7 +3707,12 @@ ayarlar() {
exit 0 ;;
### mps -set paketismi = ilgili paket silindiğinde etkilenen paketleri ve konumları tespit eder.
-set)
silme_etkilenme $args
[ -z $2 ] && hata_olustu "_paket_adi_gerekli"
if [ `kurulu_kontrol $1` == "kurulu" ];then
silme_etkilenme_tespit $args
else
$_yaz "$2 $_paket_kurulu_degil"
fi
exit 0 ;;
### mps -suko . = sunucuların erişim kontrolünü yapar.
-suko)