Водич за паковање Убунту

Документација

Паковање са Дебхелпером


[Важно]

Захтеви: Захтјеви из секције под називом "Паковање од нуле" плус дебхелпер и дх-маке

Као пакер, ретко ћете креирати пакете од огреботине као што смо урадили у претходном одељку. Као што можете замислити, многе задатке и информације у датотеки правила , на примјер, су уобичајене за пакете. Да бисте олакшали и ефикасније паковање, можете користити дебхелпер да помогнете овим задацима. Дебхелпер је скуп Перл скрипти (префикс са дх_ ) који аутоматизују процес изградње пакета. Са овим скриптама, изградња Дебиан пакета постаје сасвим једноставна.

У овом примеру, поново ћемо направити пакет ГНУ Хелло, али овог пута ћемо упоређивати наш рад са пакетом Убунту хелло-дебхелпер . Опет, креирајте директориј у коме ћете радити:

мкдир ~ / хелло-дебхелпер цд ~ / хелло-дебхелпер вгет хттп://фтп.гну.орг/гну/хелло/хелло-2.1.1.тар.гз мкдир убунту цд убунту

Затим добијте Убунту изворни пакет:

апт-гет соурце хелло-дебхелпер цд ..

Као и претходни пример, прва ствар коју треба да урадимо је да распакујемо оригинални (узводни) тарбалл.

тар-кзвф хелло-2.1.1.тар.гз

Уместо копирања упстреам тарбалла на хелло_2.1.1.ориг.тар.гз као што смо то учинили у претходном примеру, дозволићемо дх_маке да ради за нас. Једина ствар коју треба да урадите је да преименујете изворни директоријум, тако да је у облику <пацкагенаме> - <версион> гдје је пакетагенаме мала слова. У овом случају, само унтарринг тарбалл производи исправно назван изворни директоријум, тако да можемо да се преселимо у њега:

цд хелло-2.1.1

Да би створили почетну "дебианизацију" извора користићемо дх_маке .

дх_маке -е иоур.маинтаинер@аддресс -ф ../хелло-2.1.1.тар.гз

дх_маке ће вам онда поставити низ питања:

Тип пакета: један бинарни, вишеструки бинарни, библиотека, модул кернела или цдбс? [с / м / л / к / б] с
Име суставе: Цаптаин Пацкагер Е-маил адреса: пацкагер@цоолнесс.цом Датум: Тху, 6 Апр 2006 10:07:19 -0700 Име пакета: хелло Верзија: 2.1.1 Лиценца: празно Тип пакета: Један Хит <ентер> на потврдите: Унесите


[Опрез]

Једноставно покрените дх_маке-е . Ако га поново покренете након што то учините први пут, неће радити исправно. Ако желите да је промените или направите грешку, уклоните изворни директоријум и поново унесите тарифу изнад низа. Затим можете преселити у изворни директоријум и покушати поново.

Трчање дх_маке-е чини две ствари:

Програм Хелло није врло компликован, а као што смо видели у одељку под називом "Паковање од нуле", паковање не захтева много више од основних датотека. Због тога, уклонимо датотеке .ек :

цд дебиан рм * .ек * .ЕКС

За здраво , и ти нећеш

* Лиценца

* Индекс Водича за паковање Убунту

требају РЕАДМЕ.Дебиан (датотека РЕАДМЕ за одређене проблеме са Дебиан-ом, а не РЕАДМЕ програма), дирс (користе се од дх_инсталлдирс за креирање потребних директорија), доцс (користи се од дх_инсталлдоцс за инсталирање програмске документације) или инфо (користи од дх_инсталлинфо за инсталирање инфо фајл) у дебиан директоријум. Више информација о овим датотекама потражите у одељку под називом "дх_маке пример датотеке".

У овом тренутку, у дебиан директоријуму требали би бити само датотеке цхангелог , цомпат , контрола , ауторских права и правила . Из секције под називом "Паковање од нуле", једина датотека која је нова је компатибилност , што је датотека која садржи дебхелпер верзију (у овом случају 4) која се користи.

У овом случају ћете морати мало да подесите променљиву верзију како бисте одразили да је овај пакет назван хелло-дебхелпер, а не само здраво :

хелло-дебхелпер (2.1.1-1) даппер; хитност = ниска * Почетно издање - Капетан Пацкагер <пацкагер@цоолнесс.цом> Тху, 6 Апр 2006 10:07:19 -0700

Користећи дебхелпер , једине ствари које требамо промијенити у контроли су име (замјенити хелло за хелло-дебхелпер ) и додавање дебхелпер (> = 4.0.0) у поље Буилд-Депендс за изворни пакет. Убунту пакет за хелло-дебхелпер изгледа:

Ми можемо копирати датотеку ауторских права и постинст и прерм скрипте из Пакета пакета Убунту хелло-дебхелпер , јер се нису променили од одељка под називом "Паковање од сребра". Такође ћемо копирати датотеку правила како бисмо могли да га прегледамо.

цп ../../убунту/хелло-дебхелпер-2.1.1/дебиан/цопиригхт. цп ../../убунту/хелло-дебхелпер-2.1.1/дебиан/постинст. цп ../../убунту/хелло-дебхелпер-2.1.1/дебиан/прерм. цп ../../убунту/хелло-дебхелпер-2.1.1/дебиан/рулес.

Последња датотека коју требамо погледати јесте правила , где се може видети моћ дебелерских скрипти. Дебелерска верзија правила је нешто мања (54 реда насупрот 72 линије у верзији из секције под називом "правила").

Верзија дебелпера изгледа:

#! / уср / бин / маке -ф пакет = хелло-дебхелпер ЦЦ = гцц ЦФЛАГС = -г -Валл ифек (, $ (финдстринг ноопт, $ (ДЕБ_БУИЛД_ОПТИОНС))) ЦФЛАГС + = -О2 ендиф #екпорт ДХ_ВЕРБОСЕ = 1 чиста : дх_тестдир дх_цлеан рм -ф буилд - $ (МАКЕ) -и дистцлеан инсталл: изградити дх_цлеан дх_инсталлдирс $ (МАКЕ) префик = $ (ЦУРДИР) / дебиан / $ (пакет) / уср \ мандир = $ (ЦУРДИР) / дебиан / $ (пакет) / уср / схаре / ман \ инфодир = $ (ЦУРДИР) / дебиан / $ (пакет) / уср / схаре / инфо \ инсталл буилд: ./цонфигуре --префик = / уср $ (МАКЕ) ЦЦ ​​= "$ (ЦЦ) "ЦФЛАГС =" $ (ЦФЛАГС) "

тоуцх буилд бинари-индеп: инсталл # Не постоје фајлови независни од архитектуре који ће бити уплоадовани # генерисани овим пакетом. Ако их има било би направљено овде. бинари-арцх: инсталирати дх_тестдир -а дх_тестроот -а дх_инсталлдоцс -а ВИЈЕСТИ дх_инсталлцхангелогс -а ЦхангеЛог дх_стрип -а дх_цомпресс -а дх_фикпермс -а дх_инсталлдеб -а дх_схлибдепс -а дх_генцонтрол -а дх_мд5сумс -а дх_буилддеб -а бинарни: бинарни-индеп бинарни- арцх .ПХОНИ: бинари-бинари-арцх бинари-индеп цлеан цхецкроот

Обратите пажњу на то да задаци попут тестирања ако сте у исправном директоријуму ( дх_тестдир ), осигуравате да сте изградили пакет са привилегијама роот ( дх_тестроот ), инсталирање документације ( дх_инсталлдоцс и дх_инсталлцхангелогс ) и чишћење након изградње ( дх_цлеан ) се обрађује аутоматски . Многи пакети који су много компликованији него хелло , правила не садрже веће датотеке, јер дебелпер скрипте обрађују већину задатака. За потпуну листу дебхелпер скрипта, погледајте одељак под називом "Листа скрипте дебхелпер ". Такође су добро документовани на својим одговарајућим страницама човека . Корисна је вјежба за читање странице човјека (добро је написано и не дуго) за сваку хелпер скрипту кориштену у горњем правописном фајлу.