Debian Paket Yapımı

Written by Super User. Posted in Diger

Link yardımıyla ubuntu işletim sistemi üzerinde bir debian paketi oluşturmayı denedim. Çalışma dökümanımı paylaşmak istiyorum. Bu konuda daha yeni olduğum için, mutlaka yaptığım işlemlerin daha kısa ve daha doğru yöntemleri vardır. Bunlarıda öğrendikçe paylaşmayı düşünüyorum. Kolay gelsin.

#debpaket dizini oluşturulur.
$ mkdir debpaket

#Python kod parçası yazılır.
$ cat > debpaket/goksel.py << EOF
> #! /usr/bin/python 
> # -*- coding: utf-8 -*-

> print "Goksel GUREN, debian paket denemesi"
> EOF

#Dizine erişilir
$ cd debpaket/

#Python dosyamıza çalıştırma izni verilir.
$ chmod +x goksel.py

 

#Dosyamız çalıştırılıp, kontrol edilir.
$ ./goksel.py 
Goksel GUREN, debian paket denemesi

#Paketimizi oluştururken bize lazım olacak dosyaları, oluşturmak için şablon görevi görmek üzere bir paket indirilir. Lİnkte sıkıntı çıkabilir. O zaman aynı paketin http://ftp.debian.org/debian/pool/main/p/parted/ bu linkte yeni sürümünü bulup indirebilirsiniz. 

$ wget http://ftp.debian.org/debian/pool/main/p/parted/libparted0-dbg_2.2-3_i386.deb

#İndirdiğimiz paket ayrıştırılır.
$ ar x libparted0-dbg_2.2-3_i386.deb

#Dizin içerisi incelenir.
-rw-r--r-- 1 root root 1,2K 2010-04-06 07:00 control.tar.gz
-rw-r--r-- 1 root root 983K 2010-04-06 07:00 data.tar.gz
-rw-r--r-- 1 root root 4 2010-04-06 07:00 debian-binary
-rwxr-xr-x 1 root root 87 2010-04-06 06:53 goksel.py
-rw-r--r-- 1 root root 984K 2010-04-03 21:20 libparted0-dbg_2.2-3_i386.deb

#libparted0-dbg_2.2-3_i386.deb dosyası silinir.
$ rm -rf libparted0-dbg_2.2-3_i386.deb

#debian-binary ve data.tar.gz dosyaları silinir.
$ rm -rf debian-binary
$ rm -rf data.tar.gz

#control.tar.gz açılır.
$ tar -xvf control.tar.gz

#control.tar.gz içerisinden çıkan dosyalara bakalım. md5sums, control şeklinde 2 dosya çıktı. control dosyasını, bilgilerini değiştirerek kendi dosyamızı #oluşturmak üzere bir şablon olarak kullanacağız. md5sums şu an için lazım değil. Silebiliriz. control.tar.gz dosyasını da silebiliriz.

$ rm -rf control.tar.gz
$ rm -rf md5sums

#Dizinimizi tekrar inceleyelim.

$ ls -lh

-rw-r--r-- 1 root root 1,7K 2010-03-26 13:13 control
-rwxr-xr-x 1 root root 87 2010-04-06 06:53 goksel.py

#control dosyasını editleyip, kendi paketimiz için uygun verileri girdik.

$ vim control

#control dosyamızdaki verilerimiz

Package: gokselguren
Version: 1.1-1
Architecture: all
Maintainer: Goksel GUREN < This email address is being protected from spambots. You need JavaScript enabled to view it. >
Description: Debian paket yapımını ögrenmek icin oluşturulmuş paketimiz.


#Şimdi yeni dizinler oluşturup, program parçamızı oraya aktaralım.

$ mkdir -p ./debian/usr/bin
$ cp goksel.py ./debian/usr/bin


$ mkdir -p debian/DEBIAN
$ find ./debian -type d | xargs chmod 755
$ cp control debian/DEBIAN

#Yapılandırma

$ dpkg-deb --build debian
$ mv debian.deb gokselguren_1.1-1_all.deb

#Kurulum
$ dpkg -i ./goksel_1.1.-1_all.deb

#Silmek istersek
$ dpkg -r gokselguren