MAKEPKG(8)

نام
؛ makepkg: سازنده پکیج های اسلکور ؛

اختصار
makepkg [ -l, --linkadd y|n ] [ -c, --chown y|n ] پکیج

توصیف
ابزار makepkg یک پکیج سازگار با اسلکور ایجاد می کند. پکیج با استفاده از محتویات دایرکتوری فعلی و تمام زیرشاخه های آن ایجاد می شود. اگر لینک های نمادین (symbolic link) وجود داشته باشند، به منظور تولید دوباره در هنگام نصب به اسکریپت تبدیل می شوند. این کد به انتهای اسکریپت اصلی نصب واقع در مسیر install/doinst.sh اضافه شده یا اگر آن اسکریپت وجود نداشت با استفاده از آن محتویات تولید خواهد شد. پکیج به صورت یک فایل ساخته می شود که باید حاوی نام کامل فایل به همراه پسوند آن باشد. این پسوند معمولا tgz است اما پسوندهای tbz ،tlz و txz نیز قابل قبول هستند. لازم است که ابزار فشرده سازی مناسب (مانند gzip ،bzip2 ،lzma یا xz) روی سیستم نصب باشند.

گزینه ها

-l, --linkadd y|n
    در صورت انتخاب y برای این گزینه، هر لینک نمادینی که پیدا شود به اسکریپت نصب (doinst.sh) اضافه شده و حذف می شود. این روش مورد توصیه است. اگر از این گزینه استفاده نشود، makepkg در صورت پیدا کردن لینک های نمادین اطلاع رسانی خواهد کرد.

-p, --prepend
    اگر این گزینه مورد استفاه قرار گیرد، تمام لینک های نمادین اضافه شده به doinst.sh به ابتدای اسکریپت موجود اضافه خواهند شد. این شیوه برای پکیج هایی که حاوی کتابخانه های مشترکی هستند که باید لینک شوند مفید است. چون برنامه ها بعدا در اسکریپت doinst.sh از آنها استفاده خواهند کرد.

-c, --chown y|n
    در صورت وارد کردن y برای این گزینه، makepkg تمام دسترسی های دایرکتوری را به ۷۵۵ تغییر داده و مالکیت آنها را به root:root تغییر می دهد. بطور معمول شما باید دسترسی و مالکیت را خودتان تعیین کنید. بنابراین انتخاب y برای این گزینه چندان مناسب نبوده و گزینه پیش فرض نمی باشد. اگر گزینه ای انتخاب نشود، makepkg از شما سئوال خواهد کرد.

اسکریپت های نصب
سه نوع اسکریپت نصب در سیستم پکیج اسلکور پشتیبانی می شوند.

اولین آنها
    اسکریپت نصب اصلی می باشد. این اسکریپت در زیردایرکتوری install/. یافت شده و باید دارای نام doinst.sh باشد تا شناخته شود. این اسکریپت و دیگر اسکریپت های نصب باید با استفاده از Bourne shell نوشته شوند تا بوسیله Bash شناخته شوند. چون bash تنها مفسری است که به هنگام نصب از فلاپی اسلکور مورد استفاده قرار می گیرد. زمان استفاده از اسکریپت های bash مراقب باشید چون اسکریپت به هنگام نصب از هارددیسک عالی کار می کند اما هنگام نصب از روی فلاپی خوب عمل نمی کند. اگر پکیج برای استفاده شخصی باشد، این مسئله مشکلی به وجود نخواهد آورد. به هر صورت اگر تصمیم دارید پکیج را با دیگر کاربران به اشتراک بگذارید, احتیاط کنید. اسکریپت اصلی نصب بلافاصله پس از نصب پکیج بوسیله installpkg ،pkgtool یا setup. اجرا می شود.

دومین نوع اسکریپت
    اسکریپت پیکربندی می باشد. این اسکریپت در مسیر var/log/setup/. یافت شده و نام آن باید با setup آغاز شود تا شناسایی گردد. اسکریپت منطقه زمانی یا همان .var/log/setup.timeconfig/ مثالی از این نوع می باشد. این اسکریپت در مرحله پیکربندی (CONFIGURE) به هنگام نصب سیستم (setup) اجرا شده و هر زمان گزینه CONFIGURE انتخاب شود، مجددا اجرا می گردد. معمولا کاربر پس از نصب تمام پکیج ها وارد این مرحله از نصب سیستم می شود. هر چیزی که نیاز به گزینه های تعاملی دارد باید وارد این اسکریپت ها شود تا مانع نصب پکیج ها هنگام نصب سیستم نشود.

نوع سوم اسکریپت
    اسکریپت های یکبارمصرف می باشند که همانطور که از اسمشان پیداست تنها یکبار پس از نصب پکیج اجرا می شوند. برخلاف اسکریپت استاندارد پیکربندی این اسکریپت ها در زیردایرکتوری var/log/setup/. نیز یافت شده و نام آنها علاوه بر عبارت setup باید دارای onlyonce نیز باشد. مانند: var/log/setup/setup.onlyonce.testscript/

فرمت پکیج
فرمان makepkg علاوه بر GNU tar از ابزار GNU gzip برای تولید پکیج ها استفاده می کند. روش ساده برای استخراج یک پکیج (بدون اجرای اسکریپت نصب) استفاده از فرمانی شبیه این می باشد:

explodepkg پکیج.tgz

یا چیزی شبیه این:

gzip -dc پکیج.tgz | tar xvvf -

نویسنده
Patrick J. Volkerding <volkerdi@slackware.com>

نگاه کنید به
installpkg(8), explodepkg(8), removepkg(8), pkgtool(8), upgradepkg(8)