Taille: 9089
Commentaire:
|
Taille: 9559
Commentaire:
|
Texte supprimé. | Texte ajouté. |
Ligne 185: | Ligne 185: |
Fichier 'DEBIAN/control' AVANT | Fichier 'debian/control' AVANT |
Ligne 203: | Ligne 203: |
Fichier 'DEBIAN/control' APRES {{{ à compléter }}} Version du paquet dans le changelog avec dch |
Fichier 'debian/control' APRES {{{ Source: mon-first-paquet Section: AUF Priority: optional Maintainer: Alexandre Domont <alexandre.domont@auf.org> Build-Depends: debhelper (>= 5) Standards-Version: 3.7.2 Package: mon-first-paquet Architecture: all Depends: ${shlibs:Depends}, ${misc:Depends}, vlc Conflicts: trackerd Description: Un paquet pour installer vlc et desinstaller trackerd !! }}} (./) Version du paquet dans le changelog avec dch |
Ligne 223: | Ligne 234: |
vi Makefile | (./) vi Makefile |
Ligne 235: | Ligne 246: |
debuild -us -uc | (./) debuild -us -uc |
Ligne 300: | Ligne 311: |
ls .. | (./) ls .. |
Ligne 312: | Ligne 323: |
(./) Ensuite pour tester le paquet, on peut soit le mettre sur un dépôt APT soit avec gdebi |
Quelques repères...pour m'y retrouver !!!
Le paquet Debian
Exemple d'un paquet pris au hasard : /var/cache/apt/archives/autofs_4.1.4+debian-2.1ubuntu1_i386.deb
Extrait les fichiers du .deb : dpkg -x autofs_4.1.4+debian-2.1ubuntu1_i386.deb autofs
autofs |-- etc | |-- apm | | `-- event.d | | `-- autofs | |-- default | `-- init.d | `-- autofs |-- usr | |-- lib | | `-- autofs | | |-- lookup_file.so | | |-- lookup_multi.so | | |-- lookup_nisplus.so | | |-- lookup_program.so | | |-- lookup_userhome.so | | |-- lookup_yp.so | | |-- mount_afs.so | | |-- mount_autofs.so | | |-- mount_bind.so | | |-- mount_changer.so | | |-- mount_ext2.so | | |-- mount_ext3.so -> mount_ext2.so | | |-- mount_generic.so | | |-- mount_nfs.so | | `-- parse_sun.so | |-- sbin | | `-- automount | `-- share | |-- autofs | | `-- conffiles | | |-- auto.master | | |-- auto.master.md5sum | | |-- auto.misc | | |-- auto.misc.md5sum | | |-- auto.net | | |-- auto.net.md5sum | | |-- auto.smb | | |-- auto.smb.md5sum | | |-- autofs.default | | `-- autofs.default.md5sum | |-- doc | | `-- autofs | | |-- CREDITS | | |-- NEWS.Debian.gz | | |-- README | | |-- README.Debian | | |-- README.changer | | |-- README.direct | | |-- README.ghosting | | |-- README.init | | |-- README.ldap | | |-- README.ncpfs | | |-- README.replicated-server | | |-- README.smbfs | | |-- changelog.Debian.gz | | |-- changelog.gz | | |-- copyright | | `-- examples | | |-- auto.master | | |-- auto.misc | | `-- auto.net | `-- man | |-- man5 | | |-- auto.master.5.gz | | `-- autofs.5.gz | `-- man8 | |-- autofs.8.gz | `-- automount.8.gz `-- var `-- run `-- autofs
Extrait les méta données du paquet : dpkg -e autofs_4.1.4+debian-2.1ubuntu1_i386.deb autofs/DEBIAN
autofs/DEBIAN |-- conffiles |-- control |-- md5sums |-- postinst |-- postrm `-- prerm
Fichier 'DEBIAN/control'
Package: autofs Version: 4.1.4+debian-2.1ubuntu1 Architecture: i386 Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com> Installed-Size: 476 Depends: libc6 (>= 2.4), ucf Recommends: module-init-tools, nfs-common Conflicts: autofs Section: utils Priority: extra Description: kernel-based automounter for Linux Autofs controls the operation of the automount daemons. The automount daemons automatically mount filesystems when they are used and unmount them after a period of inactivity. This is done based on a set of pre-configured maps. . The kernel automounter implements an almost complete SunOS style automounter under Linux. Automounter version 4 (autofs4) has to be enabled when compiling the kernel. Debian packaged kernels have it enabled. Original-Maintainer: Jan Christoph Nordholz <hesso@pool.math.tu-berlin.de>
Création d'un paquet
Nécessite : dh-make et devscripts
Je vais créer un paquet qui installe simplement vlc et supprimer trackerd
mkdir mon-first-paquet-1.0
cd mon-first-paquet-1.0
mon-first-paquet-1.0$ dh_make --createorig Type of package: single binary, multiple binary, library, kernel module or cdbs? [s/m/l/k/b] s Maintainer name : Alexandre Domont Email-Address : alexandre.domont@auf.org Date : Wed, 15 Oct 2008 11:31:10 +0200 Package Name : mon-first-paquet Version : 1.0 License : blank Type of Package : Single Hit <enter> to confirm: Currently there is no top level Makefile. This may require additional tuning. Done. Please edit the files in the debian/ subdirectory now. You should also check that the mon-first-paquet Makefiles install into $DESTDIR and not in / .
`-- debian |-- README.Debian |-- changelog |-- compat |-- control |-- copyright |-- cron.d.ex |-- dirs |-- docs |-- emacsen-install.ex |-- emacsen-remove.ex |-- emacsen-startup.ex |-- init.d.ex |-- init.d.lsb.ex |-- manpage.1.ex |-- manpage.sgml.ex |-- manpage.xml.ex |-- menu.ex |-- mon-first-paquet-default.ex |-- mon-first-paquet.doc-base.EX |-- postinst.ex |-- postrm.ex |-- preinst.ex |-- prerm.ex |-- rules `-- watch.ex
Fichier 'debian/control' AVANT
Source: mon-first-paquet Section: unknown Priority: extra Maintainer: Alexandre Domont <alexandre.domont@auf.org> Build-Depends: debhelper (>= 5) Standards-Version: 3.7.2 Package: mon-first-paquet Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Description: <insert up to 60 chars description> <insert long description, indented with spaces>
Fichier 'debian/control' APRES
Source: mon-first-paquet Section: AUF Priority: optional Maintainer: Alexandre Domont <alexandre.domont@auf.org> Build-Depends: debhelper (>= 5) Standards-Version: 3.7.2 Package: mon-first-paquet Architecture: all Depends: ${shlibs:Depends}, ${misc:Depends}, vlc Conflicts: trackerd Description: Un paquet pour installer vlc et desinstaller trackerd !!
Version du paquet dans le changelog avec dch
GNU nano 2.0.7 Fichier : debian/changelog.dch Modifié mon-first-paquet (1.0-1) hardy; urgency=low * Initial release (Closes: #nnnn) <nnnn is the bug number of your ITP> * Pouette pouette un paquet qui installe ksnapshot et supprime evolution -- Alexandre Domont <alexandre.domont@auf.org> Wed, 15 Oct 2008 11:53:37 +0200
vi Makefile
all: build build: install: clean:
debuild -us -uc
fakeroot debian/rules clean dh_testdir dh_testroot rm -f build-stamp configure-stamp # Add here commands to clean up after the build process. /usr/bin/make clean make[1]: entrant dans le répertoire « /home/alex/test/mon-first-paquet-1.0 » make[1]: Rien à faire pour « clean ». make[1]: quittant le répertoire « /home/alex/test/mon-first-paquet-1.0 » dh_clean dpkg-source -b mon-first-paquet-1.0 dpkg-source : construction de mon-first-paquet à partir de mon-first-paquet_1.0.orig.tar.gz dpkg-source : construction de mon-first-paquet dans mon-first-paquet_1.0-1.diff.gz dpkg-source: avertissement: le fichier « debian/docs », nouvellement créé, ne sera pas représenté dans le diff dpkg-source : construction de mon-first-paquet dans mon-first-paquet_1.0-1.dsc debian/rules build dh_testdir # Add here commands to configure the package. touch configure-stamp dh_testdir # Add here commands to compile the package. /usr/bin/make make[1]: entrant dans le répertoire « /home/alex/test/mon-first-paquet-1.0 » make[1]: Rien à faire pour « all ». make[1]: quittant le répertoire « /home/alex/test/mon-first-paquet-1.0 » #docbook-to-man debian/mon-first-paquet.sgml > mon-first-paquet.1 touch build-stamp fakeroot debian/rules binary dh_testdir dh_testroot dh_clean -k dh_installdirs # Add here commands to install the package into debian/mon-first-paquet. /usr/bin/make DESTDIR=/home/alex/test/mon-first-paquet-1.0/debian/mon-first-paquet install make[1]: entrant dans le répertoire « /home/alex/test/mon-first-paquet-1.0 » make[1]: Rien à faire pour « install ». make[1]: quittant le répertoire « /home/alex/test/mon-first-paquet-1.0 » dh_testdir dh_testroot dh_installchangelogs dh_installdocs dh_installexamples dh_installman dh_link dh_strip dh_compress dh_fixperms dh_installdeb dh_shlibdeps dh_gencontrol dpkg-gencontrol: avertissement: variable de substitution inconnue ${shlibs:Depends} dpkg-gencontrol: avertissement: variable de substitution inconnue ${misc:Depends} dh_md5sums dh_builddeb dpkg-deb : construction du paquet « mon-first-paquet » dans « ../mon-first-paquet_1.0-1_all.deb ». dpkg-genchanges dpkg-genchanges: inclusion du code source original dans l'envoi (« upload ») dpkg-buildpackage (debuild emulation): full upload (original source is included) alex@phalange:~/test/mon-first-paquet-1.0$ ls build-stamp configure-stamp debian Makefile
ls ..
drwxr-xr-x 3 alex alex 4096 2008-10-15 12:48 mon-first-paquet-1.0 -rw-r--r-- 1 alex alex 1746 2008-10-15 12:48 mon-first-paquet_1.0-1_all.deb -rw-r--r-- 1 alex alex 10324 2008-10-15 12:48 mon-first-paquet_1.0-1.diff.gz -rw-r--r-- 1 alex alex 358 2008-10-15 12:48 mon-first-paquet_1.0-1.dsc -rw-r--r-- 1 alex alex 0 2008-10-15 12:44 mon-first-paquet_1.0-1.dsc.asc -rw-r--r-- 1 alex alex 2326 2008-10-15 12:48 mon-first-paquet_1.0-1_i386.build -rw-r--r-- 1 alex alex 929 2008-10-15 12:48 mon-first-paquet_1.0-1_i386.changes -rw-r--r-- 1 alex alex 130 2008-10-15 12:42 mon-first-paquet_1.0.orig.tar.gz
Ensuite pour tester le paquet, on peut soit le mettre sur un dépôt APT soit avec gdebi