Comment Backporter un package sous Debian
4 participants
Page 1 sur 1
Comment Backporter un package sous Debian
Debian est souvent décrié pour être à la traine dans les versions de packages.
Pas besoin d'upgrader tout le système pour juste un package, vous pouvez essayer le Backport.
Tout d'abord, vérifier si le paquet n'est pas dispo dans les sources de backports en utilisant la source backport (je vais prendre l'exemple de sabnzbdplus) :
Bon il n'est pas présent dans le backports officiel et on me propose une version 0.5.4 alors que la plus récente est la 0.6.8 (même pas dans les paquets Debian
On peut aussi vérifier sur les sites de backports :
Et si vous ne trouvez pas votre bonheur, vous pouvez tenter un build :
Eh bien on test :
Step 1 - Ajout de la source SRC pour unstable :
Step 2 - apt-get update :
Step 3 - apt-get build-dep :
Step 4 - apt-get -b source :
Et mon .deb est bien là :
Plus qu'a tenter une install :
Je vérifie... Après un Stop / Start propre (pas un restart !) cela fonctionne bien et je suis en 0.6.7 !
Pensez à virer les anciens paquets inutiles (ou à les mettre à jour !):
Pas besoin d'upgrader tout le système pour juste un package, vous pouvez essayer le Backport.
Tout d'abord, vérifier si le paquet n'est pas dispo dans les sources de backports en utilisant la source backport (je vais prendre l'exemple de sabnzbdplus) :
- Code:
root@X:/# cat /etc/apt/sources.list | grep backport
deb http://backports.debian.org/debian-backports squeeze-backports main contrib non-free
root@X:/#apt-get update
root@X:/#apt-cache policy sabnzbdplus
sabnzbdplus:
Installé : 0.5.4-1
Candidat : 0.5.4-1
Table de version :
0.6.7-1 0
101 ftp://debian.proxad.net/debian/ unstable/contrib i386 Packages
0.6.4-1 0
300 ftp://debian.proxad.net/debian/ testing/contrib i386 Packages
*** 0.5.4-1 0
990 ftp://debian.proxad.net/debian/ stable/contrib i386 Packages
100 /var/lib/dpkg/status
Bon il n'est pas présent dans le backports officiel et on me propose une version 0.5.4 alors que la plus récente est la 0.6.8 (même pas dans les paquets Debian
On peut aussi vérifier sur les sites de backports :
Doc officielle Debian a écrit:Aren't there already backports...?
Possibly. Check backports.org and apt-get.org first to see if someone has already done it.
Et si vous ne trouvez pas votre bonheur, vous pouvez tenter un build :
Doc officielle Debian a écrit:How do I backport a sid package to testing or stable?
Install the Debian source (and the development tools, especially debhelper), and then build the package. Step by step:If that doesn't work, you're on your own.
- add a deb-src line for sid to your sources.list
- apt-get update
- apt-get build-dep packagename
- apt-get -b source packagename
- the resulting debs should be in the current directory
Eh bien on test :
Step 1 - Ajout de la source SRC pour unstable :
- Code:
root@shax:/# cat /etc/apt/sources.list | grep unstable
deb ftp://debian.proxad.net/debian unstable main contrib non-free
deb-src ftp://debian.proxad.net/debian unstable main contrib non-free
Step 2 - apt-get update :
- Code:
root@shax:/# apt-get update
[...]
Step 3 - apt-get build-dep :
- Code:
root@shax:/# apt-get build-dep sabnzbdplus
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Les NOUVEAUX paquets suivants seront installés :
dpatch
0 mis à jour, 1 nouvellement installés, 0 à enlever et 9 non mis à jour.
Il est nécessaire de prendre 92,3 ko dans les archives.
Après cette opération, 352 ko d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer [O/n] ? o
Réception de : 1 ftp://debian.proxad.net/debian/ stable/main dpatch all 2.0.31 [92,3 kB]
92,3 ko réceptionnés en 1s (48,1 ko/s)
Sélection du paquet dpatch précédemment désélectionné.
(Lecture de la base de données... 114100 fichiers et répertoires déjà installés.)
Dépaquetage de dpatch (à partir de .../archives/dpatch_2.0.31_all.deb) ...
Traitement des actions différées (« triggers ») pour « man-db »...
Paramétrage de dpatch (2.0.31) ...
[ Rootkit Hunter version 1.3.6 ]
File updated: searched for 163 files, found 140
Step 4 - apt-get -b source :
- Code:
root@shax:/# cd /tmp
root@shax:/tmp# apt-get -b source sabnzbdplus/unstable
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Note : la maintenance du paquet de « sabnzbdplus » est réalisée dans le système de suivi de versions « Svn » à l'adresse :
svn://svn.debian.org/svn/python-apps/packages/sabnzbdplus/trunk/
Nécessité de prendre 1 933 ko dans les sources.
Réception de : 1 ftp://debian.proxad.net/debian/ unstable/contrib sabnzbdplus 0.6.7-1 (dsc) [2 071 B]
Réception de : 2 ftp://debian.proxad.net/debian/ unstable/contrib sabnzbdplus 0.6.7-1 (tar) [1 901 kB]
Réception de : 3 ftp://debian.proxad.net/debian/ unstable/contrib sabnzbdplus 0.6.7-1 (diff) [29,7 kB]
1 933 ko réceptionnés en 29s (66,6 ko/s)
dpkg-source: info: extraction de sabnzbdplus dans sabnzbdplus-0.6.7
dpkg-source: info: extraction de sabnzbdplus_0.6.7.orig.tar.gz
dpkg-source: info: mise en place de sabnzbdplus_0.6.7-1.diff.gz
dpkg-buildpackage: export de CFLAGS depuis dpkg-buildflags (origine : vendor): -g -O2
dpkg-buildpackage: export de CPPFLAGS depuis dpkg-buildflags (origine : vendor):
dpkg-buildpackage: export de CXXFLAGS depuis dpkg-buildflags (origine : vendor): -g -O2
dpkg-buildpackage: export de FFLAGS depuis dpkg-buildflags (origine : vendor): -g -O2
dpkg-buildpackage: export de LDFLAGS depuis dpkg-buildflags (origine : vendor):
dpkg-buildpackage: paquet source sabnzbdplus
dpkg-buildpackage: version source 0.6.7-1
dpkg-buildpackage: source changé par JCF Ploemen (jcfp) <linux@jp.pp.ru>
dpkg-buildpackage: architecture hôte i386
dpkg-source --before-build sabnzbdplus-0.6.7
debian/rules clean
dpatch deapply-all
08_disable_new_version_check not applied to ./ .
06_use_packaged_modules not applied to ./ .
04_use_config_when_daemon not applied to ./ .
02_find_parts_in_usr_share not applied to ./ .
rm -rf patch-stamp patch-stampT debian/patched
dh_testdir
dh_testroot
rm -rf build/ locale/
find . -wholename "./email/*.tmpl" ! -name "*-en.tmpl" -delete
find . -name "*.pyc" -delete
dh_clean
debian/rules build
test -d debian/patched || install -d debian/patched
dpatch apply-all
applying patch 02_find_parts_in_usr_share to ./ ... ok.
applying patch 04_use_config_when_daemon to ./ ... ok.
applying patch 06_use_packaged_modules to ./ ... ok.
applying patch 08_disable_new_version_check to ./ ... ok.
dpatch cat-all >>patch-stampT
mv -f patch-stampT patch-stamp
debian/rules binary
dh_testdir
dh_testroot
dh_prep
# Generate translations
python tools/make_mo.py
Email MO files
Compile locale/da/LC_MESSAGES/SABemail.mo
Compile locale/de/LC_MESSAGES/SABemail.mo
Compile locale/en/LC_MESSAGES/SABemail.mo
Compile locale/fr/LC_MESSAGES/SABemail.mo
Compile locale/nb/LC_MESSAGES/SABemail.mo
Compile locale/nl/LC_MESSAGES/SABemail.mo
Compile locale/ro/LC_MESSAGES/SABemail.mo
Compile locale/sv/LC_MESSAGES/SABemail.mo
Create email templates from MO files
Create email template for da
Create email template for de
Create email template for fr
Create email template for nb
Create email template for nl
Create email template for ro
Create email template for sv
Main program MO files
Compile locale/da/LC_MESSAGES/SABnzbd.mo
Compile locale/de/LC_MESSAGES/SABnzbd.mo
Compile locale/fr/LC_MESSAGES/SABnzbd.mo
Compile locale/nb/LC_MESSAGES/SABnzbd.mo
Compile locale/nl/LC_MESSAGES/SABnzbd.mo
Compile locale/ro/LC_MESSAGES/SABnzbd.mo
Compile locale/sv/LC_MESSAGES/SABnzbd.mo
Remove temporary templates
find locale -type d -empty -delete
# Create icons, 32x32 xpm for Debian menu, 48x48 png for XDG menu
convert -resize 32x32 interfaces/wizard/static/images/icon_sab.png sabnzbdplus.xpm
convert -resize 48x48 interfaces/wizard/static/images/icon_sab.png sabnzbdplus.png
dh_install \
--exclude=static/MochiKit/ \
--exclude=wizard/README.TXT \
--exclude=utils/feedparser.py \
--exclude=utils/configobj.py \
--exclude=excanvas/excanvas.js \
--exclude=images-split.tar.gz \
--exclude=cherrypy/LICENSE.txt \
--exclude=cherrypy/cherryd \
--exclude=cherrypy/scaffold
# Strip caps and script extension from the executable
mv /tmp/sabnzbdplus-0.6.7/debian/sabnzbdplus/usr/bin/SABnzbd.py /tmp/sabnzbdplus-0.6.7/debian/sabnzbdplus/usr/bin/sabnzbdplus
dh_testdir -i
dh_testroot -i
# Account for changelogs using non-standard names or being included in readme files
dh_installchangelogs
dh_installchangelogs -p sabnzbdplus CHANGELOG.txt
dh_installchangelogs -p sabnzbdplus-theme-plush -k interfaces/Plush/README.txt
dh_installchangelogs -p sabnzbdplus-theme-smpl -k interfaces/smpl/README.txt
dh_installchangelogs -p sabnzbdplus-theme-mobile -k interfaces/Mobile/README.txt
dh_installdocs -i
dh_installexamples -i
dh_installman -i
dh_link -i
dh_icons -i
dh_installmenu -i
dh_lintian -i
dh_python2 -i
dh_installinit -i -- defaults 98 02
dh_compress -i
dh_fixperms -i
dh_installdeb -i
dh_gencontrol -i
dh_md5sums -i
dh_builddeb -i
dpkg-deb : construction du paquet « sabnzbdplus » dans « ../sabnzbdplus_0.6.7-1_all.deb ».
dpkg-deb : construction du paquet « sabnzbdplus-theme-plush » dans « ../sabnzbdplus-theme-plush_0.6.7-1_all.deb ».
dpkg-deb : construction du paquet « sabnzbdplus-theme-smpl » dans « ../sabnzbdplus-theme-smpl_0.6.7-1_all.deb ».
dpkg-deb : construction du paquet « sabnzbdplus-theme-iphone » dans « ../sabnzbdplus-theme-iphone_0.6.7-1_all.deb ».
dpkg-deb : construction du paquet « sabnzbdplus-theme-mobile » dans « ../sabnzbdplus-theme-mobile_0.6.7-1_all.deb ».
dpkg-deb : construction du paquet « sabnzbdplus-theme-classic » dans « ../sabnzbdplus-theme-classic_0.6.7-1_all.deb ».
dpkg-genchanges -b >../sabnzbdplus_0.6.7-1_i386.changes
dpkg-genchanges: envoi d'un binaire - aucune inclusion de code source
dpkg-source --after-build sabnzbdplus-0.6.7
dpkg-buildpackage: envoi d'un binaire seulement (aucune inclusion de code source)
Et mon .deb est bien là :
- Code:
root@shax:/tmp# ls sabnzb*.deb
sabnzbdplus_0.6.7-1_all.deb
sabnzbdplus-theme-classic_0.6.7-1_all.deb
sabnzbdplus-theme-iphone_0.6.7-1_all.deb
sabnzbdplus-theme-mobile_0.6.7-1_all.deb
sabnzbdplus-theme-plush_0.6.7-1_all.deb
sabnzbdplus-theme-smpl_0.6.7-1_all.deb
Plus qu'a tenter une install :
- Code:
root@shax:/tmp# dpkg -i sabnzbdplus_0.6.7-1_all.deb sabnzbdplus-theme-plush_0.6.7-1_all.deb
(Lecture de la base de données... 114177 fichiers et répertoires déjà installés.)
Préparation du remplacement de sabnzbdplus 0.6.7-1 (en utilisant sabnzbdplus_0.6.7-1_all.deb) ...
Dépaquetage de la mise à jour de sabnzbdplus ...
Préparation du remplacement de sabnzbdplus-theme-plush 0.5.4-1 (en utilisant sabnzbdplus-theme-plush_0.6.7-1_all.deb) ...
Dépaquetage de la mise à jour de sabnzbdplus-theme-plush ...
Paramétrage de sabnzbdplus-theme-plush (0.6.7-1) ...
Paramétrage de sabnzbdplus (0.6.7-1) ...
Installation de la nouvelle version du fichier de configuration /etc/init.d/sabnzbdplus ...
Starting SABnzbd+ binary newsgrabber:.
Traitement des actions différées (« triggers ») pour « man-db »...
Traitement des actions différées (« triggers ») pour « menu »...
Je vérifie... Après un Stop / Start propre (pas un restart !) cela fonctionne bien et je suis en 0.6.7 !
Pensez à virer les anciens paquets inutiles (ou à les mettre à jour !):
- Code:
root@shax:/tmp# dpkg -l|grep sabnzbd
ii sabnzbdplus 0.6.7-1 web-based binary newsgrabber with nzb support
ii sabnzbdplus-theme-classic 0.5.4-1 classic interface templates for the SABnzbd+ binary newsgrabber
ii sabnzbdplus-theme-plush 0.6.7-1 plush interface templates for the SABnzbd+ binary newsgrabber
ii sabnzbdplus-theme-smpl 0.5.4-1 smpl interface templates for the SABnzbd+ binary newsgrabber
root@shax:/tmp# dpkg --purge remove sabnzbdplus-theme-smpl sabnzbdplus-theme-classic
dpkg : avertissement : requête ignorée : suppression de remove, qui n'est pas installé.
(Lecture de la base de données... 114203 fichiers et répertoires déjà installés.)
Suppression de sabnzbdplus-theme-smpl ...
Suppression de sabnzbdplus-theme-classic ...
Dernière édition par sioban le Sam 10 Sep 2011 - 9:34, édité 1 fois
Freyja- Coadmin
- Nombre de messages : 21093
Localisation : Perdue dans les genres
pmgamer- NHFR All Stars
- Nombre de messages : 12433
Localisation : Nulle Part Ailleurs
nico44z- Coadmin
- Nombre de messages : 19973
Localisation : saint seb
Re: Comment Backporter un package sous Debian
je suppose que c'est assez similaire pour Ubuntu ?
en tout cas
en tout cas
Remuald- Coadmin
- Nombre de messages : 31630
Localisation : anywhere
Re: Comment Backporter un package sous Debian
oui je pense
Freyja- Coadmin
- Nombre de messages : 21093
Localisation : Perdue dans les genres
Re: Comment Backporter un package sous Debian
Pour ceux que ça intéresse j'ai fait un petit script pour automatiser l'installation
Freyja- Coadmin
- Nombre de messages : 21093
Localisation : Perdue dans les genres
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum