Скрипт оболочки не открывается как настольное приложение
У меня есть сценарий оболочки, который является винной командой, чтобы открыть файл.exe, который выглядит следующим образом:
#!/bin/bash
wine wow.exe -opengl
Его единственная цель - запустить этот файл.exe. Это работает, если я просто дважды щелкну скрипт. Расположение скрипта такое же, как и у файла.exe. Я хочу иметь настольное приложение, то есть значок, который я могу прикрепить к своей док-станции, который выполняет этот сценарий оболочки. Файл моего настольного приложения выглядит так:
[Desktop Entry]
Comment=WoW
Exec=/home/siegmeyer/Documents/WoW/WoW.sh
Icon=/home/siegmeyer/Documents/WoW/WoW.png
Terminal=false
Type=Application
StartupNotify=false
Name[en_US]=WoW
Я могу успешно прикрепить приложение к своей док-станции, значок даже появляется, но когда я щелкаю по приложению, ничего не происходит, курсор застревает в бесконечном значке загрузки. Я что-то пропустил?
1 ответ
Чтобы убедиться, что скрипт ищет исполняемый файл в нужном каталоге, вы можете изменить вызов на
wine "$(realpath "$(dirname "$0")")/wow.exe" -opengl
Это вставит абсолютный путь скрипта (и, следовательно, exe) в вызов. Это будет работать без кавычек для путей, которые не содержат пробелов, но я рекомендую сохранить их на случай, если вы переместите каталог.