Milis Ortamı Oluşturma
===================================

.. toctree::
   :maxdepth: 2
   :caption: Contents:

Milis Linux'ta paketleri test etmek 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.

0. Gerekli değişkenler atanır:

.. code:: bash

   export MPS_PATH=/opt/mps
   export MILIS_PATH=/tmp/sys/usr/milis
   
1. mps deposu klonlanır:

.. code:: bash

   git clone https://notabug.org/milislinux/mps $MPS_PATH
   
2. mps derlenir:

.. code:: bash

   cd $MPS_PATH
   bash derle.sh $MPS_PATH
   
3. mps ilk defa çalıştırılır ve sürüm kontrolü yapılır:

.. code:: bash

   cd bin
   ./mps -v && ./mps -v
   
4. Gerekli konfigürasyonlar yapılır:

.. code:: bash

   nano ../conf/conf.lua
   
5. Dizin sistemi --kok argümanının verildiği lokasyonda oluşturulur:

.. code:: bash

    ./mps --initfs --kok=/tmp/sys

6. mps'nin --kok argümanının verildiği lokasyonda ilk ayarları yapılır:

.. code:: bash

    ./mps --ilk --kok=/tmp/sys

7. mps'nin paket veritabanları güncellenir:

.. code:: bash

    ./mps -G --kok=/tmp/sys

8. mps'nin git depoları güncellenir:

.. code:: bash

    ./mps -GG --kok=/tmp/sys

9. ortam.order dosyasında belirtilen paketler **sırası** ile kurulur:

.. code:: bash

   ./mps kur --dosya=/tmp/sys/usr/milis/talimatname/1/ortam.order --kurkos=0 --koskur=0 --kok=/tmp/sys

10. mps oluşturulan sisteme kopyalanır:

.. code:: bash

   cp -r $MPS_PATH /tmp/sys/usr/milis/mps

11. Yeni sisteme chroot ile girilir:

.. code:: bash

   chmod +x enter-chroot
   ./enter-chroot /tmp/sys

12. mps derlenir:

.. code:: bash

   cd /usr/milis/mps
   bash derle.sh

13. mps önbelleği temizlenir:

.. code:: bash

   rm -rf /var/cache/mps/depo/*   

14. Sertifikalar güncellenir ve çıkılır:

.. code:: bash

   update-ca-certificates --fresh
   exit
   
15. Komut geçmişi temizlenir:

.. code:: bash

   rm -f tmp/sys/root/.bash_history

16. Yeni sistemin /sources klasörü silinir:

.. code:: bash

   rm -rf /tmp/sys/sources

17. Yeni sistem squash filesystem ile sıkıştırılır:

.. code:: bash

   mksquashfs /tmp/sys /tmp/milis2-ortam.sfs -comp xz

Artık yeni sistemimiz milis2-ortam.sfs dosyasında kullanıma hazır.
