РПМ (рекурзивни акроним за РПМ пакет менаџер) је бесплатан и отворен извор систем за управљање пакетима за Линук. Иако је првобитно створен за употребу у Ред Хат Линук, сада се користи у многим Линук дистрибуцијама као што су ЦентОС, Федора, и ОпенСусе. Важно је да се назив РПМ односи на програм за управљање пакетима и .рпм
је формат датотеке.
У овом чланку ћемо објаснити писање РПМ датотека, показујући како лако створити једноставан изворни и бинарни софтверски пакет, на пример, ГНУ „Хелло Ворлд“ РПМ пакет у Федора Линук дистрибуција. Претпостављамо да имате основно разумевање унапред направљених РПМ пакета и процеса изградње бесплатног софтвера отвореног кода.
Почнимо са постављањем развојног окружења у Федора Линук покретањем следеће наредбе за инсталирање неопходних алата за прављење РПМ -ова.
$ судо днф инсталл федора-пацкагер @девелопмент-тоолс.
Затим додајте свој непривилеговани налог у поље „ругати се'Група на следећи начин (заменити
тецминт са вашим стварним корисничким именом). Ово ће вам омогућити да тестирате поступак изградње у чистом хрооту.$ судо усермод -а -Г лажни текмин.
Сада, направите РПМ буилд у вашем ~/рпмбуилд
директоријум и проверите верзију помоћу следећих команди. Приказаће листу поддиректоријума, који садржи изворни код пројекта, РПМ конфигурацијске датотеке и бинарне пакете.
$ рпмдев-сетуптрее. $ трее ~/рпмбуилд/
Ево чему је намењен сваки директоријум:
У овом кораку морате да преузмете изворни код (такође познат као „Узводно”Извор) пројекта Хелло Ворлд који пакујемо у ~/рпмбуилд/ИЗВОР именик са следећим вгет команда.
$ цд ~/рпмбуилд/ИЗВОРИ. $ вгет http://ftp.gnu.org/gnu/hello/hello-2.10.tar.gz -П ~/рпмбуилд/ИЗВОРИ.
Затим, конфигуришимо РПМ пакет помоћу а .спец
датотеку (назовимо је здраво.спец
у овом случају) у ~/рпмбуилд/СПЕЦС именик, користећи рпмдев-невспец програм.
$ цд ~/рпмбуилд/СПЕЦС. $ рпмдев-невспец здраво. $ лс.
Затим отворите здраво.спец
датотеку користећи свој омиљени уредник.
$ вим хелло.спец.
Подразумевани шаблон би требао изгледати овако:
Име: здраво. Верзија: Издање: 1%{? Дист} Резиме: Лиценца: УРЛ: Извор0: БуилдРекуирес: Рекуирес: %десцриптион %преп. %аутосетуп %буилд. %цонфигуре. %маке_буилд %инсталл. рм -рф $ РПМ_БУИЛД_РООТ. %маке_инсталл %датотека. %лиценце адд-лиценсе-филе-хере. %доц адд-доцс-хере %дневник промена. * Уторак, 28. маја 2019. Аарон Кили.
Укратко објаснимо подразумеване параметре у а .спец
фајл:
рпм --цхангелог -к
.Сада уредите свој .спец
датотеку и унесите измене као што је приказано.
Име: здраво. Верзија: 2.10. Издање: 1%{? Дист} Сажетак: Програм „Хелло Ворлд“ из ГНУ лиценце: ГПЛв3+ УРЛ: http://ftp.gnu.org/gnu/%{name} Извор0: http://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz БуилдРекуирес: геттект Захтева (пост): инфо. Захтева (преун): инфо %опис Програмски пакет "Хелло Ворлд" %преп. %аутосетуп %буилд. %цонфигуре. учини %{маке_буилд} %инсталирањем. %маке_инсталл. %финд_ланг %{наме} рм -ф %{буилдроот}/ %{_ инфодир}/дир %пост. /сбин/инсталл-инфо %{_ инфодир}/ %{наме} .инфо %{_ инфодир}/дир ||: %преун. ако је [$ 1 = 0]; онда. /сбин/инсталл -инфо --делете %{_ инфодир}/ %{наме} .инфо %{_ инфодир}/дир ||: фи %филес -ф %{наме} .ланг. %{_ мандир} /ман1/хелло.1.* %{_ инфодир} /хелло.инфо.* %{_ биндир}/здраво %доц АУТОРИ ЦхангеЛог ВЕСТИ РЕАДМЕ ХВАЛА ТОДО. %лиценца ЦОПИИНГ %дневник промене. * Уторак, 28. маја 2019. Аарон Кили.
Приметићете да смо у горњој датотеци користили неке нове параметре који нису објашњени. Ови се зову макрои, користи се за прављење системских дозива дефинисаних РПМ -ом за постављање инсталационих путева за пакете. Због тога је обично пожељно да се ове стазе не кодирају тешко у датотекама спецификација, већ се за доследност користе исти макрои.
Следе макрои за изградњу РПМ -а и макрое са њиховим дефиницијама и подразумеваним вредностима:
Имајте на уму да за њих можете пронаћи вредности макрои у /usr/lib/rpm/platform/*/macros или се односе на Смернице за паковање: РПМ макрои.
Да бисте направили изворне, бинарне и пакете за отклањање грешака, покрените следећу наредбу рпмбуилд.
$ рпмбуилд -ба хелло.спец.
Након процеса изградње, изворни РПМ -и и бинарни РПМ -ови ће се креирати у ../СРПМС/
и ../РПМС/
директоријуме. Помоћу програма рпмлинт можете проверити и осигурати да ли су креиране датотеке спецификација и РПМ датотеке у складу са правилима дизајна РПМ:
$ рпмлинт хелло.спец ../СРПМС/хелло* ../РПМС/*/хелло*
Ако постоје грешке као што је приказано на горњој снимци екрана, исправите их пре него што наставите.
На крају, али не и најмање важно, употреба лажни програм да бисте проверили да ли ће изградња пакета успети у Федора ограниченом окружењу за изградњу.
$ моцк --вербосе ../СРПМС/хелло-2.10-1.фц29.срц.рпм.
За више информација погледајте Федора документацију: Креирање РПМ пакета.
То је све! У овом чланку смо објаснили како појачати ваш Федора систем да бисте креирали једноставан изворни и бинарни софтверски пакет. Такође смо показали како да креирате ГУН Хелло Ворд РПМ пакет. Користите доњи образац за повратне информације да бисте нам се обратили за било каква питања или коментаре.