Differenze tra le versioni di "Creare un AppImage firmata di un progetto Gambas"

Da Gambas-it.org - Wikipedia.
(Creata pagina con "Questa lezione iniziata da Akrobaticone a seguito di questo suo post https://www.gambas-it.org/smf/index.php?topic=10305.msg53503#msg53503 e da questa mia successiva richiesta...")
 
Riga 16: Riga 16:
 
*https://appimage-builder.readthedocs.io/en/latest/#
 
*https://appimage-builder.readthedocs.io/en/latest/#
  
 +
<br>
 
'''Procedimento''':
 
'''Procedimento''':
  
 
+
=Il giusto Sistema (Ubuntu 20.04.4 LTS)=
== 1 Il giusto Sistema (Ubuntu 20.04.4 LTS) ==
 
  
 
Al momento per poter creare un AppImage con Gambas dobbiamo farlo da Ubuntu oppure da una sua derivata.
 
Al momento per poter creare un AppImage con Gambas dobbiamo farlo da Ubuntu oppure da una sua derivata.
Riga 26: Riga 26:
 
<br>Infatti useremo sì un sistema “vecchio”, ma con installata l’ultima versione di Gambas che garantirà il buon funzionamento del nostro progetto.
 
<br>Infatti useremo sì un sistema “vecchio”, ma con installata l’ultima versione di Gambas che garantirà il buon funzionamento del nostro progetto.
 
<br>Per ottenere questo, se non state già usando un “vecchio” Ubuntu, dovreste installarlo su una VM (Virtualbox o meglio ancora una QEMU/KVM) oppure crearvi una nuova partizione dove posizionarlo.
 
<br>Per ottenere questo, se non state già usando un “vecchio” Ubuntu, dovreste installarlo su una VM (Virtualbox o meglio ancora una QEMU/KVM) oppure crearvi una nuova partizione dove posizionarlo.
===1.1 Il giusto Gambas===
+
=Il giusto Gambas=
 
Nel momento in qui aggiorno questa wiki, come detto, Benoit Minisini ha aggiunto la possibilità di firmare la nostra immagine con una chiave GnuPG, questo è possibile solo con la versione Master, ma non passerà molto tempo che la cosa verrà importata nella stabile.
 
Nel momento in qui aggiorno questa wiki, come detto, Benoit Minisini ha aggiunto la possibilità di firmare la nostra immagine con una chiave GnuPG, questo è possibile solo con la versione Master, ma non passerà molto tempo che la cosa verrà importata nella stabile.
 
<br>Per controllare la firma di un AppImage basta aprire il terminale nella cartella in cui è presente l’appimage e scrivere:<br>
 
<br>Per controllare la firma di un AppImage basta aprire il terminale nella cartella in cui è presente l’appimage e scrivere:<br>
 
   ./ <nome dell’appimage> --appimage-signature
 
   ./ <nome dell’appimage> --appimage-signature
 
<br>
 
<br>
   '''Nota''': La possibilità di creare un AppImage con Gambas è presente dalla versione 3.19 pertanto se non sei interessato alla firma puoi passare direttamente al capitolo 2.
+
   '''Nota''': La possibilità di creare un AppImage con Gambas è presente dalla versione 3.19 pertanto se non sei interessato alla firma puoi passare direttamente al capitolo 5.
===1.2 Creazione di una chiave GnuPG===
+
=Creazione di una chiave GnuPG=
 
Se non siamo ancora in possesso di una chiave GnuPG occorre crearla altrimenti possiamo saltare tranquillamente il paragrafo.
 
Se non siamo ancora in possesso di una chiave GnuPG occorre crearla altrimenti possiamo saltare tranquillamente il paragrafo.
<br>Prima di iniziare vi consiglio di prepararvi una passfrase che dovrete inserire in una finestra a un certo punto della procedura.  
+
<br>Prima di iniziare vi consiglio di prepararvi una '''passfrase''' che dovrete inserire in una finestra a un certo punto della procedura.  
 
<br>Non perdetela perché vi verrà richiesta ogni volta che userete la firma.
 
<br>Non perdetela perché vi verrà richiesta ogni volta che userete la firma.
 
<br>Apriamo il terminale di Ubuntu 20.04 e scriviamo:
 
<br>Apriamo il terminale di Ubuntu 20.04 e scriviamo:
 
   gpg –full-gen-key
 
   gpg –full-gen-key
  il terminale risponderà:
+
il terminale risponderà:
 
   gpg (GnuPG) 2.2.19; Copyright (C) 2019 Free Software Foundation, Inc.
 
   gpg (GnuPG) 2.2.19; Copyright (C) 2019 Free Software Foundation, Inc.
 
   This is free software: you are free to change and redistribute it.
 
   This is free software: you are free to change and redistribute it.
Riga 51: Riga 51:
 
Qui dovremo rispondere '''1''' come da impostazione predefinita (nota che tutte le nostre risposte devono rispettare questo stesso criterio).
 
Qui dovremo rispondere '''1''' come da impostazione predefinita (nota che tutte le nostre risposte devono rispettare questo stesso criterio).
 
<br>Proseguiamo con:
 
<br>Proseguiamo con:
Le chiavi RSA possono essere lunghe tra 1024 e 4096 bit.
+
  Le chiavi RSA possono essere lunghe tra 1024 e 4096 bit.
Che chiave vuoi? (3072)
+
  Che chiave vuoi? (3072)
Accettiamo il consiglio e scriviamo 3072
+
Accettiamo il consiglio e scriviamo '''3072'''
La dimensione chiave richiesta è 3072 bit
+
  La dimensione chiave richiesta è 3072 bit
Specificare la durata di validità della chiave.
+
  Specificare la durata di validità della chiave.
 
       0 = la chiave non scade
 
       0 = la chiave non scade
 
       <N>  = la chiave scade dopo N giorni
 
       <N>  = la chiave scade dopo N giorni
Riga 61: Riga 61:
 
       <N>m = la chiave scade dopo N mesi
 
       <N>m = la chiave scade dopo N mesi
 
       <N>y = la chiave scade dopo N anni
 
       <N>y = la chiave scade dopo N anni
Per quanto tempo deve essere valida la chiave? (0)
+
  Per quanto tempo deve essere valida la chiave? (0)
Accettiamo il consiglio e scriviamo 0
+
Accettiamo il consiglio e scriviamo '''0'''
La chiave non scade affatto
+
  La chiave non scade affatto
È corretto? (y/N)
+
  È corretto? (y/N)
Scriviamo y (yes)
+
Scriviamo '''y''' (yes)
GnuPG deve costruire un ID utente per identificare la chiave.
+
  GnuPG deve costruire un ID utente per identificare la chiave.
Nome reale: (Qui scriviamo il nostro nome)
+
  Nome reale: (Qui scriviamo il nostro nome)
Indirizzo email: (Qui scriviamo la nostra e-mail)
+
  Indirizzo email: (Qui scriviamo la nostra e-mail)
Commento: (Qui possiamo scrivere un nostro commento)
+
  Commento: (Qui possiamo scrivere un nostro commento)
È stato selezionato questo USER-ID:
+
  È stato selezionato questo USER-ID:
 
     "nostro-nome (nostro-commento) <nostra@email>"
 
     "nostro-nome (nostro-commento) <nostra@email>"
Modificare (n)ome, (c)ommento, (e)mail oppure (o)k/(u)scire? (Qui Scriviamo o per ok oppure n se dovete apportare delle modifiche)
+
  Modificare (n)ome, (c)ommento, (e)mail oppure (o)k/(u)scire? (Qui Scriviamo o per ok oppure n se dovete apportare delle modifiche)
A questo punto si apre una finestra in cui dovrete inserire la passfrase che vi siete preparati all’inizio, siate abbastanza veloci nell’inserirla e ripeterla uguale altrimenti occorrerà ripartire da zero.
+
A questo punto si apre una finestra in cui dovrete inserire la ''passfrase'' che vi siete preparati all’inizio, siate abbastanza veloci nell’inserirla e ripeterla uguale altrimenti occorrerà ripartire da zero.
È necessario generare molti dati casuali: per fare ciò è utile eseguire
+
  È necessario generare molti dati casuali: per fare ciò è utile eseguire
qualche altra azione (scrivere sulla tastiera, muovere il mouse, usare i
+
  qualche altra azione (scrivere sulla tastiera, muovere il mouse, usare i
dischi) durante la generazione dei numeri primi; questo fornisce al
+
  dischi) durante la generazione dei numeri primi; questo fornisce al
generatore di numeri casuali migliori possibilità di raccogliere abbastanza
+
  generatore di numeri casuali migliori possibilità di raccogliere abbastanza
entropia.
+
  entropia.
gpg: /home/mikey/.gnupg/trustdb.gpg: creato il trustdb
+
Può essere richiesto di ripetere qualche azione
gpg: chiave F722E25B5602908A contrassegnata come considerata attendibile
+
  gpg: /home/mikey/.gnupg/trustdb.gpg: creato il trustdb
gpg: directory '/home/mikey/.gnupg/openpgp-revocs.d' creata
+
  gpg: chiave XXXXXXXXXX contrassegnata come considerata attendibile
gpg: certificato di revoca archiviato come '/home/nostro-nome/.gnupg/openpgp-revocs.d/CHIAVE ALFANUMERICA.rev'
+
  gpg: directory '/home/mikey/.gnupg/openpgp-revocs.d' creata
chiavi pubbliche e segrete create e firmate.
+
  gpg: certificato di revoca archiviato come '/home/nostro-nome/.gnupg/openpgp-revocs.d/CHIAVE ALFANUMERICA.rev'
pub  rsa3072 2024-06-06 [SC]
+
  chiavi pubbliche e segrete create e firmate.
 +
  pub  rsa3072 2024-06-06 [SC]
 
       LA CHIAVE ALFANUMERICA DA USARE
 
       LA CHIAVE ALFANUMERICA DA USARE
uid                      mikey (topolino) <mikey@mikey>
+
  uid                      nome-utente (commento) <indirizzo@mail>
sub  rsa3072 2024-06-06 [E]
+
  sub  rsa3072 2024-06-06 [E]
1.3 Comandi utili
+
==Comandi utili==
ls .gnupg/
+
  ls .gnupg/
gpg –list-keys (serve a ottenere la chiave alfanumerica da utilizzare per la firma dell’appimage)
+
  gpg –list-keys (serve a ottenere la chiave alfanumerica da utilizzare per la firma dell’appimage)
gpg –list-secret-keys
+
  gpg –list-secret-keys
./<nome-appimage>.AppImage --appimage-signature
+
  ./<nome-appimage>.AppImage --appimage-signature
2 Preparare Ubuntu
+
=Preparare Ubuntu=
Nota: se copiamo i comandi da un file pdf, prima di incollarli nel terminale vanno copiati in un editor di testo e riformati in modo che essi non vadano a capo ma siano separati solo da uno spazio (dove serve).
+
  '''Nota''': se copiamo i comandi da un file pdf, prima di incollarli nel terminale vanno copiati in un editor di testo e riformati in modo che essi non vadano a capo ma siano separati solo da uno spazio (dove serve).
 
Apriamo il terminale e diamo i seguenti comandi, sempre uno per volta:
 
Apriamo il terminale e diamo i seguenti comandi, sempre uno per volta:
scarichiamo ricorsivamente da internet Appimage builder:
+
<br>scarichiamo ricorsivamente da internet Appimage builder:
wget -O appimage-builder-x86_64.AppImage https://github.com/AppImageCrafters/appimage-builder/releases/download/v1.1.0/appimage-builder-1.1.0-x86_64.AppImage
+
  wget -O appimage-builder-x86_64.AppImage https://github.com/AppImageCrafters/appimage-builder/releases/download/v1.1.0/appimage-builder-1.1.0-x86_64.AppImage
 
lo rendiamo eseguibile con:
 
lo rendiamo eseguibile con:
chmod +x appimage-builder-x86_64.AppImage
+
  chmod +x appimage-builder-x86_64.AppImage
 
lo spostiamo con:
 
lo spostiamo con:
sudo mv appimage-builder-x86_64.AppImage /usr/local/bin/appimage-builder
+
  sudo mv appimage-builder-x86_64.AppImage /usr/local/bin/appimage-builder
 
installiamo le librerie per farlo funzionare con:
 
installiamo le librerie per farlo funzionare con:
sudo apt install -y binutils coreutils desktop-file-utils fakeroot fuse libgdk-pixbuf2.0-dev patchelf python3-pip python3-setuptools squashfs-tools strace util-linux zsync
+
  sudo apt install -y binutils coreutils desktop-file-utils fakeroot fuse libgdk-pixbuf2.0-dev patchelf python3-pip python3-setuptools squashfs-tools strace util-linux zsync
 
Fatto, chiudiamo il terminale
 
Fatto, chiudiamo il terminale
3 Proviamo l’eseguibile
+
=Proviamo l’eseguibile=
 
Avviamo la IDE di Gambas.
 
Avviamo la IDE di Gambas.
Dalla Farm installiamo CuckooClock (occorre leggere tutto per attivare il pulsante).
+
<br>Dalla Farm installiamo CuckooClock (occorre leggere tutto per attivare il pulsante).
Apriamo il progetto senza avviarlo e dal menu Progetto  Compiliamo tutto.
+
<br>Apriamo il progetto senza avviarlo e dal menu ''Progetto'' ''Compiliamo tutto''.
Sempre dalla IDE creiamo un eseguibile lasciandolo all’interno del progetto.
+
<br>Sempre dalla IDE creiamo un eseguibile lasciandolo all’interno del progetto.
Chiudiamo la IDE e navighiamo all’eseguibile avviandolo con un doppio click.
+
<br>Chiudiamo la IDE e navighiamo all’eseguibile avviandolo con un doppio click.
NOTA: Occorre provare l’eseguibile per vedere se funziona correttamente altrimenti è inutile proseguire e conviene fare la prova con un’altra applicazione funzionante.
+
  '''Nota''': Occorre provare l’eseguibile per vedere se funziona correttamente altrimenti è inutile proseguire e conviene fare la prova con un’altra applicazione funzionante.
4 Siamo pronti per creare l’Appimage
+
=Siamo pronti per creare l’Appimage=
 
Riavviamo la IDE di Gambas e apriamo il progetto CuckooClock senza avviarlo.
 
Riavviamo la IDE di Gambas e apriamo il progetto CuckooClock senza avviarlo.
Dal menu Progetto clicchiamo su Crea un pacchetto di installazione… si aprirà la prima pagina dell’omonima finestra in cui volendo potete scrivere la mail, l’indirizzo del vostro sito cambiare il nome ecc. Il progetto ricreerà l’eseguibile, va bene così.
+
<br>Dal menu Progetto clicchiamo su ''Crea un pacchetto di installazione…'' si aprirà la prima pagina dell’omonima finestra in cui volendo potete scrivere la mail, l’indirizzo del vostro sito cambiare il nome ecc. <br>Il progetto ricreerà l’eseguibile, va bene così.
Clicchiamo sul pulsante  >> Seguente e scriviamo qualcosa per il Changelog del tipo: primo test per la creazione di un AppImage
+
<br>Clicchiamo sul pulsante  ''>> Seguente'' e scriviamo qualcosa per il Changelog del tipo: ''primo test per la creazione di un AppImage''
Clicchiamo ancora sul pulsante  >> Seguente e spuntiamo la voce AppImage
+
<br>Clicchiamo ancora sul pulsante  ''>> Seguente'' e spuntiamo la voce ''AppImage''
Clicchiamo ancora sul pulsante  >> Seguente  
+
<br>Clicchiamo ancora sul pulsante  ''>> Seguente''
(Inserire immagine)
+
[[File:Esempio.jpg]]
 +
 
 
Scegliamo la giusta distribuzione di Ubuntu dalla casella a discesa e clicchiamo sul pulsante Ottiene la configurazione corretta del sistema (Nota: se siamo su una derivata occorre scrivere l’indirizzo del repository di Ubuntu quello della foto va bene oppure uno internazionale come http://archive.ubuntu.com/ubuntu/)
 
Scegliamo la giusta distribuzione di Ubuntu dalla casella a discesa e clicchiamo sul pulsante Ottiene la configurazione corretta del sistema (Nota: se siamo su una derivata occorre scrivere l’indirizzo del repository di Ubuntu quello della foto va bene oppure uno internazionale come http://archive.ubuntu.com/ubuntu/)
 
Spuntiamo la casella per l’inserimento della firma e nella casella di testo che si attiva inseriamo la corretta stringa alfanumerica   
 
Spuntiamo la casella per l’inserimento della firma e nella casella di testo che si attiva inseriamo la corretta stringa alfanumerica   

Versione delle 10:22, 9 giu 2024

Questa lezione iniziata da Akrobaticone a seguito di questo suo post https://www.gambas-it.org/smf/index.php?topic=10305.msg53503#msg53503 e da questa mia successiva richiesta di poter firmare le AppImage: http://gambaswiki.org/bugtracker/edit?object=BUG.2890&from=L21haW4
Tale richiesta nasce da una riflessione fatta con l'Ing. Claus Dietrich coautore dal 2015 del libro tedesco su Gambas del Prof. Hans Lehmann e da miei infruttuosi tentativi di inscatolare le AppImage dei progetti Gambas dentro sandbox con Fairjail


Premessa

Come recita Wikipedia: AppImage è un formato per la distribuzione di software portatile su Linux senza la necessità di autorizzazioni di superutente per installare l'applicazione.
Ha come scopo la distribuzione di software binario indipendente dalla distribuzione Linux.
AppImage consiste quindi in un unico file che contiene in se tutto il necessario per poter eseguire l'applicazione su molte distribuzioni Linux
Per semplicare la lezione il test è stato fatto utilizzando un mio programma (un orologio a cucù) presente sulla Farm e facilmente scaricabile, nulla vi impedisce di fare la prova su un qualsiasi vostro programma.

Alcuni link utili:


Procedimento:

Il giusto Sistema (Ubuntu 20.04.4 LTS)

Al momento per poter creare un AppImage con Gambas dobbiamo farlo da Ubuntu oppure da una sua derivata.
Occorre anche tener conto del fatto che più il sistema operativo (Ubuntu) è vecchio meglio è perché vuol dire che il nostro progetto potrà funzionare su una più ampia gamma di sistemi.
Questo significa anche che viene ribaltata la necessità che il nostro programma debba tener conto delle librerie presenti nella distribuzione come accade per la creazione dei pacchetti di installazione dove è facile che le librerie siano più vecchie di quelle usate dal nostro Gambas.
Infatti useremo sì un sistema “vecchio”, ma con installata l’ultima versione di Gambas che garantirà il buon funzionamento del nostro progetto.
Per ottenere questo, se non state già usando un “vecchio” Ubuntu, dovreste installarlo su una VM (Virtualbox o meglio ancora una QEMU/KVM) oppure crearvi una nuova partizione dove posizionarlo.

Il giusto Gambas

Nel momento in qui aggiorno questa wiki, come detto, Benoit Minisini ha aggiunto la possibilità di firmare la nostra immagine con una chiave GnuPG, questo è possibile solo con la versione Master, ma non passerà molto tempo che la cosa verrà importata nella stabile.
Per controllare la firma di un AppImage basta aprire il terminale nella cartella in cui è presente l’appimage e scrivere:

 ./ <nome dell’appimage> --appimage-signature


 Nota: La possibilità di creare un AppImage con Gambas è presente dalla versione 3.19 pertanto se non sei interessato alla firma puoi passare direttamente al capitolo 5.

Creazione di una chiave GnuPG

Se non siamo ancora in possesso di una chiave GnuPG occorre crearla altrimenti possiamo saltare tranquillamente il paragrafo.
Prima di iniziare vi consiglio di prepararvi una passfrase che dovrete inserire in una finestra a un certo punto della procedura.
Non perdetela perché vi verrà richiesta ogni volta che userete la firma.
Apriamo il terminale di Ubuntu 20.04 e scriviamo:

 gpg –full-gen-key

il terminale risponderà:

 gpg (GnuPG) 2.2.19; Copyright (C) 2019 Free Software Foundation, Inc.
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.
 Selezionare il tipo di chiave:
  (1) RSA e RSA (impostazione predefinita)
  (2) DSA ed Elgamal
  (3) DSA (solo firma)
  (4) RSA (solo firma)
  (14) Chiave esistente dalla scheda
 Selezione?

Qui dovremo rispondere 1 come da impostazione predefinita (nota che tutte le nostre risposte devono rispettare questo stesso criterio).
Proseguiamo con:

 Le chiavi RSA possono essere lunghe tra 1024 e 4096 bit.
 Che chiave vuoi? (3072)

Accettiamo il consiglio e scriviamo 3072

 La dimensione chiave richiesta è 3072 bit
 Specificare la durata di validità della chiave.
      0 = la chiave non scade
     <N>  = la chiave scade dopo N giorni
     <N>w = la chiave scade dopo N settimane
     <N>m = la chiave scade dopo N mesi
     <N>y = la chiave scade dopo N anni
 Per quanto tempo deve essere valida la chiave? (0)

Accettiamo il consiglio e scriviamo 0

 La chiave non scade affatto
 È corretto? (y/N)

Scriviamo y (yes)

 GnuPG deve costruire un ID utente per identificare la chiave.
 Nome reale: (Qui scriviamo il nostro nome)
 Indirizzo email: (Qui scriviamo la nostra e-mail)
 Commento: (Qui possiamo scrivere un nostro commento)
 È stato selezionato questo USER-ID:
   "nostro-nome (nostro-commento) <nostra@email>"
 Modificare (n)ome, (c)ommento, (e)mail oppure (o)k/(u)scire? (Qui Scriviamo o per ok oppure n se dovete apportare delle modifiche)

A questo punto si apre una finestra in cui dovrete inserire la passfrase che vi siete preparati all’inizio, siate abbastanza veloci nell’inserirla e ripeterla uguale altrimenti occorrerà ripartire da zero.

 È necessario generare molti dati casuali: per fare ciò è utile eseguire
 qualche altra azione (scrivere sulla tastiera, muovere il mouse, usare i
 dischi) durante la generazione dei numeri primi; questo fornisce al
 generatore di numeri casuali migliori possibilità di raccogliere abbastanza
 entropia.

Può essere richiesto di ripetere qualche azione

 gpg: /home/mikey/.gnupg/trustdb.gpg: creato il trustdb
 gpg: chiave XXXXXXXXXX contrassegnata come considerata attendibile
 gpg: directory '/home/mikey/.gnupg/openpgp-revocs.d' creata
 gpg: certificato di revoca archiviato come '/home/nostro-nome/.gnupg/openpgp-revocs.d/CHIAVE ALFANUMERICA.rev'
 chiavi pubbliche e segrete create e firmate.
 pub   rsa3072 2024-06-06 [SC]
      LA CHIAVE ALFANUMERICA DA USARE
 uid                      nome-utente (commento) <indirizzo@mail>
 sub   rsa3072 2024-06-06 [E]

Comandi utili

 ls .gnupg/
 gpg –list-keys (serve a ottenere la chiave alfanumerica da utilizzare per la firma dell’appimage)
 gpg –list-secret-keys
 ./<nome-appimage>.AppImage --appimage-signature

Preparare Ubuntu

 Nota: se copiamo i comandi da un file pdf, prima di incollarli nel terminale vanno copiati in un editor di testo e riformati in modo che essi non vadano a capo ma siano separati solo da uno spazio (dove serve).

Apriamo il terminale e diamo i seguenti comandi, sempre uno per volta:
scarichiamo ricorsivamente da internet Appimage builder:

 wget -O appimage-builder-x86_64.AppImage https://github.com/AppImageCrafters/appimage-builder/releases/download/v1.1.0/appimage-builder-1.1.0-x86_64.AppImage

lo rendiamo eseguibile con:

 chmod +x appimage-builder-x86_64.AppImage

lo spostiamo con:

 sudo mv appimage-builder-x86_64.AppImage /usr/local/bin/appimage-builder

installiamo le librerie per farlo funzionare con:

 sudo apt install -y binutils coreutils desktop-file-utils fakeroot fuse libgdk-pixbuf2.0-dev patchelf python3-pip python3-setuptools squashfs-tools strace util-linux zsync

Fatto, chiudiamo il terminale

Proviamo l’eseguibile

Avviamo la IDE di Gambas.
Dalla Farm installiamo CuckooClock (occorre leggere tutto per attivare il pulsante).
Apriamo il progetto senza avviarlo e dal menu Progetto Compiliamo tutto.
Sempre dalla IDE creiamo un eseguibile lasciandolo all’interno del progetto.
Chiudiamo la IDE e navighiamo all’eseguibile avviandolo con un doppio click.

 Nota: Occorre provare l’eseguibile per vedere se funziona correttamente altrimenti è inutile proseguire e conviene fare la prova con un’altra applicazione funzionante.

Siamo pronti per creare l’Appimage

Riavviamo la IDE di Gambas e apriamo il progetto CuckooClock senza avviarlo.
Dal menu Progetto clicchiamo su Crea un pacchetto di installazione… si aprirà la prima pagina dell’omonima finestra in cui volendo potete scrivere la mail, l’indirizzo del vostro sito cambiare il nome ecc.
Il progetto ricreerà l’eseguibile, va bene così.
Clicchiamo sul pulsante >> Seguente e scriviamo qualcosa per il Changelog del tipo: primo test per la creazione di un AppImage
Clicchiamo ancora sul pulsante >> Seguente e spuntiamo la voce AppImage
Clicchiamo ancora sul pulsante >> Seguente File:Esempio.jpg

Scegliamo la giusta distribuzione di Ubuntu dalla casella a discesa e clicchiamo sul pulsante Ottiene la configurazione corretta del sistema (Nota: se siamo su una derivata occorre scrivere l’indirizzo del repository di Ubuntu quello della foto va bene oppure uno internazionale come http://archive.ubuntu.com/ubuntu/) Spuntiamo la casella per l’inserimento della firma e nella casella di testo che si attiva inseriamo la corretta stringa alfanumerica A questo punto abbiamo immesso tutti i dati utili per la formazione dell’AppImage e possiamo agire sul pulsante Crea il pacchetto ora Fatto se tutto è andato bene apparirà la scritta I pacchetti sono stati creati in modo corretto. Chiudiamo la IDE di Gambas. Troveremo l’Appimage del programma nella cartella Home per renderlo eseguibile aprite il terminale e date questo comando ./Cuckoo*.AppImage --appimage-signature


BEGIN PGP SIGNATURE-----

iQGzBAABCgAdFiEEvTStVY3IVP0tTamN9yLiW1YCkIoFAmZhvqwACgkQ9yLiW1YC kIoN7wv/cEdn9fXYPOmRzN7w4dIsiNYyW9o22sjA12Wepb+rP2qMuIKUyIpUQLjg AhYoGZ3lnHZIZotmz82p0RLZ7jSn5ATuCp8pVtvlOM6fTbAv7qPcWRc3d1VPdeM2 slGX6cBVfhePCv0lwEw1llkI+cjIKQhccbSoWpZysgrf5/aJeWopExXshTJ2hrnY oTLaLWbMrCaArYwXSxdY/McrMAJdL4pmmYo16NxJ6bh8XKV8ppuEhSfCXa4WjP45 8joaHXzXBO2fQbFs2Q+Wb4AQ5W6kyFJlF2baAKd7R/QV9E+mad3kcUXsJb2/w/If ZHJ6Xori1bZmrzUeVO32JZTHs+UYRsm5pbhT8QGJqKZUtsMXmz+3y+aU/sGAPTM6 Fd7g8MTvteGUHcGyXiObqE26YFze4NmYB017dn5K/+JSUPGaAvb/zY8tVrqJuKkF m8PSJ41OKVFNqIhN+GJzd/omYKdbyCdlYY11+oSPX6jpSa5apkqnhncNHA1Z0HRI U9JdF+Fj =GuvC


END PGP SIGNATURE-----

chmod a+x Cuckoo*.AppImage a questo punto possiamo dare un doppio click per vedere se il programma funziona. 5 L’Appimage non parte Se l'Appimage non parte entro pochi secondi occorre provare dal Terminale con il comando: ./Cuckoo*.AppImage in questo modo possiamo vedere la risposta del terminale. Se il terminale risponde: dlopen(): error loading libfuse.so.2 AppImages require FUSE to run. You might still be able to extract the contents of this AppImage if you run it with the --appimage-extract option. See https://github.com/AppImage/AppImageKit/wiki/FUSE for more information Questo normalmente accade su un sistema vergine (senza Gambas installato) Sebbene molte distribuzioni abbiano una configurazione FUSE funzionante, potrebbe essere necessario installare e configurare FUSE manualmente. Ad esempio su Ubuntu 22.04 occorre aprire il terminale e digitare: sudo add-apt-repository universe sudo apt install libfuse2 Attenzione: Per i comandi corretti per la nostra distribuzione fare riferimento alla pagina di aiuto: https://github.com/AppImage/AppImageKit/wiki/FUSE come consigliato nella risposta del terminale. 5.2 Il link della prova: https://paste.c-net.org/LuciusCream