
Sfrutto l’occasione della pausa estiva per formattare e ricreare l’ambiente di sviluppo sia sul computer fisso che sul portatile; utilizzerò gli appunti presi nelle occasione precedenti di formattazione, ma aggiornandoli al 2021.
Scaricare l’ultima versione di Ubuntu dal sito ufficiale; scarico sempre la versione in inglese perchè quando ci sono problemi, è molto più facile trovare aiuto in inglese piuttosto che in italiano (in giro per il mondo ci sono molte più persone che parlano inglese e scrivono articoli e nei forum in inglese).
Creare una chiavetta USB di avvio da Linux/Ubuntu utilizzando la utility “Create startup disk” o da Windows utilizzando una delle utility disponibili; resto sul generico perchè non utilizzando Windows, non saprei qual’è la migliore utility per creare una chiavetta di avvio per Linux/Ubuntu.
Io ho già una chiavetta USB funzionante con Ubuntu, quindi la inserisco nel computer da formattare e lo riavvio; durante il riavvio, nelle fasi iniziali del bios, vado a selezionare la chiavetta come punto di partenza (per aprire il menu per selezionare la chiavetta, il bottone da premere cambia in base al bios, ma io ho sempre utilizzato in alternativa ESC, F9 o F12); il resto è poco più di un “next-next-next”: imposto un nome utente e una password per l’utente principale, imposto una password per la cifratura del disco con LTE, attendo e riavvio quando ha finito. Questo articolo non è qui per spiegare come creare chiavette per Linux/Ubuntu ma su come installare e configurare un ambiente di sviluppo PHP e per creare App mobili, quindi non entrerò nel dettaglio.
Questa parte è opzionale, la seguo solo quando sto utilizzando una macchina meno performante.
Dopo aver installato Ubuntu come accennato nel paragrafo precedente, procedo ad installare il desktop environment di lubuntu. Esistono sicuramente metodi più moderni ma mi sono sempre trovato bene con “tasksel” quindi prima lo installo:
sudo apt-get install tasksel
Poi lo lancio e lo utilizzo per selezionare e installare Lubuntu Desktop (con le frecce si va sulla voce Lubuntu Desktop e poi la si seleziona con la barra spaziatrice).
Dopo il riavvio del sistema operativo (un bel shutdown -r now è la scelta giusta) sarà necessario selezionare nella schermata di login il desktop Lubuntu; per farlo, con la versione attuale di Ubuntu, basterà cliccare prima sul nome utente (così appare il campo per inserire la password) e in basso a destra cliccare sull’icona viola simile ad un pallino. Si aprirà un menu le cui voci attualmente sono:
Io mi limito a selezionare Lubuntu e accedo digitando la password.
E’ un desktop environment più leggero di quello standard basato su Gnome (questo è basato su KDE) ed è esteticamente più che decente; ci sono distro Linux ancora più adatte a computer lenti, come la Puppy Linux e la Peppermint, ma se devo passare la giornata davanti al computer, un minimo di estetica ci vuole. Nel caso della Lubuntu, l’estetica è associata a buone performance.
Una volta installato, procedo ad alcune personalizzazioni non strettamente necessarie ma per me comode
Di default, Ubuntu ha preinstallato Firefox; alcuni pensano che Firefox sia un buon browser web, ma alcuni pensano che sia il miglior browser a disposizione. In realtà, Firefox è il miglior browser a disposizione, per scaricare Google Chrome. Quindi lo apro, cerco “Download Google Chrome”, lo scarico e lo installo.
Durante l’installazione, Google Chrome chiede di essere il browser di default e io questo lo accetto volentieri; nella stessa schermata chiede anche di inviare dati anonimi e di crash (disabilito sempre quella voce) e accedo.
La prima cosa che faccio è accedere nel mio indirizzo email e attivo la sincronizzazione in modo che vengano in automatico scaricati i bookmarks, la cronologia e le password memorizzate.
Chromium è il progetto Open Source sul quale Google ha basato il proprio browser Google Chrome; è utile installarlo e averlo come browser in più se necessario per fare qualche test.
sudo apt-get install chromium-browser
Per scaricare Netbeans per PHP di solito scrivo su Google “netbeans php download” e arrivo a quella che attualmente è la pagina di download dalla quale scarico l’ultima versione. Il file da scaricare per Linux/Ubuntu è quello con estensione .sh
Una volta completato il download, vado con la command line nella cartella di download e lancio l’installer
sh [nome-file-scaricato].sh
Se la Java SE Development Kit non è stata già installata, il nostro fantastico installer ci dirà come montarla e cioè visitando il link suggerito nella console, oppure è anche possibile installare in questo modo sudo apt-get install openjdk-8-jdk
Per Linux/Ubuntu va selezionata la versione con estensione .deb. Una volta scaricata, vado con la command line nella cartella di download e poi
sudo dpkg -i [nome-file-scaricato].deb
A questo punto ritorno all’installazione di netbeans e tutto funziona correttamente.
Netbeans permette di creare progetti ai quali collegarsi via FTP, SFTP e di implementare GIT; dato che uso Netbeans da anni, ho le credenziali FTP o SSH già configurate in un altro computer, quindi devo soltanto importarle e poi ricreare a mano i progetti di cui ho bisogno.
Sostituisco quindi /home/[username]/.netbeans con quella di backup; questo farà apparire tutte le connessioni mentre avrò bisogno di creare e scaricare manualmente i progetti. In questa fase devo copiare anche le chiavi SSH nella cartella /home/[username]/.ssh perchè molte connessioni hanno bisogno delle chiavi. Una volta copiate, vanno rese utilizzabili come spiego qui.
Di solito non creo un collegamento ma lo lancio sempre a mano perchè così posso controllare eventuali messaggi di errore e bloccare facilmente l’esecuzione dello script con Control + C. Vado quindi con la command line sul Dekstop e lo avvio
./Apache\ NetBeans-12.5.desktop
NetBeans inserisce una nuova versione della JDK che poi va modificata per rendere Flutter nuovamente funzionante e poi va impostata la nuova (vecchia) JDK in NetBeans impostando “netbeans_jdkhome” nel file ~/netbeans-12.4/netbeans/etc/netbeans.conf. Ad esempio io l’ho impostato così netbeans_jdkhome=”/usr/lib/jvm/java-1.8.0-openjdk-amd64/”
A Dicembre 2020 ho scritto questa guida per installare l’ambiente di sviluppo per applicazioni mobili https://www.webtechandbiz.com/installare-flutter-su-ubuntu-20-04. In particolare la guida permette di installare Android Studio e Flutter su Ubuntu 20.04. L’ho ritestata adesso (Agosto 2021) e tutto ha funzionato correttamente, a parte una cosa che sembra sia spuntata dopo il 2020, e cioè, nello step della guida in cui lanciamo flutter-doctor in questo modo.
flutter doctor --android-licenses
viene restituito un errore, un’eccezione java che a quanto vedevo dalle ricerche su Google, bisogna risolvere utilizzando Android Studio; però ho provato a lanciare flutter upgrade e a questo punto il problema è stato superato, ma ne ho incontrato un altro che ho dovuto comunque risolvere aprendo Android Studio:
come consigliato qui su StackOverflow.
Avevo l’impressione che Il menu Tools non fosse accessibile se prima non avessi creato un progetto. Allora ho selezionato a sinistra “Plugins” e ho installato il plugin Flutter. Quando l’IDE è ripartito, ho notato in basso “More actions” e dove ho trovato “SDK manager”; da qui ho proceduto dal punto 3) della lista precedente, senza dover effettivamente creare un nuovo progetto.
A questo punto è possibile creare un nuovo progetto o aprirne uno da importare. Nella guida citata più in alto per installare Android Studio, viene indicato anche come creare un nuovo progetto mentre qui spiego come importare un progetto Flutter già realizzato in passato.
Per far girare le app in Android Studio, è necessario prima cliccare su ADV manager

Di solito imposto il Nexus 6 e poi nello step successivo clicco su Download in relazione all’ultima versione di Android e l’ultima API level disponibile (in questo momento Agosto 2021, la 30). A questo punto ho un fantastico emulatore e dopo il riavvio di Android Studio, posso avviare il mio progetto.
Aggiungo che quando il progetto è stato già pubblicato su Google Play, sarà necessario aggiornare key.properties con il nuovo path dello storeFile.
Gimp è un software di editing di fotografie, ha punti in comune con Photoshop senza arrivare al livello, ma è un ottimo strumento soprattutto per un programmatore che non lo usa come strumento principale del proprio lavoro.
sudo apt-get install gimp
E’ molto semplice basta lanciare il comando di installazione dalla command line e seguire le istruzioni.
Sempre restando in ambito “strumenti per lavorare” ho sempre la necessità di scaricare e installare le chiavi SSH per collegare Netbeans, Filezilla e l’SSH client a un SSH server.
Spiego qui come attivare una chiave SSH generata su server SiteGround