Как интегрировать AppImage в качестве приложения «по умолчанию» в Ubuntu (22.04)
Все говорят о том, как найти приложение и запустить его с ярлыка (вместо того, чтобы запускать его как исполняемый файл).
Однако никто не говорит о том, как интегрировать AppImage в систему типов файлов.
Моя цель - нажать на.stlфайл и откройте его с помощью программы по умолчанию, которая поставляется только как AppImage для Ubuntu/Linux.
Эта программа уже появляется в строке поиска, потому что я интегрировал ее с помощью.desktopфайл, как указано в связанных сообщениях.
1 ответ
Поскольку вы упомянули, что уже рассмотрели, как создать средство запуска рабочего стола для вашего AppImage, я пропущу эту часть.
Вы хотите отредактировать.desktopлаунчер и изменить связанные с ним типы пантомимы.
FWIW, это не специально для AppImages; вот как работают лаунчеры freedesktop для рабочего стола
Я не знаю, какую программу вы имеете в виду, но я буду использовать следующий лаунчер в качестве примера.
Нижеприведенный лаунчер предназначен для текстового редактора Nota. Нас интересует линияMimeType=; как видите, читаетсяMimeType=text/plain;это означает, что Nota связана с любым текстовым файлом.
[Desktop Action FirejailProfile]
Exec=firejail --env=DESKTOPINTEGRATION=appimaged --private --appimage /Applications/nota
Name=Run without sandbox profile
TryExec=firejail
[Desktop Entry]
Categories=Qt;KDE;Utility;TextEditor;
Comment[es_MX]=Text editor
Comment=Text editor
Exec=/home/uri/Applications/nota-v2.2.0-stable-amd64.AppImage
GenericName[es_MX]=Text Editor
GenericName=Text Editor
Icon=nota
Keywords=text;editor;
MimeType=text/plain;
Name[es_MX]=Nota
Name=Nota
Path=
StartupNotify=true
Terminal=false
TerminalOptions=
TryExec=/Applications/nota
Type=Application
X-DBUS-ServiceName=
X-DBUS-StartupType=
X-KDE-SubstituteUID=false
X-KDE-Username=
Чтобы узнать, что вставить в эту строку для созданной вами программы запуска рабочего стола, вы можете сделать следующее.
file -b --mime-type file.stl
Эта команда сообщит вам, что такое тип пантомимы. Например, вывод может бытьapplication/slaдля тебя.stlфайлы.
Таким образом, строка в панели запуска вашего рабочего стола будет выглядеть так:MimeType=application/sla;и это так, что программа запуска рабочего стола будет зарегистрирована для запуска всего, что находится вExec=и откройте этот тип пантомимы.
В качестве альтернативы вы, вероятно, захотите извлечь вышестоящий лаунчер рабочего стола внутри AppImage и отредактировать его соответствующим образом, как я описал здесь.
Далее отредактируйте~/.config/mimeapps.listи добавить:
application/sla=YourApp.desktop;