Portál AbcLinuxu, 27. dubna 2024 04:29


Dotaz: příkaz na spuštění spouštěče (tj. souboru .desktop)

24.11.2009 16:23 imploder | skóre: 11
příkaz na spuštění spouštěče (tj. souboru .desktop)
Přečteno: 1379×
Odpovědět | Admin
Zdravím, mám jednoduchý dotaz (ale odpověď se mi najít nepodařilo):

Jakým příkazem (programem) spustím soubor .desktop? Používají se na spouštění programů v okenním prostředí (GNOME, KDE a jiné). Čím se dají spustit z příkazového řádku? Je na to něco jako xdg-open (otevře libovolný soubor v asociované aplikaci; .desktop ale v /usr/share/applications/defaults.list zapsaný není)?

Freedesktop.org bych tipoval na to bude mít nějaký standard, jak je spouštět, ale ve specifikaci jsem nic takového nenašel.

Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

24.11.2009 16:28 Mige_Amour | skóre: 12 | Benešov
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Odpovědět | | Sbalit | Link | Blokovat | Admin
Když se podíváš do toho souboru .desktop, tak ta máš Exec=něco a tím něco můžeš ten program rovnou spouštět (z konzole, alt+f2, atd) :)
24.11.2009 16:35 Andrej Herceg | skóre: 43
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Odpovědět | | Sbalit | Link | Blokovat | Admin
Mne na "spúšťanie" .desktop súborov ten príkaz xdg-open funguje bez problémov.
24.11.2009 16:57 imploder | skóre: 11
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
To ten soubor otevře v textovém editoru. Já bych rád z příkazového řádku ten spouštěč spustil - aby se provedlo, co se při jeho spuštění normálně provede, tak, jak je to v něm nastaveno.

Spustit program přímo jeho názvem samozřejmě jde taky, ale mně jde o to, jak ho spustit pomocí spouštěče. Aby to šlo i ze shellu. Prostě spustit příkaz, co je v .desktop souboru pod exec, nemusí být úplně to samé, v .desktop souboru se dají nastavit věci jako např. startup notification (při spouštění se objeví tlačítko na liště). GNOME a ostatní prostředí to nějak provedou, tak by mě zajímalo, jak to vyvolat.

Díky. (nejde o nic zásadního, pokud to prostě nejde - je to napevno zabudované do nautilusu v GNOME nebo do něčeho jiného bez možnosti to vyvolat, nic se neděje - jen se ptám, jestli nějaký standardní způsob jak spustit .desktop spouštěč existuje)
robotics avatar 24.11.2009 17:14 robotics | skóre: 29 | blog: o_vsem_moznem
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
No nevím jestli to vůbec půjde, jak sám píšeš je to specifikace freedesktop, takže pro terminál to nepude. Ale můžeš si napsat univerzální skript kterým to budeš spuštět.
24.11.2009 17:46 Semo | skóre: 45 | blog: Semo
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
U mna xdg-open spyta, ci chcem fakt spustit a spusti.
If you hold a Unix shell up to your ear, you can you hear the C.
otula avatar 24.11.2009 21:01 otula | skóre: 45 | blog: otakar | Adamov
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Mně xdg-open funguje úplně normálně - na nic se neptá, prostě spustí program, nastavený v daném .desktop souboru. Nemáš v asociacích souborů nastaveno otevírání .desktop souborů tím textovým editorem?

BTW - proč vůbec chceš "spouštět" .desktop soubory z příkazového řádku? Tyto soubory slouží pro spouštění příkazů z grafického prostředí, tedy pro přesný opak toho, po čem toužíš.
Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.
24.11.2009 21:53 rastos | skóre: 62 | blog: rastos
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jakým příkazem (programem) spustím soubor .desktop?
(Že by sa nám Jaroslav zaregistroval?)

Súbor s príponou .desktop nie je určený na to, aby si ho spúšťal. Je to súbor, ktorý slúži ako vstup pre xdg-desktop-menu/xdg-desktop-icon.

... aha, správne si pamätám, že som to tu písal pred dvoma týždňami.
29.11.2009 15:37 imploder | skóre: 11
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Odpovědět | | Sbalit | Link | Blokovat | Admin
Spouštěč není určený na to, abych ho spouštěl? :) ...to zní dost paradoxně. Spouštěč můžu spustit z plochy, můžu ho spustit ze správce souborů, můžu ho spustit z menu -- nevidím důvod, proč bych ho nemohl spustit odkudkoliv příkazem. Jestli to systém umožňuje je druhá věc (asi nijak univerzálně ne).

Na co jsem to chtěl použít: často spouštím programy přes klávesové zkratky, co jsem si nastavil v GNOME (třeba Win+t -> terminál, Win+M -> thunderbird atd. -- je to lepší než si zapráskat lištu ikonama a pak tam nemít místo na panel úloh (2 lišty se na nízký displej nehodí). Normálně když spustím program přes ikonu (spouštěčem), tak se ukáže hned na liště co se spouští (tzv. startup notification), protože ve spouštěči je StartupNotify=true. Chtěl jsem, aby se totéž dělalo i při spouštění klávesovou zkratkou. Šlo by to, kdyby se dal klávesovou zkratkou spustit spouštěč. Zajímalo mě, jak a jestli to jde udělat.

Samozřejmě se bez toho obejdu. Na hraní si se spouštěním jsem našel tohle v knihovně GDK: http://library.gnome.org/devel/gdk/stable/gdk-Application-launching.html
otula avatar 29.11.2009 17:10 otula | skóre: 45 | blog: otakar | Adamov
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)

Myslím, že odpověď už jsi dostal. Takže ještě jednou:

  1. To, co nazýváš spouštěč, slouží ke spouštění programů poklikáním myší v grafickém prostředí, nikoliv v příkazové řádce. V příkazové řádce se programy spouštějí zadáním názvu spustitelného souboru.
  2. Pokud se za každou cenu chceš řídit pořekadlem Proč to dělat jednoduše, když to jde složitě, tak už ti bylo odpovězeno, že k tomu slouží příkaz xdg-open /cesta/k/souboru.desktop
Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.
29.11.2009 17:26 imploder | skóre: 11
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
1. Ano, jdou tak spustit, ale když se tak spustí, tak nemají startup-notification. (gnome-panelu se musí dát o spuštění vědět, a to se při spuštění spouštěčem stane, při spuštění přímo příkazem ne). V grafickém prostředí se dá, jak jsem napsal, kromě myši spouštět i klávesnicí a tam se místo spouštěčů používají příkazy. 2. S tím xdg-open je to asi různé, mně to nefunguje (spouštěč se načte jako textový soubor do editoru, nespustí se).

Tomu, co nazývám spouštěč, se spouštěč v GNOME standardně říká. Za odpověď děkuji.
otula avatar 29.11.2009 17:41 otula | skóre: 45 | blog: otakar | Adamov
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
2. S tím xdg-open je to asi různé, mně to nefunguje (spouštěč se načte jako textový soubor do editoru, nespustí se).
A proto jsem se tě už předtím ptal, zda náhodou nemáš .desktop soubory asociovány s tím textovým editorem. Na to jsi mi ale neodpověděl. xdg-open totiž slouží k tomu, že
opens a file or URL in the user's preferred application
Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.
29.11.2009 18:12 imploder | skóre: 11
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Nemám, ani v /usr/share/applications/defaults.list ani /home/petr/.local/share/applications/mimeapps.list není typ application/x-desktop zaregistrovaný. Otevírá se to ve Vimu, který mám přiřazený k text/plain a několika dalším (zdrojáky v C, logy apod.).
otula avatar 29.11.2009 19:03 otula | skóre: 45 | blog: otakar | Adamov
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Že by tohle?
Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.
otula avatar 29.11.2009 19:22 otula | skóre: 45 | blog: otakar | Adamov
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Řekl bych, že jsem se k tomu dopracoval. Pokud se přihlásím do openboxu, chová se to u mne stejně, jako u tebe. Pokud se v openboxu zeptám například
xdg-mime query filetype /usr/share/applications/audacity.desktop
dostanu odpověď
text/plain; charset=utf-8
Pokud stejný dotaz položím v KDE, dostanu odpověď
application/x-desktop
Takže potřebuješ zaregistrovat soubor .desktop jako application/x-desktop (momentálně ho systém bere jako text/plain). Jak se to v Gnome dělá, to netuším, ale to už si snad nějak vyřešíš.
Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.
30.1.2010 14:15 imploder | skóre: 11
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Zkusil jsem se v tom zase vrtat a bude v tom něco jiného.

[petr@teltak ~]$ xdg-mime query filetype Plocha/gnome-do.desktop 
application/x-desktop
[petr@teltak ~]$ xdg-open Plocha/gnome-do.desktop 
[petr@teltak ~]$ E247: Neexistuje registrovaný server jménem "GVIM": Send failed. Trying to execute locally

- otevře se ten soubor jako texttový ve GVIMu (gvim --remote-tab).

Chci nějak docílit automatického spuštění gnome-do.desktop, abych na to nemusel pokaždé po přihlášení klikat. Když nechám gnome-do spouštět při přihlášení (přes Systém->Volby->Aplicace spouštěné při přihlášení), tak nefunguje jak má (gnome-do se spustí, ale když z něj dám spustit nautilus - kliknutím na jeho ikonku - tak se nespustí - jenom se na liště ukáže "Spouští se Prohlížeč souborů" a pak to zmizí).
29.11.2009 17:24 l4m4
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Spouštěč není určený na to, abych ho spouštěl?

Ano, přesně tak.

Spouštěč je věc, která něco spouští, ne kterou spouštíš.

Stejně tak instalátor je věc, která něco nainstaluje, ne kterou instaluješ.

Co je na tom paradoxního?
29.11.2009 17:32 imploder | skóre: 11
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Je to pravda, spouštěč má něco spouštět, ne být sám spouštěn (když jsme u gramatiky).
29.11.2009 17:32 imploder | skóre: 11
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Dá se o tom uvažovat i tak. V takovém případě se z otázky "jak spustit tu věc?" stane otázka "jak říct té věci, aby spustila to co spouští?".

Je to pravda, spouštěč má něco spouštět, ne být sám spouštěn (když jsme u gramatiky).
31.1.2010 00:53 pozortucnak | skóre: 21 | blog: vecny_windowsar
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
Odpovědět | | Sbalit | Link | Blokovat | Admin
Mě funguje toto:
thunar /usr/share/applications/mousepad.desktop
Jsem mimořádně obtížný případ
31.1.2010 14:48 imploder | skóre: 11
Rozbalit Rozbalit vše Re: příkaz na spuštění spouštěče (tj. souboru .desktop)
U mě to po nainstalování thunaru taky funguje. Díky za tip.

Předtím jsem zkoušel takhle spouštět .desktop soubory nautilusem a ten je odmítal otevřít (umí tak jenom otevřít adresář, ne soubor).

Když tak spouštěč gnome-do přes thunar automaticky spustím, tak pak z něj nautilus nejde spustit (narozdíl od ručního kliknutí na spouštěč - pak jde). Netuším, čím to je, prostě Linux - je to rozbité... naštěstí tady nejde o nic vážného, ikonku nautilusu jsem dal na lištu a z gnome-do ho prostě spouštět nebudu :)

Založit nové vláknoNahoru

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.