Pull to refresh
64.35
ГК ICL
Цифровые технологии для бизнеса

Step-by-step: подготовка инсталляционных пакетов Mac OS. Часть первая

Reading time3 min
Views8.9K
Аналитики Gartner говорят, что доля Mac платформы в корпоративном секторе растет год от года. Поэтому вопрос централизованного управления Mac пакетами в корпоративных средах становится все более актуальным. Каковы преимущества использования централизованного управления ПО? Среди них:

  1. возможность устанавливать приложения на большое количество клиентов с едиными настройками;
  2. минимизация количества проблем и инцидентов с ПО за счет применения единых стандартов подготовки установочных пакетов;
  3. установка инсталляционных пакетов не требует действий от пользователя и каких-либо дополнительных привилегий.

Тема управления ПО достаточна обширна. Выше приведены лишь наиболее яркие и бытовые примеры. Поэтому в нашей компании подготовка инсталляционных пакетов Mac OS предоставляется в качестве отдельного сервиса.

План первой части статьи:

  1. Форматы, типы пакетов. В данном разделе рассмотрим разновидности пакетов и их структуру.
  2. Краткий обзор наиболее популярных инструментов для подготовки инсталляционных пакетов.

(под катом много фото)


1. Форматы, типы пакетов

Рассмотрим один из самых известных типов payload package:

image

Archive.bom – бинарный файл, который содержит список файлов для всего проекта. Для просмотра данных можно использовать Isbom в terminal.

Archive.pax.gz – отображается как pax архив и сжат с gzip tool.

Info.plist – xml файл содержащий настройки по умолчанию для всего пакета. Для просмотра содержимого используется Property list Editor tool, также можно просмотреть файл c текстовым редактором.

PkgInfo – простой текстовый файл, содержащий файл и тип создания всего пакета.

Resources – папка языкового пакета, содержащая простые строки локализации.

Meta-package
Содержит несколько payload пакетов в одном инсталляционном пакете (Contents/Packages). Meta package не устанавливает файлы сами по себе. Вместо этого он содержит в себе компоненты в виде пакетов. В Meta package можно установить отдельный package, который необходим. Meta package удобен для больших программных продуктов, когда имеется большое количество файлов, которое необходимо распространять.

image

Flat-package
Flat-пакет использует структуру отличную от предыдущих. Во-первых, Contents не содержит info.plist и PkgInfo. Во-вторых, сохраняет свои payload и resource на корневом уровне. И distribution.dist файл это просто Distribution.

Flat-пакет также использует более компактный формат для payload. Каждый payload имеет 3 файла. Bom файл занимает место Archive.bom. Payload файл заменяет Archive.pax.gz, а PackageInfo заменяет XML, PkgInfo. Flat-package хранит скрипты установки иначе. Pre-install, post-install action-ы стали payload action-ом. Payload состоит из главного имени пакета и тип action.

image

Bom – содержит список путей и файлов для всего проекта.

Payload – файлы запакованные в архив cpio.tgz.

PackageInfo – содержит информацию о пакете.

Distribution – описывает какие компоненты будут установлены на системе.

Resources – папка языкового пакета, содержащая простые строки локализации.

2. Краткий обзор инструментов для packaging

На сегодняшний день существует множество инструментов для создания package под Mac OS. Мы рассмотрим несколько наиболее известных:

Iceberg
Бесплатный инструмент разработанный Stéphan Sudre. Очень популярен среди Mac OS X администраторов. Можно создавать package и metapackage, не поддерживает создание flat-пакетов. Имеет дружелюбный интерфейс и прост в использовании, имеется подробная документация применения инструмента на сайте. Также есть поддержка создания пакетов из файловой системы через snapshot. На сегодняшний день доступная версия 1.2.9 (не обновлялась с 2010 года) может быть загружена.

Package Maker
Package Maker также может быть загружен с официального сайта Apple и считается одним из самых надежных и часто используемых из всех существующих инструментов. Microsoft, в том числе, отдает предпочтение этому инструменту и свои решения показывает в среде Package Maker. Инструмент входит в набор developer tool (XCode). Package Maker позволяет создавать Single Package, Metapackage и Distribution package. Особенностью данного инструмента является создание снимков (snapshot) файловой системы в определенный момент, что полезно, так как позволяет найти разницу в файлах. На Mac OS Package Maker находится в /Developer/Applications/Utilities.

Composer от JAMF Software
Удобный инструмент, который позволяет делать package следующих форматов: .pkg, .mpkg, .dmg. Также с его помощью можно делать снимки файловой системы для дальнейшего сравнения разницы. Он имеет хорошую документацию на английском. В свою очередь JAMF Software проводит тренинги и сертификацию для своих продуктов, и что немаловажно, существует форум, где можно найти множество советов по созданию пакетов в среде Composer. Данный инструмент является платным и на сегодняшний день стоит $99.95 (Commercial version) и $79.95 (Education version). Также можно скачать пробную версию заполнив форму request trial.

Во второй части статьи продемонстрируем, как создать пакет в среде Package Maker.

Автор: Eduard123
Tags:
Hubs:
Total votes 12: ↑11 and ↓1+10
Comments10

Articles

Information

Website
icl.ru
Registered
Founded
Employees
1,001–5,000 employees
Location
Россия