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, 00:04] 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 | + | |
- | mkdir -p $HOME/pbuilder/jammy/result/ | + | https://bitbucket.org/amidevous/fedora-rpm/src/master/pbuilder/ |
- | mkdir -p $HOME/pbuilder/jammy/build/ | + | |
- | mkdir -p $HOME/pbuilder/jammy/nonexistent | + | inclut fonction utile pour créer des multiples rapidement |
- | mkdir -p $HOME/pbuilder/jammy/aptcache/ | + | |
- | mkdir -p $HOME/pbuilder/jammy/hooks | + | vous pouvez l'installer en 1 click mais je vous met le centos si dessus |
- | nano $HOME/pbuilder/pbuilder-jammy.conf | + | |
- | </code> | + | <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> |
- | <file> | ||
- | # 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 | ||
- | # For Ubuntu | ||
- | MIRRORSITE=http://archive.ubuntu.com/ubuntu | ||
- | # For Debian | ||
- | #DEBIAN#MIRRORSITE=http://deb.debian.org/debian/ | ||
- | # For Ubuntu | ||
- | COMPONENTS="main restricted universe multiverse" | ||
- | # For Debian | ||
- | #DEBIAN#COMPONENTS="main contrib non-free" | ||
- | # For Ubuntu | ||
- | OTHERMIRROR="deb-src http://archive.ubuntu.com/ubuntu/ jammy main restricted universe multiverse|deb http://security.ubuntu.com/ubuntu jammy-security main restricted universe multiverse|deb-src http://archive.ubuntu.com/ubuntu/ jammy-updates main restricted universe multiverse|deb http://archive.ubuntu.com/ubuntu/ jammy-updates main restricted universe multiverse|deb-src http://security.ubuntu.com/ubuntu jammy-security main restricted universe multiverse|deb http://archive.canonical.com/ubuntu jammy partner|deb-src http://archive.canonical.com/ubuntu jammy partner" | ||
- | # For Debian | ||
- | #DEBIAN#OTHERMIRROR="deb-src http://deb.debian.org/debian/ jammy main contrib non-free|deb http://deb.debian.org/debian/ jammy-updates main contrib non-free|deb-src http://deb.debian.org/debian/ jammy-updates main contrib non-free|deb http://deb.debian.org/debian-security/ jammy/updates main contrib non-free|deb-src http://deb.debian.org/debian-security/ jammy/updates main contrib non-free|deb http://deb.debian.org/debian jammy-backports main contrib non-free|deb-src http://deb.debian.org/debian jammy-backports main contrib non-free" | ||
- | #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 | ||
<code> | <code> | ||
- | sudo nano /usr/bin/pbuilder-jammy | + | #!/bin/bash |
+ | ubuntuori () { | ||
+ | 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-ubuntu-stable" -O /usr/bin/pbuilder-$1 | ||
+ | chmod +x /usr/bin/pbuilder-$1 | ||
+ | sudo pbuilder-$1 create | ||
+ | } | ||
+ | ubuntuarc () { | ||
+ | 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-ubuntu-old" -O /usr/bin/pbuilder-$1 | ||
+ | chmod +x /usr/bin/pbuilder-$1 | ||
+ | sudo pbuilder-$1 create | ||
+ | } | ||
+ | ubuntuarc2 () { | ||
+ | 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-ubuntu-old2" -O /usr/bin/pbuilder-$1 | ||
+ | chmod +x /usr/bin/pbuilder-$1 | ||
+ | sudo pbuilder-$1 create | ||
+ | } | ||
+ | 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> | ||
- | <file> | + | ensuite créer facilement les configuration |
- | #!/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 \ | + | |
- | --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> | + | |
- | + | ||
- | utilisation de la version améliorer | + | |
+ | <code>sudo pbuilder-config</code> | ||