LINUXSOFT.cz Přeskoč levou lištu
Uživatel: Heslo:  
   CZUKPL

> Ú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 4321×

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ů

13.9.2017 8:00 /František Kučera

Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě DIY, CNC, SDR nebo morseovka? Přijď na sraz spolku OpenAlt – tentokrát netradičně v pondělí: 18. září od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5).


Přidat komentář

3.9.2017 20:45 /Redakce Linuxsoft.cz
PR: Dne 21. září 2017 proběhne v Praze konference "Mobilní řešení pro business". Hlavní tématy konference budou: nejnovější trendy v oblasti mobilních řešení pro firmy, efektivní využití mobilních zařízení, bezpečnostní rizika a řešení pro jejich omezení, správa mobilních zařízení ve firmách a další.
Přidat komentář

15.5.2017 23:50 /František Kučera
Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě DIY, CNC, SDR nebo morseovka? Přijď na sraz spolku OpenAlt, který se bude konat ve čtvrtek 18. května od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5).
Přidat komentář

12.5.2017 16:42 /Honza Javorek
PyCon CZ, česká konference o programovacím jazyce Python, se po dvou úspěšných ročnících v Brně bude letos konat v Praze, a to 8. až 10. června. Na konferenci letos zavítá např. i Armin Ronacher, známý především jako autor frameworku Flask, šablon Jinja2/Twig, a dalších projektů. Těšit se můžete na přednášky o datové analytice, tvorbě webu, testování, tvorbě API, učení a mentorování programování, přednášky o rozvoji komunity, o použití Pythonu ve vědě nebo k ovládání nejrůznějších zařízení (MicroPython). Na vlastní prsty si můžete na workshopech vyzkoušet postavit Pythonem ovládaného robota, naučit se učit šestileté děti programovat, efektivně testovat nebo si v Pythonu pohrát s kartografickým materiálem. Kupujte lístky, dokud jsou.
Přidat komentář

2.5.2017 9:20 /Eva Rázgová
Putovní konference československé Drupal komunity "DrupalCamp Československo" se tentokrát koná 27. 5.2017 na VUT FIT v Brně. Můžete načerpat a vyměnit si zkušenosti z oblasti Drupalu 7 a 8, UX, SEO, managementu týmového vývoje, využití Dockeru pro Drupal a dalších. Vítáni jsou nováčci i experti. Akci pořádají Slovenská Drupal Asociácia a česká Asociace pro Drupal. Registrace na webu .
Přidat komentář

1.5.2017 20:31 /Pavel `Goldenfish' Kysilka
PR: 25.5.2017 proběhne v Praze konference na téma Firemní informační systémy. Hlavními tématy jsou: Informační systémy s vlastní inteligencí, efektivní práce s dokumenty, mobilní přístup k datům nebo využívání cloudu.
Přidat komentář

15.4.2017 15:20 /František Kučera
Máš rád svobodný software a hardware nebo se o nich chceš něco dozvědět? Zajímá tě IoT a radiokomunikace? Přijď na sraz spolku OpenAlt, který se bude konat ve středu 19. dubna od 18:30 v Šenkovně (Sokolská 60, Praha 2).
Přidat komentář

5.3.2017 19:12 /Redakce Linuxsoft.cz
PR: 23. března proběhne v Praze konferenci na téma Cloud computing v praxi. Hlavními tématy jsou: Nejžhavější trendy v oblasti cloudu a cloudových řešení, Moderní cloudové služby, Infrastruktura současných cloudů, Efektivní využití cloudu, Nástrahy cloudových řešení a jak se jim vyhnout.
Přidat komentář

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

> Poslední diskuze

18.9.2017 14:37 / Rojas
high security vault

15.9.2017 7:33 / Wilson
new zealand childcare jobs

31.8.2017 12:11 / Jaromir Obr
Re: ukůládání dat ze souboru

30.7.2017 11:12 / Jaromir Obr
Národní znaky

27.7.2017 12:24 / Jaromir Obr
Cteni/zapis

Více ...

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