User Tools

Site Tools


debianpackaging

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

debianpackaging [2013/01/30 17:51] (current)
Line 1: Line 1:
 +Jonathan Riddell: http://​www.fosdem.org/​2008/​schedule/​events/​crossdesktop_deb_intro
  
 +  * basic package: build-essential,​ devscripts, debhelper, dh-make, fakeroot
 +  * fix exisiting packages: diff, patch
 +  * checking: lintian, pbuilder, gnupg
 +
 +met le tar.gz dezippé dans un répertoire,​ puis créer dedans: debian/ (ou bien c'est dh_make qui le fait?).
 +<​code>​dh_make</​code>​
 +
 +changelog:
 +  * debian: soft-version.upstream-1
 +  * ubuntu: soft-version-0ubuntu1
 +  * mettre son nom
 +
 +compat:
 +  * 6 ou 5, ici 6 (pas un backport)
 +
 +control: ​
 +<​code>​Source:​ hello
 +Section: utils
 +Priority: extra
 +Maintainer: Prenom Nom <​jr@toto.com>​ pour Debian
 +Maintainer: Ubuntu MOTU <​ubuntu-motu@lists.ubuntu.com>​
 +Build-Depends:​ debhelper (>= 6), autotools-dev
 +Standards-Version:​ 3.7.2
 +
 +Package: hello
 +Architecture:​ any
 +Depends: $[shlibs:​Depends],​ $[misc:​Depends]
 +Description:​ <insert up to 60 chars description>​
 + <​insert long description,​ indented with spaces></​code>​
 +
 +les [] sont des accolades :(
 +
 +copyright:
 +  * very important
 +  * need full copy of licence in tar
 +  * code files should have licence header and copyright holder
 +  * make sur you get the right (L)GPL version
 +  * is FDL included?
 +  * can it link to librarires it links to? (openssl, GPL versions)
 +
 +Pas mal de paquets rejetés car pas rempli correctement.
 +
 +<​code>​This package is debianized by kk</​code>​
 +
 +rules:
 +  * the complex bit
 +  * makefile and [[bash]]
 +  * can get ugly
 +
 +For most cases, the templates will suffice.
 +
 +plusieurs parties: configure, make, build, clean, install
 +
 +build the package:
 +<​code>​debuild</​code>​
 +
 +ça foire parce que $(MAKE) distclean marche pas (pas besoin) > on met un dash devant le $(MAKE) distclean
 +
 +et ça marche.
 +
 +Il y a des warnings, mais on s'en tape ici (en fait, il faudrait regarder).
 +
 +<​code>​cd debian/​hello</​code>​
 +
 +On voit les fichiers créés, notamment le binaire: .deb et aussi, .dsc, .diff.gz, tar.gz
 +
 +<​code>​lesspipe nom.deb</​code>​
 +on voit ce qu'il y a de dedans
 +
 +On l'​installe:​
 +<​code>​sudo kpkg --install nom.deb</​code>​
 +
 +More testing:
 +<​code>​lintian foo.dsc
 +lintian foo.deb</​code>​
 +
 +builds for your? use pbuilder for a clean system
 +
 +source builds:
 +<​code>​debuild -S: .scp</​code>​
 +
 +upload:
 +  * get an account on revu
 +  * upload to PPA: testé sur autres architectures
 +  * ask someone to upload to Ubuntu
 +
 +dput revu foo.changes
 +
 +More comple?
 +
 +multiple .debs (ex: KDE)
 +
 +add more packages to debian/​control
 +install to debian/tmp
 +list files in debian/​foo.install debian/...
 +
 +upstream is brokern.
 +
 +add patches in debian/​patches
 +configure: patch -p1 > debian/​patches/​foo.diff
 +clean: ...
 +
 +CDBS: uses more advanced features of make files
 +
 +debdiff: voir différences entre vieux .deb et celui qu'on a fait.
 +
 +https://​wiki.kubuntu.org/​PackingGuide
debianpackaging.txt · Last modified: 2013/01/30 17:51 (external edit)