сценарий оболочки и Perl для сценария установки - насколько распространен Perl? - PullRequest
0 голосов
/ 13 апреля 2011

Я хочу создать скрипт установки в стиле npm (curl http://example.com/install.sh | sh), но у меня возникает вопрос: могу ли я написать скрипт на Perl?Насколько я знаю, Perl установлен по умолчанию, по крайней мере, на Ubuntu, RHEL & OS X - так что мне интересно в 2011 году, могу ли я написать shell и при этом быть достаточно универсальным для всех?Есть третий и лучший вариант?

Это будет предназначаться для окна разработки пользователя, а не для постановки или производства.

Что я хочу сделать, это использовать этот скрипт установки, чтобы легко загрузить среду разработки без необходимости создавать и поддерживать пакеты.Сценарий будет состоять из 4 шагов:

  1. проверить и убедиться, что git установлен
  2. использовать git для клонирования репозитория в cwd
  3. и сохранить элемент управления perlскрипт в / usr / bin, сделайте его исполняемым
  4. добавить некоторые переменные окружения (связанный пост: изменение переменной окружения linux через дистрибутив через скрипт? )

Вот и все.Я думаю, что это просто и достаточно универсально, чтобы использовать сценарий начальной загрузки, а не пакет.А моя целевая аудитория - локальная система разработки Unix или Linux.

Ответы [ 4 ]

3 голосов
/ 13 апреля 2011

Я думаю, что Perl достаточно вездесущ, чтобы вы могли написать в нем свой установщик.Shell все равно гораздо более неловко.

Возможно, вы захотите рассмотреть фактическую упаковку вашего приложения как deb или rpm или даже использование makeself вместо предоставления необработанного сценария.

3 голосов
/ 13 апреля 2011

Лучший вариант - просто использовать существующий, хорошо отлаженный и используемый (для разработки) набор инструментов для языка, на котором написано целевое приложение. Не делая этого, легкомысленно отбрасывает сетевые эффекты, полученные от окружающей их среды..

и т. Д.и т. д.

Установка из Интернета должна быть зарезервирована для удобства начальной загрузки системы пользователя в среду разработки.

Расскажите подробнее о своем программном обеспечении, чтобы получить меньше общих советов.


Редактировать: ответ на ваше приложение.

Я отговариваю вас от веб-установщика.Это не начальная загрузка инструмента установки, это простая установка программного обеспечения, и это должно быть сделано, например, с подклассом Module :: Build.

1 голос
/ 13 апреля 2011

Вот список различных дистрибутивов perl:

https://www.socialtext.net/perl5/distributions

Даже если Perl не поставляется в каждом маленьком неясном дистрибутиве, он просто удачно (или как-то еще) далеко. Однако вы можете столкнуться с проблемами из-за различных версий Perl.

0 голосов
/ 14 апреля 2011

Используйте что-то вроде:

perl -E "$( wget -q -O - http://host/intall.pl )"

Также вы можете использовать

`cmd`

вместо

$(cmd)

но в любом случае, двойные кавычки ваш выбор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...