LibreOffice в корпоративном секторе — к старту готов
Есть на Хабре такая хорошая статья за авторством frozer, в которой рассматривается развертывание (с помощью Active Directory) и использование LibreOffice (LO) в корпоративной среде.
Единственный минус статьи — только теоретический подход. Т.е. автор описывает что можно сделать для корпоративной интеграции LO, но практическая часть отсутствует, как таковая.
Я пытался узнать секреты и получить советы на официальном русскоязычном форуме LO, и вот что получил в ответ:
Есть самый эффективный путь.
Скомпильте из иисходников под себя. Или заплатите тому, кто это сделает.
Это явно не тот метод. В интернете информации тоже очень мало, поэтому будем восполнять пробелы.
Инструкция — под катом.
Инструментарий
Для редактирования msi-пакетов нам понадобится соответствующий инструмент. Здесь у нас есть выбор, использовать Orca из Windows SDK от Microsoft, либо искать альтернативы. Бесплатных редакторов с необходимыми возможностями довольно мало, но для себя я нашел InstEd. Возможностей бесплатной версии для наших нужд хватит сполна.
Подготовка к развертыванию в AD
Итак, у нас есть msi LibreOffice последней версии (на данный момент — 4.0.2). Сходу развернуть его через GPO в AD не получится, нас настигнет ошибка еще на стадии добавления пакета в политику:
Благо информация по решению этой проблемы в интернете есть. А баг висит до сих пор, правда со статусом NOTOURBUG (не наши проблемы, господа).
А решается это всё очень просто: открываем msi в редакторе (я буду брать в пример InstEd), далее в меню Tables — Summary Info… и в поле Languages видим простыню из всевозможных языков в виде их кодов. На же нужно её уменьшить, поэтому удаляем всё лишнее, оставляя к примеру только русский и английский (1033, 1049).
Сохраняем изменения и идём дальше.
В принципе, теперь можно развернуть LO, правда на клиентских машинах мы получим установленный офисный пакет с кучей языков, расширений, «быстрым запуском», включенным автоматическим обновлением. Следить за таким зоопарком довольно трудно.
Избавляемся от ненужного, оставляя нужное
В нашей организации мы придерживаемся следующего плана настройки пакета LO:
- Удаление всех ненужных языков, исключая русский и английский.
- Удаление всех расширений, словарей для всех языков, кроме русского и английского.
- Отключение автоматического обновления.
- Отключение «быстрого старта».
- Отключение расширения предварительного просмотра файлов в проводнике.
- Сопоставление типов файлов Microsoft Office с LO.
Немного пояснений:
- Автоматическое обновление в среде AD считаю не очень нужным, ибо разброс версий на клиентских ПК вызовет только хаос.
- Быстрый старт мы отключаем, потому что компьютеры довольно слабые, забивать автозагрузку лишними пунктами смысла нет.
- Расширение проводника отключаем, потому есть баг, когда проводник падает при попытке предварительного просмотра некоторых файлов.
Остальные пункты, я думаю, пояснять не нужно.
Я не призываю вас придерживаться этого же плана, здесь он рассмотрен скорее как типовой.
Убираем ненужные языки
Открываем msi пакет, идём в таблицу Feature и ищем там в колонке Feature все значения, подходящие по шаблону gm_Langpack_, который подразделяется еще на несколько:
gm_Langpack_Basis_
gm_Langpack_Brand_
gm_Langpack_Calc_
gm_Langpack_Draw_
gm_Langpack_Fonts_
gm_Langpack_Impress_
gm_Langpack_Math_
gm_Langpack_Resources_
gm_Langpack_Writer_
gm_Langpack_r_
на конце каждого из значений стоит обозначение языка, к примеру gm_Langpack_Math_uz или gm_Langpack_Math_uk.
Здесь же можно сразу убрать ненужные файлы справки, за это отвечает значение gm_Helppack_Help_ с кодом языка на конце.
Значений очень много, и для каждого из них нужно поменять значение в столбце Level на 200 (не устанавливать). Для экономии времени, в конце поста я приложу файл трансформации с уже исправленными значениями.
Убираем словари
Аналогично с языками, ищем в таблице Feature параметры gm_r_ex_Dictionary_ с кодом языка на конце.
Убираем расширения
Аналогично, ищем в таблице Feature параметры gm_o_Extensions_ с обозначением расширения. Тут можно отключать по выбору.
Убираем расширения проводника Windows
Таблица Feature параметры gm_o_Winexplorerext и gm_o_Winexplorerext_x64.
Отключаем «быстрый старт»
Открываем таблицу CheckBox, и меняем значение параметра QUICKSTART в колонке Value в 0. Тем самым мы отключим быстрый старт на корню.
Отключаем автоматическое обновление
Открываем таблицу Property, ищем значение ISCHECKFORPRODUCTUPDATES, выставляем значение в 0.
В таблице Feature ищем параметр gm_o_Onlineupdate, выставляем Level в 200.
Сопоставление типов файлов Microsoft Office с LO
Открываем таблицу Property, ищем значение REGISTER_ALL_MSO_TYPES, выставляем значение в 1. Опционально, можно более тонко настроить сопоставление для каждого типа файлов отдельно.
Делаем «трансформер»
Для экономии времени в будущем рекомендую все изменения сохранять в файл трансформации. В будущем, его можно просто применять ко всем последующим релизам LO.
В InstEd это делается так: перед изменением любых параметров идём в меню Transform — New Transform и сохраняем будущий файл трансформации. После изменений не забудьте его сохранить.
Итог
Сохраняем наш пакет, создаем политику распространения в AD и наблюдаем за процессом.
По моим подсчетам, установка (с удалением старой версии) LibreOffice 4 на ПК средней конфигурации (2 ядра, 2Gb ОЗУ, HDD, KES 10) занимает от 10 минут для Windows XP и от 3-4 минут на Windows 7. Установленный LO занимает ~280Mb.
Приложения
Как и обещал, прикладываю готовый файл трансформации согласно озвученного плана.
Ссылки
При написании поста использовались следующие источники:
Блог «Тяжкий труд сисадмина».
Сайт WebGNUru
Wiki Opennet
Автор: Renaissance