Vai al contenuto

Unity (software)

Da Wikipedia, l'enciclopedia libera.
Unity
software
Logo
Logo
Unity 7.6 in esecuzione su Ubuntu Unity 22.10
Unity 7.6 in esecuzione su Ubuntu Unity 22.10
Unity 7.6 in esecuzione su Ubuntu Unity 22.10
GenereDesktop environment
SviluppatoreCanonical, community di Ubuntu, community di Ayatana
Data prima versione9 giugno 2010[1]
Ultima versione7.7[2] (25 dicembre 2022)
Ultima beta7.7 (25 dicembre 2022)
Sistema operativoUbuntu
LinguaggioQML
C++[3]
Vala[3]
ToolkitGTK
LicenzaGNU GPL v3, GNU LGPL v3
(licenza libera)
LinguaMulti-lingua
Sito webunityd.org/

Unity è una shell (interfaccia) per l'ambiente desktop GNOME sviluppata da Canonical per il suo sistema operativo Ubuntu, ha debuttato per la prima volta nella versione 10.10 di Ubuntu Netbook Edition.[4]

La prima versione alpha venne pubblicata nel 2010.

Ubuntu ha tradizionalmente utilizzato il completo ambiente desktop fornito da GNOME. Tuttavia, a partire dalla versione 11.04, Mark Shuttleworth, il fondatore di Canonical, ha scelto di sviluppare ed utilizzare un ambiente diverso da GNOME Shell a causa di divergenze sulle scelte tecniche prese dal gruppo di sviluppatori a capo del progetto GNOME.[5] Unity, essendo basata su GNOME, supporta tutti i programmi per questo ambiente.

A partire dalla versione 11.04, Unity è diventata l'interfaccia predefinita di Ubuntu, riscontrando un controverso successo: pur essendo tra le interfacce più diffuse nel mondo Linux, e pur rimanendo possibile comunque installare Gnome 3, sono fiorite diverse distribuzioni (come Linux Mint) volte a riportare l'esperienza "classica" di Gnome 2, nelle quali, al posto dei DE disponibili su Ubuntu, vengono utilizzate altre interfacce grafiche come Cinnamon o MATE. Il 4 marzo 2013 è stato annunciato Unity Next, la nuova versione di Unity successivamente rinominata Unity 8, che consisteva in una nuova riscrittura utilizzando il toolkit Qt ed nuovo server grafico Mir. Il 5 aprile 2017 è stato annunciato da Mark Shuttleworth che a partire dalla versione 18.04 di Ubuntu la shell predefinita torna ad essere la shell di default di GNOME, chiamata GNOME Shell.[6]

Subito dopo l'annuncio dell'abbandono da parte di Canonical , lo sviluppo di unity 8 è stato portato avanti inizialmente dal progetto Yunit e, dal febbraio 2018, dal progetto UBports.[7] Lo sviluppo è tuttora in corso, sotto il nuovo nome "Lomiri",[8] e nel prossimo futuro, grazie ai progressi di Mir, il cui sviluppo continua ad essere portato avanti da Canonical e da alcuni sviluppatori del progetto UBports, Lomiri dovrebbe diventare compatibile con il protocollo Wayland.[9]

Anni dopo l'abbandono di Unity in favore di GNOME da parte di Canonical, la shell nella sua versione 7, cioè la più sviluppata e completa per l'utilizzo sul desktop, viene mantenuta da una comunità di sviluppatori che provvede affinché il software mantenga la compatibilità con le nuove versioni di Ubuntu. Lo sviluppo è più lento e più concentrato sulla manutenzione del codice piuttosto che sull'introduzione di nuove funzionalità.[10][11]

In un sondaggio effettuato da Canonical nel dicembre 2019, che ha visto quasi 21900 partecipanti, alla domanda sul Desktop Enviroment da utilizzare o le caratteristiche da integrare nella versione 20.04 di Ubuntu, circa il 30% delle risposte aperte auspicava il ritorno di Unity, pur non essendo questa l'interfaccia predefinita sulla distro ormai da anni.[12]

Caratteristiche generali

[modifica | modifica wikitesto]

Utilizza le librerie nux (un toolkit basato su OpenGL) e in Ubuntu è implementata con diverse applicazioni di GNOME, utilizzando anche molte dipendenze di tale ambiente desktop. Concepita inizialmente per l'ultilizzo sui netbook (Ubuntu Netbook Remix), si è successivamente notato che funzionalità ritenute inizialmente utili solo per i piccoli schermi fossero adatte anche all'utilizzo in ambito desktop.

Dalla versione di Ubuntu 11.04 le due distribuzioni (quella desktop e quella per netbook) sono state così unificate.[13]

Utilizza Compiz come gestore di finestre. La maggiore velocità di Compiz è stato uno dei motivi principali che ha spinto Canonical a scegliere Unity rispetto a GNOME 3 (che utilizza il compositing Mutter).

Descrizione tecnica

[modifica | modifica wikitesto]

L'ambiente desktop Unity è composto da tre componenti principali: il lanciatore, il pannello superiore e la Dash.

Il lanciatore (launcher) è una barra che permette di lanciare direttamente le applicazioni impostate dall'utente come preferite sia visualizzare le applicazioni in esecuzione e le memorie esterne collegate.

Inizialmente la barra era fissa verticale posta a sinistra lungo tutta l'altezza dello schermo ma con successivi sviluppi del DE la si è potuta rendere a scomparsa e/o posizionarla orizzontalmente sul bordo inferiore dello schermo.[14]

L'unico componente non rimovibile è il lanciatore della dash, mentre il resto degli applicativi che vi rimangono visualizzati, anche se non attivi, possono essere scelti dagli utenti, sebbene una raccolta di software sia preimpostato come preferito all'atto della prima installazione. Tramite le impostazioni del sistema è possibile attivare il lanciatore del cestino come anche quello per selezionare gli spazi di lavoro.[15][16]

Il lanciatore mostra a fianco di ogni icona se e quante istanze sono in esecuzione del corrispondente applicativo. Per alcuni software compatibili, o resi tali tramite estensioni come nel caso di firefox[17], compaiono sovrimpresse, in caso di operazioni lunghe, una barra di avanzamento e, nel caso di eventi, una bolla con indicato il numero di notifiche.

Per alcuni software è supportata, in maniera predefinita o integrabile facilmente dall'utente, la possibilità di aprire l'applicativo in particolari modalità tramite un menù a comparsa (chiamata Quicklist o Jumplist) in caso di click con il pulsante destro del mouse; per esempio il file manager può essere aperto con il tasto sinistro nella cartella dell'utente mentre con il tasto destro si può selezionare direttamente dalla quicklist una delle cartelle principali interne alla cartella utente.[18][19]

Il lanciatore è utilizzabile anche tramite tastiera dopo aver schiacciato il tasto SUPER che attiva la possibilità di scorrere con i tasti freccia tra gli applicativi elencati o lanciare direttamente l'applicativo con un tasto numerico.

Una funzionalità non presente è la possibilità di iconizzare un applicativo aperto schiacciando sulla relativa icona nel lanciatore.

Pannello superiore

[modifica | modifica wikitesto]

Il pannello superiore invece mostra il titolo della finestra attiva e il menù della stessa, nascosto a meno che non vi si porti sopra il mouse. Nel pannello trovano posto anche i cosiddetti "indicatori", generalmente icone per la gestione della sessione, dei messaggi email, delle chat senza risposta, del volume del suono e della eventuale batteria.

La Dash è una interfaccia per cercare e avviare le applicazioni e file presenti nel sistema e, se desiderato dall'utente, anche contenuti online. Questa interfaccia, richiamabile dalla prima icona del lanciatore, è estendibile tramite le Lens, dei contesti nella quale effettuare la ricerca, un esempio può essere la lens relativa alla ricerca di musica presente nel sistema o alla ricerca di video presenti su YouTube.

Attraverso la pressione del tasto alt di default, viene richiamata un'interfaccia detta HUD (Head-Up Display), che consente di effettuare delle ricerche all'interno del menù dell'applicazione in esecuzione e degli indicatori del pannello, permettendo di effettuare alcune operazioni con una maggiore rapidità.

È anche possibile installare delle applicazioni online, che potranno essere lanciate dal launcher, si interfacceranno con la dash, col menù di messaggistica, col menù del suono, con l'HUD e con altre applicazioni all'interno del sistema; per esempio installando Flickr come applicazione online, compariranno le foto del proprio account fra i risultati della dash e in Shotwell, il programma di default per la gestione delle foto, sarà presente l'opzione per caricare le foto direttamente sul proprio account di Flickr.

Il 14 gennaio 2011, Canonical ha pubblicato un'anteprima di una versione 2D (quindi senza la necessità di un compositing window manager) di Unity basata su Qt e scritta in QML, questo per permettere anche a chi ha schede video datate o non supportate di usufruire della shell grafica Unity[20]. Una particolarità di Unity 2D rispetto alla controparte 3D, era la possibilità di utilizzare anche solo alcuni dei suoi componenti (come il lanciatore o il pannello superiore) con altri ambienti desktop.

Unity 8 / Lomiri

[modifica | modifica wikitesto]

Per raggiungere l'obiettivo della così detta "convergenza" del sistema operativo Ubuntu, cioè la possibilità di poterlo usare su più tipologie di dispositivo oltre al tradizionale desktop, Canonical ha deciso di avviare il progetto Unity Next, successivamente chiamato Unity 8, per dotare il proprio sistema operativo di un'interfaccia grafica utile allo scopo. Unity 8 è stato pertanto sviluppato con l'obiettivo di:

  • non richiedere modifiche del codice tra una tipologia di dispositivo e l'altro
  • in grado di adattare, anche dinamicamente, il proprio aspetto in funzione del I/O

La possibilità di dover sviluppare e manutenere un solo codice per più tipologie di I/O, seppur sul lungo termine avrebbe potuto comportare un'elevata efficienza di sviluppo, nell'immediato ha determinato notevoli ritardi dovuti all'aumento della complessità del codice. Lo sviluppo, inizialmente concentrato sulla modalità desktop dell'interfaccia, vista l'intenzione di Canonical, nel 2013, di rilasciare alcuni dispositivi smartphone con Ubuntu Touch, per diversi anni è stato spostato sulla modalità Touch dell'interfaccia, adatta cioè ai piccoli schermi degli smartphone. Il rallentamento nello sviluppo della modalità desktop, dove pure è concentrata l'utenza di Ubuntu, e il basso numero di dispositivi smartphone messi in vendita[21], ha rallentato la crescita di una comunità che sostenesse il progetto. Tutto questo, unito alla difficoltà di utilizzare in Ubuntu Touch con nuovi e più moderni kernel (a causa delle limitazioni imposte dai driver usati dai dispositivi ARM), ad un generale scarso interesse da parte dei produttori di dispositivi e all'aumentato interesse di Canonical per gli ambiti Cloud e IoT, ha causato un sempre minore interesse da parte di Canonical nel progetto, decretandone l'abbandono nell'aprile 2017.[22] Subito dopo l'annuncio da parte di Canonical si è fatto un fork del codice, rinominato yunit e portato avanti dall'omonima comunità, e successivamente ripreso, con il suo vecchio nome, dal progetto UBports che fino ad allora ne aveva curato lo sviluppo unicamente per gli smartphone.[23] Nel 2020 il progetto ha cambiato nome per evitare vari disguidi di omonimia e migliorare la compatibilità tra sistemi[24]

  1. ^ (EN) Publishing history : unity package : Ubuntu, su Launchpad, 23 febbraio 2024. URL consultato il 25 febbraio 2024.
  2. ^ (EN) Unity 7.7: a sneak peek and call for feedback, su unityd.org, 25 dicembre 2022. URL consultato il 25 febbraio 2024.
  3. ^ a b (EN) Neil Jagdish Patel, ~unity-team/unity/trunk : 573, su bazaar.launchpad.net, novembre 2010. URL consultato il 13 dicembre 2010.
  4. ^ (EN) Ubuntu Unity Interface Tailored for Netbook Screens, su pcworld.com, ITWorld. URL consultato il 28 ottobre 2010 (archiviato dall'url originale il 31 ottobre 2010).
  5. ^ (EN) Software / Services Oct 25, 2010 1:20 pm Canonical Ubuntu Splits From GNOME Over Design Issues, su pcworld.com, PC World Business Center. URL consultato il 28 ottobre 2010 (archiviato dall'url originale il 28 ottobre 2010).
  6. ^ (EN) Mark Shuttleworth, Growing Ubuntu for cloud and IoT, rather than phone and convergence, su Ubuntu Insights. URL consultato il 7 aprile 2017.
  7. ^ (EN) Canonical's unity 8 desktop revived by ubports with support for ubuntu 18.04 lts, su Softpedia News. URL consultato il 3 settembre 2018.
  8. ^ (EN) Lomiri: New Name, Same Great Unity8, su ubports.com, 27 febbraio 2020. URL consultato il 29 marzo 2020 (archiviato dall'url originale il 29 febbraio 2020).
  9. ^ (EN) Mir Display Server, su mir-server.io. URL consultato il 3 settembre 2018.
  10. ^ (EN) Ubuntu Unity Development, su Ubuntu Community Hub. URL consultato il 23 aprile 2020.
  11. ^ Filmato audio Tyler's Tech, Using Unity On Ubuntu 20.04, su YouTube.
  12. ^ (EN) Davies Rhys, Ubuntu 20.04 survey results, su ubuntu.com, 22 aprile 2020.
  13. ^ (EN) Is Unity the Right Interface for Desktop Ubuntu?, su networkworld.com, PC World. URL consultato il 28 ottobre 2010 (archiviato dall'url originale il 13 giugno 2011).
  14. ^ Marco Giannini, Ubuntu 16.04 LTS: Il launcher di Unity 7 si potrà mettere in basso, su marcosbox.org, 3 febbraio 2016.
  15. ^ Michał Tabor, Come aggiungere programmi a Unity Launcher o Ubuntu Dock? [collegamento interrotto], su it-swarm.dev, 30 novembre 2012.
  16. ^ (EN) How do I add and remove the Workspace Switcher launcher from the Unity launcher?, su askubuntu.com, 1º maggio 2011.
  17. ^ Gaetano Abatemarco, Unity e Firefox: integrare la barra di progresso ed il numero di download grazie ad UnityFox, su chimerarevo.com, 6 maggio 2011.
  18. ^ (EN) Matthew Rogers, Add "Places" Menu Functionality to Ubuntu's Unity Launcher, su lifehacker.com, 22 aprile 2011.
  19. ^ (EN) Sikander Hayat Khan, Top Unity Launcher Quicklists, su tuxgarage.com, 26 maggio 2011.
  20. ^ (EN) Bill Filler, Unity 2D, su bfiller.wordpress.com, bfiller blog. URL consultato il 10 febbraio 2011.
  21. ^ (EN) James Plafke, The first Ubuntu phone sold out twice its first day on sale, su extremetech.com, Extreme Tech. URL consultato il 4 settembre 2018.
  22. ^ (EN) Mark Shuttleworth, Growing Ubuntu for cloud and IoT, rather than phone and convergence [collegamento interrotto], su blog.ubuntu.com, Ubuntu Blog. URL consultato il 4 settembre 2018.
  23. ^ (EN) Marius Nestor, Unity 8 Now Has a New Home Over at UBports, Development Will Start Very Soon UBports team is keeping Unity 8 alive for mobile devices, su news.softpedia.com, Softpedia News. URL consultato il 4 settembre 2018.
  24. ^ Il desktop Unity cambia nome e diventa Lomiri

Altri progetti

[modifica | modifica wikitesto]

Collegamenti esterni

[modifica | modifica wikitesto]