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

Я связываю свое Java-приложение как пакет Debian, и мне нужно, чтобы мое приложение запускалось при запуске. Вот моя структура пакета DEB:

   +
   |
   +--+control
   |  |
   |  +--+control
   |  |
   |  +--+md5sums
   |  |
   |  +--+postinst
   |  |
   |  +--+prerm
   |
   +--+data
      |
      +--+usr
         |
         +--+share
            |
            +--+applications
            |  |
            |  +--+MyApp.desktop
            |
            +--+myapp
               |
               +--+bin
               |  |
               |  +--+application.sh
               |
               +--+application.jar

Мой файл Jar выполняется с использованием скрипта application.sh. Мой сценарий установки postinst содержит только:

#!/bin/sh
ln -s /usr/share/myapp/bin/application.sh /usr/bin/myapp

Я хотел бы выполнить сценарий myapp, когда пользователь входит в систему. Что мне нужно добавить в этот скрипт, чтобы приложение запускалось автоматически.

Спасибо.

(Это мой первый раз, когда я собираю пакеты DEB, и то, что я узнал до сих пор, было копание в некоторых проектах на SourceForce, но я все еще немного потерян с функцией запуска при запуске.)


person Mridang Agarwalla    schedule 04.07.2012    source источник
comment
При запуске, при входе в систему или при графическом входе?   -  person Ignacio Vazquez-Abrams    schedule 04.07.2012
comment
При графическом входе. Это приложение в системном трее.   -  person Mridang Agarwalla    schedule 04.07.2012


Ответы (1)


Спецификация автоматического запуска настольных приложений

Поместив файл приложения .desktop в один из каталогов Autostart, приложение будет автоматически запускаться во время запуска среды рабочего стола пользователя после входа пользователя в систему.

person Ignacio Vazquez-Abrams    schedule 04.07.2012
comment
Таким образом, файл .desktop похож на файл ярлыка Windows. Означает ли это, что необходимо скопировать файл .desktop в каталог applications, а также в каталог $XDG_CONFIG_DIRS. Копирование в каталог $XDG_CONFIG_DIRS приведет к его автозапуску, а копирование в каталог applications вызовет его появление в меню. Я прав, Игнасио? Спасибо. - person Mridang Agarwalla; 04.07.2012
comment
Правильный. Но они не обязательно должны быть одинаковыми. - person Ignacio Vazquez-Abrams; 04.07.2012
comment
Извините, что снова беспокою вас, Игнасио, но в сценарии postrm мне нужно удалить оба файла .desktop или они каким-то образом удаляются автоматически? (Это мог бы быть отдельный вопрос, но он показался тривиальным.) Еще раз спасибо. - person Mridang Agarwalla; 04.07.2012
comment
Я ничего не знаю о том, как работают файлы .deb. Я бы подумал, что они будут просто частью полезной нагрузки пакета, поэтому вам не нужно ничего делать в любом случае. - person Ignacio Vazquez-Abrams; 04.07.2012