diff --git a/bin/mps b/bin/mps index 3bd2781f0..3c090ffef 100755 --- a/bin/mps +++ b/bin/mps @@ -319,6 +319,13 @@ kurulu_kontrol(){ echo "degil" } +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 @@ -571,6 +578,16 @@ ayarlar() { exit 1 fi yeniden_paketle "$2" ;; + -psk|--paksiskur) + if [ ! "$2" ]; then + ryaz 31 "paket liste yok" + exit 1 + fi + if [ ! "$3" ]; then + ryaz 31 "hedef dizin yok" + exit 1 + fi + sistem_kur "$2" "$3" ;; -po) pvt_olustur ;; -os|--pkos) diff --git a/bootstrap.oku b/bootstrap.oku new file mode 100644 index 000000000..dbb583cb0 --- /dev/null +++ b/bootstrap.oku @@ -0,0 +1,67 @@ +//milis sisteminin kurulabilmesi için öndosyalar ve gerekli ayarlar yapılır. + +./lfs-mekanizma -ia + +//mps-bootstrap içindeki sunucu="ip:port/" şeklinde paket depo adresi ayarlandıktan sonra + +//paket güncellemesi yapılır + +./mps-bootstrap -G + +//temel-sistem kurulumu için. + +./mps-bootstrap -psk talimatname/temel/derleme.sira /mnt/lfs/ + +//temel-sistemi yedeklemek için-chroot olarak kullanılmak üzere + +./lfs-mekanizma -ts + +//temel-ek-sistem kurulumu için.(kernel-grub-initrd vs.) + +./mps-bootstrap -psk talimatname/temel-ek/derleme.sira /mnt/lfs/ + +//temel-sistemi yedeklemek için-iso üretilecek chroot olarak kullanılmak üzere + +./lfs-mekanizma -ss + +//gerekli ayarlamalar için chroot içine girilir. + +./lfs-mekanizma -cg + +//yukarıdaki komuttan sonra işlemler chroot içinde olacak! + +cd /tmp + +rm *.PRE + +for i in *.POST; do bash "$i"; done + +//sorunsuz calisirsa kur-kos betikleri silinebilir. + +rm *.POST + +//initrd yapmak için + +cd /root + +./lfs-mekanizma -bo + +//temel sistem için paket durum tarihçesi oluşturulur. + +mps -trot + +exit + +// yukarıdaki komut ile chroot dışına çıkılıp iso yapılır. + +//aşağıdaki iki komut ile iso yapılır. + +./lfs-mekanizma -so + +./lfs-mekanizma -io + +//test etmek için + +./qemu.sh + +//not: giriş için kullanıcı:root şifre:milis diff --git a/lfs-mekanizma b/lfs-mekanizma index a446321bf..c0c09469e 100755 --- a/lfs-mekanizma +++ b/lfs-mekanizma @@ -1079,7 +1079,7 @@ squashfs_olustur(){ iso_olustur(){ rm malfs.iso genisoimage -l -V malfsLive -R -J -pad -no-emul-boot -boot-load-size 4 -boot-info-table \ - -b boot/isolinux/isolinux.bin -c boot/isolinux/isolinux.cat -o malfs.iso iso_icerik && isohybrid malfs.iso + -b boot/isolinux/isolinux.bin -c boot/isolinux/isolinux.cat -o malfs-milis.iso iso_icerik && isohybrid malfs-milis.iso } temizlik(){ diff --git a/mps-0.2/fonks.sh b/mps-0.3/fonks.sh similarity index 100% rename from mps-0.2/fonks.sh rename to mps-0.3/fonks.sh diff --git a/mps-0.2/mps b/mps-0.3/mps similarity index 100% rename from mps-0.2/mps rename to mps-0.3/mps diff --git a/mps-0.2/mpsd b/mps-0.3/mpsd similarity index 100% rename from mps-0.2/mpsd rename to mps-0.3/mpsd diff --git a/mps-0.2/mpsd.conf b/mps-0.3/mpsd.conf similarity index 100% rename from mps-0.2/mpsd.conf rename to mps-0.3/mpsd.conf diff --git a/mps-0.2/onmpsd.conf b/mps-0.3/onmpsd.conf similarity index 100% rename from mps-0.2/onmpsd.conf rename to mps-0.3/onmpsd.conf diff --git a/mps-bootstrap b/mps-bootstrap new file mode 100755 index 000000000..5553bad1f --- /dev/null +++ b/mps-bootstrap @@ -0,0 +1,753 @@ +#!/bin/bash +#. ./mpsd.conf +. ./bin/fonks.sh +versiyon="0.3" +iletisim="milisarge@gmail.com" +paketdepo="/tmp/paketler/" +sunucu="192.168.1.112:8000/" +git_sunucu="https://github.com/milisarge/malfs-milis" +ikaynak="" +betikad=${0##*/} +kurulum_onay="evet" +talimatname_dizin="/opt/malfs-milis/talimatname" +kokdizin="/" +VT="/var/lib/pkg/DB" +TARIHCE_DIZIN="/var/lib/pkg/tarihce" +LOGDIZIN="/var/log/mps" +tekrarkur="hayir" +lokal="tr" +docsil="evet" +yerelsil="evet" + + +icerik_ekle(){ + paketad=`echo "$1" | cut -d'#' -f1` + paketad=`basename $paketad` + ryaz 34 $paketad" paketi kuruluyor-> $kokdizin" + tar -C /tmp --extract --file=$1 .PRE 1 2> /tmp/$paketad_pre.log + #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 && + tar xf $1 -C kur.$paketad && + #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 + mkdir -p $kokdizin/var/lib/pkg/DB/"$paketad" && + cp -v -afr kur.$paketad/* $kokdizin > kur.$paketad/kurulan && + cp kur.$paketad/kurulan /tmp/ &&cat kur.$paketad/kurulan | cut -d '>' -f2 > $kokdizin/var/lib/pkg/DB/"$paketad"/kurulan && + #mv kur.$paketad/.MTREE /var/lib/pkg/DB/"$paketad"/files && + mv kur.$paketad/.META $kokdizin/var/lib/pkg/DB/"$paketad"/META && + + #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 + ryaz 34 $paketad" paketi kuruldu." + loglama "$paketad paketi kuruldu." + +} + +paket_sil(){ + local paket kkont sil_onay oto_silme + paket="$1" + if [ "$2" ]; then + oto_silme="$2" + fi + kkont=`kurulu_kontrol "$1"` + if [ "$kkont" = "kurulu" ];then + if [ -f "/var/lib/pkg/DB/$paket/kurulan" ];then + cat /var/lib/pkg/DB/$paket/kurulan | cut -d '>' -f2 > /tmp/$paket.sil + ryaz 31 "ters bagimliliklar" + ryaz 31 "------------------" + ters_bagimli_kontrol "$paket" + ryaz 31 "------------------" + if [ "$oto_silme" = "evet" ];then + sil_onay="e" + else + while true; do + ryaz 34 $paket" paketi kaldırılsın mı?";read -p "e veya h-> " eh + case $eh in + [Ee]* ) sil_onay="e"; break;; + [Hh]* ) break;; + * ) echo "e veya h";; + esac + done + fi + if [ "$sil_onay" = "e" ];then + xargs rm -r -f < /tmp/$paket.sil && + rm -r -f /var/lib/pkg/DB/"$paket" && + ryaz 34 $paket" paketi silindi." + loglama "$paket paketi silindi." + fi + rm -f /tmp/$paket.sil + else + ryaz 31 "kritik mesaj:kurulanlar dosyası yok." + fi + else + ryaz 32 "paket zaten kurulu değil!" + fi + +} + +paket_bilgi(){ + local paket kkont + kkont=`kurulu_kontrol "$1"` + if [ "$kkont" = "kurulu" ];then + paket="$1" + cat /var/lib/pkg/DB/"$paket"/META + else + echo "paket kurulu değil!" + fi + +} + +yeniden_paketle(){ + cd $1 + bsdtar -r -f ../"$1".mps .META + bsdtar -r -f ../"$1".mps * + cd .. + lzip -9 "$1".mps +} + +derleme_listyap(){ + bagimlist=`bagimlilar "$1"` + for bagim in $bagimlist;do + if [ "`cat tumbag.liste | grep $bagim`" != "$bagim" ];then + derleme_listyap "$bagim" + fi + done + #if [ "`cat tumbag.liste | grep $1`" != "$1" ];then + # echo "tumbag.liste yazılıyor:" "$1" + # echo "$1" >> tumbag.liste + #fi + if ! grep -Fxq "$1" tumbag.liste + then + # echo "pas" + #else + ana="`find $talimatname_dizin -name $1`" + echo ${ana#"$talimatname_dizin"} + #sadece genel bagimliliklar derlenecek + echo "$1" >> tumbag.liste + if [ -d "$talimatname_dizin/genel/$1" ];then + echo "$1" >> bag.liste + fi + fi +} + +derleme_listbilgi(){ + ryaz 34 "yapim asamasında" +} + +paket_derle_oto(){ + for dpkt in `cat $1`;do + echo $dpkt "derleniyor...." + zorla_derle="yok" + paket_derle $dpkt + done +} +#otomatik derle kontrollu kur +paket_derle_oto2(){ + tekrarkur="hayir" + mps -dly "$1" > /dev/null && mps -odk bag.liste +} + +paket_kur_oto(){ + 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(){ + local kpkt pkt pak + for kpkt in `cat $1`;do + for pkt in `ls $kpkt* | cut -d'#' -f1`;do + pak=`ls "$pkt#"*` + mps -k2 "$pak" + done + done +} + +#otomatik kontrollu kur +paket_kur_oto2(){ + mps -dly "$1" > /dev/null && mps -ok bag.liste +} + +paket_inkur_liste(){ + local kpkt pkt pak + for kpkt in `cat $1`;do + mps -ik "$kpkt" + done +} + +#otomatik kontrollu kur +paket_inkur_oto(){ + mps -dly "$1" > /dev/null && paket_inkur_liste bag.liste + rm bag.liste tumbag.liste +} + +paket_sil_oto(){ + local spkt + for spkt in `cat $1`;do + oto_silme="evet" + paket_sil "$spkt" "$oto_silme" + done +} + +paket_derle(){ + #eski derleme kalıntılarını temizle + if [ -d tmp.* ];then + rm -r tmp.* + fi + kaynakdizin_kontrol + local konum derleme_onay eh bagimd + derleme_onay="h" + konum="`find "$talimatname_dizin" -name $1`" + if [ -d "$konum" ];then + mkdir -p tmp."$1" + cp -a $konum/* tmp."$1"/ + cd tmp."$1" + if [ "`kurulu_kontrol "$1"`" = "kurulu" ] && [ "$zorla_derle" = "yok" ];then + derleme_onay="h" + else + echo "-----" + derleme_onay="e" + fi + if [ "$derleme_onay" = "e" ];then + ryaz 33 "$1" "derleniyor...." + #mpsd -d > /dev/null + #mpsd -d + echo "------------------------" + mpsd -d 2>&1|tee /tmp/"$1".log + if ( grep "^=======>" /tmp/"$1".log| tail -1 |grep "ERROR" > /dev/null);then + echo "derleme sisteminde hata oluştu -----> " /tmp/"$1".log + exit 1 + fi + if [ "$kurulum_onay" = "evet" ];then + for kpkt in `ls $1* | cut -d'#' -f1`;do + mps -k "$kpkt#"* + done + fi + mv *.mps.lz ../ + else + ryaz 32 "paket zaten kurulu,yine de derlemek için: + mps -zd $1" + fi + cd .. + rm -r tmp."$1" + else + ryaz 31 "talimat dosyası bulunamadı." + fi + +} + + +bagimlilar(){ + local bagimd konum + konum="`find "$talimatname_dizin" -name $1`" + bagimd=`cat $konum/talimat | grep "Depends on" | cut -d':' -f2` + if [ -n "$bagimd" ]; then + bagimd=`echo "$bagimd" | sed 's/,/ /g'` + #sıralı gösterme + echo `echo "$bagimd" | sed 's/,/ /g'` + fi +} + +bagimli_bilgi(){ + local bagimd konum bag + konum="`find "$talimatname_dizin" -name $1`" + bagimd=`cat $konum/talimat | grep "Depends" | cut -d':' -f2` + 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 + echo $bag "`kurulu_kontrol $bag`" + done + fi + echo "$1" "`kurulu_kontrol $1`" + +} + +ters_bagimli(){ + local ara + ara=" $1 " + sy=`grep -o "/" <<<"$talimatname_dizin" | wc -l` + grep -rli "$ara" "$talimatname_dizin" | cut -d'/' -f`expr $sy + 3` +} + +ters_bagimli_kontrol(){ + ters_bagimli "$1" | sort > tersb.liste + ls /var/lib/pkg/DB/ | sed "/$1/d" | sort > simdiki.liste + comm -12 tersb.liste simdiki.liste + rm tersb.liste simdiki.liste +} + +kurulu_kontrol(){ + if [ -d "$kokdizin/var/lib/pkg/DB/$1" ];then + echo "kurulu" + exit 1 + fi + echo "degil" +} + +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 +} + +tarihce_dkontrol(){ + if [ ! -d $TARIHCE_DIZIN ];then + mkdir $TARIHCE_DIZIN + 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 + bsdtar -P -r -f $TARIHCE_DIZIN/"$t_isim"-pkvt.tar $VT + lzip -9 $TARIHCE_DIZIN/"$t_isim"-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 + ls /tmp/var/lib/pkg/DB/ > hedef.pkvt + ls /var/lib/pkg/DB/ > simdiki.pkvt + grep -vf hedef.pkvt simdiki.pkvt > sil.liste + grep -vf 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 + mps -ok kur.liste + 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ı!" + fi +} + +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ı!" + fi +} + +loglama(){ + logdizin_kontrol + echo "$(date +'%F %T') $1" >> "$kokdizin/$LOGDIZIN/mps.log" +} + +git_guncelle() { + kaynakdizin_kontrol + gitayar_kontrol + cd $DERLEME_KAYNAKDIZIN + #git sunucudan guncelleme + ryaz 33 "git sunucudan güncelleme çekiliyor." + if [ ! -d milis.git ];then + git clone $git_sunucu milis.git + else + cd milis.git + git pull + fi + ryaz 33 "yerele eşitleniyor." + rm -r $talimatname_dizin/* + rsync -a $DERLEME_KAYNAKDIZIN/milis.git/talimatname/ $talimatname_dizin + rm -r `dirname $talimatname_dizin`/bin/* + rsync -a $DERLEME_KAYNAKDIZIN/milis.git/bin/ `dirname $talimatname_dizin`/bin +} + +paketvt_guncelle(){ + wget -q --spider "$sunucu""paket.vt" + #if wget -P /tmp -q "$sunucu""paket.vt" > /dev/null; then + if [ $? -eq 0 ]; then + ryaz 32 "paket veritabanı guncellenıyor." "$paketdepo""paket.vt" + if [ -f "$paketdepo""paket.vt" ];then + mv "$paketdepo""paket.vt" "$paketdepo""paket.vt.eski" + fi + wget -P "$paketdepo" "$sunucu""paket.vt" + #rm /tmp/paket.vt* + exit 1 + fi + ryaz 31 "paket veritabanı guncelleme olumsuz." +} + +talimat_bilgi(){ + local konum HEAD + konum="`find "$talimatname_dizin" -name $1`" + HEAD=`grep -B 12 "build()" $konum/talimat` + echo $HEAD +} + +sistem_kontrol(){ + paketvt_kontrol + sunucu_kontrol +} + +sunucu_kontrol(){ + wget -q --spider $sunucu + if [ $? -eq 0 ]; then + ryaz 32 "paket sunucu aktif" + else + ryaz 31 "sunucu erişim dışı" + exit 1 + fi +} + +gitayar_kontrol(){ + if [ ! -f /root/.gitconfig ];then + git_ssl_iptal + git_otokimlik + fi +} + +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." +} + +yardim(){ + echo "yardim" +} + + +ayarlar() { + + while [ "$1" ]; do + case $1 in + -i|--indir) + ikaynak="ag" + kurulum_onay="olumsuz";; + -ik|--inku) + if [ "$3" == "-kok" ] && [ -d "$4" ]; then + kokdizin="$4" + fi + ikaynak="ag" ;; + -ikz|--inkuzo) + ikaynak="ag" + tekrarkur="evet" ;; + -k|--yrku) + if [ "$3" == "-kok" ] && [ -d "$4" ]; then + kokdizin="$4" + tekrarkur="evet" + fi + ikaynak="yerel" ;; + -s|--pksil) + paket_sil "$2" ;; + -d|--pkde) + zorla_derle="yok" + kurulum_onay="olumsuz" + paket_derle "$2" ;; + -zd|--pkzde) + zorla_derle="evet" + kurulum_onay="olumsuz" + paket_derle "$2" ;; + -dk|--pkdk) + paket_derle "$2" ;; + -odk|--pkodk) + paket_derle_oto "$2" ;; + -odkk|--pkodk2) + paket_derle_oto2 "$2" ;; + -ok|--pkok) + paket_kur_oto "$2" ;; + -okl|--pkokl) + paket_kur_liste "$2" ;; + -ko|--pkko) + paket_kur_oto2 "$2" ;; + -kurul) + paket_inkur_liste "$2" ;; + -kur) + paket_inkur_oto "$2" ;; + -pak|--paketle) + if [ ! "$2" ]; then + ryaz 31 "paketlenecek dizin ismi eksik" + exit 1 + fi + yeniden_paketle "$2" ;; + -psk|--paksiskur) + if [ ! "$2" ]; then + ryaz 31 "paket liste yok" + exit 1 + fi + if [ ! "$3" ]; then + ryaz 31 "hedef dizin yok" + exit 1 + fi + sistem_kur "$2" "$3" ;; + -po) + pvt_olustur ;; + -os|--pkos) + if [ ! "$2" ]; then + ryaz 31 "silme listesi yok" + exit 1 + fi + paket_sil_oto "$2" ;; + -kl|--kurulu-liste) + ls $VT ;; + -dly|--drly) + if [ -f tumbag.liste ];then + mv tumbag.liste tumbag.liste.eski + fi + if [ -f bag.liste ];then + mv bag.liste bag.liste.eski + fi + touch tumbag.liste + touch bag.liste + derleme_listyap "$2" ;; + -dlb|--drlb) + derleme_listbilgi "$2";; + -b|--pkbl) + paket_bilgi "$2" ;; + -bb|--pkbb) + bagimli_bilgi "$2" | column -t;; + -tb|--pktb) + ters_bagimli "$2" ;; + -tbk|--pktbk) + ters_bagimli_kontrol "$2" ;; + -talb|--talb) + talimat_bilgi "$2" | column -t;; + -Ggit|--gitgun) + git_guncelle ;; + -G|--pvtg) + paketvt_guncelle ;; + -g|--pkgu) + if [ ! "$2" ]; then + ryaz 31 "paket ismi eksik" + exit 1 + fi + paket_guncelle "$2";; + -kk|--kurulu-kontrol) + if [ ! "$2" ]; then + ryaz 31 "paket ismi eksik" + exit 1 + fi + ryaz 31 `kurulu_kontrol "$2"`;; + -suko) + sunucu_kontrol ;; + -cf|--config-file) + if [ ! "$2" ]; then + echo "ayardosyası gerek $1" + exit 1 + fi + ayar_dosyasi="$2" + shift ;; + -tro) + tarihce_yap ;; + -trot) + temel_tarihce="evet" + tarihce_yap ;; + -try) + if [ ! "$2" ]; then + ryaz 31 "tarihce dosyasi eksik $1" + exit 1 + fi + tarihce_yukle "$2" + shift ;; + -trl) + tarihce_liste ;; + -trs) + if [ ! "$2" ]; then + ryaz 31 "parametre eksik $1" + exit 1 + fi + tarihce_sil "$2" + shift ;; + -v) + ryaz 33 "$betikad $versiyon $iletisim" + exit 0 ;; + -h|--help) + yardim + exit 0 ;; + + esac + shift + done +} +ana(){ +ayarlar "$@" + +if [ "$ikaynak" = "ag" ]; then + kkont=`kurulu_kontrol "$2"` + if [ "$kkont" = "degil" ] || [ "$tekrarkur" = "evet" ];then + echo "agdan cekiliyor:" "$2" + pkt=`cat "$paketdepo""paket.vt" | grep "^$2 " | cut -d' ' -f3` + echo $pkt + if [ ! -z "$pkt" -a "$pkt" != "" ]; then + cpaket="${pkt/'#'/'%23'}" + #paket sunucuda varsa + wget -q --spider "$sunucu$cpaket" + #if wget -P /tmp -q "$sunucu$cpaket" > /dev/null; then + if [ $? -eq 0 ]; then + wget -nc -P "$paketdepo" "$sunucu$cpaket" + #mv /tmp/$pkt "$paketdepo" + if [ "$kurulum_onay" = "evet" ];then + if [ "$tekrarkur" = "evet" ];then + paket_sil "$2" "evet" + fi + icerik_ekle "$paketdepo$pkt" + exit 1 + fi + fi + else + ryaz 31 "paket sunucuda yok!( mps -G komutuyla güncelleme yapınız. )" + fi + else + ryaz 31 "$2 paketi zaten kurulu!" + fi + exit 1 +fi + +if [ "$ikaynak" = "yerel" ]; then + local silme + pkontrol=`basename $2 | grep -w "mps.lz"` + if [ ! -z "$pkontrol" -a "$pkontrol" != "" ]; then + paketad=`echo "$2" | cut -d'#' -f1` + kkont=`kurulu_kontrol "$paketad"` + if [ "$kkont" = "degil" ];then + icerik_ekle "$2" + else + if [ "$tekrarkur" = "hayir" ];then + while true; do + ryaz 31 "$2 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 "$2" + fi + fi + else + ryaz 31 "yerelde mps paketi bulunamadı." + fi +fi + +} +ana "$@" + + +#31 kirmizi +#32 yesil +#33 sari +#34 mavi +#34 mor diff --git a/qemu.sh b/qemu.sh index 7d64e6c60..53fbf75c0 100755 --- a/qemu.sh +++ b/qemu.sh @@ -1 +1 @@ -qemu-system-x86_64 -m 1024 malfs.iso +qemu-system-x86_64 -m 1024 malfs-milis.iso