Un méta-paquet comme celui-ci peut être créé avec un outil appelé equivs
qui va créer un paquet avec juste des informations de dépendance.
Tout d'abord, créez un répertoire:
mkdir my-metapackage
cd my-metapackage/
Maintenant, lancez le programme:
equivs-control ns-control
Il va créer un fichier appelé ns-control
, ouvrez ce fichier avec votre éditeur de texte. Le fichier de contrôle que vous générer devrait avoir son Depends
ou des Recommends
lignes modifiées pour dépendre des paquets que vous voulez installer:
Section: misc
Priority: optional
Standards-Version: 3.9.1
Package: my-metapackage
Version: 1.0
Depends: openssh-server, gedit
Description: This package installes an ssh server and a text editor
The Long description of this package ends with a newline!
(Juste un exemple, vous devriez inclure plus d'informations)
Et enfin, construisez le paquet en lançant
equivs-build ns-control
Votre colis est situé à my-metapackage/my-metapackage_1.0_all.deb
.
Si vous souhaitez également créer un paquet source, l' --full
option peut être passée à equivs-build
, par exemple equivs-build --full ns-control
. Cela utilisera debuild & créera également des fichiers .dsc & .tar.gz.
Pour créer un fichier .changes source que vous pouvez télécharger sur un PPA, extrayez et construisez le paquet source avec
dpkg-source -x my-metapackage_1.0.dsc
cd my-metapackage-1.0
debuild -S
Si le responsable que vous avez défini dans ns-control correspond à votre clé GPG, il doit créer et signer le fichier my-metapackage_1.0_source.changes afin que vous puissiez le transférer dans votre PPA.
~/.devscripts
fichier et définissez spécifiquement une clé GPG différente à utiliser dans le fichier devscripts, elle annule le processus dpkg / debuild et l’a utilisez la clé GPG spécifique spécifiée dans.devscripts
. Juste un point remarquable pour la dernière phrase de votre réponseDepends:
rend l'installation bonne si et seulement si les paquets sont là; il ne les installe pas s'ils ne sont pas sur ma machine. Pour les installer, j'ai utilisé à laProvides
place et cela fonctionne à merveille. Voir mon code (vient de le changer): github.com/palladius/debian-packages/blob/master/…