Mi aggiungo anche io alla conversazione anche se è passato qualche mese.
Nonostante la guida di Vincenzo, dopo aver convertito il pacchetto DEB in AppImage non sono stato in grado di far aprire la pagina di login su browser.
Usando la spin KDE di Fedora 41, ho potuto creare velocemente una entry nel launcher delle app con icona, scheme-hadler per diker://
e flag %U
, ma comunque non funzionava, anche aggiungendo la variabile d’ambiente BROWSER=xdg-open
.
Semplicemente non apriva proprio il browser, impedendomi di loggare.
Ho provato a usare bottles
per cercare di installare la versione per Windows con wine
, ma pare che nonostante tutto questo tempo sia ancora impossibile farlo funzionare.
A quel punto ho provato a usare il tool alien
per convertire direttamente il pacchetto da .deb
a .rpm
, usando alien --to-rpm --scripts gosign-desktop.deb
, però per qualche motivo questo nuovo pacchetto risultava avere come dipendenze librerie ARM64 che ovviamente non potevo avere su una macchina x86_64, dunque dnf
mi impediva di installarlo.
Dopo questa premessa, alla fine quello che ha funzionato è stato spacchettare il tutto e procedere a una installazione “manuale”, sperando di avere tutte le librerie giuste.
Ecco quello che ho fatto:
- Estrazione del contenuto del pacchetto
mkdir gosign_temp
cd gosign_temp
ar x ../gosign-desktop.deb
tar -xf data.tar.*
In questo modo ho ottenuto dentro gosign_temp
la struttura delle cartelle come fossero quelle di destinazione (/usr/bin
/usr/lib
/usr/share
).
- Installazione “permanente”
sudo mkdir -p /opt/gosign
sudo cp -r gosign_temp/usr/* /opt/gosign/
sudo ln -s /opt/gosign/bin/gosigndesktop /usr/local/bin/gosigndesktop
Così ho copiato i file di GoSign in una nuova cartella nella directory delle app e ho creato un link simbolico in /usr/local/bin
in modo da avere disponibile direttamente il comando gosigndesktop
- Riparazione delle librerie mancanti
A questo punto, eseguendo GoSign da terminale ho notato subito che si fermava a una schermata bianca, e nei registri compariva questa libreria mancante: libbz2.so.1.0
.
Ho provato semplicemente a installare la libreria bzip2
con sudo dnf install bzip2-devel-1.0.8-19.fc41.x86_64
ma non è stato sufficiente, perché voleva quella versione specifica, che nessun pacchetto forniva.
A quel punto, ho provato brutalmente a linkare libbz2.so.1.0
al pacchetto di sistema:
sudo ln -s /lib64/libbz2.so.1.0.8 /lib64/libbz2.so.1.0
Incredibilmente, dopo aver riavviato il terminale e rilanciato gosigndesktop
sono arrivato alla schermata di login, che ovviamente non funzionava perché l’handler non era registrato.
- Creazione del file
.desktop
con le informazioni sull’app
Per risolvere il problema di login e la mancanza dell’icona, oltre all’assenza dell’app nel launcher, mi è bastato copiare manualmente il file gosigndesktop.desktop
e la relativa icona dalla cartella share
presente nel pacchetto estratto nelle posizioni corrette:
cp /opt/gosign/share/applications/gosigndesktop.desktop ~/.local/share/applications/
sudo cp /opt/gosign/share/pixmaps/gosigndesktop.png /usr/share/icons/hicolor/96x96/apps/
Così facendo, l’app dovrebbe comparire automaticamente nel launcher con nome, icona, descrizione e categoria già corrette, l’handler registrato (è indicato all’interno del file .desktop
alla voce MimeType
) e il flag %U
già inserito.
Incerto dei risultati ottenuti, ho effettuato diverse prove e sembrerebbe funzionare tutto.
Test effettuati:
Login tramite browser
Verifica della firma
Estrazione dei file dalle buste firmate .p7m
Firma tramite firma remota InfoCert (PAdES - CAdES con e senza elemento grafico)
Firma tramite dispositivo USB*
*Per questa prova mi sono fatto prestare una chiavetta DigitalDNA Key bit4id, che è stata riconosciuta senza problemi (sul computer era già installato il software di firma bit4id, quindi non saprei se quello includesse driver particolari che normalmente non sarebbero presenti).
Detto questo, spero che questa integrazione alla discussione sia stata gradita.
Ogni tanto è divertente mettersi a smanettare per cercare di risolvere problematiche simili, ma comunque spero che InfoCert possa pensare in futuro di prendere in considerazione anche altre distribuzioni Linux come Fedora (mi accontenterei anche di pacchetti universali come Flatpak o anche solo AppImage, ma chi siamo noi per chiedere sforzi così grandi).