GNOME

GNOME (akronymická zkratka pro GNU Network Object Model Environment, anglická výslovnost [gˈnoum] či [ˈnoum]) je prostředí pracovní plochy pro moderní unixové operační systémy s instalovaným X serverem. Je postaveno mimo jiné nad knihovnou GTK+ (The GIMP Toolkit), která byla původně napsána pro bitmapový editor GIMP. Nejdůležitější součásti projektu GNOME představují okenní manažer Mutter (náhrada za dřívější metacity), správce sezení GDM, démon pracující s databází nastavení prostředí dconf (náhrada za dřívější gConf), virtuální souborový systém GVFS, klíčenka GNOME Keyring, správa databáze MIME typů, systém nápovědy, GNOME Shell (od verze 3.0).

Popis 
GNOME lze chápat ze dvou pohledů: jako prostředí pracovní plochy a jako vývojovou platformu. GNOME je svobodný software licencovaný pod GNU Lesser General Public License, součást projektu GNU (angl. výslovnost [nuː]). Hlavním cílem projektu je vytvoření svobodné vývojové platformy a pracovního prostředí s jednoduchým intuitivním ovládáním. Jednoduchost je upřednostňována před rozmanitostí nastavení (kterého však lze v mnoha případech dosáhnout pomocí pokročilých nástrojů, příklad gTweakUI).

Za vývojem stojí GNOME Foundation. V počátcích byla tahounem vývoje společnost Ximian Inc, kterou později koupila společnost Novell. Významnými přispěvateli projektu GNOME jsou také velcí výrobci linuxových distribucí (například Red Hat), široké spektrum vývojářů, ať nezávislých nebo zaměstnaných u jiných společností, a v neposlední řadě rostoucí komunita dobrovolných přispěvatelů.

Prostředí pracovní plochy 
GNOME je soubor aplikací pokrývajících základní potřeby a očekávání uživatelů grafického rozhraní – správa souborů (GNOME Files, kdysi Nautilus), kancelářské aplikace (GNOME Office), práce s internetem (GNOME Web, Evolution), práce s dokumenty (Evince), práce s multimédii (Rhythmbox, GNOME Videos – předtím Totem). Mimo aplikace (programy), které jsou přímo součástí GNOME, existuje celá řada dalších nástrojů spadající pod toto prostředí (napsané pod některou z GTK knihoven) – GIMP (bitmapový editor), Inkscape (vektorový editor), Pidgin (instant messenger), Audacious Media Player (audiopřehrávač podobný programu Winamp), Liferea (správa RSS/Atom) a mnoho dalších.

GNOME také podporuje různé uživatelsky přívětivé funkce (náhledy audio souborů, video souborů, dokumentů a obrázků, uživatelské připojování vzdálených souborových systémů, výborné možnosti uživatelských nastavení a změn motivů) a využívá moderní technologie (vykreslování prostřednictvím SVG, ukládání konfigurace jako XML dokumentů, propojení aplikací).

Vlastnosti 
 Svobodný software (licence GPL a LGPL)
 Multiplatformní
 Jednoduché ovládání
 Podpora ovládání pro postižené (framework přístupnosti ATK, možnosti ovládání klávesnicí…)
 Internacionalizace (47 jazykových verzí s více než 80 % přeložených řetězců a dalších 15 s více než 50 %)
 Podpora standardů freedesktop.org a moderních technologií
 Podpora akcelerace grafiky a efektů pracovního prostředí, XRandR 1.2 (jen s grafickým hardware, jehož ovladač toto umožňuje)

Získání 
GNOME lze vyzkoušet pomocí Live CD, které obsahuje veškerý software GNOME na jednom disku CD. Počítač lze nastartovat přímo z Live CD. Obraz CD lze stáhnout přímo na torrentové stránce GNOME.

Oficiální balíčky pro instalaci GNOME nabízí mnoho populárních distribucí Linuxu.

GNOME je možné také sestavit ze zdrojových kódů. GARNOME sestavuje GNOME z vydaných tarballů a například pro sestavení GNOME 2.24.x je nutné použít GARMONE 2.24.x. Také existuje nástroj JHBuild, který je navržen pro sestavování nejnovější verze GNOME přímo z SVN.

Vývojová platforma GNOME 
Prostředí GNOME je napsáno v jazyce C pod knihovnou GTK+. GNOME 1.x je napsáno pod knihovnou GTK+ 1. V současné době existují GTK knihovny umožňující psaní GTK aplikací pod C++, C# (více viz také projekt Mono), v jazyce Python a dalšími.

Díky licencí LGPL mohou být části GNOME (například knihovny) využívány i v aplikacích, které nejsou pod stejnou licencí (na rozdíl od kódu pod licencí GPL) a proto je v některých případech upřednostňováno vytváření komerčních/uzavřených nástrojů pod GTK+/GNOME.

Mimo jiné GTK+ využívá například společnost Adobe Systems (Acrobat Reader), VMware (VMware Player) a RealNetworks (RealPlayer).

Platforma GNOME Mobile 
GNOME Mobile spojuje běžné části pracovní plochy dohromady za účelem poskytnout distributorům a výrobcům kapesních počítačů základní platformu pro tvorbu bohatých programovacích prostředí. Poprvé byla platforma zahrnuta do vydání GNOME 2.24.0. Projekt GNOME Mobile je pokračováním GNOME Mobile & Embedded Initiative (GMAE).

Platforma GNOME Mobile je technologickým srdcem mnoha na Linuxu založených mobilních zařízení jako Maemo, Access Linux Platform, platforma LiMo, Ubuntu Mobile, Moblin nebo Poky.

 Základní infrastruktura
 GLib – představuje základní kámen pro tvorbu přenosných aplikací a knihoven napsaných v jazyce C. Poskytuje základní systém objektů používaný v GNOME, implementuje hlavní smyčku a rozsáhlou sadu užitečných funkcí pro práci s řetězci a běžnými datovými strukturami.
 DBus – rozhraní pro zprávy poskytující aplikacím jednoduchou cestu pro komunikaci a koordinaci procesu po dobu jeho běhu.

 Infrastruktura systému
 BlueZ – modulární, kompletní a standardy podložený Bluetooth stack obsahující několik grafických nástrojů pro GNOME;
 Evolution Data Server (port pro DBus) – obsluhuje přístup uživatele ke kalendáři, úkolům, adresáři kontaktů, jak lokálně, tak prostřednictvím populárních síťových protokolů;
 Telepathy – unifikovaný framework umožňující uživatelským aplikacím využívat rychlé zasílání zpráv, hlasové a video služby (VoIP) a sokety point-to-point (tzv. Tubes);
 Avahi – multicastový DNS stack poskytující službu Zeroconf v lokální síti;
 GStreamer – bohatý multimediální framework umožňující drobnosti jako přehrávání audia a videa, nebo proudové vysílání, stejně tak jako záznam, mixování a nelineární editaci;
 SQLite – jednoduchá a výkonná transakční databáze typu SQL, kterou lze jednoduše využít v aplikacích;
 GConf – umožňuje ukládat a získávat nastavení konfigurace;
 Matchbox – okenní správce pro prostředí běžící pod X11, která, kvůli omezeným zdrojům nebo rozlišení, jako například kapesní počítač, set-top box a podobně, nepoužívá klasický koncept pracovní plochy;
 gio a GVFS – poskytují API virtuálního systému podporující rozsáhlou škálu služeb jako FTP, SFTP (SSH), WebDAV, NFS a SMB/CIFS;

 Uživatelské rozhraní
 GTK+ – funkčně bohatý multiplatformní soubor nástrojů (toolkit [ˈtuːlˌkit]) pro vytváření grafických uživatelských prostředí se snadno použitelným API.
 Pango – poskytuje pro GTK+ služby v oblasti sestavování a vykreslování textů s důrazem na internacionalizaci.
 ATK (soubor nástrojů zpřístupnění) – zajišťuje základní zpřístupnění všem widgetům GTK+, umožňuje nástrojům pro zpřístupnění plný přístup k prohlížení a správě aplikací.
 cairo – 2D vektorová grafická knihovna navržená pro tvorbu konzistentního výstupu na všech médiích, využívající hardwarové akcelerace, pokud je dostupná. Cairo ([ˈkairəu]) poskytuje jednoduché API podobné PostScriptu.

 Vazby programovacích jazyků
 C
 C++
 Python

Všechny knihovny platformy GNOME Mobile jsou dostupné přes nativní C API, či přes vazby programovacích jazyků, k dispozici tak je plný výkon knihoven spolu s výrazy známými vývojářům jiných vysokoúrovňových programovacích jazyků.

Vývojový cyklus 
Vývojový cyklus GNOME je dlouhý zhruba šest měsíců, mezi hlavními vydáními jsou vytvářeny opravy. Vývoj má dvě větve, stabilní a vývojovou. Stabilní verze jsou určeny pro nasazení pro běžné uživatele, vývojová verze pro potřeby vývoje a implementaci nových vlastností.

Verze GNOME se skládá ze tří údajů: X.Y.Z, kde X je řada (označuje, pod jakou verzí GTK je GNOME napsáno), aktuálně 3. Položka Y označuje verzi GNOME, je-li toto číslo sudé, jedná se o stabilní verzi, je-li liché, jedná se o vývojovou verzi. Poslední číslo Z je „číslo opravy“ dané (stabilní/vývojové) verze, opravy a úpravy zahrnuty do posledního hlavního vydání.
Příklady verzí:

 1.4.0 – 3. stabilní vydání GNOME pod knihovnou GTK+ 1 (celkově 5. vydání)
 2.12.0 – 7. stabilní vydání GNOME pod knihovnou GTK+ 2 (celkem 13. vydání)
 2.12.1 – 7. stabilní vydání GNOME pod knihovnou GTK+ 2, první revize (celkem 13. vydání)
 2.13.0 – 7. vývojové vydání GNOME pod knihovnou GTK+ 2 (celkem 13. vydání)
 2.13.3 – 7. vývojové vydání GNOME pod knihovnou GTK+ 2, třetí revize (celkem 13. vydání)

Vývojový cyklus verze je zahájen při vydání předchozí stabilní verze. Ze stabilní verze je oddělena větev a prohlášena za vývojovou. V ní jsou prováděny zásadní i menší změny, reorganizace a přidávání funkcí. Po určité době (vývoj se řídí vývojovým kalendářem) je zmraženo API/ABI (laicky řečeno: je zastaven vývoj/úprava programátorského rozhraní), později UI (zastaven vývoj/úpravy uživatelského rozhraní) a do dalšího vydání stabilní verze jsou opravovány chyby a problémy stávající vývojové verze. Následně je vývojová verze vydána jako stabilní a cyklus se opakuje.

Používání vývojových verzí GNOME a práci s nimi napomáhají nástroje Garnome a jhbuild.

GNOME 3.0 
V souvislosti s dlouhodobou diskuzí vývojářů (která eskalovala během konference GUADEC 2008) a přechodem na GTK+ verze 3.0 byla nalezena shoda v otázce dalších verzí a GNOME 2.32 bylo přečíslováno na 3.0, princip rozlišování vývojových a stabilních vydání zůstal stejný. Vývoj proto v současné době směřuje k pročištění celé platformy od zastaralých součástí (jako libgnome, libgnomeprint…), které se dotkne a již dotýká velké části GNOME. Diskuze ohledně konkrétních změn je však stále otevřena a nelze vyloučit, že výsledek v podobě další verze bude od současného plánu ještě o něco odlišnější.

Vývoj by i tak měl být nadále především evoluční (se zachováním co největší zpětné kompatibility pro aplikace napsané pod GTK+ verze 2.x) spíše než revoluční, ač v nové verzi je použit „koncepčně odlišný“ GNOME Shell namísto klasického panelu a správce oken nebo nový způsob přístupu k dokumentům, GNOME Zeitgeist.

GNOME 3 opustilo tradiční koncept desktopu ve prospěch GNOME Shellu. Tento krok vyvolal smíšené reakce od uživatelské komunity. Vzniklo několik nových cest, v čele s MATE, forkem GNOME verze 2.32 vystupujícím pod novým názvem. MATE si dalo za cíl zachovat tradiční GNOME 2 rozhraní při zachování kompatibility s GNOME 3. Jinou alternativou je prostředí Cinnamon, které nabízí vlastní variaci k prostředí GNOME Shell.

V březnu roku 2013 bylo vydáno GNOME 3.8, které obsahuje, kromě rozhraní GNOME Shell, nový „klasický režim“, který obnovuje řadu funkcí, jako jsou známá menu Aplikace, Místa nebo přepínač ploch v dolní části obrazovky.

Kritika 
GNOME je kritizováno pro přílišné zjednodušování a záměrné vypouštění pokročilých možností v zájmu o co nejjednodušší a co nejméně matoucí prostředí pro nezkušené uživatele. Rozhraní GTK aplikací je také kritizováno za některé funkce, jako například otevírací/ukládací dialogové okno.

Veřejně známo bylo, že GNOME 2 (vytvořené pod knihovnou GTK+ 2) bylo výrazně náročnější a pomalejší než verze předchozí, aplikace v některých případech startovaly neúměrně pomalu. Během dalších stabilních vydání však byly učiněny kroky ke zvrácení tohoto stavu, výkon celého prostředí se do jisté míry zrychlil a náročnost se snížila. Tyto snahy také podporuje fakt, že GNOME/GTK+ se stalo předmětem zájmu některých firem na mobilním trhu a to přináší zpět do GNOME opravy zvyšující výkon a snižující náročnost, protože cílem projektů jako Openmoko je využití GTK+ a portování GTK+/GNOME aplikací na svá mobilní zařízení.

Částečně se také na špatné pověsti v oblasti výkonu mohl podepsat fakt, že pro GNOME se objevilo velké množství témat vzhledu založených na rozličných, často nekvalitně napsaných, základech – gtk-engine. GTK-engine je pro GTK+/GNOME soubor funkcí, které nad daným postavená témata mohou využívat. Dokonce i ubuntulooks, jako výchozí stavební kámen témat distribuce Ubuntu, nebylo v některých funkcích příliš výkonným gtk-engine a například clearlooks gtk-engine je znatelně výkonnější.

Komunita 
Komunita GNOME je, v porovnání s přímým „konkurentem“ KDE, menší. Vývojáři jsou z řad placených zaměstnanců firem jako Red Hat nebo Novell nebo z firem nějakým způsobem spojených s GNOME, například Openmoko, OpenedHand nebo Maemo.

Největší část základny však tvoří dobrovolníci. Mezi uživateli spíše převládají méně zkušení  a uživatelé, které nějakým způsobem GNOME oslovilo. Pokročilejší uživatelé totiž v mnoha případech dávají přednost KDE  s jeho větší přizpůsobivostí nebo nějakému koncepčně odlišnému desktopovému základu, někdy s použitím některých GNOME/GTK aplikací. Uživatelé, kteří mají rádi GTK+, ale GNOME jim přímo nevyhovuje, si často oblíbí na knihovně GTK+ postavené Xfce.

Každoročně je na evropském kontinentu pořádána konference GUADEC (GNOME Users And Developers European Conference), jež se každý rok stěhuje do jiné země. Akci zastřešuje a organizuje GNOME UserGroup hostitelské země s podporou nadace GNOME. Přístup na konferenci je umožněn i široké veřejnosti a celá akce probíhá v přátelské a uvolněné atmosféře, kde cílem není jen seznámit účastníky s rozličnými tématy v přednáškách, ale také sblížit komunitu a umožnit osobní setkání mezi lidmi se zájmem o GNOME.

Programy 
Projekt GNOME je rozdělen do několika základních kategorií, aplikace, které jsou přímou součástí GNOME, GNOME Fifth Toe (Pátý prst GNOME – aplikace navíc), GNOME Extras (Další aplikace), GNOME Office (Kancelářské aplikace GNOME) a GNOME Infrastructure (Infrastruktura GNOME, především WWW aplikace používané projektem například k prezentaci na Internetu). Pro přímé součásti GNOME platí přísnější pravidla, než pro programy z ostatních skupin (aktivní vývoj, dodržování vývojového cyklu GNOME, dodržování GNOME User Interface Guidelines a pod.).

Desktopové programy lze samozřejmě používat i v jiných prostředích jako třeba KDE, ale obecně jsou prezentovány jako „vlajkové lodě“ projektu:

 AbiWord – textový editor (není přímo součástí GNOME)
 Ekiga – videotelefonování přes internet
 Empathy – klient rychlé výměny zpráv pro GNOME
 GNOME Web – webový prohlížeč. Epiphany se stal výchozím prohlížečem od verze GNOME 2.4 a nahradil Galeon
 Evince – prohlížeč dokumentů ve formátu PDF a PostScript
 Evolution – mailový a groupwarový klient
 Pidgin – instant messenger (není přímo součástí GNOME)
 GIMP – GNU Image Manipulation Program – snad nejlepší Open-Source grafický editor (není přímo součástí GNOME)
 gedit – jednoduchý textový editor
 Gnumeric – tabulkový procesor (není přímo součástí GNOME)
 Inkscape – vektorový grafický editor (není přímo součástí GNOME)
 GNOME Files – správce souborů
 Rhythmbox – přehrávač a správce hudebních souborů podobný iTunes
 GNOME Videos – multimediální přehrávač
 GNOME Software – utilita pro instalaci a aktualizaci softwaru
 GNOME Builder – integrované vývojové prostředí
 GNOME Boxes – přístup k virtualizovaným a vzdáleným systémům

Snímky obrazovky starších verzí Gnome

Související články 
 MATE – Fork prostředí GNOME, od verze 2.32
 Unity – uživatelské rozhraní
 Cinnamon (uživatelské rozhraní)
 KDE – „Konkurenční“ pracovní prostředí
 Xfce – Odlehčené pracovní prostředí založené na knihovně GTK+
 Fluxbox – Malý, jednoduchý a rychlý správce oken
 IceWM – Relativně nenáročný, rychlý a jednoduchý správce oken
 UNIX
 GNU/Linux – Svobodný operační systém

Odkazy

Poznámky

Reference

Externí odkazy

Obecně 
  http://www.gnome.org/foundation  – Nadace GNOME
  http://planet.gnome.org – Lidé okolo GNOME
  http://wiki.gnome.org – GNOME wiki (projekty, vývoj…)

Gnome 3 
  http://wiki.gnome.org/ThreePointZero/Plan – Plán pro verzi 3.0
  http://wiki.gnome.org/Projects/GnomeShell – Informace o vývoji součásti GNOME Shell
  http://launchpad.net/gnome-activity-journal – Informace o vývoji součásti GNOME Activity Journal (někdejší GNOME Zeitgeist)

České informace 
  http://wiki.gnome.org/Czech – GNOME v češtině
  https://cz.gnome.org/ – Česká komunita GNOME

Ke stažení 
  http://www.gnome.org/getting-gnome – GNOME LiveCD
  http://ftp.acc.umu.se/pub/GNOME – FTP server GNOME

Novinky 
  http://www.gnome.org/news – Planet GNOME

Komunita 
  http://www.guadec.org – Stránky o konferenci GUADEC
  http://wiki.gnome.org/UserGroups – GNOME UserGroups

Aplikace 
  GNOME Bugzilla – nástroj pro hlášení a evidenci chyb GNOME a základních aplikací
  Deset nástrojů pro vývoj aplikací pro GNOME – Článek o vývojářských GNOME aplikacích

Art 
  http://wiki.gnome.org/Personalization – Oficiální archiv motivů a pozadí pro GNOME
  http://www.gnome-look.org/browse/ord/latest – Archiv motivů a pozadí pro GNOME

 
Desktopová prostředí
X Window System
Software pro Unix
Svobodný software
Zkratky