Note: this wiki is no longer maintained. If you have any questions related to this wiki, please post them on the CrunchBang forums.


Перевод этой страницы?:

WIKI-RU DESKTOP HOWTO автоматический запуск приложений при старте openbox

это описание основано на вопросах, задаваемых на форуме. Думаем, оно будет вам полезно.

Что такое autostart.sh и как его редактировать?

autostart.sh — это сценарий, который openbox выполняет каждый раз при своём запуске. В нём могут быть размещены команды выполнения приложений, либо других сценариев, запускаемые при старте системы.

Вы можете редактировать autostart.sh прямо в директории /home/user/.config/openbox/autostart.sh, либо через пункт меню preferences>openbox>edit autostart.sh.

Синтаксис сценария

Синтакисиом сценария autostart.sh является по сути дела список команд, выполняемых в терминале.

# описание_команды
application_command &

первая строка в этой записи не выполняет никакого действия, а является всего лишь комментарием, описанием того действия, которое выполняет команда ниже. Здесь могут быть помещены описания каких-либо параметров, зачем и почему они нужны. Чтобы не забыть.

Вторая строка — по сути и есть команда, описанная строкой выше. В этом примере будет выполнена команда «application_command» без каких-либо параметров.

Амперсанд «&» в конце строки означает тот факт, что команда будет выполняться в фоне, что позволит Openbox перейти к выполнению следующей команды, не дожидаясь её окончания (которое могло бы и вовсе никогда не произойти).

Как насчёт того, что команда не выполняется?

Значит вы написали неверную команду. Попробуйте ввести в терминале ту же самую строку (без добавления «&»), она должна быть выполнена также, как если бы была записана в сценарии.

Я написал правильную команду!

Ну, значит она была выполнена, но результаты её работы не были выведены верно. Это значит, что вы должны выполнить эту команду несколькими секундами после выполнения остальных команд в сценарии. Что приводит нас к разделу…

The sleep invocation!

Some programs don't like to wake up at the same time as everybody else, just like some humans like to sleep longer than other people and gets grumpy if they're awoken too early, or before another program they depend on is ready. This is done by the sleep invocation. This is actually a quite well-named program, it delays the execution of a command by a certain amount of time(the program sleeps before it's awoken).

Например:

# команда application_command выполняется после 3 секундной паузы после выполнения сценария.
(sleep 3s && application_command) &
  • всё должно быть заключено в скобки, (кроме «&» в самом конце).
  • «sleep 3s» устанавливает задержку в 3 секунды.
  • «&&» makes everything written behind wait until the sleep invocation is run.
  • «application_command» executes the application as before.
  • The «&» in the end makes sure that it doesn't freeze, and also makes sure that all programs written beneath is not run after the sleep as well(faster startup).

Hmm, cool, can I just type in any script I want to run?

Yes you can, just see if you can execute it successfully from the terminal and everything is fine (though if you have some big heavy bastards it will slow down the startup).

Программы? У меня есть программы? Где?

Большинство системных программ находятся в папке «/usr/bin/», если вам требуется помощь по конкретному применению конкретной программы, наберите в терминале «man application_command» и вы увидите нечто, способное вам помочь.

И окончательная проверка работоспособности

Перезапустите компьютер, либо сессию.

 
ru/howto/autostart_programs.txt · Последние изменения: 2012/05/25 16:54 — machinebacon
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии:CC Attribution-Share Alike 3.0 Unported

Powered by DokuWiki. Hosted by Linode.
Copyright © 2010 CrunchBang Linux.
Proudly powered by Debian GNU/Linux.
Debian is a registered trademark of Software in the Public Interest, Inc.