Installare Pinegrow su Ubuntu 21.04

Installare Pinegrow 6 su Ubuntu 21.04

Pinegrow 6 è un ottimo strumento per la creazione di pagine HTML, con supporto a framework quali Bootstrap, Foundation e Tailwind, e per di più, è multipiattaforma. Ma mentre su Windows e MacOs è dotato di un comodo installer, sotto Linux le cose si complicano un pochino (ma nemmeno troppo).

Oggi voglio spiegarti come ho installato Pinegrow 6 su Ubuntu 21.04.

Premessa: il tutorial ufficiale parte dal presupposto che Ubuntu sia nella versione LTS (mentre la 21.04 non lo è). L’installazione infatti è certificata solo sulle LTS. Questo tuttavia non significa che non sia possibile installare Pinegrow anche su altre versioni di Ubuntu.

Il tutorial ufficiale è questo: https://pinegrow.com/docs/getting-started/install-and-run-pinegrow/install-pinegrow-on-ubuntu-linux/

Semplificando: si scarica il pacchetto, lo si scompatta in una cartella (io l’ho salvato in /home/PinegrowLinux64.6/ ) si edita il file Pinegrow.desktop indicando nella riga con il parametro EXEC il path dell’eseguibile, lo si copia sulla Scrivania, lo si clicca con il tasto destro del mouse, lo si rende eseguibile dalla voce contestuale del menu, ed il gioco è fatto.

Beh, non proprio: nel mio caso ho faticato un po’ a capire come impostare il parametro EXEC del file sopra citato. Infatti se il percorso non è corretto, l’opzione per rendere eseguibile il file non si attiva e non la si vede nel menu contestuale.

Nel mio caso, l’app non partiva comunque. Lanciandola da Terminale ecco che mi ritornava un messaggio poco chiaro:

Apertura nella sessione del browser esistente.

In realtà non si apriva nulla… mi è sorto il dubbio che fosse un problema di compatibilità con Wayland, il window manager di Ubuntu (in realtà non era quello…) Eseguendo l’app da XOrg le cose però sono cambiate: l’errore era differente:

[4966:4966:0610/174131.157519:ERROR:sandbox_linux.cc(376)] InitializeSandbox() called with multiple threads in process gpu-process.
[4994:4994:0610/174131.331306:FATAL:nw_content_renderer_hooks.cc(53)] Failed to load node library (error: libatomic.so.1: impossibile aprire il file oggetto condiviso: File o directory non esistente) #0 0x7f460f2173b9 (/home/marco/PinegrowLinux64.6/lib/libnw.so+0x48253b8)

Dato che Pinegrow si basa su Javascript e Node.js, ho provato ad installare node.js con

sudo apt-get install nodejs

Il problema non si era ancora risolto. Qualcuno su Stackoverflow (purtroppo non ricordo la pagina) diceva di cancellare i file dalla cartella .cache presente nella propria home. Nel mio caso ho rimosso la cartella “Pinegrow” presente.

Ancora nulla.

Qualcuno suggeriva di installare questa libreria, che sulla mia installazione era assente:

sudo apt install libatomic1

Riguardando il messaggio, sembrava che l’errore fosse anche legato alla gpu (nel mio caso una integrata di Intel, in un Celeron). Cercando online, ecco spuntare alcuni parametri aggiuntivi, che aggiunti al mio file Pinegrow.desktop, alla voce EXEC, hanno fatto partire il programma!
In pratica per eseguire Pinegrow (in base alla posizione in cui l’ho installato) devo eseguire

/home/marco/PinegrowLinux64.6/PinegrowLibrary --disable-gpu --disable-software-rasterizer

Ovviamente eseguo il tutto dall’icona Pinegrow.desktop, ma è come se fosse la stessa cosa.

Per curiosità ho lanciato l’app con

/home/marco/PinegrowLinux64.6/PinegrowLibrary

e

/home/marco/PinegrowLinux64.6/PinegrowLibrary --disable-gpu

Nella variante senza parametri ottengo

[8701:8701:0610/181551.359639:ERROR:sandbox_linux.cc(376)] InitializeSandbox() called with multiple threads in process gpu-process.

Ma poi Pinegrow parte comunque. Anche con Wayland (ma per comodità preferisco Xorg, perchè con alcuni programmi ho riscontrato limitazioni: ad esempio Teamviewer non accetta connessioni ingresso e Skype non condivide lo schermo)

Chiaramente la mia procedura non è ufficiale, è basata su prove empiriche, e non è detto che funzioni con tutti o con altre varianti di Ubuntu. Ma per ora l’app è risultata stabile.

Non so se node.js serva davvero… di sicuro la differenza pare sia arrivata con la libreria libatomic1.

Spero che questa guida possa aiutarti se anche tu stai cercando di installare Pinegrow su Ubuntu 21.04!

Fammi sapere!