|
ArcaOS 5.0 Русская версия
Пакет русификации ArcaOS 5.0 OS/2 давно доступен.
Поддерживается любая версия: 5.0, 5.0.1, 5.0.2.
eCo Software может выпустить и другие пакеты
(Немецкий, Голландский, Бразильский Португальский, Испанский, Шведский и т.д.)
|
Создание дистрибутива программы для инсталятора WarpIn |
TITLE: Создание дистрибутива программы для инсталятора WarpIn
DATE: 2010-09-01 00:44:57
AUTHOR: eCo Software
В ближайшие 2-3 года WarpIn останется главным инсталятором
программ eComStation.
- У каждого пользователя eComStation установлен WarpIn
(в eCS 1.2 еще были проблемы, начиная с eCS 1.2.5 WarpIn встроен в операционную систему корректно)
- В формат .wpi (WarpIn) запакованы сотни программ.
- Пользователи привыкли к WarpIn, управляют пакетами через его менеджер.
- Разработчики знают как паковать программы в .wpi
WarpIn в действии..
- Текущая версия WarpIn 1.0.19
- Скачать: ftp://ftp.netlabs.org/pub/warpin/
- Продукт компании Netlabs.org (Швейцария)
- Разработчики: Ulrich Mueller, .. - всего около 10 человек.
Источники информации?
Как запаковать свою программу в WarpIn? Где прочитать про формат текстового файла
.wis ?
Вся-вся информация написана в книжке -> (в каталоге WarpIN) view wpi_prog.inf,
какие переменные, какие ключевые слова, какие команды есть.
Также полезно вскрывать пакеты других разработчиков и смотреть что и
как они делают (wic -x package.wpi и wic -X package.wpi)
Рассмотрим основные варианты запаковки программ в формат WarpIn.
Сценарий 1: Программа + данные, создать 1 объект программы
- Есть: .exe + .ico + .dat файлы
- Задача: установить в каталог с программами и создать объект программы на рабочем столе.
Скачать демонстрационный пакет
(Для сборки .wpi дистрибутива достаточно запустить calcmi.cmd)
Все файлы программы лежат в подкаталоге и
они будут установлены в каталог программ x:\PROGRAMS\CalcMi
Теперь рассмотрим файл calcmi.wis в котором описан пакет,
вот каталог, куда устанавливать
(значение переменной раскроется и получится x:\PROGRAMS\CalcMi):
TARGET="$(WARPIN_DEFAULTAPPSPATH)\CalcMi"
На рабочем столе будет создан объект программы:
CREATEOBJECT="REPLACE WPProgram|CalcMi|<WP_TOOLS>|
EXENAME=$(1)\Calcmi.exe;STARTUPDIR=$(1);OBJECTID=<CALCMI_EXE>;"
Создание объекта 1:1 как в REXX.
(Много примеров работы с WPS,
и примерами создания объектов на рабочем столе можно найти в каталоге
x:\ecs\install\*.cmd на вашем компьютере)
Итак, первое правило: создавайте все объекты
с помощью CREATEOBJECT, а не вызовом дополнительного REXX-скрипта.
Тогда, если юзер захочет убрать программу из системы,
WarpIn сам удалит созданные при установке объекты.
Полезный совет:
В строчке PACKAGEID давайте будем писать версию программы
не в виде 2.1, а в виде штампа времени (YYYY\MM\DD): 2010\08\25
Сценарий 2: Драйвер + добавить загрузку в CONFIG.SYS
- Есть: драйвер .sys
- Задача: установить его в системный каталог, добавить загрузку в CONFIG.SYS
Скачать демонстрационный пакет
(Для сборки .wpi дистрибутива запустите x-wo.cmd)
Пример добавления строки в CONFIG.SYS
CONFIGSYS="SET C1=SDDGRADD,WOVERLAY | UNIQUE(SDDGRADD)"
Обратите внимание:
При установке драйвера обычно фиксируют целевой каталог, для этого пишем "FIXED":
..
INDEX=1 FIXED
..
Сценарий 3: .. + проверить наличие рантаймов или других пакетов
Проверять наличие рантаймов особенно важно для WPS программ,
иначе пользователь никогда не догадается, почему рабочий стол
не загружается.
Добавьте в секцию <PCK> .. </PCK> строчку вида:
REQUIRES="eCo Software\Runtime\Base\2008\03\02"
В кавычках указан PACKAGEID другого пакета (рантайма),
без его наличия в системе, установка вашей программы будет прерываться.
В примере выше написано, что программа требует наличия Base Runtime от
компании eCo Software, версия которого 2008/03/02 или выше.
Полезный совет: Обязательно укажите в документации системные требования
своей программы и список (URL) рантаймов, которые должны быть заранее установлены.
Сценарий 4: Два пакета в одном .wpi
Если в 1 .wpi пакет надо положить две программы (или две части одной программы),
которые должны быть установлены в 2 разных каталога, тогда
нужно описать два пакета <PCK> .. </PCK>
Скачать демонстрационный пакет
(Для сборки .wpi дистрибутива запустите x-About.cmd)
В этом примере .exe файл и его данные отправляются в 1 каталог,
а несколько файлов с данными - в другой каталог.
Сценарий 5: Установка особенных пакетов
Также советуем смотреть дистрибутивы:
Для установки Аудио I/O Proc |
mmioCast
|
Установка шрифтов |
droid
|
Сценарий 6: Установка сложных программ
Отдельно стОит рассмотреть установку OpenOffice.org и XWLAN Manager.
(присылайте свои комментарии к .wis файлам этих программ,
ваше имя будет указано в статье)
Ограничения WarpIn:
WarpIn имеет несколько ограничений:
- WarpIn не приспособлен для решения зависимостей, как RPM
(т.е. нет автоматической подкачки нужных библиотек и рантаймов).
- Он с трудом устанавливает огромные программы типа OpenOffice.org.
Используйте другой инсталятор.
- Не пытайтесь делать мультиязычные пакеты.
Собирайте пакеты только на английском языке.
- В WarpIn нет возможности предоставить пользователю какой-либо выбор,
кроме как выбор пакетов. Следовательно, создавать пакеты нужно с этим требованием.
Например, если есть различные конфигурации одной программы, отличающиеся
только создаваемыми ссылками на рабочем столе, в автозапуске и т.п.,
то уточнить у пользователя вариант установки будет непросто.
- Также нет возможности организовать на момент установки автоматическую
деинсталляцию других программ, например, более старых версий устанавливаемой
программы. И если название программы в новой версии немного изменилось,
то старая запись в БД варпина не будет затёрта.
В каких случаях программу надо паковать в .wpi?
WarpIn должен использоваться в случаях:
- Если надо прописать что-то в CONFIG.SYS (все драйверы),
- если программа должна иметь возможность де-инсталяции (все WPS-программы),
- если программа зависит от рантайма и нужны проверки (все портированные),
- если программа большая и сложная (OpenOffice.org),
- если ..
Думайте о пользователях! У них нет времени разбираться в текстовых инструкциях
и раскладывать файлы вручную.
Присылайте дополнения к этому тексту
a) Название сценария, b) текст с описанием сценария, c) ваше имя
через веб-форму
Дополнительная информация:
- Авторы текста: Eugene Gorbunoff, Yuri Larin (про ограничения)
Попробуй программу:
|
JRescuer/JUne - восстановление данных с JFS тома.
|
Комментарии: Joseph 2010-09-02 15:27:22 | Очень скудно.
Нет примера именно сложных пакетов.
Нет примера регистрации классов
Нет инструкции по выполнению сложных действий в процессе установки - у меня продукт помимо стандартных операций прописывает себя в несколько служебных конфигураций с помощью собственного рантайма - как это сделать? | Николай Колесников 2010-09-03 15:26:30 | Похоже, это первый обзор про warpin, для начала сойдёт. "Много буков". А мне интересно, как вызывать REXX скрипт? Как вызвать детект одной железки (detect.exe) и обработать код возврата из скрипта установки?
| Oliver Cremerq 2010-09-10 12:18:24 | Please use for repacking of "Microsoft Fonts Pack" the wis code from the new font-packages from Alex Taylor (on Hobbes).
For Example: droidfont_100.wpi | Improver 2010-09-13 08:55:51 | 2Joseph:
это можно сделать только вызовом EXECUTE="имя команды". Команда будет исполнена после установки пакета.
2Николай Колесников:
Можно внедрить REXX-скрипт в пакет инсталляции, но следует учитывать, что этот скрипт будет исполнятся ДО инсталляции программы, т.е. если скрипт будет вносить какие-либо изменения в конфигурацию системы, то они будут произведены, даже если пользователь только откроет пакет варпина.
А вызвать внешний REXX-скрипт можно при помощи той же команды EXECUTE="...", но вот только код возврата обработать уже не получится. |
Прокомментируйте эту статью (напоминаем, автор работал над текстом несколько недель, уважайте мнение других).
|