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 | ||
technique:paquet_depot [2020/04/11 02:26] – modification externe 127.0.0.1 | technique:paquet_depot [2024/04/02 15:08] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Linux : paquets et dépots ====== | + | **Cette page est obsolète. Veuillez accéder au contenu |
- | + | ||
- | Plutôt que de copier des fichiers avec des scripts, il peut être plus utilie de proposer des paquets deb (pour les Linux basés sur Debian, Ubuntu, Mint…). | + | |
- | + | ||
- | ===== Version simple ===== | + | |
- | + | ||
- | [[https:// | + | |
- | [[https:// | + | |
- | [[https:// | + | |
- | + | ||
- | Mais comment les créer ? | + | |
- | + | ||
- | Il faut préparer ce paquet dans un dossier dédié qui contient : | + | |
- | + | ||
- | | + | |
- | | + | |
- | + | ||
- | Exemple si on veut copier des fichiers dans / | + | |
- | + | ||
- | On aura un dossier " | + | |
- | + | ||
- | * '' | + | |
- | * usr/ | + | |
- | + | ||
- | Le fichier control comprend les informations minimales sur ce paquet : nom, mainteneur (vous), | + | |
- | + | ||
- | '' | + | |
- | < | + | |
- | + | ||
- | Package: icecat | + | |
- | Version: 3.5.1 | + | |
- | Architecture: | + | |
- | Maintainer: Gnuzilla Project | + | |
- | Section: web | + | |
- | Priority: optional | + | |
- | Installed-Size: | + | |
- | Description: | + | |
- | IceCat | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | Cas d'un fichier '' | + | |
- | + | ||
- | < | + | |
- | [DesktopEntry] | + | |
- | Version=3.5.1 | + | |
- | Encoding=UTF-8 | + | |
- | Name=IceCat | + | |
- | GenericName=IceCat | + | |
- | Comment=Navigateur Web (Firefox totalement libre) | + | |
- | Exec=icecat | + | |
- | Icon=/ | + | |
- | Terminal=false | + | |
- | Type=Application | + | |
- | Categories=Application; | + | |
- | Name[fr_FR]=IceCat | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | On peutaussi créer des fichiers spécifiques dans DEBIEN qui s' | + | |
- | + | ||
- | ==== Création du paquet ==== | + | |
- | + | ||
- | dpkg-deb –build nomdudossier # celui qui contient DEBIAN) | + | |
- | + | ||
- | Cette commande créera le fichier nomdudossier.deb | + | |
- | + | ||
- | ==== Installation du paquet ==== | + | |
- | + | ||
- | Pour tester l' | + | |
- | + | ||
- | sudo dpkg -i nomdudossier.deb | + | |
- | + | ||
- | Et testez, retestez, re-re-testez… | + | |
- | + | ||
- | ===== Création d'un dépot apt ===== | + | |
- | + | ||
- | [[https://doc.ubuntu-fr.org/tutoriel/comment_creer_depot|https:// | + | |
- | + | ||
- | Principe : on prépare un dossier en local, on le configure, on dépose ses paquets, on lance un script qui va créer l' | + | |
- | + | ||
- | ==== Installation reprepro ==== | + | |
- | + | ||
- | sudo apt install reprepro | + | |
- | < | + | |
- | + | ||
- | mkdir apt | + | |
- | mkdir -p ./ | + | |
- | mkdir -p ./ | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | Création du fichier ./'' | + | |
- | + | ||
- | < | + | |
- | Origin: Votre Nom | + | |
- | Label: Label de votre société (ou autre) | + | |
- | Suite: stable | + | |
- | Codename: trusty | + | |
- | Version: 14.04 | + | |
- | Architectures: | + | |
- | Components: main restricted universe multiverse #(en fonction de vos besoin) | + | |
- | Description: | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | Mettre vos .deb dans le dossier incoming. | + | |
- | + | ||
- | < | + | |
- | cd apt | + | |
- | reprepro -Vb . includedeb (distribution) incoming/ | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | ==== Tester localement ==== | + | |
- | + | ||
- | Tester avec un sources.list (déplacer le dossier dans /var/www par exemple si problème d' | + | |
- | + | ||
- | < | + | |
- | deb file:/ | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | Puis | + | |
- | + | ||
- | < | + | |
- | sudo apt-get update | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | ==== Signer son dépot ==== | + | |
- | + | ||
- | Signer le dépot avec une [[https:// | + | |
- | < | + | |
- | + | ||
- | sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key XXXXX # ou XXXX est l' | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | Rajouter dans '' | + | |
- | + | ||
- | < | + | |
- | SignWith: XXXXXXXX # où XXXX est l' | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | Puis dans apt/, lancer : | + | |
- | + | ||
- | < | + | |
- | reprepro --ask-passphrase export | + | |
- | + | ||
- | </ | + | |
- | + | ||
- | Et entrer le mot de passe de votre clef PGP | + | |
- | + | ||
- | ==== Envoyer son dépot à distance ==== | + | |
- | + | ||
- | Copier votre dossier distant dans un site accessible en http comme [[https://depot.cemea.org|https:// | + | |
- | + | ||
- | Et changer votre fichier local de sources.list : ''/ | + | |
- | < | + | |
- | + | ||
- | deb http:// | + | |
- | + | ||
- | </ | + |