Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
pbuilder [Le 15/11/2023, 01:58] andykimpe |
pbuilder [Le 31/10/2024, 19:32] (Version actuelle) 89.86.155.3 |
||
---|---|---|---|
Ligne 30: | Ligne 30: | ||
<note tip> | <note tip> | ||
- | Si vous obtenez l'erreur //"debootstrap does not exist"//, installez **debootstrap** ou exécutez pbuilder avec l'option //--debootstrap cdebootstrap// (vous avez probablement cdebootstrap installé). | + | Si vous obtenez l'erreur //"debootstrap does not exist"//, installez **debootstrap** ou exécutez pbuilder avec l'option //%%--debootstrap cdebootstrap%%// (vous avez probablement cdebootstrap installé). |
</note> | </note> | ||
Ligne 56: | Ligne 56: | ||
* Créez un pbuilder Feisty : //sudo pbuilder create// | * Créez un pbuilder Feisty : //sudo pbuilder create// | ||
* Changez toutes les occurrences de **feisty** en **gutsy** dans **/etc/pbuilderrc** | * Changez toutes les occurrences de **feisty** en **gutsy** dans **/etc/pbuilderrc** | ||
- | * Mettez à jour le chroot : //sudo pbuilder update --override-config// | + | * Mettez à jour le chroot : //%%sudo pbuilder update --override-config%%// |
- | * Utilisez l'option //--override-config// à chaque mise à jour (tant que la version n'est pas prise en compte par pbuilder) | + | * Utilisez l'option //%%--override-config%%// à chaque mise à jour (tant que la version n'est pas prise en compte par pbuilder) |
=====Pbuilders multiples===== | =====Pbuilders multiples===== | ||
Ligne 97: | Ligne 97: | ||
</file> | </file> | ||
- | version améliorer avec config priver | + | version améliorer avec config priver |
en personnalisant la config fonctionne sur Ubuntu Debian et Fedora | en personnalisant la config fonctionne sur Ubuntu Debian et Fedora | ||
- | l'exemple est donner pour la version LTS Ubuntu Jammy 22.04 | ||
- | <code> | + | voir le projet sur bitbucket |
- | mkdir -p $HOME/pbuilder | + | |
- | nano $HOME/pbuilder/pbuilder-config.conf | + | |
- | </code> | + | |
- | <file> | + | https://bitbucket.org/amidevous/fedora-rpm/src/master/pbuilder/ |
- | # pbuilder defaults; edit /etc/pbuilderrc to override these and see | + | |
- | # pbuilderrc.5 for documentation | + | |
- | #si sa marche pas changer $HOME en /home/votreutilisateur | + | |
- | BASE_DIR="$HOME/pbuilder" | + | |
- | #si la variable BASE_DIR ne marche pas remplacer la directement par /home/votreutilisateur | + | |
- | DISTRIBUTION=jammy | + | |
- | BASETGZ=$BASE_DIR/base-jammy.tgz | + | |
- | ARCHITECTURE=amd64 | + | |
- | EXTRAPACKAGES="wget nano curl" | + | |
- | #export DEBIAN_BUILDARCH=athlon | + | |
- | BUILDPLACE=$BASE_DIR/jammy/build/ | + | |
- | BUILDDIR=$BASE_DIR/jammy/build/ | + | |
- | BUILDRESULT=$BASE_DIR/jammy/result/ | + | |
- | APTCACHE="$BASE_DIR/jammy/aptcache/" | + | |
- | HOOKDIR="$BASE_DIR/jammy/hooks" | + | |
- | BUILD_HOME=$BASE_DIR/jammy/nonexistent | + | |
- | #export http_proxy=http://your-proxy:8080/ | + | |
- | USESHM=yes | + | |
- | USEPROC=yes | + | |
- | USEDEVFS=no | + | |
- | USEDEVPTS=yes | + | |
- | USESYSFS=yes | + | |
- | USENETWORK=no | + | |
- | USECGROUP=yes | + | |
- | APTCACHEHARDLINK="yes" | + | |
- | REMOVEPACKAGES="" | + | |
- | EATMYDATA=no | + | |
- | export DEBIAN_FRONTEND="noninteractive" | + | |
- | BUILDSOURCEROOTCMD="fakeroot" | + | |
- | PBUILDERROOTCMD="sudo -E" | + | |
- | #PDEBUILD_PBUILDER="cowbuilder" | + | |
- | PBUILDERSATISFYDEPENDSCMD="/usr/lib/pbuilder/pbuilder-satisfydepends-apt" | + | |
- | ALLOWUNTRUSTED=no | + | |
- | export APTGETOPT=() | + | |
- | export APTITUDEOPT=() | + | |
- | DEBDELTA=no | + | |
- | #DEBBUILDOPTS="-IXXX -iXXX" | + | |
- | DEBBUILDOPTS="${DEBBUILDOPTS}" | + | |
- | APTCONFDIR="" | + | |
- | BUILDUSERNAME=pbuilder | + | |
- | BUILDUSERID=$(grep $BUILDUSERNAME /etc/passwd | cut -d: -f3) | + | |
- | BINDMOUNTS="" | + | |
- | DEBOOTSTRAPOPTS=( | + | |
- | '--variant=buildd' | + | |
- | '--force-check-gpg' | + | |
- | ) | + | |
- | # or unset it to make it not a buildd type. | + | |
- | # unset DEBOOTSTRAPOPTS | + | |
- | # Keyrings to use for package verification with apt, not used for debootstrap | + | |
- | # (use DEBOOTSTRAPOPTS). By default the debian-archive-keyring package inside | + | |
- | # the chroot is used. | + | |
- | APTKEYRINGS=() | + | |
- | # Set the PATH I am going to use inside pbuilder: default is "/usr/sbin:/usr/bin:/sbin:/bin" | + | |
- | export PATH="/usr/sbin:/usr/bin:/sbin:/bin" | + | |
- | # SHELL variable is used inside pbuilder by commands like 'su'; and they need sane values | + | |
- | export SHELL=/bin/bash | + | |
- | # The name of debootstrap command, you might want "cdebootstrap". | + | |
- | DEBOOTSTRAP="debootstrap" | + | |
- | PKGNAME_LOGFILE_EXTENSION="_$(dpkg --print-architecture).build" | + | |
- | PKGNAME_LOGFILE="" | + | |
- | AUTOCLEANAPTCACHE="" | + | |
- | COMPRESSPROG="gzip" | + | |
- | # pbuilder copies some configuration files (like /etc/hosts or /etc/hostname) | + | |
- | # from the host system into the chroot. If the directory specified here | + | |
- | # exists and contains one of the copied files (without the leading /etc) that | + | |
- | # file will be copied from here instead of the system one | + | |
- | CONFDIR="/etc/pbuilder/conf_files" | + | |
- | # ccache (make sure ccache is installed before uncommenting) | + | |
- | CCACHEDIR="" | + | |
- | # Note: CCACHEDIR is private to pbuilder, ccache uses "CCACHE_DIR" | + | |
- | #CCACHEDIR="/var/cache/pbuilder/ccache" | + | |
- | #export CCACHE_DIR="${CCACHEDIR}" | + | |
- | #export PATH="/usr/lib/ccache:${PATH}" | + | |
- | #EXTRAPACKAGES=ccache | + | |
- | #BINDMOUNTS="${BINDMOUNTS} ${CCACHE_DIR}" | + | |
- | LOGLEVEL=I | + | |
- | USECOLORS=auto | + | |
- | </file> | + | |
- | installer le binaire | + | inclut fonction utile pour créer des multiples rapidement |
- | <code> | + | vous pouvez l'installer en 1 click mais je vous met le centos si dessus |
- | sudo nano /usr/bin/pbuilder-config | + | |
- | </code> | + | |
- | <file> | + | <code>sudo wget https://bitbucket.org/amidevous/fedora-rpm/raw/master/pbuilder/debian/pbuilder-config -O /usr/bin/pbuilder-config && sudo chmod +x /usr/bin/pbuilder-config</code> |
- | #!/bin/sh | + | |
- | # script from Jamin W. Collins BTS: #255165 | + | |
- | # script updated by andykimpe | + | |
- | # name this script 'pbuilder-woody', 'pbuilder-sid', 'pbuilder-sarge', 'pbuilder-experimental' etc. | + | |
- | OPERATION=$1 | ||
- | DISTRIBUTION=`basename $0 | cut -f2 -d '-'` | ||
- | PROCEED=false | ||
- | BASE_DIR="$HOME/pbuilder" | ||
- | case $OPERATION in | ||
- | create|update|build|clean|login|execute ) | ||
- | PROCEED=true | ||
- | ;; | ||
- | esac | ||
- | if ( $PROCEED == true ) then | ||
- | shift | ||
- | sudo pbuilder $OPERATION \ | ||
- | --distribution $DISTRIBUTION \ | ||
- | --basetgz /root/pbuilder/base-$DISTRIBUTION.tgz \ | ||
- | --configfile $BASE_DIR/pbuilder-$DISTRIBUTION.conf $@ | ||
- | else | ||
- | echo "Invalid command..." | ||
- | echo "Valid commands are:" | ||
- | echo " create" | ||
- | echo " update" | ||
- | echo " build" | ||
- | echo " clean" | ||
- | echo " login" | ||
- | echo " execute" | ||
- | exit 1 | ||
- | fi | ||
- | </file> | ||
- | fonction utile pour créer des multiple rapidement | ||
<code> | <code> | ||
- | pbuilderubuntu () { | + | #!/bin/bash |
- | rm -f $HOME/pbuilder/pbuilder-$1.conf | + | ubuntuori () { |
- | cp $HOME/pbuilder/pbuilder-config.conf $HOME/pbuilder/pbuilder-$1.conf | + | sudo wget "https://bitbucket.org/amidevous/fedora-rpm/raw/master/pbuilder/debian/pbuilderrc" -O /etc/pbuilderrc |
- | sudo rm -f usr/bin/pbuilder-$1 | + | sudo wget "https://bitbucket.org/amidevous/fedora-rpm/raw/master/pbuilder/debian/pbuilder-ubuntu-stable" -O /usr/bin/pbuilder-$1 |
- | sudo cp /usr/bin/pbuilder-config /usr/bin/pbuilder-$1 | + | chmod +x /usr/bin/pbuilder-$1 |
- | sudo chmod +x /usr/bin/pbuilder-$1 | + | sudo pbuilder-$1 create |
- | mkdir -p $HOME/pbuilderr/$1 | + | |
- | mkdir -p $HOME/pbuilder/$1/aptcache/ | + | |
- | mkdir -p $HOME/pbuilder/$1/result/ | + | |
- | mkdir -p $HOME/pbuilder/$1/build | + | |
- | mkdir -p $HOME/pbuilder/$1/nonexistent | + | |
- | mkdir -p $HOME/pbuilder/$1/hooks | + | |
- | sed -i 's|jammy|'$1'|g' $HOME/pbuilder/pbuilder-$1.conf | + | |
- | echo 'MIRRORSITE=http://archive.ubuntu.com/ubuntu' >> $HOME/pbuilder/pbuilder-$1.conf | + | |
- | echo 'OTHERMIRROR="deb-src http://archive.ubuntu.com/ubuntu/ '$1' main restricted universe multiverse|deb http://security.ubuntu.com/ubuntu '$1'-security main restricted universe multiverse|deb-src http://security.ubuntu.com/ubuntu '$1'-security main restricted universe multiverse|deb-src http://archive.ubuntu.com/ubuntu/ '$1'-updates main restricted universe multiverse|deb http://archive.ubuntu.com/ubuntu/ '$1'-updates main restricted universe multiverse|deb-src http://security.ubuntu.com/ubuntu '$1'-security main restricted universe multiverse|deb http://archive.canonical.com/ubuntu '$1' partner|deb-src http://archive.canonical.com/ubuntu '$1' partner"' >> $HOME/pbuilder/pbuilder-$1.conf | + | |
- | pbuilder-$1 create --override-config | + | |
} | } | ||
- | pbuilderdebian () { | + | ubuntuarc () { |
- | rm -f $HOME/pbuilder/pbuilder-$1.conf | + | sudo wget "https://bitbucket.org/amidevous/fedora-rpm/raw/master/pbuilder/debian/pbuilderrc" -O /etc/pbuilderrc |
- | cp $HOME/pbuilder/pbuilder-config.conf $HOME/pbuilder/pbuilder-$1.conf | + | sudo wget "https://bitbucket.org/amidevous/fedora-rpm/raw/master/pbuilder/debian/pbuilder-ubuntu-old" -O /usr/bin/pbuilder-$1 |
- | sudo rm -f usr/bin/pbuilder-$1 | + | chmod +x /usr/bin/pbuilder-$1 |
- | sudo cp /usr/bin/pbuilder-config /usr/bin/pbuilder-$1 | + | sudo pbuilder-$1 create |
- | sudo chmod +x /usr/bin/pbuilder-$1 | + | |
- | mkdir -p $HOME/pbuilderr/$1 | + | |
- | mkdir -p $HOME/pbuilder/$1/aptcache/ | + | |
- | mkdir -p $HOME/pbuilder/$1/result/ | + | |
- | mkdir -p $HOME/pbuilder/$1/build | + | |
- | mkdir -p $HOME/pbuilder/$1/nonexistent | + | |
- | mkdir -p $HOME/pbuilder/$1/hooks | + | |
- | sed -i 's|jammy|'$1'|g' $HOME/pbuilder/pbuilder-$1.conf | + | |
- | echo 'MIRRORSITE=http://deb.debian.org/debian/' >> $HOME/pbuilderr/pbuilder-$1.conf | + | |
- | echo 'COMPONENTS="main contrib non-free"' >> $HOME/pbuilderr/pbuilder-$1.conf | + | |
- | echo 'OTHERMIRROR="deb-src http://deb.debian.org/debian/ '$1' main contrib non-free|deb http://deb.debian.org/debian/ '$1'-updates main contrib non-free|deb-src http://deb.debian.org/debian/ '$1'-updates main contrib non-free|deb http://deb.debian.org/debian-security/ '$1'/updates main contrib non-free|deb-src http://deb.debian.org/debian-security/ '$1'/updates main contrib non-free|deb http://deb.debian.org/debian '$1'-backports main contrib non-free|deb-src http://deb.debian.org/debian '$1'-backports main contrib non-free"' >> $HOME/pbuilderr/pbuilder-$1.conf | + | |
- | pbuilder-$1 create --override-config | + | |
} | } | ||
- | pbuilderubuntu bionic | + | ubuntuarc2 () { |
- | pbuilderubuntu focal | + | sudo wget "https://bitbucket.org/amidevous/fedora-rpm/raw/master/pbuilder/debian/pbuilderrc" -O /etc/pbuilderrc |
- | pbuilderubuntu jammy | + | sudo wget "https://bitbucket.org/amidevous/fedora-rpm/raw/master/pbuilder/debian/pbuilder-ubuntu-old2" -O /usr/bin/pbuilder-$1 |
- | pbuilderubuntu trusty | + | chmod +x /usr/bin/pbuilder-$1 |
- | pbuilderdebian buster | + | sudo pbuilder-$1 create |
- | pbuilderdebian bullseye | + | } |
+ | debianori () { | ||
+ | sudo wget "https://bitbucket.org/amidevous/fedora-rpm/raw/master/pbuilder/debian/pbuilderrc" -O /etc/pbuilderrc | ||
+ | sudo wget "https://bitbucket.org/amidevous/fedora-rpm/raw/master/pbuilder/debian/pbuilder-debian-$1" -O /usr/bin/pbuilder-$1 | ||
+ | chmod +x /usr/bin/pbuilder-$1 | ||
+ | sudo pbuilder-$1 create | ||
+ | } | ||
+ | # Ubuntu 24.04 The Noble Numbat (le Noble numbat) support Avril 2029 | ||
+ | sudo rm -f /usr/share/debootstrap/scripts/noble | ||
+ | sudo cp /usr/share/debootstrap/scripts/jammy /usr/share/debootstrap/scripts/noble | ||
+ | ubuntuori noble | ||
+ | #Ubuntu 23.10 The Mantic Minotaur (le Minotaure mantique) support Juillet 2024 | ||
+ | sudo rm -f /usr/share/debootstrap/scripts/mantic | ||
+ | sudo cp /usr/share/debootstrap/scripts/jammy /usr/share/debootstrap/scripts/mantic | ||
+ | #ubuntuori mantic | ||
+ | #Ubuntu 23.04 The Lunar Lobster (le Homard lunaire) support Janvier 2024 | ||
+ | sudo rm -f /usr/share/debootstrap/scripts/lunar | ||
+ | sudo cp /usr/share/debootstrap/scripts/jammy /usr/share/debootstrap/scripts/lunar | ||
+ | #ubuntuori lunar | ||
+ | #Ubuntu 22.10 The Kinetic Kudu (le Koudou cinétique) support 20 Juillet 2023 | ||
+ | sudo rm -f /usr/share/debootstrap/scripts/kinetic | ||
+ | sudo cp /usr/share/debootstrap/scripts/jammy /usr/share/debootstrap/scripts/kinetic | ||
+ | #ubuntuarc kinetic | ||
+ | #Ubuntu 22.04 LTS The Jammy Jellyfish (la méduse chanceuse) support Avril 2027 | ||
+ | ubuntuori jammy | ||
+ | #Ubuntu 21.10 The Impish Indri (indri espiègle) | ||
+ | #ubuntuarc impish | ||
+ | #Ubuntu 21.04 The Hirsute Hippo (l'hippopotame hirsute) | ||
+ | #ubuntuarc hirsute | ||
+ | #Ubuntu 20.10 The Groovy Gorilla (le gorille sensationnel) | ||
+ | #ubuntuarc groovy | ||
+ | #Ubuntu 20.04 LTS The Focal Fossa (le fossa focal) | ||
+ | ubuntuori focal | ||
+ | #Ubuntu 19.10 The Eoan Ermine (l'ermine de l'aube) | ||
+ | #ubuntuarc eoan | ||
+ | #Ubuntu 19.04 The Disco Dingo (le dingo disco) | ||
+ | #ubuntuarc disco | ||
+ | #Ubuntu 18.10 The Cosmic Cuttlefish (la seiche cosmique) | ||
+ | #ubuntuarc cosmic | ||
+ | #Ubuntu 18.04 LTS The Bionic Beaver (le castor bionique) | ||
+ | #ubuntuori bionic | ||
+ | #Ubuntu 17.10 The Artful Aardvark (l'oryctérope du Cap astucieux ) | ||
+ | #ubuntuarc artful | ||
+ | #Ubuntu 17.04 The Zesty Zapus (le zapus plaisant) | ||
+ | #ubuntuarc zesty | ||
+ | #Ubuntu 16.10 The Yakkety Yak (le yak bavard) | ||
+ | #ubuntuarc yakkety | ||
+ | # Ubuntu 16.04 LTS The Xenial Xerus (le xerus hospitalier) | ||
+ | #ubuntuori xenial | ||
+ | #Ubuntu 15.10 The Wily Werewolf (le loup-garou rusé) | ||
+ | #ubuntuarc wily | ||
+ | #Ubuntu 15.04 The Vivid Vervet (le vervet vif) | ||
+ | #ubuntuarc vivid | ||
+ | #Ubuntu 14.10 The Utopic Unicorn (la licorne utopique) | ||
+ | #ubuntuarc utopic | ||
+ | #Ubuntu 14.04 LTS The Trusty Tahr (le bélier confiant) | ||
+ | #ubuntuori trusty | ||
+ | #Ubuntu 13.10 The Saucy Salamander (la salamandre délurée) | ||
+ | #ubuntuarc saucy | ||
+ | #Ubuntu 13.04 The Raring Ringtail (le bassaris enthousiaste) | ||
+ | #ubuntuarc raring | ||
+ | #Ubuntu 12.10 The Quantal Quetzal (le quetzal quantique) | ||
+ | #ubuntuarc quantal | ||
+ | #Ubuntu 12.04 LTS The Precise Pangolin (le pangolin précis) | ||
+ | #ubuntuarc2 precise | ||
+ | #Ubuntu 11.10 The Oneiric Ocelot (l'ocelot onirique) | ||
+ | #ubuntuarc2 oneiric | ||
+ | # Debian 12 Bookworm (Rat de bibliothèque) | ||
+ | #debianori bookworm | ||
+ | # Debian 11 Bullseye (Bulle) | ||
+ | #debianori bullseye | ||
</code> | </code> | ||
+ | |||
+ | ensuite créer facilement les configuration | ||
+ | |||
+ | <code>sudo pbuilder-config</code> | ||