Создание .desktop для небес Unigine 4.0

Я пытаюсь создать средство запуска приложения для программы (unigine небеса), я создал .desktop файл, который похож на это:

[Desktop Entry]
Version=1.0
Name=Unigine Heaven 4.0
Type=Application
Icon=heaven-icon.png
Exec=/home/**redacted**/Unigine_Heaven-4.0/heaven
Terminal=true

Я сделал исполняемый файл файла и попытался выполнить его, и ничего не происходит. Если я вхожу в терминал внутри /home/**redacted**/Unigine_Heaven-4.0/ и выполненный ./heaven, все работает, как это должно, я просто не могу заставить ту терминальную команду работать в .desktop файле. Какие-либо идеи?

Править: форматирование для ясности

2
задан 22 October 2017 в 09:32

1 ответ

Если мы исследуем исполняемый сценарий heaven, то мы будем видеть, что пути внутри относительны:

#!/bin/bash

cd ./bin
ARCH=$(uname -m)
if [ "$ARCH" == x86_64 ]; then
    export LD_LIBRARY_PATH=./x64:$LD_LIBRARY_PATH
    ./browser_x64 -config ../data/launcher/launcher.xml
else
    export LD_LIBRARY_PATH=./x86:$LD_LIBRARY_PATH
    ./browser_x86 -config ../data/launcher/launcher.xml
fi

, Таким образом, решение состоит в том, чтобы добавить рабочий каталог (Path ключ) к средству запуска (.desktop файл):

[Desktop Entry]
Version=1.0
Name=Unigine Heaven 4.0
Type=Application
Icon=heaven-icon.png
Path=/home/<user>/Unigine_Heaven-4.0
Exec=/home/<user>/Unigine_Heaven-4.0/heaven
Terminal=false
  • Замена /home/<user>/Unigine_Heaven-4.0 с фактическим используемым путем.
  • обратите внимание также на эти изменения: Terminal=false.

  • решение, предоставленное @Sans также, работает:

    Exec=sh -c "cd /home/<user>/Unigine_Heaven-4.0/heaven; ./heaven"
    
<час>

Ссылки:

1
ответ дан 2 December 2019 в 04:47

Другие вопросы по тегам:

Похожие вопросы: