abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:33 | IT novinky

    Nový open source router Turris Omnia NG je v prodeji. Aktuálně na Allegro, Alternetivo, Discomp, i4wifi a WiFiShop.

    Ladislav Hagara | Komentářů: 3
    dnes 05:44 | Komunita

    Na YouTube a nově také na VHSky byly zveřejněny sestříhané videozáznamy přednášek z letošního OpenAltu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | Komunita

    Jednou za rok otevírá společnost SUSE dveře svých kanceláří široké veřejnosti. Vítáni jsou všichni, kdo se chtějí dozvědět více o naší práci, prostředí ve kterém pracujeme a o naší firemní kultuře. Letos se dveře otevřou 26. 11. 2025 v 16:00. Můžete se těšit na krátké prezentace, které vám přiblíží, na čem naši inženýři v Praze pracují, jak spolupracujeme se zákazníky, partnery i studenty, proč máme rádi open source a co pro nás skutečně

    … více »
    SUSEMAS | Komentářů: 0
    dnes 04:22 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za říjen (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Zajímavý článek

    Jeff Quast otestoval současné emulátory terminálu. Zaměřil se na podporu Unicode a výkon. Vítězným emulátorem terminálu je Ghostty.

    Ladislav Hagara | Komentářů: 2
    včera 22:55 | IT novinky

    Amazon bude poskytovat cloudové služby OpenAI. Cloudová divize Amazon Web Services (AWS) uzavřela s OpenAI víceletou smlouvu za 38 miliard USD (803,1 miliardy Kč), která poskytne majiteli chatovacího robota s umělou inteligencí (AI) ChatGPT přístup ke stovkám tisíc grafických procesů Nvidia. Ty bude moci využívat k trénování a provozování svých modelů AI. Firmy to oznámily v dnešní tiskové zprávě. Společnost OpenAI také nedávno

    … více »
    Ladislav Hagara | Komentářů: 3
    včera 16:22 | Pozvánky

    Konference Prague PostgreSQL Developer Day 2026 (P2D2) se koná 27. a 28. ledna 2026. Konference je zaměřena na témata zajímavá pro uživatele a vývojáře. Příjem přednášek a workshopů je otevřen do 14. listopadu. Vítáme témata související s PostgreSQL či s databázemi obecně, a mohou být v češtině či angličtině.

    TomasVondra | Komentářů: 0
    včera 13:22 | Nová verze

    Byl vydán Devuan 6 Excalibur. Přehled novinek v poznámkách k vydání. Kódové jméno Excalibur bylo vybráno podle planetky 9499 Excalibur. Devuan (Wikipedie) je fork Debianu bez systemd. Devuan 6 Excalibur vychází z Debianu 13 Trixie. Devuan 7 ponese kódové jméno Freia.

    Ladislav Hagara | Komentářů: 4
    včera 10:44 | IT novinky

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu poprvé překročil 3 %, aktuálně 3,05 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 27,18 %. Procesor AMD používá 67,10 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 1
    včera 10:33 | Zajímavý projekt

    Joel Severin v diskusním listu LKML představil svůj projekt linuxového jádra ve WebAssembly (Wasm). Linux tak "nativně" běží ve webovém prohlížeči. Potřebné skripty pro převod jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 1
    Jaké řešení používáte k vývoji / práci?
     (36%)
     (49%)
     (18%)
     (18%)
     (22%)
     (16%)
     (21%)
     (16%)
     (17%)
    Celkem 305 hlasů
     Komentářů: 15, poslední 2.11. 08:25
    Rozcestník

    .desktop soubory

    21.3.2021 00:00 | Přečteno: 4926× | Výběrový blog | poslední úprava: 20.3.2021 17:10

    Narazil jsem zde na diskusi na téma vytvoření Desktop Entry souboru pro aplikaci s určením working directory. Desktop Entry soubory používám ke spouštění aplikací poměrně často, takže, abych se o tom dozvěděl trochu víc, než že tam je Type, Name a Exec, jsem si přečetl specifikaci (a poznámky zveřejním zde, když už jsem si ten blog založil).

    V textu budu průběžně odkazovat na specifikaci verze 1.5 (jednostránkovou verzi), aby bylo snažší dohledat podrobnosti. Z této specifikace vycházím, ale tento můj text je značně zkrácený a zjednodušený.

    Názvy souborů

    Soubory popisující adresář se jmenují .desktop, ostatní končí na .desktop. Systém by měl být schopen fallbacku na magickou detekci.

    Pro aplikace by mělo platit to, že text před .desktop je D-Bus well-known name, tedy něco ve stylu Javovských jmenných prostorů – posloupnost částí (min. jedna) oddělených tečkou, kde každá část nezačíná číslicí a je ze znaků [A-Za-z0-9-_].

    ID souborů

    Vezmu cestu relativně k adresáři v $XDG_DATA_DIRS, odeberu prefix applications/ a nahradím lomítka tečkami. Dostanu ID desktop souboru. Pokud je více souborů se stejným ID, má přednost ten ze dříve uvedeného adresáře.

    Formát souboru

    Soubor je podobný tzv. INI souborům. Je v UTF-8, řádky končí LF. Formát je case-sensitive. Komentáře uvozujeme #, skupiny řádkem s názvem v hranaté závorce.

    Soubor začíná magickým stringem [Desktop Entry], který zároveň uvozuje první skupinu.

    Údaje jsou typu klíč-hodnota, kde klíč je tvořen malými, velkými, číslicemi a spojovníkem (0x2d).

    Typy jsou string (jen tisknutelné ASCII), localestring (UTF-8 string pro uživatele), iconstring (cesty a názvy ikon, UTF-8), boolean (true, false) numeric (float dle scanf s %f v C locale).

    Stringové typy rozumí escape sekvencím \s (pro 0x20), \n, \t, \r, a \\.

    Seznamy se v hodnotě oddělují středníkem, můžeme ho pak escapovat \;.

    Lokalizované klíče

    Loklizované údaje značíme hranatou závorkou s locale hned za názvem klíče. Text závorky je ve formátu lang_COUNTRY.ENCODING@MODIFIER. Čím více toho uvedeme, tím vyšší má přednost.

    Standardizované názvy hodnot

    Vyžadované hodnoty

    Pokud je Type rovno Link, pak ještě URL.

    Volitelné hodnoty

    Exec a jeho specifika

    Exec je buď absolutní cesta, nebo název programu (hledá se v $PATH). Nultý argument by neměl obsahovat rovnítko. Pokud použijeme uvozovky, tak dvojité a escapujeme backtick, dolar a zpětné lomítko zpětným lomítkem.

    Rezervované znaky: 0x20, 0x9, 0xd a "'\><~|&;$*?#()`

    Proměnné v Exec

    S %f a %u by měl být spuštěn program pro každý soubor zvlášť.

    S %f a %F se soubor překopíruje na lokální úložiště, je-li to nutné.

    Nejde uvést více než jednu proměnnou ze sady %f, %F, %u, %U.

    Použití proměnné v uvozovkách způsobí nedefinované chování.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    21.3.2021 03:09 Rolf neregistrovan
    Rozbalit Rozbalit vše Re: .desktop soubory
    lajk
    🇹🇬 avatar 21.3.2021 12:22 🇹🇬 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: .desktop soubory

    supr článeček akorátže nemam naploše vůůbec žádný ikonky takže se nemužu kouknout jestli to jakoby fakt všecko sedí :D

    stasi se probouzí 🕵️🇩🇪 indové říděj🚚🇮🇳 plavba🍉🛶
    21.3.2021 17:11 Jana Dziková
    Rozbalit Rozbalit vše Re: .desktop soubory
    A start-menu nemáte Gréto nebo spouštíte aplikace klávesama?
    Gilhad avatar 22.3.2021 23:45 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: .desktop soubory
    Nevim, jak Greta, ale ja v grafickem rezimu spoustim programy (skripty ...) z menu, ktere vyskoci bud na klavesu menu, nebo na kliknuti pravym mysitkem na plose. Ovsem nejcasteji stejne programy spoustim primo z prikazove radky (vetsinou v terminalu).

    Ikonky ani start-menu nemam a nijak mi nechybi. Mnohem jednodussi mi prijde ta prikazova radka a moznost mit sikovne udelane skripty a aliasy.

    A mam zazite, ze spustim program a pak jim zpracuju soubor dat, nikoli ze "spustim data" (a nejaka aplikace s nima neco udela) - muze se to zdat jako ruzne pojmenovani pro tutez vec, ale ten pristup a uvazovani o vecech je proste opacny. Ono jedna a ta sama data casto zpracovavam spoustou ruznych programu, podle toho, co s nima zrovna chci delat.
    22.3.2021 13:39 figliar0 | skóre: 6 | blog: figliarstva | Košice
    Rozbalit Rozbalit vše Re: .desktop soubory
    Presne tak, kopec ich je v /usr/share/applications .
    🇹🇬 avatar 22.3.2021 18:45 🇹🇬 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: .desktop soubory

    jj máte voba pravdu tam jich je moc :O :D

    stasi se probouzí 🕵️🇩🇪 indové říděj🚚🇮🇳 plavba🍉🛶
    Bedňa avatar 23.3.2021 18:49 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: .desktop soubory
    Z tých sa ti generuje menu.
    KERNEL ULTRAS video channel >>>
    21.3.2021 13:49 Pepa
    Rozbalit Rozbalit vše Re: .desktop soubory
    také děkuji za velice užitečný článek po dlouhé době
    xkucf03 avatar 21.3.2021 21:33 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Formát INI souborů, .desktop, Relational pipes

    Pěkný zápisek. Tyhle specifikace jsem před nedávnem taky studoval, když jsem psal parser INI souborů. Ty .desktop soubory jsou jeden z dialektů. Ještě to není úplně odladěné a vydané, ale celkem už mi to funguje :-)

    $ cat /usr/share/applications/org.kde.konsole.desktop \
    	| relpipe-in-ini --enable-sub-keys true \
    	| relpipe-tr-awk \
    		--relation "ini" -
    			--where 'sub_key == "cs" || key !~ "Name|Comment|GenericName"' \
    	| relpipe-out-tabular
    ini:
     ╭──────────────────────────┬───────────────────────┬──────────────────┬─────────────────────────────────╮
     │ section         (string) │ key          (string) │ sub_key (string) │ value                  (string) │
     ├──────────────────────────┼───────────────────────┼──────────────────┼─────────────────────────────────┤
     │ Desktop Entry            │ Type                  │                  │ Application                     │
     │ Desktop Entry            │ TryExec               │                  │ konsole                         │
     │ Desktop Entry            │ Exec                  │                  │ konsole                         │
     │ Desktop Entry            │ Icon                  │                  │ utilities-terminal              │
     │ Desktop Entry            │ Terminal              │                  │ false                           │
     │ Desktop Entry            │ Categories            │                  │ Qt;KDE;System;TerminalEmulator; │
     │ Desktop Entry            │ Actions               │                  │ NewWindow;NewTab;               │
     │ Desktop Entry            │ X-DocPath             │                  │ konsole/index.html              │
     │ Desktop Entry            │ X-DBUS-StartupType    │                  │ Unique                          │
     │ Desktop Entry            │ StartupNotify         │                  │ true                            │
     │ Desktop Entry            │ X-KDE-AuthorizeAction │                  │ shell_access                    │
     │ Desktop Entry            │ Name                  │ cs               │ Konsole                         │
     │ Desktop Entry            │ GenericName           │ cs               │ Terminál                        │
     │ Desktop Entry            │ Comment               │ cs               │ Přístup k příkazové řádce       │
     │ Desktop Action NewWindow │ Name                  │ cs               │ Otevřít nové okno               │
     │ Desktop Action NewWindow │ Exec                  │                  │ konsole                         │
     │ Desktop Action NewTab    │ Name                  │ cs               │ Otevřít novou kartu             │
     │ Desktop Action NewTab    │ Exec                  │                  │ konsole --new-tab               │
     ╰──────────────────────────┴───────────────────────┴──────────────────┴─────────────────────────────────╯
    Record count: 18

    Mimochodem, hodně podobné jsou konfiguráky systemd, akorát tam mají jednu záludnost/odlišnost kolem zalamování řádků… to ještě nemám implementované.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.