LINUXSOFT.cz Přeskoč levou lištu

ARCHIV



   

> Úprava prostředí desktopu I.

První část článku o úpravě prostředí desktopu se zabývá jednotlivými specifikacemi standardů freedesktop.org, popisem menu, položek menu, specifikací grafických témat ikon a adresářovou strukturou, ve které se jednotlivé desktopové položky nacházejí.

6.6.2012 00:00 | David Adamczyk | Články autora | přečteno 6570×

Pro různá specifická použití se vyplatí provést úpravy desktopového prostředí vaší distribuce. Tyto úpravy mohou mít smysl v případě, že se snažíte provést jisté změny při nasazení systému na pracovní stanice ve vaší firmě a usnadnit tak práci uživatelům, nebo například upravujete prostředí pro běh v počítačovém kiosku, nebo jiném zařízení od kterého se očekává jistá funkcionalita. Skupina freedesktop.org se snaží o zachování interoperability a zachování jistých standardů mezi jednotlivými desktopovými prostředími jako je například prostředí KDE nebo Gnome provozovanými na operačních systémech GNU/Linux, BSD a dalších pod X Window Systémem. Cílem je vybudovat společnou platformu pro aplikace běžící na těchto operačních systémech. Pomocí jistých návrhů, které by se měly dodržovat v rámci všech distribucí můžete specifikovat například popis aplikace a její ikonu, čímž bude jednotně reprezentována v různých desktopových prostředích v rámci vašeho celého systému. Přiřadit typy souborů jednotlivým aplikacím, zařadit aplikace do jednotlivých kategorií v menu a podobně.

Specifikace zápisu desktopových položek

Zápis desktopových položek je definován specifikací Desktop Entry. Jedná se o popis souborů, které definují informace o aplikacích jako například název aplikace, ikona aplikace a popis samotné aplikace. Tyto informace jsou využívány pro spouštěče aplikací a tvorbu menu, ze kterého mohou být aplikace spouštěny. Tato specifikace se snaží standardizovat jednotný formát použitelný v různých desktopových prostředích, jakými jsou například KDE a Gnome. Díky tomu můžete nalézt KDE aplikace uspořádané v jednotlivých menu v desktopovém prostředí Gnome. Takto může být zajištěna jistá univerzálnost při přenosu aplikací napříč desktopovými prostředími a různými distribucemi. Nainstalujete-li si aplikaci, například webový prohlížeč z balíčku, bude tato aplikace automaticky zavedena do systému a naleznete ji v příslušné kategorii vedle aplikací stejného typu, za předpokladu, že během instalace budou zapsány příslušné informace o aplikaci do stanovených souborů. Ve specifikaci Desktop Entry je popsán formát jednotlivých souborů, kde je uvedeno jak mají být zapsány jednotlivé položky. Možné typy hodnot, jednotlivých položek lokalizace hodnot klíčů a známé klíče Desktop Entry položek včetně Exec kliče doplňkové akce aplikací a specifická rozšíření.

Specifikace nabídky

Definuje jak sestavit hiearchii jednotlivých položek (například aplikací) z čehož bude poté generováno menu. Ve specifikaci naleznete popis jednotlivých souborů a jejich popis umístění , slučování jednotlivých částí a generování samotných menu.

Velmi důležitým je seznam registrovaných kategorií. Tento seznam se skládá z hlavní kategorie a doplňkových kategorií. Hlavní kategorie je definována názvem, popisem a poznámkou všech položek hlavní kategorie. Do této hlavní kategorie lze zařadit například kategorie Audio, Education, Office pro aplikace typu hudební přehrávač, výukové aplikace, nebo kancelářské aplikace kde se mohou nalézat aplikace balíku OpenOffice nebo aplikace Gnumeric, AbiWord a další. Tyto hlavní kategorie mohou být dále členěny. Kancelářské aplikace mohou mít kategorii pro aplikace pracující s elektronickou poštou - emailové klienty, nebo textové procesory a tabulkové kalkulátory. Následuje malá ukázka pro kategorii "Kancelář" kam patří většina kancelářských aplikací jako LibreOffice a podobné. Ve svém domovském adresáři ~/.config/menus/ naleznete několik souborů. Jedním z nich je i soubor s názvem applications.menu zde je jeho obsah:

<!DOCTYPE Menu
  PUBLIC '-//freedesktop//DTD Menu 1.0//EN'
  'http://standards.freedesktop.org/menu-spec/menu-1.0.dtd'>
<Menu>
<Name>Applications</Name>
<MergeFile type="parent">/etc/xdg/menus/applications.menu</MergeFile>
</Menu>

Tento soubor obsahuje jediné menu s názvem Applications. Odkazuje se na rodičovské menu, které je umístěno v souboru s názvem /etc/xdg/menus/applications.menu. Menu v tomto souboru je platné v rámci celého systému narozdíl od souboru s menu, které je uloženo v domovském adresáři uživatele a platí jen pro konkrétního uživatele. Dále následuje ukázka tohoto systémového menu (pro velký rozsah je zde uvedena jen část):
<!-- Office -->
  <Menu>
    <Name>Office</Name>
    <Directory>Office.directory</Directory>
    <Include>
      <And>
        <Category>Office</Category>
      </And>
    </Include>
  </Menu> <!-- End Office -->

V adresáři /usr/share/desktop-directories naleznete jednotlivé položky pro konkrétní kategorie. Soubor pro kategorii kancelářských aplikací s názvem Office.directory vypadá následovně:
[Desktop Entry]
Name=Office
Comment=Office Applications
Icon=applications-office
Type=Directory
X-Ubuntu-Gettext-Domain=gnome-menus-3.0

Dle tagu kategorie, která obsahuje hodnotu Office vidíme, že v tomto menu se budou nacházet všechny položky menu, které mají v příslušném souboru nastavenou položku kategorie na Office. Vypsáním proměnné $XDG_DATA_DIRS získáme cesty k několika systémovým adresářům. Při prozkoumání nazeznete v adresářích soubory pro jednotlivé položky menu. V těchto souborech je vždy uveden název příslušné kategorie:
[Desktop Entry]
Version=1.0
Terminal=false
Icon=libreoffice-calc
Type=Application
Categories=Office;
Exec=libreoffice --calc %U
Každá položka, která má v klíčí Categories hodnotu Office se bude nacházet právě v tomto menu. Před experimentováním s těmito soubory doporučuji projít a důkladně prozkoumat všechny soubory. Během práce s různymi desktopovými prostředími a různymi distribucemi jsem narazil na různé množství souborů, které se mohou v konkrétních příkladech trochu lišit.

Specifikace témat ikon

Následující specifikace popisuje grafická témata ikon. Každé grafické téma ikon je v systému určeno svým názvem, stejně tak jsou pojmenovány i jednotlvé ikony, které jsou umístěny do stanovených adresářů. Grafická témata ikon mohou dědit některé specifické ikony z jiného tématu, nebo mohou jiné téma naopak rozšířit. Hlavním podporovaným formátem pro ikony je bitmapový formát PNG, nebo volitelně vektorový formát SVG. Z důvodu zachování zpětné kompatibility je podporován rovněž formát XPM. Není však doporučováno aby nové grafické témata používaly starý formát XPM. Grafické téma kromě souborů ikon roztříděných do přislušných adresářů obsahuje i speciální soubor s popisem tématu. Jedná se o soubor s názvem index.theme, ten popisuje hlavní vlastnosti tématu. Je to prostý textový soubor, ve kterém jsou data jednotlivých položek přiřazena příslušným klíčům. Mezi tyto klíče patří například Name, což je název tématu. Klíč Comment slouží pro krátký popis tématu, Inherits je název tématu ze kterého bude děděno a Directories je seznam adresářů tématu. Pro každý z adresářů musí být vyčleněna speciální sekce s popisem v souboru index.theme. Tento popis zahrnuje speciální položky jako velikost ikon - očekává se, že každý z adresářů obsahuje ikony stejné velikosti, kontext ikon - ikony mohou být určeny pro akce, zařízení, souborový systém a MIME typy. Dále v této podsekci nalezneme specifikaci minimální a maximální velikosti a typ zobrazování - zda mohou být ikony zvětšovány, nebo zda musí mít nastavenou pevnou velikost a podobně.

Proměnné prostředí

Ve vašem systému existuje několik proměnných, které definují kde systém nalezne příslušné data a konfigurační soubory. Pojďme se na ně podívat blíže. Základní proměnnou je $XDG_DATA_DIRS, ta představuje seznam základních adresářů, které budou prohledávány na příslušné datové soubory. Veškeré adresáře uvedené v tomto seznamu jsou odděleny dvojtečkou. Jestliže je tato proměnná prázdná (není nastavena) bude výchozí hodnotou dvojice adresářů /usr/local/share:/usr/share. Obdobně proměnná, sloužící pro uživatelské nastavení nese název $XDG_DATA_HOME, pokud tato proměnná není nastavena je výchozím adresářem $HOME/.local/share Pro systémové konfigurační soubory slouží proměnná $XDG_CONFIG_DIRS, jestliže není nastavena, je výchozí hodnotou adresář /etc/xdg. Pro uživatelské konfigurační soubory je určena proměnná $XDG_CONFIG_HOME. Její výchozí hodnota je $HOME/.config Proměnná $XDG_CACHE_HOME definuje základní adresář pro ukládání datových souborů. Výchozí hodnotou je $HOME/.cache. Uchování souborů důležitých pro běhové prostředí jako například sockety a pojmenované roury je určena proměnná $XDG_RUNTIME_DIR.

Závěr

V první části článku byl popsán přehled teorie specifikací desktopových položek. Protože je problematika docela rozháhlá je nezbytně nutné využívat také dokumentaci dostupnou na webu freedesktop.org, v následující části budou uvedeny praktické příklady a některé aplikace, které dovedou s výše uvedenými standardy pracovat.

Užitečné odkazy

Verze pro tisk

pridej.cz

 

DISKUZE

Nejsou žádné diskuzní příspěvky u dané položky.



Příspívat do diskuze mohou pouze registrovaní uživatelé.
> Vyhledávání software
> Vyhledávání článků

28.11.2018 23:56 /František Kučera
Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.
Komentářů: 1

12.11.2018 21:28 /Redakce Linuxsoft.cz
22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář

6.11.2018 2:04 /František Kučera
Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

4.10.2018 21:30 /Ondřej Čečák
LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář

18.9.2018 23:30 /František Kučera
Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář

9.9.2018 14:15 /Redakce Linuxsoft.cz
20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business. Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář

12.8.2018 16:58 /František Kučera
Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář

16.7.2018 1:05 /František Kučera
Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář

   Více ...   Přidat zprávičku

> Poslední diskuze

31.7.2023 14:13 / Linda Graham
iPhone Services

30.11.2022 9:32 / Kyle McDermott
Hosting download unavailable

13.12.2018 10:57 / Jan Mareš
Re: zavináč

2.12.2018 23:56 / František Kučera
Sraz

5.10.2018 17:12 / Jakub Kuljovsky
Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?

Více ...

ISSN 1801-3805 | Provozovatel: Pavel Kysilka, IČ: 72868490 (2003-2024) | mail at linuxsoft dot cz | Design: www.megadesign.cz | Textová verze