Auteur Sujet: Faire son paquet, de A à Z  (Lu 82 fois)

DamnKid

  • Newbie
  • *
  • Messages: 4
  • Karma: 1
  • They're all alike
Faire son paquet, de A à Z
« le: jeu. août 10 19:29:00 2017 »
Salut,

Alors, je précise que je ne suis pas "encore" un pro de NuTyX, j'utilise une méthode basique (pas de serveur de compilation, etc...). Mais ça marche bien, la preuve à la fin de ce message :)
Pour installer la chroot, je me suis basé sur :
La chroot.
C'est simple, facile et rapide. Attention, il y a un piège dans lequel je suis tombé. Voici comment le contourner : normalement, votre paquet ne contiendra aucune dépendance dans une collection "extra". Si toutefois c'est le cas, il suffit de récupérer la collection extra avec la boucle for présente sur le wiki. Pour cli-extra par exemple :
for i in base cli gui cli-extra
do
  rsync -avz --delete-after rsync://downloads.nutyx.org/nutyx/`uname -m`/stable/$i/ \
  /usr/ports/$i/
done

Et rajouter la ligne dans le fichier /etc/cards.conf :
dir /usr/ports/cli-extraCe n'est pas un comportement normal, il faut donc prévenir tnut pour que le paquet soit déplacé, mais ce contournement est utile quand on veut absolument faire le paquet sur le moment ;)

Aller, on passe au Pkgfile.

Le paquet que je veux construire est nodm. Premièrement, phase d'information. Les liens dont je vais avoir besoin sont :
Le GitHub de nodm
La page du paquet sur Archlinux

Sur la page de Archlinux, je me rends compte que les dépendances sont :
  • pam
  • xorg-xinit
  • help2man (make)
Le make indique que le paquet n'est utilisé uniquement à la compilation du paquet. Cards détecte automatiquement les dépendances runtime (utiles pour que le paquet fonctionne sur la machine) et make (utile uniquement à la construction du paquet). Pas besoin de préciser dans le Pkgfile, il se débrouille tout seul.
La première ligne de notre Pkgfile sera donc
# Depends on: pam xorg-xinit help2man
Second groupe, les informations générales du paquet. La variable url est très utile car elle est souvent utilisée plus tard dans le Pkgfile pour l'url de téléchargement des sources.
description="X display manager for automatic logins"
url="https://github.com/spanezz/nodm"
packager="DamnKid "

Dernier groupe avant les instructions de construction, les informations sur le paquet. Il faut se baser sur les informations du GitHub, dans l'onglet Release. Dans notre cas c'est la version 0.13, révision 1. Les révisions sont des nouvelles versions de paquet qui ne nécéssites pas de montée majeure.
On remarque que la variable source corresponds à l'url de téléchargement de l'archive. C'est à adapter en fonction des situations.
name=nodm
version=0.13
release=1
source=(${url}/archive/$version.tar.gz)

Enfin, le build du paquet. Grosso modo toujours la même chose :
build() {
cd ${name}-$version
./autogen.sh
./configure --prefix=/usr 
make
make DESTDIR=$PKG install
}
Ici, seul "./autogen.sh" a été rajouté par rapport au standard, car le code proposé sur GitHub ne contient de configure (il est généré par le script autogen).
Au total, ça donne ceci.
Une fois tout ça préparé, il suffit de lancer cards create -r nodm
Et la, magie !
NuTyX, j'en ai chié, j'y suis, j'y reste.
DamnKid, 12/08/2017

chichelinux

  • Newbie
  • *
  • Messages: 25
  • Karma: 2
Re : Faire son paquet, de A à Z
« Réponse #1 le: jeu. août 10 21:38:53 2017 »
Un seul mot: Bravo !
 :) :D

tnut

  • Administrator
  • Hero Member
  • *****
  • Messages: 688
  • Karma: 4
    • NuTyX distribution
Re : Faire son paquet, de A à Z
« Réponse #2 le: ven. août 11 07:44:44 2017 »
Oui je suis impressionné. Nickel.

artorix

  • Newbie
  • *
  • Messages: 36
  • Karma: 2
  • Gnu-addict infidèle...
Re : Faire son paquet, de A à Z
« Réponse #3 le: ven. août 11 20:10:53 2017 »
chapeau, merci  :)
Linux MX 16 xfce
Nutix : avant de planter,  je fabrique le terreau...
Linux ou Gnu&Linux? pour moi ce sera LiGNUx :P

Greg

  • Full Member
  • ***
  • Messages: 107
  • Karma: 3
Re : Faire son paquet, de A à Z
« Réponse #4 le: ven. août 11 20:39:02 2017 »
Yeaahh, bien vu  ;D

tnut

  • Administrator
  • Hero Member
  • *****
  • Messages: 688
  • Karma: 4
    • NuTyX distribution
Re : Faire son paquet, de A à Z
« Réponse #5 le: ven. août 11 20:40:08 2017 »
J'ai même envie de reprendre ce magnifique tuto et le placer au moins dans la doc et en faire une tite vidéo validée par notre producteur audio-visuel attritré