Наличие моего пакета Python для установки ярлыков в меню Пуск - PullRequest
5 голосов
/ 28 апреля 2010

Я делаю пакет Python, который устанавливается вместе с файлом setup.py с помощью setuptools.

Пакет включает в себя графический интерфейс, и когда он установлен на компьютере с Windows, я хочу, чтобы установка создала папку в меню «Программы» в меню «Пуск» и создала ярлык для скрипта pyw, который запустит GUI. (pyw думаю работает на всех платформах, верно?)

В Mac и Linux я бы хотел, чтобы этот ярлык был добавлен в те Mac и Linux, которые параллельны меню «Пуск».

Как мне это сделать?

Ответы [ 5 ]

2 голосов
/ 28 апреля 2010

Системы Linux обычно не используют расширение .pyw для исполняемых приложений (хотя вы можете, если хотите). Традиционно сценарий python (или perl, bash и т. Д.) В Linux не имеет расширения имени файла, имеет разрешения на выполнение и начинается с «волшебной» строки «#! / Usr / bin / python». «#!» сообщает ОС, что это скрипт, требующий интерпретатора, и следующий путь обозначает интерпретатор для использования.

Что касается добавления ярлыка на рабочий стол, то freedesktop.org содержит спецификации того, как работают меню для современных настольных систем Linux. В частности, тот, который вас больше всего заинтересует, предназначен для записей рабочего стола , хотя тот, что в Генерация меню , также может представлять интерес.

2 голосов
/ 29 апреля 2010

InnoSetup позволяет создавать ярлыки в меню запуска Windows. Вы можете добавить даже значок удаления.

Соответствующие разделы файла innosetup:

UninstallDisplayIcon={app}\myico.ico
[Icons]
Name: "{group}\MyPrograms"; Filename: "{app}\miexe.exe" ;WorkingDir: "{app}"; Comment: "miexe program"

для Mac и Linux не могу помочь

0 голосов
/ 04 августа 2018

Для Windows Conda использует menuinst https://github.com/ContinuumIO/menuinst

0 голосов
/ 29 апреля 2010

Поскольку setuptools, похоже, не дает легкого решения этой проблемы, я решил отказаться от этой идеи, пока не выпущу свое приложение с py2exe / InnoSetup.

0 голосов
/ 28 апреля 2010

Посмотрите, как это делает скрипт после установки для pywin32 (поиск ярлыка). Не уверен насчет Mac / Linux.

...