Недокументированное приложение в Thinstation

В комментарии к предыдущей публикации было отмечено, что не хватает интриги, скандалов и расследований, сегодня их у меня есть…

Буквально с утра пораньше пришла по мылу просьба помочь в настройке веб-киоска на package firefox_lowmem, в процессе запустил поиск файла настроек пакета firefox — prefs.js, да на уровень ошибся папкой, т.е. искал в папке packages и наткнулся на этот файл в пакете openkiosk.
Как оказалось, ещё с марта 2014 года этот пакет присутствует в Thinstation, а о нем нигде ничего не написано, стало интересно…
Первым делом читаю ридми, иду по ссылке и вижу:

Open Kiosk кросс-платформенный веб-браузер киоска на основе Mozilla Firefox, который может легко устанавливаться и использоваться, чтобы защитить компьютер для использования в качестве общедоступного терминала. Это — полное решение для любой установки киоска. Это программное обеспечение выпущено под MPL, «как есть» без гарантии или поддержки.

Open Kiosk в настоящее время развернут в школах, университетах, библиотеках, больницах, аэропортах, отелях, правительствах и компаниях в мировом масштабе.

Мировой масштаб, конечно, улыбнул. Ни форума, ни вики, да и FAQ до смешного никакой, последнему релизу больше года.

Но мы не привыкли отступать… Решил посмотреть, что это и как оно…
В том же ридми описан процесс установка и опции настроек.

Пишем в build.conf:

package openkiosk

в build.urls прописываем версию посвежее:

openkioskurl https://www.mozdevgroup.com/dropbox/okcd/2.5/openkiosk-2.5.3-2014-03-12.tar.bz2


В thinstation.conf.xxx пишем:

SESSION_0_TYPE=openkiosk
SESSION_0_AUTOSTART=On
SESSION_0_OPENKIOSK_HOMEPAGE=http://thinstation.pro

ну и теперь самое интересное:

SESSION_0_OPENKIOSK_ADMIN_PASS="c7bd4d096ec866bd58aca387cefe8d35" # пароль администратора для входа в меню настроек через Shift+F1
SESSION_0_OPENKIOSK_TOOLBAR_ON="true" # разрешаем, если нужна, "панель управления"
SESSION_0_OPENKIOSK_TOOLBAR_BUTTONS="unified-back-forward-button,reload-button,stop-button,home-button,urlbar-container,print-button,zoom-control,reset-container,navigator-throbber" # что будет на панели управления - адресная строка, кнопки: вперёд-назад, перезагрузка страницы и т.п.
SESSION_0_OPENKIOSK_RESET_TIMER="5" # время бездействия в минутах, после которого загрузится домашняя страница
SESSION_0_OPENKIOSK_WHITELIST_URL="http://thinstation.pro/whitelist.txt" # список разрешённых адресов

пароль админа нужно писать в виде хэша, обработав свой пароль через:

echo '<?php echo md5(base64_encode("newpass")); ?>' | php

Выше в примере пароль 1q2w3e4r.
Самое, на мой взгляд, вкусное — список разрешённых ресурсов, который можно разместить на веб-сервере и править по мере необходимости, пример заполнения в etc/openkiosk/profile_template/whitelist.txt

Собрал-запустил, даже шустренько так работает, оно и понятно — Firefox 19.0.2, вот только печалька — пароль и список не работают…

Приложением никто не пользуется, форума-вики нет, давай разбираться сам, косяки нашлись быстро:

  • в файле инициализации пакета etc/init.d/openkiosk.init в 50 строке нет подчёркивания в переменной $SESSION_'$x'_OPENKIOSK_ADMINPASS меняем на $SESSION_'$x'_OPENKIOSK_ADMIN_PASS
  • там же в 80 строке убираем опцию -N, в Thinstation wget её не понимает.


Собираю-загружаю и всё работает, скорая помощь оказана, profit…

openkiosk

© Habrahabr.ru