Starling: nuovo ambiente desktop per GNU/Linux scritto in Swift e realizzato con il supporto dell’AI Claude

Starling: nuovo ambiente desktop per GNU/Linux scritto in Swift e realizzato con il supporto dell'AI Claude

Starling rappresenta una svolta nel panorama degli ambienti desktop per distribuzioni GNU/Linux, un progetto che ridefinisce in modo netto il concetto di interfaccia utente. Si tratta di una versione innovativa di ambiente grafico sviluppata in soli 6 mesi da una singola persona, con il supporto costante di Claude, un sistema di intelligenza artificiale avanzato. L’elemento distintivo del progetto è la sua architettura monolitica, una struttura in cui ogni componente dell’interfaccia, dal compositor alla gestione delle finestre, dal dock ai menu, fino ai servizi di sistema, è integrato in un’unica applicazione nativa. Questa scelta elimina la frammentazione tipica degli ambienti desktop tradizionali, basati su processi separati che comunicano tramite protocolli diversi, e permette un controllo diretto e uniforme su ogni elemento dell’esperienza utente. L’obiettivo dichiarato è garantire prestazioni elevate, consumo energetico ridotto e un comportamento coerente su tutte le piattaforme supportate.

Starling dimostra che è possibile costruire un ambiente desktop completo e funzionale in tempi record, senza sacrificare le funzionalità. Il progetto si basa su una traduzione completa della piattaforma Flutter in Swift, eliminando la necessità di una macchina virtuale Dart e garantendo prestazioni native.

Il progetto non si limita all’ambiente desktop monolitico: il repository software GitHub dedicato a Starling contiene 3 componenti principali, sviluppati per formare un ecosistema completo. Il primo è l’ambiente desktop vero e proprio, costruito come applicazione unica che integra compositore, gestione delle finestre, pannelli e servizi dell’interfaccia. Il secondo è un terminale dedicato, progettato per offrire un’esperienza coerente con Starling e per sfruttare le stesse ottimizzazioni interne; include anche un server terminale multipiattaforma, con implementazioni specifiche per sistemi POSIX e Windows. Il terzo componente è una Windows Shell compatibile con Windows 10 e Windows 11, pensata per portare parte dell’esperienza Starling anche sulle piattaforme Microsoft, mantenendo una base tecnologica condivisa e un comportamento uniforme.

Il nuovo ambiente desktop Starling comprende circa 60.000 righe di codice, suddivise tra il desktop, il server Wayland e il server X11. Il codice è interamente open source, rilasciato sotto licenza Apache 2.0, e disponibile sul repository software ufficiale su GitHub.

Starling è ancora in fase “early preview” (anteprima anticipata): alcune funzionalità tipiche degli ambienti desktop maturi non sono ancora presenti o risultano incomplete. Mancano o sono in sviluppo componenti come audio, screen lock, notifiche e alcune integrazioni di sistema. Pur mostrando già un’architettura solida e prestazioni elevate, il progetto non è ancora pronto per sostituire un desktop principale in contesti produttivi.

Caratteristiche generali

Vediamo adesso come Starling presenti la ricostruzione del modello Flutter in Swift, l’adozione di un motore grafico nativo per il rendering GPU, la compatibilità diretta con Wayland e X11 mostrando come l’impiego di Swift consenta prestazioni elevate, latenza ridotta e un controllo completo su ogni componente del desktop.

Ricostruzione del modello Flutter in Swift

La parte centrale del progetto è la ricostruzione in Swift del funzionamento del framework Flutter. Flutter è una piattaforma per la creazione di interfacce grafiche basato sul linguaggio Dart, che viene eseguito tramite una macchina virtuale. Questo modello è efficace per applicazioni mobili, ma introduce un livello di astrazione che non è adatto a un ambiente desktop completo, dove sono richieste prestazioni native, latenza minima e accesso diretto ai protocolli grafici.

Per superare questi limiti, Starling ha implementato una libreria Swift che replica il comportamento di Flutter senza utilizzare Dart. Sono stati ricreati in Swift i concetti fondamentali della piattaforma: widget, gestione dello stato, layout, animazioni e rendering GPU. Swift compila direttamente in binari ELF nativi per GNU/Linux, eliminando la necessità di una macchina virtuale e garantendo prestazioni paragonabili a software di sistema scritto in linguaggi come C++. L’intero ambiente desktop, compreso il compositore, il window manager, il dock, i menu e i server grafici, è contenuto in un’unica applicazione nativa.

Target di riferimento e filosofia progettuale

Starling non è un tema né una personalizzazione di ambienti esistenti, ma una soluzione costruita da zero. Il target comprende utenti che necessitano di un ambiente leggero, reattivo e con un design coerente. Il rendering GPU è gestito direttamente dall’applicazione, senza dipendere da CSS, JavaScript o motori browser. Questo garantisce un consumo ridotto di risorse e un comportamento nativo.

Una caratteristica distintiva è il supporto per agenti di intelligenza artificiale. Gli agenti operano in uno spazio di lavoro separato, isolato dal desktop dell’utente. Possono interagire solo con le applicazioni che aprono autonomamente, senza accedere alle finestre dell’utente. Questo modello migliora la sicurezza e la privacy, soprattutto in contesti aziendali.

Compatibilità con Wayland e X11

Starling supporta nativamente Wayland e X11 senza utilizzare livelli di compatibilità come XWayland. Applicazioni come Chrome, Visual Studio Code, Zoom, Slack, IntelliJ IDEA, GIMP e Blender funzionano senza configurazioni aggiuntive. Il desktop è stato testato su schede grafiche AMD e su ambienti virtuali con virtio-gpu e virgl. Il supporto per Intel e NVIDIA è in sviluppo.

Disponibilità multipiattaforma

Starling è disponibile per le distribuzioni GNU/Linux basate su Ubuntu 26.04 LTS, che rappresenta la piattaforma principale per cui è stato sviluppato.

Su Windows, l’applicazione può essere eseguita tramite Windows Subsystem for Linux (WSL).

Per macOS, al momento è disponibile solo il terminale di Starling, compatibile con macOS 14 e versioni successive.

Versioni e rilasci

La versione 0.4.0 di Starling, rilasciata il 30 agosto 2026, rappresenta l’aggiornamento più recente disponibile nel repository software del progetto. Questa versione introduce miglioramenti mirati alla stabilità generale, una gestione più efficiente delle risorse e un’estensione del supporto alle piattaforme Windows tramite WSL (Windows Subsystem for Linux, sottosistema che permette l’esecuzione di componenti GNU/Linux in ambiente Windows). Tra le novità principali figurano gli stili desktop multipli e una riduzione significativa del consumo energetico in idle, ottenuta attraverso ottimizzazioni interne del sistema di rendering e dei servizi di background.

La versione 0.3.0 costituisce il rilascio precedente dell’ambiente desktop e include una serie di miglioramenti incrementali che hanno preparato la transizione alla versione stabile attuale. Parallelamente, la versione 0.2.0 riguarda il terminale Starling, sviluppato come applicazione separata e multipiattaforma, con un proprio ciclo di rilascio indipendente rispetto al desktop. All’interno dello stesso repository software è presente anche la versione WinShell v0.2.0, dedicata a Starling Windows Shell,

Novità in Starling 0.4.0

Starling 0.4.0 supporta Windows tramite WSL, introduce gli stili desktop macOS e Windows 11, riduce il consumo energetico in idle, mostra le anteprime dal vivo delle finestre e migliora il motore grafico, gli strumenti integrati e il comportamento delle finestre.

Supporto per Windows tramite WSL

Il desktop di Starling eseguito su Windows tramite WSL non viene mostrato attraverso un mirroring dello schermo, ma viene renderizzato direttamente sulla superficie RDP, cioè l’area grafica nativa gestita dal protocollo Remote Desktop. In questo modello, Starling non invia un flusso video del desktop già disegnato, ma produce i frame direttamente all’interno della superficie RDP, che funge da vero e proprio dispositivo di output. Questo significa che il desktop non viene catturato, compresso e trasmesso come accade nei sistemi basati su mirroring, ma viene generato in modo nativo dal compositore di Starling e consegnato direttamente al client RDP.

In pratica, la superficie RDP è il buffer grafico che il protocollo Remote Desktop mette a disposizione per disegnare l’interfaccia. Starling utilizza questa superficie come se fosse un monitor reale, inviando comandi di rendering invece di un’immagine già pronta. Il vantaggio è che non viene creato alcun mirroring dello schermo, perché non esiste un desktop separato da replicare: l’ambiente grafico viene renderizzato direttamente nel contesto RDP. Questo approccio elimina la latenza tipica dei sistemi basati su cattura dello schermo e permette di ottenere prestazioni paragonabili a quelle di un sistema locale, con aggiornamenti immediati, input diretto e assenza di overhead di codifica video.

Stili desktop personalizzabili

Starling offre due stili desktop tra cui scegliere: macOS e Windows 11. Una volta selezionato lo stile preferito, l’ambiente desktop si ricostruisce automaticamente per adattarsi alle caratteristiche visive del sistema operativo scelto, mantenendo la preferenza anche dopo il riavvio. Inoltre, quando si passa con il mouse su un’icona della barra delle applicazioni, vengono visualizzate anteprime delle finestre in tempo reale, che mostrano il contenuto attuale e aggiornato delle finestre aperte, e non una semplice miniatura statica. Per garantire un’aderenza perfetta allo stile Windows 11, i colori e le sfumature utilizzati provengono direttamente dal dizionario delle risorse WinUI di Microsoft, mentre il testo utilizza il font Selawik, sviluppato da Microsoft come alternativa open source a Segoe UI, il carattere proprietario utilizzato in Windows.

Ottimizzazione delle prestazioni

Il consumo della CPU in idle è stato ridotto da 1.40% a 0.02% grazie a una serie di ottimizzazioni mirate che hanno interessato il ciclo dei frame, i loop del compositore, i servizi D-Bus e la gestione della batteria. Questi interventi hanno eliminato attività superflue e ridotto il numero di operazioni eseguite quando il sistema non sta elaborando input o aggiornamenti grafici. È stata inoltre corretta una condizione che impediva l’aggiornamento dell’orologio di sistema quando non era presente alcun meccanismo di polling (controllo ciclico), garantendo così un comportamento stabile anche in assenza di eventi periodici.

Altre novità

Sono state introdotte anteprime dal vivo delle finestre: quando si passa con il mouse su un’icona della barra delle applicazioni, viene visualizzata un’anteprima aggiornata in tempo reale della finestra corrispondente. Inoltre, sono stati apportati miglioramenti al comportamento delle finestre per lo stile Windows 11, in modo che si massimizzino fino alla barra delle applicazioni e si minimizzino secondo le regole tipiche di Windows. Infine, sono stati rilasciati aggiornamenti significativi per il terminale, il gestore dei file e l’SDK, che migliorano la funzionalità e l’usabilità di questi strumenti.

Novità in Starling Terminal 0.2.0

Oltre al desktop, anche il terminale di Starling ha ricevuto aggiornamenti significativi con la versione 0.2.0, rilasciata il 5 settembre 2026. Questo aggiornamento introduce funzionalità che lo rendono uno strumento ancora più potente per sviluppatori e amministratori di sistema.

La versione 0.2.0 del terminale introduce spazi di lavoro remoti, sessioni persistenti, gestione avanzata delle schede, zoom del font, risposte automatiche ai prompt e miglioramenti all’interfaccia. Le sessioni possono essere condivise tra più client e rimangono attive anche in caso di disconnessione.

Il terminale è disponibile per GNU/Linux, macOS e Windows.

Spazi di lavoro remoti e sessioni persistenti

Il terminale ora supporta spazi di lavoro remoti e sessioni persistenti. È possibile:

  • Dividere uno spazio di lavoro in riquadri: Creare riquadri fluttuanti con un gap visibile, vedere a colpo d’occhio quale riquadro è attivo e quale ha terminato l’esecuzione, e spostarsi tra loro tramite tastiera.
  • Gestire le schede: Impilare gli spazi di lavoro come schede, ognuna su una propria superficie, in modo che una scheda si comporti e appaia come tale. È possibile accedere a qualsiasi scheda senza utilizzare il mouse.
  • Unificare la gestione degli host: Inserire direttamente un comando SSH nel selettore per aprire uno spazio di lavoro remoto e lasciare che l’host specifichi come vuole essere raggiunto. Un avvio crea una shell locale nell’host selezionato, non dove ci si trovava in precedenza, e il selettore ricorda dove si trovava ogni client.
  • Sessioni indipendenti: Grazie a termd, le sessioni hanno un ciclo di vita reale: possono terminare e segnalarlo, chiedono al kernel Linux dove si trova una sessione quando la shell non lo sa, e due client possono condividere uno spazio di lavoro con regole chiare su chi lo controlla. Una connessione interrotta non termina più la sessione: è possibile ricollegarsi e trovarla ancora attiva e in esecuzione.

Altre funzionalita’ del terminale

  • Barra di ricerca con incolla: Incollare nella barra di ricerca (e nel selettore) restituisce la corrispondenza.
  • Zoom del font: Le combinazioni Ctrl+ e Ctrl- cambiano la dimensione del testo, e la preferenza viene memorizzata.
  • Risposte automatiche ai prompt: Rispondere a un prompt ricorrente tramite un pattern, una volta per domanda, con un margine di 10 secondi per permettere a un utente umano di intervenire.
  • Sfondo più scuro: Lo sfondo è stato reso più scuro, rimuovendo la dominante viola.
  • Correzione per la ricerca di vim: La ricerca di vim non viene più sottolineata. Un controllo del protocollo della tastiera veniva letto come un attributo di testo; ora è di nuovo un controllo.

Novità in Starling Windows Shell 0.2.0

La versione winshell 0.2.0, rilasciata il 5 settembre 2026, è l’aggiornamento più recente dedicato a Starling Windows Shell, il componente del progetto pensato per offrire un ambiente di lavoro leggero e coerente su Windows 10 e Windows 11. Questa versione, disponibile nel repository software GitHub, introduce miglioramenti mirati alla stabilità dello spazio di lavoro, alla gestione delle finestre e all’integrazione con il terminale Starling, mantenendo una base tecnologica condivisa con il resto dell’ecosistema.

Miglioramenti alla gestione delle finestre

La versione 0.2.0 introduce un affinamento del sistema di gestione delle finestre, con una revisione del comportamento di minimizzazione, ripristino e ridimensionamento. Le operazioni risultano ora più prevedibili e coerenti, grazie a una ristrutturazione interna del ciclo di aggiornamento dello spazio di lavoro. Questo intervento riduce i casi di desincronizzazione tra finestra e shell, migliorando la stabilità complessiva dell’ambiente grafico.

Ottimizzazioni del workspace

Lo spazio di lavoro di Starling Windows Shell riceve una serie di ottimizzazioni che riguardano la disposizione degli elementi grafici e la gestione delle transizioni. La versione 0.2.0 introduce un sistema più efficiente per il calcolo delle aree di lavoro, riducendo il carico computazionale nelle operazioni di aggiornamento. Questo si traduce in una maggiore reattività dell’interfaccia, soprattutto su hardware con risorse limitate.

Integrazione con il terminale Starling

La comunicazione tra la shell e il terminale Starling è stata migliorata attraverso una revisione del sistema di messaggistica interna. La versione 0.2.0 introduce un canale più stabile per la gestione delle richieste provenienti dal terminale, riducendo la latenza nelle operazioni di apertura, chiusura e rendering delle finestre associate. Questo aggiornamento rende l’esperienza d’uso più uniforme, mantenendo la coerenza tra i componenti del progetto.

Riorganizzazione delle cartelle di configurazione

La versione 0.2.0 include una riorganizzazione delle cartelle di configurazione, ora strutturate in modo più chiaro per facilitare la distribuzione del componente e semplificare eventuali aggiornamenti futuri. La nuova disposizione permette una separazione più netta tra configurazioni utente e configurazioni di sistema, riducendo il rischio di conflitti durante l’installazione o la migrazione verso versioni successive.

Un ambiente dedicato per Windows

Starling Windows Shell continua a mantenere un approccio essenziale, offrendo un ambiente grafico leggero che non replica il desktop completo delle distribuzioni GNU/Linux, ma permette di utilizzare strumenti Starling in modo coerente anche su piattaforme Microsoft. La versione 0.2.0 consolida questa direzione, migliorando la stabilità del componente e rafforzando la sua integrazione con il terminale, senza introdurre elementi già presenti nel desktop monolitico.

Download e Riferimenti

Il nuovo ambiente desktop Starling è disponibile per il download tramite pacchetti software .deb destinati alla distribuzione GNU/Linux Ubuntu 26.04 LTS (amd64), scaricabili direttamente dal sito ufficiale del progetto, dove sono presenti tutte le istruzioni necessarie per l’installazione. In alternativa, è possibile ottenere la stessa versione anche dal repository software ufficiale su GitHub, che include sia i pacchetti precompilati sia tutte le cartelle contenenti i sorgenti del progetto. Inoltre, la versione per WSL è sempre disponibile sul sito ufficiale, nella stessa sezione dedicata al download, insieme alle indicazioni necessarie per l’esecuzione su Windows.

Starling Terminal 0.2.0 è disponibile per il download tramite pacchetti software .deb destinati alle distribuzioni GNU/Linux Ubuntu 26.04 LTS (amd64 e arm64), scaricabili direttamente dal sito ufficiale del progetto, dove sono presenti tutte le istruzioni necessarie per l’installazione. In alternativa, è possibile ottenere la stessa versione anche dal repository software ufficiale su GitHub, che include i pacchetti precompilati per GNU/Linux, Windows (.msi) e macOS (.dmg), oltre alle cartelle contenenti i sorgenti e ai file del server terminale multipiattaforma termd per architetture x86_64, arm64 e win64.

Starling Windows Shell 0.2.0 è disponibile per il download tramite pacchetti software dedicati alle piattaforme Windows 10 e Windows 11, scaricabili direttamente dal sito ufficiale del progetto, dove sono presenti tutte le istruzioni necessarie per l’installazione. In alternativa, è possibile ottenere la stessa versione anche dal repository software ufficiale su GitHub, che include i pacchetti precompilati .msi per Windows, oltre alle cartelle contenenti i sorgenti e ai file del componente shell necessari al funzionamento dell’ambiente grafico leggero.

Riferimenti Ufficiali

Per maggiori dettagli sul progetto, oltre che per accedere alle guide utente e alle ultime novità, è possibile consultare il sito web ufficiale di Starling. Chi desidera analizzare il codice sorgente, leggere le istruzioni di compilazione o contribuire direttamente allo sviluppo può invece fare riferimento al repository software su GitHub del progetto Starling.

Fonte: https://starling.build/
Fonte: https://github.com/starling-build/starling
Fonte: https://www.phoronix.com/news/Starling-Swift-Desktop
Fonte: https://peoplearegeek.com/starling-a-linux-desktop-in-swift-written-with-claude
Fonte: https://linuxadictos.com/starling-el-entorno-de-escritorio-nacido-de-la-inteligencia-artificial

Visited 1 times, 1 visit(s) today
Se vuoi sostenermi, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che ho nel mio sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul mio negozio online, quelle mancanti possono essere comunque richieste.

Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!

Hai dubbi o problemi? Ti aiutiamo noi!

Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.
Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.
Amazon Music
Scopri le ultime offerte per dischi ssd su Acquista su Amazon
Scopri le ultime offerte per memorie RAM DDR su Acquista su Amazon
Scopri le ultime offerte per Chromebook su Acquista su Amazon
Scopri le ultime offerte per Raspberry su Acquista su Amazon

Potrebbero interessarti anche...

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.