Skip to content

ADIM ADIM DOCKER İLE DERLEME

Kamil ATLI edited this page Sep 28, 2022 · 5 revisions

ADIM ADIM DOCKER İLE DERLEME

main ve core depolarını kendi github sayfana forkla,

fork yaptıklarını,

git clone git@github.com:kullanıcı_adı/main.git

gibi, kendi adın neyse ona göre düzenle, klonla,

git config --global user.name "......"

git config --global user.email "......"

sonra /home/kullanıcı_adı/ dizinine pisi-2.0 isminde bir klasör aç

pisi-2.0 bu klasörün içine clone yaptığın main ve core klasörlerini at, hatta buraya doğrudan clone et

sonra core klasörünün içine gir

git remote add upstream git@github.com:pisilinux/core.git

komutunu ver

sonra main klasörüne gir

git remote add upstream git@github.com:pisilinux/main.git

komutunu ver

bundan sonra her iki klasörde de

git pull upstream master

komutuyla pisilinux deposundaki değişiklikleri al

git push origin master

komutuyla kendi forkuna gönderebilirsin

gelelim docker bağlamaya

konsole aç

sudo service docker start

bu komuttan sonra YENİ bir konsole sayfası aç

sudo docker pull pisilinux/chroot:latest

sudo docker run -v /home/kullanıcı_adı/pisi-2.0:/git -v /home/kullanıcı_adı/pisi-2.0/build:/root -v /var/cache/pisi/archives:/var/cache/pisi/archives -v /var/cache/pisi/packages:/var/cache/pisi/packages -itd --security-opt=seccomp:unconfined pisilinux/chroot:latest bash

sudo docker ps

bu komuttan sonra çıkan konteynır_adı her ne ise (iki kelimelik ve alt çizgilibir isim) ona dikkat ederek,

sudo docker attach konteynır_adı

service dbus start

pisi ur (bu komutu çoğu zaman iki kez ard arda vermek gerekebiliyor)

pisi up -dvsy --ignore-safety (bu komutu core paketlerinde önemli bir değişiklik olmamışsa kullanmıyoruz.)

derlemeye hazırız.

pisi-2.0/main/desktop/kde/applications/kpat klasörümüzdeki kpat adlı paketi şöyle derliyoruz:

pisi bi /git/main/desktop/kde/applications/kpat/pspec.xml -d --ignore-safety

derlediğimiz paketin, runtime dependency lerini anlamak için;

az önce yaptığımız paketi kuruyoruz,

pisi it kpat......pisi --ignore-safety

checkelf -s -x kpat*.pisi

çıkan rapora göre, çalışma bağımlılıklarını (runtime dependency) düzenliyoruz. /home/kullanıcı_adı/pisi-2.0/build/ altında paketler oluşmuştur, kurup test edebilirsiniz.

bitti.

DİKKAT: Paketin işleri bitince, yeni pakete geçmeden önce, sonradan kurduğumuz dependency leri temizlemek için

pisi hs -t 85 -y

Artık Pull-Request göndermeye hazırız.

DİKKAT: Sonraki docker kullanımları için, "gelelim docker bağlamaya.." satırından sonrakilerin uygulanması yeterli.

Sonraki kullanımlarda, her seferinde en baştan bunları yapmadan, son kullandığımız konteyniri çalıştırabiliriz.

Aşağıdaki konteynır adı ve numaralar.. vs temsilidir, son kullandığımız konteynır bilgilerimizi bir yere not ederek, aşağıdaki şekilde kullanabiliriz:

sudo service docker start

sudo docker start bf8020f66d7h

sudo docker attach latest_contai

service dbus start

pisi ur

pisi up -dvsy --ignore-safety

pisi bi /git/main/desktop/kde/applications/kpat/pspec.xml -dvy --ignore-safety

veya çıkarken konteyneri silmek isterseniz:

yeni bir konsol penceresi açıp,

sudo docker stop konteyner-id

konteyner-id, çalışırken kullandığımız konsol penceresinde var,

hazir durdurmusken,

sudo docker rm konteyner-id

kolay gelsin.