web-dev-qa-db-ja.com

クイックリストから.desktopファイルを実行することはできますか?

さまざまなアプリケーションを実行するためのオプションが満載のクイックリストで作成したランチャーがあります。オプションの1つはTeamViewerで、これはそのクイックリストコードです。

[デスクトップアクションfav-teamviewer]
Name = TeamViewer
Exec =/opt/teamviewer9/tv_bin/script/teamviewer
OnlyShowIn = Unity

これは完全に機能しますが、「teamviewer.desktop」ファイルを直接実行したい場合はどうなりますか?このようなもの...

[デスクトップアクションfav-teamviewer]
Name = TeamViewer
Exec =/usr/share/applications/teamviewer.desktop
OnlyShowIn = Unity

試しましたが、うまくいきません。なぜ機能しないのですか?私はそれを間違って行っていますか、それとも不可能ですか?

私がそれをしたい理由は、通常、ダッシュボードからTeamViewerを実行する場合、ランチャーのアイコンが完全であることです(最初の画像)。しかし、そのクイックリストオプションから実行すると、デフォルトのアイコンが失われ、汎用のWineアプリケーションアイコン(2番目の画像)が表示されます。よりよく理解するには、スクリーンショットをご覧ください。

If run from the Dash:If run from the QuickList:

あなたが助けてくれるといいのですが。ご清聴ありがとうございました。

2
brunces

デスクトップファイルをExecから直接起動することはできません。したがって、2番目のファイルのExecオプションで次のようにgtk-launchを使用します。

[Desktop Action fav-teamviewer]
Name=TeamViewer
Exec=gtk-launch teamviewer.desktop /usr/share/applications
OnlyShowIn=Unity

これにより、このファイルを起動してteamviewer.desktopを起動できるようになります。


man gtk-launchから:

 NAME 
 gtk-launch-アプリケーションを起動します
 
概要
 gtk-launch [APPLICATION] [URI ...] 

デスクトップファイルの使用に関するリファレンス:-

説明
 gtk-launchは、少なくとも1つの引数、起動するアプリケーションの名前を取ります。
名前は、/ usr/share/applicationにあるように、アプリケーションデスクトップファイル名と一致する必要があります
「。desktop」サフィックスの有無にかかわらず。
2
Pandya