Registrando um aplicativo independente no Disparador de Aplicativos do KDE

2

Primeiro, estou usando o Kubuntu 12.04.

Acabei de baixar e descompactar uma instalação autônoma de algum software (o Phpstorm IDE do Intellij, mas não acho que isso importe). Eu copiei o diretório descompactado para o diretório /opt usando o sudo.

Eu posso iniciar o shell script principal a partir da linha de comando sem usar sudo sem problemas.

Gostaria de executar o aplicativo do meu Application Launcher , então, executei o aplicativo Edit Applications... do ícone do Launcher, adicionei o caminho ao script de shell principal em uma nova entrada ( /opt/PhpStorm-111.344/bin/phpstorm.sh ) e salvei-o. Sempre que clico na entrada recém-adicionada, nada acontece, o aplicativo não é iniciado. Eu vi esta pergunta sobre o registro de aplicativos no kde , e eu não acho que se aplica a esta situação, já que é o que o diálogo Edit Applications... deve fazer (eu acho).

Então, o que estou perdendo? Preciso especificar outra maneira de executar o comando na entrada da caixa de diálogo? Este é um problema no arquivo .desktop ? Algo mais?

Eu executei o comando /opt/PhpStorm-111.344/bin/phpstorm.sh da caixa ALT+F2 run , invocando um terminal. Eu retornei com uma mensagem reclamando que a variável $JAVA_HOME não pode ser encontrada.

Agora, eu realmente tenho uma configuração da variável de ambiente $JAVA_HOME no meu arquivo .bashrc , e isso pode ser visto em um comando echo $JAVA_HOME . Novamente, eu posso executar o aplicativo sem problemas se simplesmente abrir um terminal e executar o script de shell a partir dele, assim a variável $JAVA_HOME é vista nesse contexto. Eu fiz o logout e voltei a executar source ~/.bashrc , e nenhum deles parece ajudar.

Estou pensando que agora é algum tipo de problema de permissão do usuário para a variável $JAVA_HOME que está impedindo sua execução.

Alguma sugestão?

    
por Hari Seldon 14.04.2012 / 06:19

2 respostas

3

Dependendo de como o seu gerenciador de exibição / xsession está configurado, ~/.bashrc pode não ser originado antes que startkde seja chamado, portanto, se você estiver configurando $JAVA_HOME , nada na área de trabalho do KDE poderá ser visualizado .

Com ajuda, startkde está configurado para gerar *.sh de todos os diretórios em kde4-config --path lib | tr : '\n' | sed -n -e 's,/lib[^/]*/,/env/,p' . Isso provavelmente contém ~/.kde4/env ou similar, então se você quiser que uma variável esteja presente no KDE em toda a sessão, apenas solte um script de shell com um export lá.

    
por 14.04.2012 / 07:38
0

Eu tenho uma solução simples que envolve um script de 2 linhas. Ele simplesmente reexporta a variável $JAVA_HOME para o caminho apropriado e, em seguida, chama o script de shell principal do aplicativo. A substituição do Disparador de Aplicativos do KDE por esse novo script inicia o aplicativo conforme o esperado.

Ainda não sei ao certo por que preciso fazer isso, pois posso ver claramente a definição correta da variável $JAVA_HOME fora do contexto do meu script inventado. Então, se alguém puder esclarecer por que isso poderia estar ocorrendo, ficaria feliz em assinalar isso como a resposta apropriada para essa pergunta.

    
por 14.04.2012 / 07:07