Création de paquet linux

Questions about WAPT Packaging / Requêtes et aides autour des paquets Wapt.
Règles du forum
Règles du forum communautaire
* English support on www.reddit.com/r/wapt
* Le support communautaire en français se fait sur ce forum
* Merci de préfixer le titre du topic par [RESOLU] s'il est résolu.
* Merci de ne pas modifier un topic qui est taggé [RESOLU]. Ouvrez un nouveau topic en référençant l'ancien
* Préciser version de WAPT installée, version complète ET numéro de build (2.2.1.11957 / 2.2.2.12337 / etc.) AINSI QUE l'édition Enterprise / Discovery
* Les versions 1.8.2 et antérieures ne sont plus maintenues. Les seules questions acceptées vis à vis de la version 1.8.2 sont liés à la mise à jour vers une version supportée (2.1, 2.2, etc.)
* Préciser OS du serveur (Linux / Windows) et version (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019)
* Préciser OS de la machine d'administration/création des paquets et de la machine avec l'agent qui pose problème le cas échéant (Windows 7 / 10 / 11 / Debian 11 / etc.)
* Eviter de poser plusieurs questions lors de l'ouverture de topic, sinon il risque d'être ignorer. Si plusieurs sujet, ouvrir plusieurs topic, et de préférence les uns après les autres et pas tous en même temps (ie ne pas spammer le forum).
* Inclure directement les morceaux de code, les captures d'écran et autres images directement dans le post. Les liens vers les pastebin, les bitly et autres sites tierces seront systématiquement supprimés.
* Comme tout forum communautaire, le support est fait bénévolement par les membres. Si vous avez besoin d'un support commercial, vous pouvez contacter le service commercial Tranquil IT au 02.40.97.57.55
gsalin
Messages : 5
Inscription : 10 août 2026 - 17:16

10 août 2026 - 17:49

Bonjour,
nous sommes en train de tester WAPT, merci pour cet outil! Je m'intéresse plus particulièrement à la création de paquets linux (ubuntu24) pour déployer des outils internes.
J'ai parcouru la doc, mais je peine à trouver mon bonheur. Notamment, sur la page https://www.wapt.fr/fr/doc/wapt-create- ... y-packages, on a le paragraphe 1.3.3 Packager des paquets linux simples, mais il est vide.

Exemple tout bête, je souhaite déployer un script de connexion à un serveur RDP, en utilisant xfreerdp3 dans /usr/local/bin. Je souhaite copier le lanceur associé sur le bureau de tous les utilisateurs existants (et dans /etc/skel pour les futurs utilisateurs) et l'icone du lanceur dans /usr/share/icons/

Est-ce que vous auriez des ressources/pointeurs qui aideraient à me lancer?

PyScripter est spécifique de windows si je comprend bien. Est-ce qu'on a l'équivalent sous linux qui permettrait de tester les différentes fonctions du paquet (install, uninstall.....)?

Merci d'avance pour votre aide

Gérald
PS : j'ai installé la console sur mon poste ubuntu24 avec l'aide de l'admin qui a monté le serveur WAPT (je ne sais pas sur quel OS il tourne)
Console 2.6.1.17834
Client linux Ubuntu 24.04
italbot
Messages : 86
Inscription : 26 sept. 2023 - 15:50

11 août 2026 - 09:34

Bonjour,

Effectivement, c'est dommage que cette partie soit vide, nous réfléchirons pour intégrer des exemples de paquet sur Linux.

En attendant, je vous invite à consulter cette page :

https://www.wapt.fr/fr/doc-2.6/wapt-cre ... lpers.html

Vous y trouverez les différentes fonctions disponibles pour les différentes OS.

Si je comprends bien, dans votre paquet vous souhaitez juste copier des fichiers ?

Cordialement,

Ingrid
Tranquil IT
gsalin
Messages : 5
Inscription : 10 août 2026 - 17:16

11 août 2026 - 10:36

Bonjour Ingrid,
merci pour ce lien, je n'étais tombé que sur les helpers windows.....pas assez bien cherché ;(
pour le moment oui, je ne veux faire que de la copie, mais ça devrait évoluer vers des choses plus complexes (install deb + copie...mais d'après le helper ça devrait se faire assez facilement du coup ;))
ok, il me suffit donc de modifier le fichier setup.py dans le install, en utilisant les helpers et du pur python

genre pour mon cas, mon setup.py serait du style

Code : Tout sélectionner

from setuphelpers import *
import glob
import os

def install():
    install_apt("freerdp3-x11") #installe xfreerdp3
    install_apt("yad") #installe yad, utilisé dans le script bash ci-dessous
    filecopyto("xfreeRDP3-VM-Windows.sh","/usr/local/bin") #copie l'exécutable dans bin
    filecopyto("xfreeRDP3-VM-Windows.desktop","/etc/skel") #copie le lanceur dans /etc/skel pour le déployer aux nouveaux utilisateurs du poste
    filecopyto("iconXfreeRDP3-VM-Windows.svg","/usr/share/icons/INRAEUbuntuInstall") #copie l'icone du lanceur dans le répertoire d'icone
    for file in glob.glob("/home/*"): #recherche tous les homes directory existant
        print(file)
        if os.path.isdir(file + '/Bureau'): #si le répertoire Bureau existe dans le home, y copie le lanceur
            filecopyto("xfreeRDP3-VM-Windows.desktop",file + '/Bureau')
        elif os.path.isdir(file + '/Desktop'): #si le répertoire Desktop existe dans le home, y copie le lanceur
            filecopyto("xfreeRDP3-VM-Windows.desktop",file + '/Desktop')

def uninstall():
    remove_file("/usr/local/bin/xfreeRDP3-VM-Windows.sh")
    remove_file("/etc/skel/xfreeRDP3-VM-Windows.desktop")
    remove_tree("/usr/share/icons/INRAEUbuntuInstall")
    for file in glob.glob("/home/*"): #recherche tous les homes directory existant
        print(file)
        if os.path.isdir(file + '/Bureau'): #si le répertoire Bureau existe dans le home, y copie le lanceur
            if os.path.isfile(file + '/Bureau/xfreeRDP3-VM-Windows.desktop'):
                remove_file(file + '/Bureau/xfreeRDP3-VM-Windows.desktop')
        elif os.path.isdir(file + '/Desktop'): #si le répertoire Desktop existe dans le home, y copie le lanceur
            if os.path.isfile(file + '/Desktop/xfreeRDP3-VM-Windows.desktop'):
                remove_file(file + '/Desktop/xfreeRDP3-VM-Windows.desktop')
je teste ça dans les prochains jours
Console 2.6.1.17834
Client linux Ubuntu 24.04
italbot
Messages : 86
Inscription : 26 sept. 2023 - 15:50

11 août 2026 - 11:24

Oui, ça semble pas mal vu ce que vous devez faire.

Normalement vous pouvez réduire os.path.isdir() par isdir() pour économiser un peu d'écriture.

Cordialement,

Ingrid
Tranquil IT
gsalin
Messages : 5
Inscription : 10 août 2026 - 17:16

11 août 2026 - 11:39

Bon,
je n'ai pas résisté...je l'ai testé. L'install s'est bien passée (après qq corrections bien sûr...mais en voyant les erreurs après déploiement via la console).

je viens de trouver qu'on peut tester localement les script d'install, uninstall sous linux avec la commande
sudo wapt-get install monPaquet_0-1_ubuntu_PROD-wapt/

si on a des erreurs pyhon dans le setup.py, elle seront détectées avant d'avoir déployé le paquet, plus fluide ;). ça doit être l'équivalent de pyscripter

cool, ça avance
Console 2.6.1.17834
Client linux Ubuntu 24.04
gsalin
Messages : 5
Inscription : 10 août 2026 - 17:16

11 août 2026 - 14:01

je rencontre un problème de droits sur le fichier mis dans /usr/local/bin. Les utilisateurs n'ont pas les droits d'exécution sur ce script.
je n'ai pas vu de methode dans setuhelpers pour gérer les droits. Vous confirmez?

si oui, je regarde du côté de python
Console 2.6.1.17834
Client linux Ubuntu 24.04
gsalin
Messages : 5
Inscription : 10 août 2026 - 17:16

11 août 2026 - 17:09

je suis passé par du pur python pour faire le changement de droits (os.chmod()) au final

j'ai fait une petit doc pour le développement d'un paquet linux de base. Je n'ai pas pu l'ajouter à ce message car PJ limitée à 256Ko, le voici donc en lien (qui expirera dans 15 jours) : https://filesender.renater.fr/?s=downlo ... 5ba491b765
Possible de lier ce fichier qq part (post épinglé ou autre), ou mieux de l'intégrer à la doc
si vous voyez des améliorations à y apporter, je suis ouvert ;)
Console 2.6.1.17834
Client linux Ubuntu 24.04
Répondre