LINUX.ORG.RU

RPM and environment variable

 ,


0

1

Привет.
Нужно сделать возможность контроля установки пакета с помощью переменной окружения, допустим, MYPACKAGE_INSTALL_PREFIX.
1. Как получить её в spec-файле?
2. Можно ли будет использовать не только в %postin, но и в %files?
3. Как использовать её в %postun? Будет ли где-то сохранено её значения с момента установки?
Спасибо.

cast Nxx, alpha

★★★★★

Последнее исправление: UVV (всего исправлений: 1)

возможность контроля установки пакета

Как получить её в spec-файле?

/0

Тебе контроль установки или контроль сборки?

P.S. PACKAGE, не PACKET.

tailgunner ★★★★★
()

возможность контроля установки пакета

А что именно?

dinn ★★★★★
()

Нельзя. Список файлов определяется в момент сборки.

Но, по-моему, у утилиты rpm есть ключ, который позволяет установить пакет в произвольный префикс.

Nxx ★★★★★
()

В секциях %pre, %post, %preun, %postun - sh-переменные работают как обычно ($VAR), то есть можно делать 'VAR=1 rpm -[Uie] file.rpm', что в принципе несложно проверить и самому. Остальные секции (%files, %build, %clean) имеют смысл только на этапе сборки, а не на этапе установки. Из них %files вообще не обрабатывается /bin/sh, и так что непонятно, чего ты хочешь добиться.

1) Если нужна установка в разные префиксы, то нужно делать relocatable rpm. 2) Если нужно гибко управлять набором устанавливаемых из пакета файлов, то нужно дробить rpm на подпакеты (subpackages, как -devel, -doc, -plugin-1, -plugin-2, ...).

Работа и с тем, и с другим освещена в соответствующих руководствах.

d_a ★★★★★
()
Ответ на: комментарий от tailgunner

Тебе контроль установки или контроль сборки?

Установки

P.S. PACKAGE, не PACKET.

Tnx, тормозил с утра (

UVV ★★★★★
() автор топика
Ответ на: комментарий от d_a

1) Если нужна установка в разные префиксы, то нужно делать relocatable rpm.

Да, это и нужно. Понял, буду разбираться на неделе, спасибо.

UVV ★★★★★
() автор топика
Ответ на: комментарий от UVV

Насколько я понял, в этом случае, если у меня есть что-то не из %{prefix}, то мне ручками нужно об этом позаботиться в %postin и %postun.

UVV ★★★★★
() автор топика
Ответ на: комментарий от UVV

Т.е. это меня не спасёт http://www.rpm.org/max-rpm/s1-rpm-reloc-building-relocatable.html

Я не знаю твоей задачи. Но, даже если relocatable пакет тебя спасает, это не имеет отношения к «контролю установки пакета с помощью переменной окружения» %)

tailgunner ★★★★★
()
Ответ на: комментарий от d_a

Я теперь сам задаюсь вопросом, чего хочет клиет...
Как я понял, он хочет влиять на префикс установки с помощью переменной окружения. Со-но вопрос, могу ли я подменить префикс relocatable package, скажем в %pre, переменной окружения, если она задана?
cast tailgunner

UVV ★★★★★
() автор топика
Ответ на: комментарий от UVV

Как я понял, он хочет влиять на префикс установки с помощью переменной окружения. Со-но вопрос, могу ли я подменить префикс relocatable package, скажем в %pre, переменной окружения, если она задана?

Нет (по крайней мере, насколько я знаю). Где-то на ЛОРе описывали трюк с RPM, вложенным в RPM, но я не могу найти это описание.

tailgunner ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.