Арцхлинук: Креирајте пакете за више платформи и од .деб пакета

Пре отприлике годину дана објаснио сам како креирајте пакете за Арцхлинук. Па, данас ћу објаснити како да их направим од пакета дебитант, они који се користе у Дебиан / Минт / Убунту / итд.
Овај чланак је настао након читања питања корисника на форуму јоргегц јер нисам могао да инсталирам пакет из АУР-а, углавном зато што је застарео и користи верзију укинут ПКГБУИЛД-а (срећом, претходно сам направио пакете на овај начин), такође ћу објаснити како направити пакете програма који требају 32-битне библиотеке, оф затворени код o већ састављен и да има различите пакете за преузимање.

Основа за ПКГБУИЛД је иста, само са неколико промена.
Прва измена биће употреба реченице ако елиф би Басх


if [ "${CARCH}" = 'x86_64' ]; then
ARCH='amd64'
md5sums=('192a0a222893d59d95f00c34f3c8a674')
depends=('openal' 'lib32-openal')
elif [ "${CARCH}" = 'i686' ]; then
ARCH='i386'
md5sums=('047c670443124193c5cc3dd54da99925')
depends=('openal')
fi
source=("http://www.unaurl.com/files/${name}.$ARCH.deb")

У овом примеру је дефинисана променљива која ће се касније користити за промену УРЛ адреса где је пакет (у овом случају архитектура пакета за преузимање).
Поред тога, у зависности од архитектуре, МД5 суме па ћемо их променити у одговарајуће.

Када користите макепкг -г за генерисање МД5сум Ово ће генерисати само ону која одговара архитектури коју користите. Да бисте знали МД5 збир другог пакета, преузмите га и користите команду мд5сум филе.деб да знаш своје

Коначно, видимо да смо у примеру променили зависности. У неким 64-битним програмима, потребно је инсталирати 32-битне верзије неких библиотека, тако да их морамо навести. Ако нису потребне, једноставно дефинишите променљиву на уобичајени начин.

Сада ће нам за .деб пакете требати само следеће линије унутар функције пакет ():

cd "${srcdir}/"
tar xvzf data.tar.gz -C .
cp -r usr ${pkgdir}

Као што видите, у овом случају су нам потребне само 3 линије за генерисање пакета. Ако је потребно нешто друго (на пример, копирање датотеке која не долази са пакетом или мењање садржаја једног), једноставно је морате ставити као и са било којим другим пакетом.

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

И воила, већ имамо мултилиб пакет или створен од деб пакета спремног за употребу.
Надам се да вам се свиђа и да сам добро објаснио 


Додај као жељени извор на Гуглу