Ubuntu è una delle distribuzioni Linux più adottate ed è talvolta preinstallata su alcuni sistemi. Anche se Ubuntu integra un ottimo package manager come apt
, molti strumenti richiesti dagli sviluppatori non sono disponibili o necessitano di configurazioni post-installazione.
In generale siamo contrari ai “vestiti per tutte le stagioni”: l’ambiente di lavoro, dopo l’installazione del sistema operativo, dovrebbe essere personalizzato a seconda delle esigenze di ciascun utente. E le necessità di una singola persona, evidentemente, non sono sovrapponibili con quelle degli altri utenti.
Ci sentiamo però di consigliare Omakub, una raccolta curata di applicazioni e strumenti che uno sviluppatore potrebbe scoprire soltanto dopo ore ed ore di ricerche in rete. L’obiettivo è permettere a chi proviene da piattaforme come Windows e macOS di iniziare immediatamente a utilizzare un sistema Linux preconfigurato, senza dover dedicare tempo alla configurazione e alla selezione dei tool migliori.
Ideato da David Heinemeier Hansson, il progetto Omakub si propone di semplificare l’esperienza di configurazione di un ambiente di sviluppo su Linux, offrendo un setup preconfigurato che non richiede ore di configurazione manuale. Se siete sviluppatori, scaricate Ubuntu 24.04 – che tra l’altro è una versione LTS (Long Term Support), il cui supporto terminerà addirittura nel 2034, tra 10 anni – e installatelo.
A questo punto, aprite una finestra del terminale e impartite il comando seguente:
wget -qO- https://omakub.org/install | bash
Non si tratta di offrire soluzioni uniche a problemi comuni, ma di fornire un pacchetto coerente che molti sviluppatori apprezzeranno, in modo da avere tutti i software necessari già pronti per l’uso.
Omakub, pubblicato in questa pagina GitHub, include un ventaglio di software open source e commerciale. Non è pensato come una soluzione basata esclusivamente su software libero, perché tanti programmatori potrebbero ritenere la loro esperienza piuttosto limitante.
Il pacchetto integra Chrome come browser predefinito (oltre a Firefox), WhatsApp e Signal per la messaggistica istantanea, applicazioni multimediali come VLC, Spotify, Flameshot e Pinta.
Il lettore PDF prescelto è Xournal++ mentre come editor sono stati integrati Neovim (configurato via lazyvim) e Visual Studio Code.
La finestra del terminale, ampiamente utilizzata da ogni sviluppatore, risulta migliorata con l’adozione di Alacritty e Zellij. Alacritty è un emulatore di terminale veloce, leggero e altamente configurabile. È scritto in Rust ed è progettato con un’attenzione particolare alle prestazioni. Zellij è un gestore di tile per il terminale: permette di suddividere la finestra del terminale in più pannelli.
Parte integrante di Omakub sono strumenti come Docker, che permette di gestire la containerizzazione di applicazioni e progetti, e Lazydocker, un’interfaccia utente testuale per Docker, che semplifica la gestione e il monitoraggio dei container Docker.
gh CLI è l’interfaccia a riga di comando ufficiale di GitHub. Permette di interagire con GitHub direttamente dal terminale, facilitando l’esecuzione di operazioni che normalmente richiederebbero l’uso dell’interfaccia Web.
Grazie a mise, inoltre, il programmatore può gestire le varie versioni di linguaggi come Ruby, Node.js, Python, Go e Java. Consente di installare e utilizzare diverse versioni sullo stesso sistema, facilitando lo sviluppo e il testing di applicazioni che richiedono release specifiche.
La gestione dei pacchetti software e l’automatizzazione del processo di installazione, è solo una parte del lavoro che dovrebbe essere svolto e che invece Omakub consente di accelerare.
La parte forse più ostica risiede nell’impostazione dei file di configurazione dei vari pacchetti: il pacchetto che vi proponiamo integra impostazioni predefinite e già personalizzate in modo da assicurare un’esperienza coerente e facilitando l’adozione di Linux come piattaforma di riferimento per lo sviluppo software.
L’interfaccia di Ubuntu è basata su GNOME, ma Omakub la modifica in modo incisivo per impostare il flusso di lavoro sull’uso prevalente della tastiera e incentrandolo sul tiling delle finestre.
L’autore del progetto ha aggiunto estensioni GNOME per migliorare l’esperienza utente, come la sfocatura della shell e la possibilità di nascondere le icone sul desktop. Il tema predefinito è Tokyo Night, ma è possibile scegliere tra altri temi completamente integrati. Omakub utilizza il font Cascadia Mono di Microsoft, ma offre anche alternative che possono essere facilmente cambiate tramite il comando omakub
.
In termini di scorciatoie da tastiera, Omakub propone quelle che contribuiscono a migliorare l’efficienza e la produttività nel lavoro quotidiano. I tasti Super+1/2/3/
… possono essere sfruttati per passare rapidamente tra diversi spazi di lavoro (workspace). Gli spazi di lavoro sono aree virtuali separate utilizzabili per organizzare finestre e applicazioni. Il tasto Super
coincide con il tasto Windows sulla tastiera.
Con la pressione di F11
si può abilitare la modalità a schermo intero per la finestra attualmente attiva. Permette di massimizzare l’area di lavoro disponibile, nascondendo elementi come la barra delle applicazioni e le barre di stato.
Grazie alla combinazione Super+T
si può richiedere il tiling delle finestre: in questo modo il sistema organizza automaticamente le finestre aperte in un layout senza sovrapposizioni.
Per aprire Ulauncher, un “lanciatore” di applicazioni veloce e configurabile (permette di cercare e avviare rapidamente programmi installati, eseguire comandi personalizzati e cercare sul Web), è invece sufficiente premere Super+Barra spaziatrice
.
Utilizzando le combinazioni di tasti ALT+1/2/3/
…, si possono avviare oppure portare in primo piano le applicazioni ancorate nel dock (barra delle applicazioni) in base alla loro posizione.
Le immagini nel testo dell’articolo sono tratte da questo video di presentazione. Credit immagine in apertura: iStock.com – Manfort Okolie