web-dev-qa-db-ja.com

メニューからではなく、ダブルクリックで.desktopファイルが実行されるのはなぜですか?

私はガールフレンドのLubuntuマシンにFTL:Faster Than Light。desktopファイルを作成しました。奇妙なことに、プログラムは、「ゲーム」の下のメニューエントリから起動しません。

pcmanfmを介して/home/andi/.local/share/applications/に移動し、FTL Faster Than Light.desktopをダブルクリックした場合ゲームは問題なく起動します。メニューエントリは.desktopファイルを介して生成されるので、メニューから起動しないのはなぜですか?

これが私が作成した.desktopファイルです。 FTL Faster Than Light.desktop

4
Insperatus

Alex L.のコメントに対する回答に基づくと、FTLは現在の作業ディレクトリでさまざまなものを探しているように聞こえます。メニューはそれをしないので、見つけることができないものがあります。

.desktopファイルを編集して、代わりにExec行が次のようになるようにしてください。

sh -c "cd /home/andi/.local/share/FTL/ && ./FTL"

これにより、最初にディレクトリが切り替えられ、FTLが開始に必要なすべてを見つけることができます。

6
ImaginaryRobots

次をテキストエディターに貼り付けます。

#!/bin/bash
cd /home/andi/.local/share/FTL/
./FTL
exit 0

〜/ bin /にFTL-launchとして保存し、実行可能として設定します。次に、.desktopファイルのexec行を変更します

Exec=FTL-launch

もちろん、これはImaginaryRobotsの回答に基づいています。私は、ワインで実行されているいくつかの古いWindowsゲームに同様のランチャーを使用しました。それらは、ディレクトリ内から起動する必要があります。

〜/ binがない場合は、作成する必要があります-ただし、それが機能するには、ログアウトして再度ログインする必要がある場合があります。

1
evilsoup

デスクトップファイルをインストールしましたか?私の知る限り、デスクトップファイルは次のようにしてインストールする必要があります。

Sudo desktop-file-install myfile.desktop

もちろん、この場合、myfile.desktopは「FTL Faster Than Light.desktop」である必要があります。

GUI経由でランチャーを作成できるalacarte(メインメニューとも呼ばれます)を使用することもできます。

0
Patricio Clark

.desktopファイルを実行可能にしてみてください。 Lubuntuの一部ではありませんが、Nautilusは実行可能なデスクトップファイルを実行しません。 Lubuntuのメニューにもこれが必要なのかもしれません。

また、.desktopファイルのファイル名からスペースを削除してみます。

0