Регистрация автономного приложения в панели запуска приложений KDE

Регистрация автономного приложения в панели запуска приложений KDE

Во-первых, я использую Kubuntu 12.04.

Я только что скачал и распаковал автономную установку некоторого программного обеспечения (Intellij's Phpstorm IDE, но я не думаю, что это имеет значение). Я скопировал распакованный каталог в свой /optкаталог с помощью sudo.

Я могу запустить основной скрипт оболочки из командной строки без использования sudoи без каких-либо проблем.


Я хотел бы запустить приложение из своего Application Launcher, поэтому я запустил Edit Applications...приложение из значка Launcher и добавил путь к основному скрипту оболочки в новую запись ( /opt/PhpStorm-111.344/bin/phpstorm.sh) и сохранил его. Всякий раз, когда я нажимаю на недавно добавленную запись, ничего не происходит, приложение не запускается. Я виделэтот вопрос о регистрации приложений в kde, и я не думаю, что это применимо к данной ситуации, поскольку именно это и Edit Applications...предполагается в диалоге (я так думаю).

Так что я упускаю? Нужно ли мне указать другой способ запуска команды в диалоговой записи? Это .desktopпроблема файла? Что-то еще?

Я выполнил команду /opt/PhpStorm-111.344/bin/phpstorm.shизALT+F2 бегатьbox , вызывая терминал. Я получил сообщение, жалующееся на то, что $JAVA_HOMEпеременная не может быть найдена.

Теперь у меня действительно есть $JAVA_HOMEнастройка переменной окружения в моем .bashrcфайле, и ее можно увидеть из echo $JAVA_HOMEкоманды. Опять же, я могу запустить приложение без проблем, если просто открою терминал и запущу оттуда скрипт оболочки, так что переменная $JAVA_HOMEбудет видна в этом контексте. Я выходил из системы, входил снова и запускал source ~/.bashrc, и ни то, ни другое не помогает.

Теперь я думаю, что это какая-то проблема с правами пользователя на доступ к $JAVA_HOMEпеременной, которая мешает ее запуску.

Какие-либо предложения?

решение1

В зависимости от того, как настроен ваш менеджер display/xsession, ~/.bashrcон может не быть получен до startkdeвызова, поэтому, если вы настраиваете его именно там $JAVA_HOME, то на вашем рабочем столе KDE его может не увидеть ничто.

Полезно, startkdeчто настроен на источник *.shиз каждого каталога в kde4-config --path lib | tr : '\n' | sed -n -e 's,/lib[^/]*/,/env/,p'. Скорее всего, он содержит ~/.kde4/envили что-то подобное, поэтому, если вы хотите, чтобы переменная присутствовала на всем сеансе KDE, просто поместите exportтуда скрипт оболочки с .

решение2

У меня есть простой обходной путь, включающий скрипт из 2 строк. Он просто повторно экспортирует $JAVA_HOMEпеременную в соответствующий путь, а затем вызывает основной скрипт оболочки приложения. Повторное указание KDE Application Launcher на этот новый скрипт запускает приложение, как и ожидалось.

Я все еще не уверен, зачем мне это нужно, так как я могу ясно видеть правильное $JAVA_HOMEопределение переменной вне контекста моего придуманного скрипта. Так что если кто-то может пролить свет на то, почему это может происходить, я с радостью отмечу это как подходящий ответ на этот вопрос.

Связанный контент