Мне уже удалось создать файл .desktop, переместить его в / usr / share / apps и я могу запустить свое приложение из черточки, где появляется значок. Приложение по-прежнему запускается командой «python3 / path / to / script». Я подумал, что теперь, когда у меня есть стартер в папке приложений, было бы достаточно ввести его имя в командной строке (alt + f2), и он запустится, но он говорит, что команда неизвестна.
Где в системе нужно разместить файл, чтобы система знала, что имя приложения - это команда? Точно так же, как печатать «Firefox» и Firefox начинается ...
Вам нужно либо поместить скрипт в $ PATH, либо добавить путь, в котором находится скрипт, к вашему $ PATH (я бы порекомендовал первый). Чтобы избежать необходимости вручную выбирать интерпретатор для вызова, вы должны включить строку shebang в верхней части вашего скрипта, например #!/usr/bin/env python3
, и сделать скрипт исполняемым с помощью chmod a+x name_of_script
. Затем вы можете удалить расширение .py и вызвать его по имени в терминале.
Поместите его в путь или измените путь. Вы можете запустить echo $PATH
, чтобы увидеть свой путь. Если это только для одного пользователя, ~/bin/
является подходящим местом. В противном случае переместите файл в /usr/local/bin/
. Вам нужно будет сделать это как root.
Для того, чтобы он был непосредственно исполняемым (без запроса Python о его явном запуске):
chmod +x filename
#!/usr/bin/env python3
альтернативой для этого является создание сценария оболочки запуска, который запускается python /path/to/script.py
. Это избавит вас от необходимости перемещать ваш файл куда-то особенным, но применяются те же правила. Он должен быть установлен исполняемым, находиться на вашем пути и начинаться с шебанга #!/bin/sh
или #!/bin/bash
.