Python ile yapılmış bir programı DEB paketi yapmak

Başlatan emrepinarbasi, 26 Ağustos 2010 - 14:00:55

« önceki - sonraki »

0 Üyeler ve 3 Ziyaretçi konuyu incelemekte.

emrepinarbasi

Arkadaşlar Nota Arşivleyicisi isimli bir program yaptık. Bu programın kaynak kodu ve dosyalarını alttaki adresten temin edebilirsiniz.

http://code.google.com/p/scorearchiver

Bu programımızı DEB paketi yapmak istiyorum. Bu konuda yardımcı olabilecek bir arkadaş var mı?
Öğr.Gör.Emre PINARBAŞI / Neyzen
Ondokuz Mayıs Üniversitesi Samsun Devlet Konservatuarı

Sherlock Holmes


emrepinarbasi

Alıntı yapılan: 9N0M3 - 26 Ağustos 2010 - 14:09:37
Burası faydalı olabilir.

Güzel bir kaynak bu verdiğin link. Ama bir sorum olacak. Bizim programımız ./config - MAKE komutuyla değil, python setup.py install komutu ile yükleniyor

bu hususta ne yapmalı
Öğr.Gör.Emre PINARBAŞI / Neyzen
Ondokuz Mayıs Üniversitesi Samsun Devlet Konservatuarı

Sherlock Holmes


hitokiri

Bir dizin oluşturup
program ismi ve sürümünü ver o dosyaya
wiki-1.2 gibi
cd dizin
sudo python setup.py install

dh_make komutunu uygula şu seçeneklerden faydalanarak
Alıntı YapUsage: dh_make [options]
  -c, --copyright <type>    use <type> of license in copyright file
                            (apache|artistic|bsd|gpl|gpl2|gpl3|lgpl|lgpl2|lgpl3)
      --dpatch              using dpatch to maintain patches
      --quilt               using quilt to maintain patches
  -e, --email <address>     use <address> as the maintainer e-mail address
  -n, --native              the program is Debian native, don't generate .orig
  -f, --file <file>         specify file to use as the original source archive
  -r, --createorig          make a copy for the original source archive
  -s, --single              set package class to single
  -i, --indep            set package class to arch-independent
  -m, --multi               set package class to multiple binary
  -l, --library             set package class to library
  -k, --kmod                set package class to kernel module
      --kpatch              set package class to kernel patch
  -b, --cdbs                set package class to cdbs
  -a, --addmissing          reprocess package and add missing files
  -t, --templates <dir>      apply customizing templates in <dir>
  -d  --defaultless         skip the default debian and package class templates
  -o, --overlay <dir>       reprocess package using template in <dir>
  -p, --packagename <name>  force package name to be <name>
  -h, --help                display this help screen and exit
  -v, --version             show the version and exit
sonra
üst dizine geçip arşiv dosyasını sil
Alıntı Yap-f, --file <file>         specify file to use as the original source archive
oluşan debian dizini  içindeki control dosyasını özelleştir,
sonra
dpkg-buildpackage
cd ../;ls -l|grep deb
bu kadar :)

emrepinarbasi

Teşekkürler bunları deneyeceğim. İnşallah halledebilirim :)
Öğr.Gör.Emre PINARBAŞI / Neyzen
Ondokuz Mayıs Üniversitesi Samsun Devlet Konservatuarı

hitokiri

Alıntı Yaphttp://www.mediafire.com/?52p3tpac7wkkefh
hazırlanmış deb arşivi örneği de burda setup.py dosyası örnepği de var :)

virs

Debreate programıyla görsel olarak yapabilirsin ben PyVakitci uygulamasını onunla deb paketi yaptım:
http://debreate.sourceforge.net/

Stabil sürümü iyi çalışıyor diğerleri arızalı:
https://sourceforge.net/projects/debreate/files/debreate/0.6/debreate_0.6.5-1_all.deb/download

Alternatif link:
http://www.4shared.com/file/zhk6h8z8/debreate_065-1_all.html

Debreate için kullanabileceğin örnek:
http://www.4shared.com/file/xwpulDqn/debreate_exampletar.html

debreate_example.tar.gz arşivinden çıkan dosyaları Debreate-->File-->Open control ve open .desktop kısmından açabilirsin.
Sonra kendine göre düzenleyebilirsin. Yalnız benim örneğimde dosya /usr/bin altına çalıştırılabilir dosya göndermiyor.

Debreate'nin kendi örneğini de Help-->Example control kısmından çalıştırabilirsin.
İnsan için ancak çalıştığının karşılığı vardır. (Kur'an: Necm, 39)

emrepinarbasi

:)
Galiba ben bu işi bir türlü başaramayacağım
Vazgeçtim

Terminalden kurulum yapar arkadaşlar artık, kafa patlattım ama olmadı :)
Öğr.Gör.Emre PINARBAŞI / Neyzen
Ondokuz Mayıs Üniversitesi Samsun Devlet Konservatuarı

heartsmagic

Neden olmadığını yazarsan belki bu konuda tecrübeli arkadaşlar yardımcı olurlar.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

hitokiri

#10
Alıntı Yap
:)
Galiba ben bu işi bir türlü başaramayacağım
Vazgeçtim

Terminalden kurulum yapar arkadaşlar artık, kafa patlattım ama olmadı :)
şu setup.py dosyası hazırsa ben bakabilirim ,(başlatıcıyla bilrikte fala filan.. :) )
yani tam neyi yapamadın ?
bi ara indirip bakmtım arşive az kalsın derliyordum :)
Alıntı Yapdh_make -c GPL -e aaANILaa@gmail.com -f '/home/py/İndirilenler/ScoreArchiver_1.0/ScoreArchiver_1.0.tar.gz'   -p scorearchiver_1.0
DEBIAN içinde arşiv dizini oluşmadı;
daha basit ve tek bi script göstererek setup.py dosyası oluşturusan olucak gibi
Alıntı Yap("share/scorearchiver/qm", glob.glob("./ScoreArchiver/*.qm"))
galiba bi de dizin hatalı /usr/share tabi gözümden bi şey kaçmadıysa :)
Alıntı YapGaliba ben bu işi bir türlü başaramayacağım
Vazgeçtim
vazgeçek yok :))



Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 04 Eylül 2010 - 18:26:43

bu arada arşivi oluturdum
.deb paketi > http://www.mediafire.com/?ho9mhi7fat5hfgz
arşiv dizini > http://www.mediafire.com/?cq7akt7yky5qhpg
takıldğın bi yer olursa artık bildirirsin :)
Alıntı Yapşu setup.py dosyası hazırsa ben bakabilirim ,(başlatıcıyla bilrikte fala filan.. :) )
bu arada zaten varmış yanlış görmüşüm :)

heartsmagic

Alıntı yapılan: heartsmagic - 03 Eylül 2010 - 01:10:44
...  bu konuda tecrübeli arkadaşlar yardımcı olurlar.

Görüldüğü üzere çıkıyor tecrübeli arkadaşlar :) Eline sağlık @hitokiri.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

hitokiri

Alıntı YapEline sağlık @hitokiri.
Teşekkür ederim @heartsmagic :)
yani yardımcı oldum sanırım biraz  ::)

emrepinarbasi

Teşekkür ediyorum çalışmanız için. AMD64 dışında x86 için de hazırlama imkanınız olabilir mi?
Öğr.Gör.Emre PINARBAŞI / Neyzen
Ondokuz Mayıs Üniversitesi Samsun Devlet Konservatuarı

hitokiri

Bu paketin tüm bağlımlıklıkları nedir tam olarak ben örnek amaçlı yapmıştım aslında,
yani pek te düzgün değil
program tanımı ve bi de uzun açıklamasını alayım o zaman :)
müsait olunca hazırlar paylaşırım ?

emrepinarbasi

Bağımlılıklar

python-qt4-sql
qt4-dev-tools
pyqt-tools

Programın tanımı;
Türk Müziği Notaları Arşivi Programı

Tanıtımı:
Program içeriğinde barındırdığı veritabanı sayesinde, aranılan Türk Müziği eserlerin notasını görüntülemeye yarar. Notalar programın içinde kurulu olarak gelmez, internet sitesinden (www.scorearchiver.com) indirilerek programa tanıtılabilir.
Öğr.Gör.Emre PINARBAŞI / Neyzen
Ondokuz Mayıs Üniversitesi Samsun Devlet Konservatuarı

hitokiri

Tamamdır 64 kısmı :)
http://www.mediafire.com/?cio2anbmdd0v3g8
düzgünce oldu gibi bi de sen test et tamamsa 32 bit için baş ağrıtmaya başlayım :D :))

emrepinarbasi

64 bit sistemim olmadığı için malesef test edemiyorum, kurulum gerçekleşmiyor çünkü
Öğr.Gör.Emre PINARBAŞI / Neyzen
Ondokuz Mayıs Üniversitesi Samsun Devlet Konservatuarı

ufuk_k

sudo dpkg -i Downloads/scorearchiver_1.0-1_amd64.deb
[sudo] password for ufuk:
Selecting previously deselected package scorearchiver.
(Reading database ... 207777 files and directories currently installed.)
Unpacking scorearchiver (from .../scorearchiver_1.0-1_amd64.deb) ...
dpkg: dependency problems prevent configuration of scorearchiver:
scorearchiver depends on python-qt4-sql; however:
  Package python-qt4-sql is not installed.
scorearchiver depends on qt4-dev-tools; however:
  Package qt4-dev-tools is not installed.
scorearchiver depends on pyqt-tools; however:
  Package pyqt-tools is not installed.
dpkg: error processing scorearchiver (--install):
dependency problems - leaving unconfigured
Processing triggers for python-gmenu ...
Rebuilding /usr/share/applications/desktop.en_US.utf8.cache...
Processing triggers for desktop-file-utils ...
Processing triggers for python-support ...
Errors were encountered while processing:
scorearchiver


Bu şekilde tabii bağımlılık hataları verdi ve kurulum yapamadı. Daha sonra bağımlılıkları çözmesi için şu komutu denedim:
ufuk@ufuk-xps:~$ sudo apt-get install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  libswfdec-0.8-0 libicns1 libavutil-extra-49 apport-hooks-medibuntu
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  libdrm-dev libgl1-mesa-dev libglu1-mesa-dev libkms1 libpthread-stubs0
  libpthread-stubs0-dev libqt4-declarative libqt4-dev libqt4-opengl-dev
  libqtwebkit-dev libx11-dev libxau-dev libxcb1-dev libxdmcp-dev
  mesa-common-dev pyqt-tools python-qt4-sql qt4-designer qt4-dev-tools qt4-doc
  qt4-qmake x11proto-core-dev x11proto-input-dev x11proto-kb-dev xtrans-dev
Suggested packages:
  libmysqlclient-dev libsqlite0-dev libsqlite3-dev libpq-dev unixodbc-dev
  qt4-doc-html
The following NEW packages will be installed:
  libdrm-dev libgl1-mesa-dev libglu1-mesa-dev libkms1 libpthread-stubs0
  libpthread-stubs0-dev libqt4-declarative libqt4-dev libqt4-opengl-dev
  libqtwebkit-dev libx11-dev libxau-dev libxcb1-dev libxdmcp-dev
  mesa-common-dev pyqt-tools python-qt4-sql qt4-designer qt4-dev-tools qt4-doc
  qt4-qmake x11proto-core-dev x11proto-input-dev x11proto-kb-dev xtrans-dev
0 upgraded, 25 newly installed, 0 to remove and 2 not upgraded.
1 not fully installed or removed.
Need to get 106MB of archives.
After this operation, 171MB of additional disk space will be used.
Do you want to continue [Y/n]?


Herhalde bunları kurduktan sonra kurulacaktır. Yalnız bu kadar dev pakedi bağımlılığı olması normal mi? Ben çok anlamam ama.
"Waiting for an ideal, a low deal, a no deal.
Play your stereotype,  oh yeah..."

emrepinarbasi

Bağımlılıklar doğrudur :)
Ubuntu tarafında bağımlılık istiyor bu kadar, fakat bunlar Pardus'ta kurulu geldiği için herhangi bir bağımlılık istemeden kurulum yapabiliyor (setup.py'den)
Öğr.Gör.Emre PINARBAŞI / Neyzen
Ondokuz Mayıs Üniversitesi Samsun Devlet Konservatuarı