Erstellung von Linux-Paketen

Fragen zu WAPT-Paketen / Anfragen und Hilfe bezüglich WAPT-Paketen.
Forumregeln
Community-Forumregeln
* Englischer Support auf www.reddit.com/r/wapt
* Französischer Community-Support ist in diesem Forum verfügbar.
* Bitte kennzeichnen Sie gelöste Themen mit [GELÖST].
* Bitte bearbeiten Sie keine Themen, die mit [GELÖST] markiert sind. Erstellen Sie stattdessen ein neues Thema und verweisen Sie auf das alte.
* Geben Sie die installierte WAPT-Version, die vollständige Versionsnummer und die Build-Nummer (2.2.1.11957 / 2.2.2.12337 / usw.) sowie die Enterprise-/Discovery-Edition an.
* Versionen 1.8.2 und älter werden nicht mehr unterstützt. Fragen zu Version 1.8.2 werden nur beantwortet, wenn sie sich auf ein Upgrade auf eine unterstützte Version (2.1, 2.2 usw.) beziehen.
* Geben Sie das Server-Betriebssystem (Linux/Windows) und die Version (Debian Buster/Bullseye – CentOS 7 – Windows Server 2012/2016/2019) an.
* Geben Sie gegebenenfalls das Betriebssystem des Administrations-/Paketerstellungsrechners und des Rechners mit dem problematischen Agenten an (Windows 7/10/11/Debian 11/etc.).
* Vermeiden Sie es, mehrere Fragen in einem Thema zu stellen, da diese sonst möglicherweise ignoriert werden. Falls mehrere Themen relevant sind, erstellen Sie bitte separate Themen, vorzugsweise nacheinander und nicht gleichzeitig (d. h. vermeiden Sie Spam im Forum).
* Fügen Sie Code-Snippets, Screenshots und andere Bilder direkt in Ihren Beitrag ein. Links zu Pastebin, Bitly und anderen Drittanbieterseiten werden systematisch entfernt.
* Wie in jedem Community-Forum erfolgt die Unterstützung freiwillig durch die Mitglieder. Für kommerziellen Support kontaktieren Sie bitte den Vertrieb von Tranquil IT unter +44 2 40 97 57 55.
Antwort
gsalin
Nachrichten: 5
Anmeldung: 10. August 2026 – 17:16 Uhr

10. August 2026 – 17:49 Uhr

Hallo,
wir testen gerade WAPT und bedanken uns für dieses Tool! Ich möchte insbesondere Linux-Pakete (Ubuntu 24) erstellen, um interne Tools bereitzustellen.
Ich habe die Dokumentation durchgesehen, finde aber leider nicht die benötigten Informationen. Auf der Seite https://www.wapt.fr/fr/doc/wapt-create- ... y-packagesgibt es zwar Abschnitt 1.3.3 „Packaging simple Linux packages“, dieser ist aber leer.

Ich möchte beispielsweise ein Verbindungsskript mit xfreerdp3 in /usr/local/bin auf einem RDP-Server bereitstellen. Den zugehörigen Launcher möchte ich auf den Desktop aller bestehenden Benutzer kopieren (und für zukünftige Benutzer nach /etc/skel) und das Launcher-Symbol in /usr/share/icons/ ablegen.

Haben Sie vielleicht hilfreiche Ressourcen oder Tipps für mich?

PyScripter ist meines Wissens nach Windows-spezifisch. Gibt es ein Linux-Äquivalent, mit dem ich die verschiedenen Funktionen des Pakets (Installation, Deinstallation usw.) testen kann?

Vielen Dank im Voraus für deine Hilfe,

Gerald.
PS: Ich habe die Konsole auf meinem Ubuntu-24-Rechner mit Hilfe des Administrators installiert, der den WAPT-Server eingerichtet hat (ich weiß nicht, welches Betriebssystem darauf läuft).
Konsole 2.6.1.17834
Linux-Client Ubuntu 24.04
italbot
Nachrichten: 88
Anmeldung: 26. September 2023 - 15:50 Uhr

11. August 2026 - 09:34 Uhr

Hallo,

ja, es ist schade, dass dieser Bereich leer ist. Wir werden überlegen, Beispielpakete für Linux hinzuzufügen.

In der Zwischenzeit empfehle ich Ihnen, diese Seite zu besuchen:

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

Dort finden Sie die verschiedenen Funktionen für die unterschiedlichen Betriebssysteme.

Wenn ich es richtig verstehe, möchten Sie mit Ihrem Paket lediglich Dateien kopieren?

Mit freundlichen Grüßen,

Ingrid
Ruhige IT
gsalin
Nachrichten: 5
Anmeldung: 10. August 2026 – 17:16 Uhr

11. August 2026 - 10:36 Uhr

Hallo Ingrid,
Danke für den Link, ich hatte bisher nur die Windows-Hilfen gefunden... Ich habe nicht gründlich genug gesucht ;(
Im Moment möchte ich nur kopieren, aber es sollte sich zu komplexeren Dingen entwickeln (Deb-Installation + Kopieren... aber laut dem Helfer sollte das recht einfach sein) ;))
Okay, ich muss also nur die setup.py-Datei im Installationsprogramm mit Hilfe von Hilfsfunktionen und reinem Python modifizieren

In meinem Fall sähe meine setup.py beispielsweise so aus:

Code: Alle auswählen

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')
Ich werde das in den nächsten Tagen testen
Konsole 2.6.1.17834
Linux-Client Ubuntu 24.04
italbot
Nachrichten: 88
Anmeldung: 26. September 2023 - 15:50 Uhr

11. August 2026 - 11:24 Uhr

Ja, das klingt angesichts Ihrer Anforderungen recht gut.

Normalerweise können Sie `os.path.isdir()` zu `isdir()` verkürzen, um Code zu sparen.

Viele Grüße,

Ingrid
Ruhige IT
gsalin
Nachrichten: 5
Anmeldung: 10. August 2026 – 17:16 Uhr

11. August 2026 - 11:39 Uhr

Tja,
ich konnte nicht widerstehen … ich habe es getestet. Die Installation verlief reibungslos (nach ein paar Korrekturen natürlich … aber die Fehler nach der Bereitstellung in der Konsole zu sehen, war schon ärgerlich).

Ich habe gerade herausgefunden, dass man die Installations- und Deinstallationsskripte lokal unter Linux mit dem Befehl `
sudo wapt-get install myPackage_0-1_ubuntu_PROD-wapt/` testen kann.

Falls Python-Fehler in setup.py auftreten, werden diese vor der Bereitstellung des Pakets erkannt, was die Sache deutlich vereinfacht ;). Das muss das Äquivalent zu PyScripter sein.

Super, es geht voran.
Konsole 2.6.1.17834
Linux-Client Ubuntu 24.04
gsalin
Nachrichten: 5
Anmeldung: 10. August 2026 – 17:16 Uhr

11. August 2026 – 14:01 Uhr

Ich habe ein Berechtigungsproblem mit einer Datei im Verzeichnis `/usr/local/bin`. Benutzer haben keine Ausführungsberechtigung für dieses Skript.
Ich habe in `setuhelpers` keine Methode zur Berechtigungsverwaltung gefunden. Können Sie das bestätigen?

Falls ja, werde ich die Verwendung von Python in Betracht ziehen.
Konsole 2.6.1.17834
Linux-Client Ubuntu 24.04
gsalin
Nachrichten: 5
Anmeldung: 10. August 2026 – 17:16 Uhr

11. August 2026 – 17:09 Uhr

Ich habe reines Python verwendet, um die Berechtigungen zu ändern (os.chmod()). Abschließend

habe ich eine kurze Dokumentation zur Entwicklung eines einfachen Linux-Pakets erstellt. Da die Dateigröße auf 256 KB begrenzt ist, konnte ich sie dieser Nachricht nicht anhängen. Daher hier der Link (gültig bis 15 Tage): https://filesender.renater.fr/?s=downlo ... 5ba491b765.
Ich bin offen für Vorschläge, wie ich diese Datei irgendwo verlinken kann (angepinnter Beitrag oder anderweitig), oder noch besser, sie in die Dokumentation zu integrieren.
Verbesserungsvorschläge nehme ich gerne entgegen. ;)
Konsole 2.6.1.17834
Linux-Client Ubuntu 24.04
Antwort