Página 1 de 1

[RESUELTO] Idea de mejora: Opciones durante la implementación de paquetes

Publicado: 6 de enero de 2021 - 11:37 a. m.
por Christophe0110
Hola,

me gustaría sugerir una mejora para WAPT (uso WAPT Enterprise).
A menudo me encuentro con la necesidad de elegir entre varias opciones al desplegar un paquete que he creado.
El ejemplo más obvio es el idioma de instalación.

Uno de nuestros programas, que ocupa bastante espacio (el paquete tiene unos 6 GB), incluye una opción sencilla durante la instalación que permite a los usuarios elegir entre francés e inglés. Algunos usuarios prefieren trabajar con este software en francés, y otros en inglés.
Me gustaría evitar tener que crear varios paquetes diferentes según el idioma, dado su tamaño, cuando solo se trata de cambiar una opción.

Sería muy útil poder seleccionar una opción específica que el script de Python pudiera usar durante la instalación al añadir un paquete a un equipo. Algo así como una variable configurable.

Sospecho que se trata de una mejora compleja, pero la comento por si también les interesa.

Saludos cordiales,
Christophe.

Re: Idea de mejora: Opciones de implementación de paquetes

Publicado: 6 de enero de 2021 - 12:02 p. m.
por vcardon
Hola Christophe, tu caso de uso está cubierto. ;)

Deberías poder gestionarlo usando el principio de dependencia.

- paquete "software genérico de 6 GB"
- paquete "software-en" (2 KB con un setup.py y una configuración de sesión que configura el software en inglés) con un software "depende" de 6 GB
- paquete "software-fr" (2 KB con un setup.py y una configuración de sesión que configura el software en francés) con un software "depende" de 6 GB.

Implementas "software-en" en los PC cuyos usuarios quieren el software de 6 GB en inglés.

El paquete "software genérico de 6 GB" se instalará antes que el paquete "software-en".

Re: Idea de mejora: Opciones de implementación de paquetes

Publicado: 6 de enero de 2021 - 13:41
por Christophe0110
Hola Vincent,

gracias por tu rápida respuesta. :)

Sí, conocía esa técnica, pero en algunos casos, el parámetro en cuestión debe pasarse directamente al ejecutar setup.exe... Es decir, en el paquete principal...

También sé que podría usar un paquete que cree un archivo temporal en el disco con mis parámetros, y que luego el paquete principal lea ese archivo para determinar qué parámetro pasar al script de instalación, pero creo que eso es un poco chapucero... ¡ ;)

Saludos!

Re: Idea de mejora: Opciones de implementación de paquetes

Publicado: 6 de enero de 2021 - 17:14
por vcardon
Como alternativa, el primer paquete simplemente copia el software de 6 GB en un directorio temporal sin instalarlo.

A continuación, se aplica la misma estrategia:

"logiciel-en" ejecuta la instalación con los parámetros correctos, utilizando el archivo .exe o .msi almacenado en el directorio temporal.

Re: Idea de mejora: Opciones de implementación de paquetes

Publicado: 11 de enero de 2021 - 11:06 a. m.
por jpele
Buen día,

El ejemplo de Firefox debería ayudarle a gestionar sus necesidades:
https://store.wapt.fr/store/tis-firefox

El fragmento de código:

Código: Seleccionar todo

    # Translating locale
    for lang in list_lang:
        if control.locale in lang:
            locale = lang
    app_uninstallkey='Mozilla Firefox %s (%s %s)' % (package_version,app_arch,locale)
Atentamente,
Palanqueta

Re: Idea de mejora: Opciones de implementación de paquetes

Publicado: 11 de enero de 2021 - 11:10 a. m.
por jpele
Con la versión multiplataforma de Firefox, también tendrás otras opciones:

https://store.wapt.fr/store/tis-firefox-multi

Parte del código:

Código: Seleccionar todo

    # Changing default language
    data = json_load(policies_path)
    my_lang = get_language()
    for select_lang in list_pre_installed_lang:
        if my_lang in select_lang:
            if select_lang == 'en-GB':
                select_lang = 'en-US' 
            default_lang = {"RequestedLocales": ["%s" % select_lang]}
    data['policies'].update(default_lang)
    json_write(policies_path,data,indent=2)

Re: Idea de mejora: Opciones de implementación de paquetes

Publicado: 11 de enero de 2021 - 14:54
por Christophe0110
Hola Vincent,

sí, esa es otra solución.

Hola Jimmy,

tu ejemplo es interesante, gracias. Aunque este paquete comprueba el idioma del sistema, en mi caso me gustaría elegir durante la instalación si se realiza en francés o en inglés (el sistema operativo siempre está en francés).
En fin, lo revisaré... ;)


Gracias.
Saludos,
Christophe.