[RISOLTO] Errore nel pacchetto tis-jamovi

Domande sul packaging WAPT / Richieste e assistenza sui pacchetti Wapt.
Regole del forum
Regole del forum della community
* Supporto in inglese su www.reddit.com/r/wapt
* Supporto della community in francese disponibile su questo forum
* Si prega di anteporre [RISOLTO] al titolo dell'argomento se è stato risolto.
* Si prega di non modificare un argomento contrassegnato con [RISOLTO]. Aprire un nuovo argomento facendo riferimento a quello precedente.
* Specificare la versione di WAPT installata, la versione completa e il numero di build (2.2.1.11957 / 2.2.2.12337 / ecc.) nonché l'edizione Enterprise/Discovery.
* Le versioni 1.8.2 e precedenti non sono più supportate. Le uniche domande accettate relative alla versione 1.8.2 riguardano l'aggiornamento a una versione supportata (2.1, 2.2, ecc.).
* Specificare il sistema operativo del server (Linux/Windows) e la versione (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specificare il sistema operativo della macchina di amministrazione/creazione dei pacchetti e della macchina con l'agente problematico, se applicabile (Windows 7/10/11/Debian 11/ecc.).
* Evitare di porre più domande quando si apre una discussione, altrimenti potrebbe essere ignorata. Se ci sono più discussioni, aprirle separatamente, preferibilmente una dopo l'altra e non tutte contemporaneamente (ovvero, non intasare il forum).
* Includere frammenti di codice, screenshot e altre immagini direttamente nel post. I link a Pastebin, Bitly e altri siti di terze parti verranno sistematicamente rimossi.
* Come in qualsiasi forum della community, il supporto è fornito volontariamente dai membri. Se si necessita di supporto commerciale, è possibile contattare il reparto vendite di Tranquil IT al numero 02.40.97.57.55
Bloccato
Esberardo
Messaggi: 44
Registrazione: 09 ott 2023 - 11:35

3 giugno 2026 - 09:03

Buongiorno,

Nel tuo programma di installazione è presente un errore nel posizionamento del valore "chiave", che causa il fallimento dell'installazione del pacchetto se la versione è presente, anziché controllare il valore nel registro di sistema.

Il tuo codice:

Codice: Seleziona tutto

def install():

    install_exe_if_needed(
        glob.glob("*jamovi*.exe")[0],
        silentflags="/S",
        min_version=control.get_software_version(),
    )
    key="jamovi %s" % control.get_software_version()
    wait_uninstallkey_present(key)
Il codice corretto:

Codice: Seleziona tutto

def install():

    install_exe_if_needed(
        glob.glob("*jamovi*.exe")[0],
        silentflags="/S",
        min_version=control.get_software_version(),
        key="jamovi %s" % control.get_software_version()
    )
GRAZIE

Remy
italbot
Messaggi: 74
Registrazione: 26 settembre 2023 - 15:50

3 giugno 2026 - 09:17

Salve,

se ricordo bene, lo abbiamo fatto intenzionalmente perché c'era un problema con la chiave di registro; non potevamo usarla per la disinstallazione, ma volevamo comunque verificare che il software fosse installato correttamente. L'errore si verifica anche quando la stessa versione è già presente? Vedrò cosa posso fare.

Cordiali saluti,

Ingrid
Tranquillo IT
Esberardo
Messaggi: 44
Registrazione: 09 ott 2023 - 11:35

3 giugno 2026 - 11:47

Sì, il problema si verifica se è presente la stessa versione.

In alternativa, è possibile passare attraverso il valore uninstallkey.remove('CLEMONSOFTWARE')

Esempio utilizzando una versione precedente di Office:

Codice: Seleziona tutto

install_exe_if_needed("setup.exe",silentflags="/adminfile unistra.MSP",key='Office16.PROPLUS',min_version="16.0.4266.1001", timeout=3600)
filecopyto('OffScrub16.vbs',r'c:\windows')
uninstallkey.remove('Office16.PROPLUS')
italbot
Messaggi: 74
Registrazione: 26 settembre 2023 - 15:50

3 giugno 2026 - 11:59

Penso che possiamo modificare il codice nel seguente modo con la funzione need_install() in modo che l'installazione venga eseguita solo se è installata una versione inferiore di Jamovi; se la versione è uguale o superiore, non viene effettuato alcun tentativo di installazione.

Codice: Seleziona tutto

def install():

    bin_name =  glob.glob("*jamovi*.exe")[0]
    key="jamovi %s" % control.get_software_version()

    if need_install(key = key, min_version = control.get_software_version()) : 
        run(bin_name + "/S")
        wait_uninstallkey_present(key)
        
    else : 
        print("Jamovi is already installed")
Potresti testarlo e dirmi se funziona correttamente da parte tua?
Se tutto è a posto, modificherò il pacchetto.

Sinceramente,

Ingrid
Tranquillo IT
italbot
Messaggi: 74
Registrazione: 26 settembre 2023 - 15:50

3 giugno 2026 - 12:10

Ho appena visto il tuo messaggio precedente; in effetti, funziona anche con uninstallkey.remove(). Ho apportato la modifica; puoi trovare il pacchetto di pre-produzione qui:
https://wapt.tranquil.it/store/fr/tis-jamovi

Cordiali saluti,

Ingrid
Tranquillo IT
Esberardo
Messaggi: 44
Registrazione: 09 ott 2023 - 11:35

4 giugno 2026 - 08:05

Grazie per l'aggiornamento
Bloccato