Я хочу установить HTML-файл с JavaScript в качестве обоев на Linux. Я использую Openbox, как мне настроить его так, чтобы это был фон рабочего стола?
решение1
Я бы рекомендовал запустить облегченный браузер в фоновом режиме, как предлагалось ранее.
Этот браузердолжно быть идеальным, поскольку вы хотите использовать его только для установки одной страницы в качестве фона. Он использует WebKit, поэтому все должно отображаться просто отлично, и он достаточно легкий, чтобы запуск был мгновенным.
Если у вас есть gtk, webkit-gtk, python и привязки python для webkit-gtk (установлены по умолчанию во многих дистрибутивах и доступны в большинстве менеджеров пакетов), вы можете сохранить его в своем домашнем каталоге, например, browser.py
и добавить что-то вроде:
python ~/browser.py YOUR_WEBSITE & #browser.py requires http:// before remote urls
в ваш ~/.config/openbox/autostart, чтобы он запускался вместе с openbox.
Затем вы можете отредактировать ваш ~/.config/openbox/rc.xml, включив в <applications>
раздел что-то вроде этого:
<application class="Browser.py">
<decor>no</decor>
<maximized>yes</maximized>
<layer>below</layer>
<desktop>all</desktop>
</application>
Чтобы заработали сочетания клавиш, например «Wd», вам может потребоваться установить wmctrl (также доступен в большинстве менеджеров пакетов).
Этот скрипт должен перенести вас на ваш «рабочий стол», независимо от того, запущен он или нет (см.здесьдля оригинального скрипта; также может быть небольшая задержка между отображением вашего рабочего стола и тем, как скрипт сфокусирует ваш браузер, но она не настолько велика, чтобы мешать.):
#!/bin/sh
terminal_wm_class="Browser.py"
terminal_exec="python ~/browser.py YOUR_WEBSITE"
# no terminal started, so start one
if [ -z "`wmctrl -lx | grep Browser.py`" ]; then
$terminal_exec &
else
wmctrl -x -a $terminal_wm_class
fi;
Вы можете сохранить его в своем домашнем каталоге как что-то вроде showdesktop.sh, а затем заменить стандартную привязку клавиш Wd в ~/.config/openbox/rc.xml
<keybind key="W-d">
<action name="ToggleShowDesktop"/>
</keybind>
с
<keybind key="W-d">
<action name="ToggleShowDesktop"/>
<action name="Execute">
<command>~/showdesktop.sh</command>
</action>
</keybind>
Закончив работу, вы можете просто нажать A-Tab и вернуться в предыдущее окно.
(Если вы хотите сохранить макет окна, вероятно, проще всего переключиться на пустой рабочий стол с помощью CA-Left или W-F4 и т. д. (см. rc.xml по умолчанию), а затем вернуться обратно с помощью CA-Right или W-F1 и т. д., в зависимости от ваших сочетаний клавиш и текущего рабочего стола.)
Если по какой-либо причине вы перешли со стартовой страницы, вы можете просто закрыть окно (A-F4 по умолчанию) и нажать Wd, чтобы запустить showdesktop.sh и вернуться на домашнюю страницу.
Любой из них можно изменить или использовать отдельно от других, поэтому смело используйте то, что вам больше подходит.
решение2
Вы, возможно, не сможете использовать HTML-файл в качестве обоев как таковых, но вы, вероятно, можете подойти довольно близко, используя xsetroot -bitmap filename
... настроить cron-задание, которое будет отображать ваш HTML как растровое изображение каждую минуту, затем запустить xsetroot, чтобы сделать его фоновым изображением. Google дает мнеэтоткак HTML в растровый рендерер. Я не пробовал, так что будьте осторожны, загрузчик.
решение3
Вы не можете установить HTML-файл в качестве обоев. Вы можете либо:
- Сделайте снимок экрана вашего браузера и установите его в качестве обоев.
- Запустите браузер в фоновом режиме и переместите его на более низкий уровень, чем все остальные приложения.