- Debian
- X Window System
- LXDE
- * Nix-подібні системи
Доброго вам дня.
З'явилася в мене тут одна проблема, на перший погляд проста, але у мене ніяк не виходить її вирішити, навіть після активних пошуків в Гуглі.
Є Debian з LXDE (на Raspberry Pi, але це не суттєво) і є Node.js сервер, який з себе запускає xdotool (утилітка для імітації миші і клавіатури) при прийомі повідомлень. Відповідно, сервер цей повинен бути запущений з-під іксів, щоб xdotool отримала доступ до елементів LXDE.
Завдання - зробити автозапуск цього сервера при старті LXDE.
Що я вже спробував:
• Запускати як сервіс з init.d /. Марно, як я розумію, ці сервіси завантажуються незалежно від іксів
• Засунути команду запуску в
/.config/autostart/auto.desktop. Чи не працює, причина мені не ясна
• Зараз працює наступна схема: при старті LXDE запускаю відразу термінал, а в .bash_profile прописую запуск цього сервера. При запуску перевіряю змінну, створену спеціально для індикації роботи цього сервера, і якщо вона дорівнює нулю (значить сервер не запущено), виконую найпростішу команда xdotool version, та якщо похибка не випадає, значить ікси вже запущені і можна запускати сервер. Однак, здається мені, що все це дуже схоже на п'ятиколісний велосипед з атомної ракетою замість рами - хотілося б якось правильніше все це справа запускати ...
Відповідно питання - Як зробити автозапуск сервера тільки після повного завантаження LXDE?
$ Cat / etc / xdg / lxsession / LXDE / autostart
@lxpanel --profile LXDE
@pcmanfm --desktop --profile LXDE
@xscreensaver -no-splash
node /home/pi/storage/opt/LinuxControlDroid.server/LinuxControlDroid.js
node доданий в PATH, проте сервер не працює.
Тільки що подумав, що коли я після перезавантаження намагався підключитися - сервер був недоступний, і я запускав сам руками з терміналу, і він запускався без проблем, хоча повинен був лаятися на зайнятий порт (або ж я повинен був вміти підключитися до сервера відразу після перезавантаження , але xdotool не повинен був працювати) ... Може бути синтаксис невірний насправді
Дуже дивно, створив скрипт в домашній директорії test.sh.
#! / Bin / bash
`firefox`
прописав в / etc / xdg / lxsession / LXDE / autostart
@bash /home/user/test.sh
і у мене відразу відкрився браузер.
Ви точно завантажуєте LXDE?
Спробуйте перевірити подібним чином, швидше за все у вас помилка в скрипті десь.