O arquivo da área de trabalho para o meu aplicativo python gtk3 não carrega o aplicativo

1

Estou criando um aplicativo python GTK3 para o Ubuntu. No momento em que o aplicativo é instalado nos seguintes locais:

Na pasta / opt / NSTrain , em que NSTrain é o nome do meu aplicativo. A pasta NSTrain possui os arquivos executáveis .py, seus ícones, arquivos gui e outros arquivos da biblioteca. Ele também instala um arquivo .desktop na pasta / usr / share / applications .

Aqui está o conteúdo do meu arquivo .desktop,

[Desktop Entry]
Name=NSTrain
X-GNOME-FullName=NSTrain
Comment=Train Scheduler Application
Categories=GNOME;Utility;
Exec=/opt/NSTrain/nstrain.py
Icon=/opt/NSTrain/app-icon.png
Terminal=false
Type=Application

Eu vejo meu aplicativo na lente do aplicativo com o ícone apropriado. No entanto, quando clico nele, nada acontece. O arquivo nstrain.py é executável e funciona bem quando eu o executo a partir do terminal usando o comando ./nstrain.py .

Qual é o problema aqui?

    
por nik90 22.05.2012 / 00:24

1 resposta

4

O seu aplicativo assume que você está iniciando a partir da pasta /opt/NSTrain/ ? Se assim for, adicione a linha

Path=/opt/NSTrain/

para o seu arquivo .desktop. Isso diz ao Unity (ou ao Gnome Shell ou a qualquer programa que você esteja usando para iniciar seu aplicativo) para iniciar seu programa na pasta especificada.

Sem essa linha, seu aplicativo é iniciado a partir da pasta de trabalho atual do Unity (ou qualquer outro), que geralmente é sua pasta pessoal. Isso quebrará seu aplicativo se ele assumir que ele foi iniciado a partir de /opt/NSTrain/ e, portanto, tentará abrir um arquivo como /opt/NSTrain/somefile.dat , como somefile.dat .

Se isso não ajudar, inicie seu aplicativo em um Terminal da sua pasta pessoal usando /opt/NSTrain/nstrain.py e poste qualquer mensagem de erro que você obtiver.

    
por Florian Diesch 22.05.2012 / 00:46