Instalar aplicación en máquinas de clientes (alumnos) - Versión para impresión +- Comunidad Gambas-es (https://gambas-es.org) +-- Foro: Gambas (https://gambas-es.org/forum-3.html) +--- Foro: Aplicaciones/Fragmentos de Código (https://gambas-es.org/forum-8.html) +--- Tema: Instalar aplicación en máquinas de clientes (alumnos) (/thread-1935.html) |
Instalar aplicación en máquinas de clientes (alumnos) - alberto-moyano - 18-04-2025 Este posteo es para compartir un modelo de trabajo instalando aplicaciones hechas con Gambas. Estoy dando un curso de edición ramificada basada en lenguaje de marcas con LaTeX en la UBA y los alumnos (39) tienen que instalar diferentes aplicaciones, esto incluye mi desarrollo en gambas, se instalaron sin problemas todas menos mi desarrollo, lo que fue un fiasco, se supone que al instalarse las aplicaciones, el instalador «lee» todos los componentes necesarios y los instala, pero por algún motivo solo instala algunos (el runtime y algunos más), desconozco que hace para decidir que instala y que no, la cuestión es que encontré una salida, que no es común, pero funciona 100% efectiva. Hice un script (se corre con sudo su) en bash que lee que distro esta corriendo e instala todos los componentes que están listados, luego se puede instalar la app de gambas con 0 error, les comparto el script Código: #!/bin/bash RE: Instalar aplicación en máquinas de clientes (alumnos) - Shordi - 18-04-2025 Cita:pero por algún motivo solo instala algunos (el runtime y algunos más), desconozco que hace para decidir que instala y que noSe supone que instala sólo los necesarios para que el programa funcione, es decir los que tienes enlazados en las propiedades del proyecto->componentes. Por tanto ¿esos pocos que instala son suficientes para correr tu programa o el programa no funciona por falta de algún componente? Si no son suficientes, malo. Pero si lo son, no hay problema, es como debe ser. Te sugiero otra estrategia: al crear el paquete instalador de tu programa, añade los otros programas que tu entorno necesita y los alumnos sólo tienen que instalar el tuyo. Los otros se añadirán como dependencia y se instalarán solos. Esta es la pantalla a la hora de crear el paquete de uno de mis programas que necesita el openvpn y demás para funcionar. ![]() Saludos RE: Instalar aplicación en máquinas de clientes (alumnos) - alberto-moyano - 18-04-2025 Hola Shordi, el tema es justamente que no instala todos los componentes necesarios del programa, por ende falla al querer usarlo, de ahí que expresara que no entiendo por qué instala algunos y no todos los necesarios del programa ![]() Muy buena tu sugerencia, tomo nota. RE: Instalar aplicación en máquinas de clientes (alumnos) - Shordi - 18-04-2025 Cita: el tema es justamente que no instala todos los componentes necesarios del programa, por ende falla al querer usarlo, de ahí que expresara que no entiendo por qué instala algunos y no todos los necesarios del programaPues entonces huele a problemas de dependencias y entornos gráficos. Si lo compilas con el componente gb.gui o gb.gui.qt, se supone que no hay problemas... pero entonces la distribución se complica mucho porque genera un .deb (o la paquetería que uses) por cada una de las versiones (qt5,qt6,gtk3, etc) y un metapaquete que decide cuál es el correcto para el ordenador del alumno. Si has compilado con qt5 o qt6 o gtk sólo, entonces depende de la versión del sistema operativo de los alumnos. Hay versiones algo antiguas que no llevan qt6, por ejemplo o qt4 si son más modernas. En mis días aquello fue uno de los caballos de batalla en la empresa y no hay más remedio a forzar a los usuarios a que mantengan sus ordenadores dentro de un marco de versiones del sistema operativo... y a que usen todos la misma familia de Sistemas, que si debian, que si Arch, etc. La solución guay es montarte un repositorio propio. Yo monté uno en la empresa y entonces basta subir tu nuevo .deb al mismo y se actualiza en todas las máquinas junto con las actualizaciones normales. Eso sí, todas las máquinas tenían linuxmint y si la versión era demasiado antigua, era necesario que se actualizase. Ahí desarrollé un programa de conexión a la VPN que comprobaba todas esas cosas al conectar y primero avisaba y si se seguía sin actualizar bloqueaba el acceso a la misma... pero es un tema más complejo de lo que puedo contar aquí. Saludos |