Úprava prostředí desktopu II.

V druhém a posledním dílu se dozvíte jak pracovat s utilitami xdg-utils pro ruční konfiguraci a aplikací Alacarte pro konfiguraci prostředi GNOME.

8.6.2012 00:00 | David Adamczyk | přečteno 6268×

Balík utilit XDG-Utils

Xdg-utils je balík utilit, které slouží pro integraci jednotlivých úloh aplikací do vašeho desktopového prostředí a k integraci aplikace do prostředí během její instalace. Mezi jednotlivé úlohy může například patřit otevření souboru dle jeho typu příslušnou aplikací, odeslání emailu uživatelem preferovaným emailovým klientem, nebo správa šetřiče obrazovky. Integrace aplikace do systému během instalace představuje přidání aplikace do příslušné kategorie v systémovém menu, přiřazení ikony aplikace a určení jak budou jednotlivé typy souboru zpracovány - otevření grafických souborů definovanou aplikací, např. bitmapový editor nebo prohlížeč obrázků a nebo otevření multimedialních souborů přehrávačem. V následujícím textu si podrobně probereme jednotlivé příkazy.

Balík xdg-utils obsahuje několik shell skriptů. Pomocí těchto skriptů můžete provádět výše uvedené činnosti. Doporučuji si stáhnout balík z adresy http://portland.freedesktop.org/wiki/.

xdg-desktop-menu

slouží pro instalaci a odinstalaci položek v menu desktopového prostředí. Položky mohou být přidány do předem stanovených podmenu. Druhá možnost je vytvoření nového podmenu a přidání položky. Soubory reprezentující jednotlivé položky menu jsou popsány v Desktop Entry specifikaci. Položky menu naleznete v cestě .local/share/applications ve vašem domovském adresáři. Následuje stručná ukázka jedné položky menu (jedná se o soubor yEd Graph Editor-0.desktop):

#/usr/bin/env xdg-open 
[Desktop Entry]
Type = Application                              
Name = yEd Graf Editor
Exec = /bin/sh "/home/david/yEd/yEd"
Icon = /home/david/yEd/.install4j/yEd.png
Kategorie = Application;
První řádek určuje, že soubor bude spuštěn pomocí xdg-open skriptu. Následuje několik kličových slov popisu položky. Pro vytvoření vlastní položky menu si kdekoliv, idealně ve svém domovském adresáři vytvořte soubor: mojepolozka.desktop a umístěte do něj tento obsah:
[Desktop Entry]
Encoding=UTF-8
Type=Link
URL=http://www.linuxsoft.cz
Icon=www-browser
Name=Linuxsoft.cz
Categories=Network;WebDevelopment;
Následně nainstalujeme položku do systému příkazem:
xdg-desktop-menu install mojepolozka.desktop
V dokumentaci se můžete dočíst, že do položek menu můžete umístit celkem tří typy. Prvním typem je Application pro spouštění aplikací, druhým typem je Link pro odkazy a posledním typem je Directory pro adresáře. Zápis této nové položky provede otevření standardního prohlížeče webových stránek a otevření stránky definované v URL položce. Chcete-li položku odstranit použijte příkaz:
xdg-desktop-menu uninstall mojepolozka.desktop
Podobně můžete pokračovat například pro přidání položky která spustí emailového klienta. Zápis může vypadat například takto:
[Desktop Entry]
Encoding=UTF-8
Type=Application
Exec=xdg-email david@adamczyk.cz
Icon=www-browser
Name=Poslat email
Categories=Network;WebDevelopment;
Tato položka po přidání do systému připraví emailového klienta k odeslání emailu na adresu david@adamczyk.cz, podobně můžete přidat položku například pro otevření konkrétního adresáře, nebo manuálu vašeho programu. Pro podrobnější informace můžete vyvolat manuál
xdg-desktop-menu --manual
Pro vytváření menu použijeme stejný příkaz. Veškeré položky jsme dosud ukládaly v souborech s příponou .desktop, samotná menu budeme ukládat do souborů s příponou .directory. Vytvoříme soubor pro menu, tento soubor se může jmenovat například mojemenu.directory:
[Desktop Entry]
Name=Testovaci menu
Comment=Moje testovaci menu
Icon=gnome-joystick
Type=Directory
Dále vytvoříme ještě nekolik položek do menu. Obsah souboru polozka1.desktop
[Desktop Entry]
Encoding=UTF-8
Type=Application
Exec=xdg-open /home
Icon=preferences-desktop-wallpaper
Name=Moje Polozka
Obsah souboru polozka2.desktop:
[Desktop Entry]
Encoding=UTF-8
Type=Application
Exec=xdg-open /home
Icon=xpad
Name=Moje druha polozka
A poslední třetí položka v souboru polozka3.desktop:
[Desktop Entry]
Encoding=UTF-8
Type=Application
Exec=xdg-open /home
Icon=preferences-desktop-wallpaper
Name=Moje tretiPolozka
V případě žě máme připraven soubor s menu a soubory s jednotlivými položkami přidáme nejprve menu a dvě položky tohoto menu příkazem:
xdg-desktop-menu install --novendor mojemenu.directory polozka1.desktop polozka2.desktop
Pokud chceme doplnit třetí položku upravíme příkaz na tvar:
xdg-desktop-menu install --novendor mojemenu.directory polozka3.desktop
Obdobně můžeme položku z menu odstranit:
xdg-desktop-menu uninstall  mojemenu.directory polozka1.desktop
Stejným způsobem odstraníme zbývající položky a celé menu:
xdg-desktop-menu uninstall  mojemenu.directory polozka2.desktop polozka3.desktop 
Na následujícím snímku můžete vidět nově vytvořené menu a jeho položky:

V adresáři ~/.local/share/desktop-directories je zaregistrován při vytvoření menu soubor s názvem mojemenu.directory. Totéž platí pro adresář ~/.local/share/applications ve kterém jsou uloženy položky menu. V adresáři ~/.config/menus/applications-merged je vytvořen soubor s názvem user-mojemenu.menu ve kterém jsou uloženy informace o jednotlivých položkách menu v XML formátu:
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
    "http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">
<!-- Do not edit manually - generated and managed by xdg-desktop-menu -->
<Menu>
<Name>Applications</Name>
<Menu>
<Name>mojemenu</Name>
<Directory>mojemenu.directory</Directory>
<Include>
<Filename>polozka2.desktop</Filename>
<Filename>polozka3.desktop</Filename>
</Include>
</Menu>
</Menu>

xdg-desktop-icon

Slouží pro instalaci a odinstalaci spouštěčů aplikací do desktopového prostředí. Stejně jako v předchozím případě skript instaluje v domovském adresáři uživatele soubory s přípnou .desktop.

xdg-icon-resource

Zajištuje instalaci a odinstalaci ikon. Ikony jsou definovány jejich názvem, velikostí a kontextem ve kterém mají být užity. O ikonách se dozvíte více informací v příslušné specifikaci do systému nainstalujete ikonu následovně: xdg-icon-instalační zdroj - velikost 64 shinythings-myfoobar.png Ikonu přiřadíte aplikaci application-x-foobar v příslušném kontextu takto:

xdg-icon-resource install --context mimetypes --size 48 ./mime-foobar-48.png application-x-foobar
xdg-icon-resource install --context mimetypes --size 64 ./mime-foobar-64.png application-x-foobar
první příklad přiřazuje ikonu o velikosti 48px druhý o velikosti 64px.

xdg-mime

nástroj příkazové řádky pro dotazování informace o manipulaci typu souboru a přidáním označení pro nové typy souborů získavaní informací o způsobu zpracování konkrétních typů souborů a přidání popisu pro jejich další zpracovávání. Pro přidání nové položky předejte skriptu následující parametry:

xdg-mime default evince.desktop application/pdf
tímto zápisem přiřadíte desktopovou aplikaci pro otevírání všech souborů s příponou pdf v příslušném konfiguračním souboru se objeví tento zápis ~/.local/Share/applications/defaults.list
[Výchozí] Aplikace 
application / pdf = xpdf.desktop
Pokud chcete zjistit MIME typ souboru použijte:
xdg-mime query filetype foobar.png
na výstupu dostanete:
image/png
Zajímá-li vás aplikace která je přiřazena danému MIME typu použijte příkaz:
xdg-mime query default image/png
výpis může vypadat například takto:
eog.desktop
což znamená že pro otevření souboru s přípnou png je použita aplikace eog. Parametrem uninstall nebo install můžete odebírat nebo přidávat další MIME typy. MIME typ musí být XML soubor dle specifikace http://www.freedesktop.org/wiki/Specifications/AddingMIMETutor

xdg-open

otevirání souborů nebo URL uživatelem definovanou aplikací, výchozí soubor pro uživatelem nastavené položky je ~/.local/share/applications/defaults.list pro systémové položky pak /usr/share/applications/defaults.list. Tyto soubory používají pro zápis následující strukturu: [Výchozí aplikace] mimetype = desktopfile1; desktopfile2 ... ve vašem souboru byste měli nalézt něco takového: [Výchozí aplikace] application / csv = LibreOffice-calc.desktop tento zápis znamená, že soubory s příponou csv budou standardně otevírány pomocí desktopové aplikace libreoffice-calc.desktop Chcete-li například otevřít některý soubor zadáte příkaz následovně: $ Xdg-open / tmp / foobar.png v tomto případě se otevře soubor foobar.png předděfinovaným grafickým editorem. URL adresu můžete otevřít v předdefinovaném prohlížeči webových stránek následovně: $ Xdg-open " http://www.linuxsoft.cz/ "

xdg-email

odeslání emailu uživatelem preferovaným emailovým klientem. Je-li tento skript spuštěn bude otevřen váš předkonfigurovaný emailový klient. Tento příkaz obsahuje některé zajímavé parametry, které vám usnadní spoustu práce. Například je možné jako parametr přidat emailové adresy na které se ma zpráva zaslat, obsah zprávy nebo předmět zprávy. Více informací získate zadáním příkazu:

xdg-mail --help

xdg-screensaver

nástroj pro ovládání spořiče obrazovky. Manuálovou stránku vyvoláte příkazem:

xdg-screensaver --manual

xdg-settings

získání, nastavení a ověření některých nastavení prostředí dekstopu. Skript nejprve určí zda se jedná o prostředí KDE, Gnome nebo XFCE a poté vykonává konkrétní akce. Je možné pracovat například s prohlížečem webu, nebo proxy. Následující příkaz ověří jaký je právě nastaven výchozí prohlížeč:

xdg-settings get default-web-browser 
Pokud chceme ověřit zda je nastaven konkrétní prohlížeč použijeme zápis:
xdg-settings check default-web-browser chromium-browser.desktop  
jako odpověd vypíše yes nebo no. Příkaz pro nastavení může vypadat například takto:
xdg-settings set default-web-browser chromium-browser.desktop
takto je nastaven výchozí webový prohlížeč.

Alacarte

Pro konfiguraci desktopového prostředí se vedle práce s konfiguračními soubory a modifikace pomocí skriptů xdg-utils objevují ještě další aplikace. Jednou z ních je aplikace Alacarte, napsaná převážne pro prostředí GNOME ale nic nebrání tomu používat ji i v jiných prostředích. Její poslední verze vyšla v září v roce 2010.

Jak můžete vidět dle předcházejícího screenshotu, tak práce s aplikací Alacarte je velmi intuitivní. Můžete vytvářet jak nové Nabídky tak i Položky pro jednotlivé aplikace. Vytvořené objekty pak mohou být různě přesouvány, oddělovány nebo smazány dle potřeby.

LXMenuEditor

Protože je Alacarte v současné době již poněkud zastaralá, je možné použít novější aplikaci LXMenuEditor. Jedná se o jednu z komponent prostředí LXDE. Celá aplikace je napsaná v jazyku Java.

Užitečné odkazy

Závěr

Distribuce operačního systému GNU/Linux, BSD a další mají k dispozici poměrně mocný standard pro přípravu desktopového prostředí. Administrátoři a vývojáři mohou ocenit práci s konfiguračními soubory, definovanými dle přislušných standardů, uživatelé pak pravděpodobně ocení aplikace jako je například Alacarte, pro pohodlnou modifikaci příslušných položek.

Online verze článku: http://www.linuxsoft.cz/article.php?id_article=1935