Derleme Ortamı Üretme

Milis Linux’ta paketleri temiz bir ortamda üretebilmek için squash filesystem ile sıkıştırılmış bir sistem kalıbı kullanılır. Aşağıdaki komutlarla bu sistem kalıbını üretebiliriz. Eğer hazır üretilmiş sistem kalıbını kullanmak isterseniz mpsdo komutunu kullanabilirsiniz.

  1. Gerekli çevre değişkenleri ayarlanır:

    export MSYS=/tmp/sys
    export MPS_PATH=/opt/mps
    export MILIS_PATH=$MSYS/usr/milis
    
  2. MPS kaynak kodu indirilip derlenir:

    git clone https://mls.akdeniz.edu.tr/git/milislinux/mps $MPS_PATH
    cd $MPS_PATH
    bash derle.sh $MPS_PATH
    
  3. mps gerekli konfigürasyon ayarlarını yaptğınından dolayı ilk çalıştığında:

    cd bin
    ./mps
    MPS öntanımlı ayarlar yüklendi.
    Lütfen mps'i yeniden çalıştırın!
    

    uyarısını verecektir. Bu adımdan sonra mps kurulumu tamamlanmış olur. Kontrol etmek için:

    ./mps -v
    MPS 2.1.0 - Milis Paket Sistemi milisarge@gmail.com
    
  4. MPS’in paketleri nereden alacağını belirlemek için gerekli ayarlar yapılır:

    nano ../conf/conf.lua
    
  5. Dizin sistemi ve MPS’nin ilklenmesini –kok değerine göre verilen dizinde oluşturulur:

    ./mps --ilkds --ilk --kok=$MSYS
    
  6. Gerekli güncellemeler yapılır; talimatname, depo ve betik:

    ./mps gun -GPB --kok=$MSYS
    
  7. Minimal bir sistem ortamı kurmak için gerekli paketler indirilir ve yüklenir:

    ./mps kur --dosya=$MSYS/usr/milis/talimatname/1/ortam.order --kurkos=0 --koskur=0 --kok=$MSYS
    
  8. MPS kurulum dizininin altına kopyalanır:

    cp -r $MPS_PATH $MSYS/usr/milis/mps
    
  9. chroot içine girilir:

    ./enter-chroot $MSYS
    
  10. mps dizini altındaki lua modulleri derlenir:

    cd /usr/milis/mps
    bash derle.sh
    
  11. Gerekli güncellemeler çalıştırılır:

    update-ca-certificates --fresh && mps kur p11-kit && make-ca -g
    
  12. Önbellekteki paket arşivleri temizlenir, ortamdan çıkılır ve komut tarihçesi temizlenir:

    rm -rf /var/cache/mps/depo/*
    exit
    rm -f $MSYS/root/.bash_history
    
  13. Ortam içindeki sources dizini silinir çünkü sonra mpsdo ile güncel sources dizini bağlanacak:

    rm -rf $MSYS/sources
    
  14. Yeni sistem squash filesystem ile sıkıştırılır:

    mksquashfs $MSYS milis2-"$(date -d "$D" '+%m-%d')"-ortam.sfs -comp xz