Коришћење Девтоолс-а на Арцх Линук-у

Пакет Девтоолс је првобитно направљен за поуздане кориснике да правилно креирају пакете за званична спремишта. Међутим, могу га користити и обични корисници за прављење АУР пакета, или чак модификованих званичних пакета.

Погледајте овај водич за разумевање и коришћење АУР-а уопште, укључујући добијање PKGBUILD. Овај документ приказује само кораке специфичне за Девтоолс, ако је то метод који одаберете за компајлирање пакета.

Девтоолс одржава засебну чисту Арцх инсталацију, која се налази у /var/lib/archbuild/<TARGET>/root, која садржи само групе пакета baseи base-devel. Ако ова чиста инсталација не постоји, аутоматски је креира. Ако постоји, аутоматски ажурира све пакете у њему. Када се Девтоолс користи за прављење пакета, он почиње са копијом ове чисте инсталације, инсталира потребне пакете само у копију, копира изворни код у њега, обавља компајлирање и паковање у њему и само копира резултујући пакет, у идентичном облику од онога што се налази у званичним репозиторијумима.

Девтоолс има предности у односу на makepkgдиректно покретање . Једна од предности је да base-develи други пакети неопходни за компајлирање, али не и покретање, пакет који правите никада не заврше у вашем главном систему. То је мање пакета које треба периодично надоградити и због којих имате забринутости. Иако је превасходно корист за одржаваоце Арцх пакета, овај процес лако излаже када је PKGBUILDа нетачан, као што је ако се изостави зависност из листе коју је одржавалац већ инсталирао у њихов главни систем. Такође можете користити машину која је бржа у изради пакета и копирати резултујући пакет на спорију машину која ће га покренути, без загађивања инсталације грађевинске машине.

Главни недостатак је што је чисти роот увек ту, заузима око 800МБ, а обично је једна копија тамо која заузима више простора. Имајте на уму да ако се /var/lib/archbuild/користи Бтрфс, копија чистог корена почиње као Бтрфс снимак, тако да те датотеке не заузимају дупло већи простор. Чисти роот се увек чува тамо како би се избегло његово поновно инсталирање сваки пут када се прави пакет.

Превођење помоћу Девтоолс-а

Инсталирајте Девтоолс:

# pacman -S devtools

Да бисте направили пакет, Девтоолс укључује archbuild, али ово не покрећете директно. Такође укључује симболичне везе {extra, gnome-unstable, kde-unstable, staging, testing}-x86_64-build. Симболска веза која се користи за покретање биће прегледана од стране archbuild, да би се утврдило који циљ желите да користи. Може се покренути да се користе ова нестабилна/производна/тестна спремишта, која могу имати новије верзије од оних које су пуштене у званична спремишта. Да бисте користили званична спремишта за пакете који нису АУР, у директоријуму са PKGBUILD, на пример директоријумом који је направио git clone, покрените следеће:

$ extra-x86_64-build

Напомена: Остатак овог водича ће се једноставно односити на extra-x86_64-build.

Након што заврши са радом, биће следећи резултати:

  • /var/lib/archbuild/extra-x86_64/root- Чист цхроот , који је ажурирана инсталација само са групама пакета baseи base-devel.
  • /var/lib/archbuild/extra-x86_64/<USERNAME>- Ово ће садржати цхроот за изградњу . Ово је копија чистог цхроот-а са свим зависностима потребним за прављење или покретање пакета који се гради, као и са његовим изворним кодом, резултатима компилације и пакетом.
  • Директоријум у коме се налазите ће садржати датотеке евиденције пакета и изградње, као и сав преузети изворни код.

На крају ћете можда приметити " Checking PKGBUILD" и " Checking <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz". Све линије након њих излазе из namcap, који аутоматски тражи проблеме као што су неисправне PKGBUILDдатотеке, укључене зависности које изгледа да пакет не користи, зависности које нису укључене које изгледа да пакет користи и још много тога. Лажне позитивне резултате често генерише namcap, али је одличан алат за давање ствари за истраживање. Ако ваш пакет ради исправно, није добра идеја да упозоравате одржаваоца на namcapизлаз, осим ако га нисте погледали и потврдили да треба да се изврши промена.

Можете користити pacmanза инсталирање пакета, који ће инсталирати све зависности потребне за покретање пакета све док су у званичним репозиторијумима или у локалном спремишту.

Или користите локално спремиште као што је објашњено овде , или директно инсталирајте датотеку:

# pacman -U <PKGNAME>-<PKGVER>-<PKGREL>-<ARCH>.pkg.tar.xz

Ако бисте extra-x86_64-buildпоново покренули , одмах или било када касније са овим или другим пакетом, он ће ажурирати чисти цхроот ако је потребно, избрисати буилд цхроот и учинити га новом копијом чистог цхроот-а и извршити исти процес. Ако ваш директоријум још увек има изворни код преузет од последњег пута, он ће га користити. Ако је пакет развојни АУР пакет, он ће повући нове измене радије него поново клонирати.

Интерно, extra-x86_64-buildпокреће makechrootpkg, који интерно позива makepkg. Опције за extra-x86_64-buildукључују следеће:

  • -c: Очистите цхроот тако што ћете уклонити и поново креирати цео /var/lib/archbuild/extra-x86_64/директоријум, укључујући његов чисти цхроот и све буилд цхроот директоријуме. Ово је ретко потребно, само ако се чисти цхроот оштети или ако се Девтоолс надогради на начин који нарушава компатибилност уназад.
  • -r <dir>: Користите другачији директоријум него /var/lib/archbuild/extra-x86_64/да садржи цхроот.

Сви аргументи extra-x86_64-buildпосле --се прослеђују у makechrootpkg, када га интерно користи. Неколико аргумената се увек аутоматски преноси из extra-x86_64-buildна makechrootpkg. Ови аутоматски аргументи су -r <value given to extra-x86_64-build -r option if given, /var/lib/archbuild/extra-x86_64 otherwise> -c -n. Они кажу makechrootpkgда се уклони буилд цхроот и направи нова копија чистог цхроот-а и да се покрене namcapна пакету ако се успешно изгради. Често коришћена опција којој се може пренети makechrootpkgје -l <copy name>. Ово је име директоријума за давање цхроот-а, уместо <USERNAME>, што је корисно за одржавање више копија или компајлирање више пакета у исто време.

Сви аргументи за makechrootpkgафтер --се прослеђују у makepkg, када га интерно користи за прављење пакета. Први пут makepkgпокреће makechrootpkg, то се ради са сопственим непроменљивим опцијама, за преузимање изворних датотека, ако је потребно, и обављање провера интегритета; тако да се ништа не може прослеђивати у овој вожњи. Покреће makepkgсе други пут да би направио пакет, и увек аутоматски прослеђује makepkgаргументе --syncdeps --noconfirm --log --holdver --skipintegкоји говоре makepkgда, у оквиру цхроот-а за изградњу, аутоматски инсталира недостајуће зависности потребне за прављење и коришћење пакета, да не тражи потврду током pacman, да евидентира процес прављења у тексту датотеке поред stdout, немојте ажурирати изворни код ако је у систему контроле верзија и не вршите провере верификације изворне датотеке.

Можете их повезати користећи следећи образац:

$ extra-x86_64-build <DEVTOOLS-OPTIONS> -- <MAKECHROOTPKG-OPTIONS> -- <MAKEPKG-OPTIONS>

Имајте на уму да /var/lib/archbuildсе то може третирати као да је привремени директоријум. Ако имате више Вултр чврстих дискова, овде је вредно монтирати РАИД0 (тракасти) систем датотека. Ако имате пуно РАМ-а, такође можете монтирати систем датотека са РАМ подршком као што је tmpfs. Након што је пакет направљен, он се копира у директоријум из којег сте покренули extra-x86_64-buildи ако желите, у овом тренутку можете избрисати /var/lib/archbuild. Следеће покретање би било спорије, јер би требало да направи нови чисти корен. Алтернативно, можете избрисати /var/lib/archbuild/<USERNAME>да бисте повратили додатни простор из цхроот-а за изградњу пре него што га аутоматски избрише следеће покретање Девтоолс-а. Дакле, чак и ако имате РАИД0 систем датотека који је овде монтиран не успе, највише бисте изгубили била би компилација у процесу.

Конфигурационе датотеке Девтоолс

Постоји неколико специфичности које треба приметити са конфигурационим датотекама Девтоолс. Они се налазе у /usr/share/devtools/, као што су makepkg-x86_64.confи pacman-extra.conf:

  • За /etcдатотеке попут makepkg.confи pacman.conf, можете безбедно да их уређујете на месту, а када се пакет надогради, неће заменити ваше промене. Уместо тога, сачуваће нове конфигурационе датотеке (ако су се промениле у односу на претходну верзију) које завршавају са .pacnew. Међутим, конфигурационе датотеке Девтоолс-а се налазе у /usr/share/којима није предвиђено да се уређују од стране корисника, тако да када се Девтоолс надогради, он ће у потпуности преписати ваше промене ових датотека без упозорења. Промена овог понашања је предложена и одбијена, јер ово помаже да се осигура да се пакети шаљу у званична спремишта са истим подешавањима компилације.
  • Вредност за MAKEFLAGS, PACKAGER, и {SRC,SRCPKG,PKG,LOG}DESTсу преузете из /etc/makepkg.confуместо /usr/share/devtools/makepkg-x86_64.conf.

Локално спремиште

Ако правите пакете који зависе од других пакета које сте направили, потребно је да користите локално спремиште, тако да када се pacmanпокрене унутар цхроот-а за изградњу, оно пронађе зависности.

Да бисте подесили локално спремиште, погледајте одељак „Локално спремиште“ овог водича .

Направите прилагођени циљ:

# ln -s archbuild /usr/bin/custom-x86_64-build
# cp /usr/share/devtools/pacman-{extra,custom}.conf

Уредите /usr/share/devtools/pacman-custom.confи додајте следеће на крају:

[archLocalRepo]
SigLevel = Optional TrustAll
Server = file:///archLocalRepo

Уредите /etc/pacman.confи додајте следеће. Ово приморава да се директоријум везује монтира у цхроот:

CacheDir    = /var/cache/pacman/pkg/ /archLocalRepo/

Сада, уместо да extra-x86_64-buildкористите ово:

$ custom-x86_64-build

Ако увек желите да користите прилагођени циљ, можете да избришете /var/lib/archbuild/extra-x86_64-build/директоријум ако постоји, пошто ће цхроот-ови сада бити у /var/lib/archbuild/custom-x86_64-build/.

Пакет брже

Имајте на уму да омогућавање паковања са нитима укључује уређивање /usr/share/devtoolsконфигурационих датотека, што није званично подржано, тако да ћете морати да извршите ову промену сваки пут када се Девтоолс надогради.

Девтоолс комбинује цео пакет у архивски формат. Подразумевано, .tar.xzкористи једну нит за xzкомпресију.

На системима са више процесора, можете дозволити xzкоришћење више нити уређивањем /usr/share/devtools/makepkg-x86_64.confи промените следећи ред:

COMPRESSXZ=(xz -c -z -)

Да бисте дозволили онолико нити колико имате виртуелних језгара:

COMPRESSXZ=(xz -c -z - --threads=0)

Да бисте омогућили коришћење више виртуелних језгара, али не свих, како бисте смањили утицај на укупне перформансе система, додајте одређени број:

COMPRESSXZ=(xz -c -z - --threads=21)

Навођење више нити од броја виртуелних језгара које имате смањиће перформансе.

Ако вам не смета да је датотека пакета (потенцијално много) већа, онемогућите компресију уређивањем /usr/share/devtools/makepkg-x86_64.confи промените следећи ред:

PKGEXT='.pkg.tar.xz'

Промените га да изгледа овако:

PKGEXT='.pkg.tar'

Инсталирање 2019 Арцх Линук-а на Вултр сервер

Инсталирање 2019 Арцх Линук-а на Вултр сервер

Увод Арцх Линук има мању, али и даље јаку сљедећу од популарнијих дистрибуција. Његова филозофија је сасвим другачија, са предностима

Инсталирање Арцх Линук-а на Вултр сервер

Инсталирање Арцх Линук-а на Вултр сервер

Вултр вам пружа сјајну функционалност омогућавајући вам да користите сопствену прилагођену слику поред њихових одличних шаблона, што вам омогућава да покренете

Коришћење Девтоолс-а на Арцх Линук-у

Коришћење Девтоолс-а на Арцх Линук-у

Пакет Девтоолс је првобитно направљен за поуздане кориснике да правилно креирају пакете за званична спремишта. Међутим, може га користити и обичан корисник

Коришћење Макепкг на Арцх Линук-у

Коришћење Макепкг на Арцх Линук-у

Ако користите макепкг директно, то донекле загађује ваш систем. Група пакета основног развоја мора бити инсталирана. На овај начин, подразумевано, зависности су потребне само

Како инсталирати ПостгреСКЛ 11.1 на Арцх Линук

Како инсталирати ПостгреСКЛ 11.1 на Арцх Линук

Предуслови Вултр сервер који ради са најновијим Арцх Линук-ом (погледајте овај чланак.) Судо приступ. Наредбе које су потребне за покретање као роот имају префикс # и један

Како користити ХТТПС на Арцх Линук веб серверу

Како користити ХТТПС на Арцх Линук веб серверу

Предуслови Вултр сервер који ради са најновијим Арцх Линук-ом (погледајте овај чланак.) Покренут веб сервер, било Апацхе или Нгинк Судо, потребне су команде т

Инсталирајте Арцх Линук са Бтрфс Снапсхоттинг-ом

Инсталирајте Арцх Линук са Бтрфс Снапсхоттинг-ом

Предговор Арцх Линук је дистрибуција опште намене добро позната по својој најсавременијој технологији и флексибилној конфигурацији. Са Бтрфс снимцима можемо узети

Изградња пакета на Арцх Линук-у (укључујући АУР)

Изградња пакета на Арцх Линук-у (укључујући АУР)

На Арцх Линук-у, званична спремишта су: језгро, екстра и заједница. Ови пакети су већ компајлирани и инсталирани су преко пацмана. Напред

Подесите Спигот сервер на Арцх Линук

Подесите Спигот сервер на Арцх Линук

Овај водич објашњава како да подесите Минецрафт сервер користећи Спигот на Арцх Линук-у. Овај водич претпоставља да сте нормалан корисник (не-роот) и да имате

Како инсталирати Нгинк 1.14 на Арцх Линук

Како инсталирати Нгинк 1.14 на Арцх Линук

Предуслови Вултр сервер који ради са најновијим Арцх Линук-ом (погледајте овај чланак.) Судо приступ. Наредбе које су потребне за покретање као роот имају префикс #. Тх

Како инсталирати Апацхе 2.4 на Арцх Линук

Како инсталирати Апацхе 2.4 на Арцх Линук

Предуслови Вултр сервер који ради са најновијим Арцх Линук-ом. Погледајте овај водич за више информација. Судо приступ. Команде које је потребно покренути као роот ар

Како инсталирати Питхон 3.7 на Арцх Линук веб сервер

Како инсталирати Питхон 3.7 на Арцх Линук веб сервер

Предуслови Вултр сервер који ради са најновијим Арцх Линук-ом (погледајте овај чланак.) Покренут веб сервер, било Апацхе или Нгинк Судо приступ: Команде захтевају

Како инсталирати Перл 5.28 на Арцх Линук веб сервер

Како инсталирати Перл 5.28 на Арцх Линук веб сервер

Предуслови Вултр сервер који ради са најновијим Арцх Линук-ом (погледајте овај чланак.) Покренут веб сервер, било Апацхе или Нгинк Судо приступ: Команде захтевају

Како инсталирати ПХП 7.3 на Арцх Линук веб сервер

Како инсталирати ПХП 7.3 на Арцх Линук веб сервер

Предуслови Вултр сервер који ради са најновијим Арцх Линук-ом (погледајте овај чланак.) Веб сервер који ради, било Апацхе или Нгинк Судо приступ. Команде захтевају

Подесите Мумбле Сервер на Арцх Линук

Подесите Мумбле Сервер на Арцх Линук

Овај водич објашњава како да подесите Мумбле сервер (Мурмур) на Арцх Линук-у. Све урађено у овом водичу ради се као роот корисник. Инсталација ан

Подесите Цоунтер-Стрике: Глобал Оффенсиве (ЦСГО) сервер на Арцх Линук-у

Подесите Цоунтер-Стрике: Глобал Оффенсиве (ЦСГО) сервер на Арцх Линук-у

Овај водич објашњава како да подесите Цоунтер-Стрике: Глобал Оффенсиве сервер на Арцх Линук-у. Овај водич претпоставља да сте се пријавили са стандардном употребом

Подесите Теам Фортресс 2 сервер на Арцх Линук-у

Подесите Теам Фортресс 2 сервер на Арцх Линук-у

Овај водич објашњава како да подесите Теам Фортресс 2 сервер на Арцх Линук-у. Претпостављам да сте пријављени са не-роот корисничким налогом који има судо приступ

Како инсталирати МариаДБ 10.3 или МиСКЛ 8.0 на Арцх Линук

Како инсталирати МариаДБ 10.3 или МиСКЛ 8.0 на Арцх Линук

Предуслови Вултр сервер који ради са најновијим Арцх Линук-ом (погледајте овај чланак.) Судо приступ: Команде које је потребно покренути као роот имају префикс # и један

Како инсталирати МонгоДБ 4.0 на Арцх Линук

Како инсталирати МонгоДБ 4.0 на Арцх Линук

Предуслови Вултр сервер који ради са најновијим Арцх Линук-ом (погледајте овај чланак) Судо приступ: Команде које је потребно покренути као роот имају префикс # и један

Успон машина: Примене вештачке интелигенције у стварном свету

Успон машина: Примене вештачке интелигенције у стварном свету

Вештачка интелигенција није у будућности, она је овде управо у садашњости. У овом блогу Прочитајте како су апликације вештачке интелигенције утицале на различите секторе.

ДДОС напади: кратак преглед

ДДОС напади: кратак преглед

Да ли сте и ви жртва ДДОС напада и збуњени сте методама превенције? Прочитајте овај чланак да бисте решили своја питања.

Да ли сте се икада запитали како хакери зарађују новац?

Да ли сте се икада запитали како хакери зарађују новац?

Можда сте чули да хакери зарађују много новца, али да ли сте се икада запитали како зарађују толики новац? Хајде да причамо.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Да ли желите да видите револуционарне изуме Гугла и како су ти изуми променили живот сваког људског бића данас? Затим читајте на блогу да бисте видели Гооглеове изуме.

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Концепт самовозећих аутомобила који путују на путеве уз помоћ вештачке интелигенције је сан који већ неко време имамо. Али упркос неколико обећања, њих нема нигде. Прочитајте овај блог да сазнате више…

Технолошка сингуларност: далека будућност људске цивилизације?

Технолошка сингуларност: далека будућност људске цивилизације?

Како се наука развија великом брзином, преузимајући многе наше напоре, расте и ризик да се подвргнемо необјашњивој сингуларности. Прочитајте шта би сингуларност могла да значи за нас.

Еволуција складиштења података – Инфографика

Еволуција складиштења података – Инфографика

Методе складиштења података су се развијале можда од рођења података. Овај блог покрива еволуцију складиштења података на основу инфографике.

Функционалности слојева референтне архитектуре великих података

Функционалности слојева референтне архитектуре великих података

Прочитајте блог да бисте на најједноставнији начин упознали различите слојеве у архитектури великих података и њихове функционалности.

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

У овом дигиталном свету, паметни кућни уређаји постали су кључни део живота. Ево неколико невероватних предности паметних кућних уређаја о томе како они чине наш живот вредним живљења и једноставнијим.

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Недавно је Аппле издао мацОС Цаталина 10.15.4 додатак за исправку проблема, али изгледа да ажурирање изазива више проблема који доводе до квара Мац машина. Прочитајте овај чланак да бисте сазнали више