Il progetto Omakub semplifica la configurazione di Linux

Su tutte le distribuzioni Linux è integrato un ottimo package manager come apt, ma molti strumenti richiesti dagli sviluppatori non sono disponibili o necessitano di configurazioni post-installazione. Dopo l’installazione del sistema operativo. qualsiasi tipologia di utente personalizza il proprio l’ambiente di lavoro a seconda delle esigenze e le necessità. Per chi ancora non ha provato l’ebrezza di Linux posso permettermi di consigliare UBUNTU, una delle distribuzioni più adottate e talvolta preinstallata su alcuni sistemi.

Mi sono imbattuto in un progetto molto simpatico e vorrei 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

Un comando per trasformare Linux in un sistema completo e moderno per ogni sviluppatore

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.

Cosa integra il pacchetto Omakub per Ubuntu 24.04 LTS

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.

Configurazioni già predisposte, per semplificare il lavoro del programmatore

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.

Interfaccia e scorciatoie da tastiera

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.

Author: Antonello