Página 1 de 1
Creación de paquetes de Linux
Publicado: 10 de agosto de 2026 - 17:49
por gsalin
Hola,
estamos probando WAPT. ¡Gracias por esta herramienta! Me interesa especialmente crear paquetes para Linux (Ubuntu 24) para desplegar herramientas internas.
He revisado la documentación, pero no encuentro lo que necesito. En concreto, en la página
https://www.wapt.fr/fr/doc/wapt-create- ... y-packages, hay una sección 1.3.3, "Empaquetado de paquetes sencillos para Linux", pero está vacía.
Por ejemplo, quiero desplegar un script de conexión a un servidor RDP usando xfreerdp3 en /usr/local/bin. Quiero copiar el lanzador asociado al escritorio de todos los usuarios existentes (y a /etc/skel para futuros usuarios) y el icono del lanzador a /usr/share/icons/.
¿Tenéis algún recurso o sugerencia que me ayude a empezar?
PyScripter es específico de Windows, si no me equivoco. ¿Existe un equivalente para Linux que permita probar las diferentes funciones del paquete (instalación, desinstalación, etc.)?
Gracias de antemano por tu ayuda,
Gerald.
PD: Instalé la consola en mi máquina Ubuntu 24 con la ayuda del administrador que configuró el servidor WAPT (desconozco qué sistema operativo utiliza).
Re: Creación de paquetes de Linux
Publicado: 11 de agosto de 2026 - 09:34
por italbot
Hola,
sí, es una pena que esta sección esté vacía. Consideraremos añadir paquetes de ejemplo para Linux.
Mientras tanto, te invito a consultar esta página:
https://www.wapt.fr/fr/doc-2.6/wapt-cre ... lpers.html
Allí encontrarás las diferentes funciones disponibles para los distintos sistemas operativos.
Si no me equivoco, ¿en tu paquete simplemente quieres copiar archivos?
Atentamente,
Ingrid
Re: Creación de paquetes de Linux
Publicado: 11 de agosto de 2026 - 10:36
por gsalin
Hola Ingrid,
Gracias por el enlace, solo había encontrado las herramientas de ayuda para Windows... No busqué lo suficiente ;(
Por ahora, sí, solo quiero hacer copias, pero debería evolucionar hacia cosas más complejas (instalar deb + copiar... pero según el asistente, debería ser bastante fácil)

)
Bien, entonces lo único que necesito hacer es modificar el archivo setup.py en el instalador, utilizando funciones auxiliares y Python puro
Por ejemplo, en mi caso, mi archivo setup.py se vería algo así:
Código: Seleccionar todo
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')
Lo probaré en los próximos días
Re: Creación de paquetes de Linux
Publicado: 11 de agosto de 2026 - 11:24
por italbot
Sí, parece bastante bien teniendo en cuenta lo que necesitas hacer.
Normalmente puedes abreviar `os.path.isdir()` a `isdir()` para ahorrar código.
Saludos,
Ingrid
Re: Creación de paquetes de Linux
Publicado: 11 de agosto de 2026 - 11:39
por gsalin
Bueno,
no pude resistirme... Lo probé. La instalación fue sin problemas (después de algunas correcciones, claro... pero viendo los errores después del despliegue a través de la consola).
Acabo de descubrir que puedes probar los scripts de instalación y desinstalación localmente en Linux con el comando `
sudo wapt-get install myPackage_0-1_ubuntu_PROD-wapt/`.
Si hay errores de Python en setup.py, se detectarán antes de desplegar el paquete, lo cual es mucho más fluido

. Debe ser el equivalente a PyScripter.
Genial, está progresando.
Re: Creación de paquetes de Linux
Publicado: 11 de agosto de 2026 - 14:01
por gsalin
Tengo un problema de permisos con un archivo ubicado en /usr/local/bin. Los usuarios no tienen permisos de ejecución para este script.
No he encontrado ningún método en setuhelpers para gestionar los permisos. ¿Podrías confirmarlo?
Si es así, consideraré usar Python.
Re: Creación de paquetes de Linux
Publicado: 11 de agosto de 2026 - 17:09
por gsalin
Utilicé Python puro para cambiar los permisos (os.chmod()). Al final,
creé un pequeño documento para desarrollar un paquete básico de Linux. No pude adjuntarlo a este mensaje porque el límite de tamaño de archivo es de 256 KB, así que aquí está como enlace (que caducará en 15 días):
https://filesender.renater.fr/?s=downlo ... 5ba491b765.
Acepto sugerencias para enlazar este archivo en algún lugar (publicación fijada o de otra forma), o mejor aún, integrarlo en la documentación.
Si ven alguna mejora que se pueda hacer, estoy abierto a sugerencias.
