Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente Prochaine révisionLes deux révisions suivantes | ||
technique:paquet_depot [2020/04/04 23:55] – créée francoisa | technique:paquet_depot [2020/04/11 02:26] – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Linux : paquets et dépots ====== | ====== Linux : paquets et dépots ====== | ||
- | 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...). | + | 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 ===== | ===== Version simple ===== | ||
- | https:// | + | [[https:// |
- | https:// | + | [[https:// |
- | https:// | + | [[https:// |
Mais comment les créer ? | Mais comment les créer ? | ||
Ligne 20: | Ligne 20: | ||
On aura un dossier " | On aura un dossier " | ||
- | * '' | + | * '' |
* usr/ | * usr/ | ||
- | Le fichier control comprend les informations minimales sur ce paquet : nom, mainteneur (vous), | + | Le fichier control comprend les informations minimales sur ce paquet : nom, mainteneur (vous), |
'' | '' | ||
- | |||
< | < | ||
+ | |||
Package: icecat | Package: icecat | ||
Version: 3.5.1 | Version: 3.5.1 | ||
Ligne 62: | Ligne 62: | ||
==== Création du paquet ==== | ==== Création du paquet ==== | ||
- | dpkg-deb | + | dpkg-deb |
Cette commande créera le fichier nomdudossier.deb | Cette commande créera le fichier nomdudossier.deb | ||
Ligne 72: | Ligne 72: | ||
sudo dpkg -i nomdudossier.deb | sudo dpkg -i nomdudossier.deb | ||
- | Et testez, retestez, re-re-testez... | + | Et testez, retestez, re-re-testez… |
===== Création d'un dépot apt ===== | ===== Création d'un dépot apt ===== | ||
- | https:// | + | [[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:// | ||
+ | |||
+ | Et changer votre fichier local de sources.list : ''/ | ||
+ | < | ||
+ | |||
+ | deb http:// | ||
+ | |||
+ | </ | ||