| ALPM-HOOKS(5) | راهنمای Pacman | ALPM-HOOKS(5) |
نام (NAME)
alpm-hooks - فرمت فایل هوک alpm
خلاصه دستور (SYNOPSIS)
[Trigger] (الزامی، قابل تکرار) Operation = Install|Upgrade|Remove (الزامی، قابل تکرار) Type = Path|Package (الزامی) Target = <Path|PkgName> (الزامی، قابل تکرار) [Action] (الزامی) Description = ... (اختیاری) When = PreTransaction|PostTransaction (الزامی) Exec = <Command> (الزامی) Depends = <PkgName> (اختیاری) AbortOnFail (اختیاری، فقط PreTransaction) NeedsTargets (اختیاری)
توضیحات (DESCRIPTION)
کتابخانه libalpm امکان تعیین هوکهایی را فراهم میکند که بر اساس بستهها و/یا فایلهای در حال تغییر، قبل یا بعد از تراکنشها اجرا شوند. هوکها از یک بخش منفرد [Action] که عملیات مورد اجرا را شرح میدهد، و یک یا چند بخش [Trigger] که مشخص میکنند هوک باید برای چه تراکنشهایی اجرا شود، تشکیل شدهاند.
هوکها از فایلهای موجود در دایرکتوری هوکهای سیستم /usr/share/libalpm/hooks و دایرکتوریهای سفارشی دیگری که در pacman.conf(5) مشخص شدهاند (پیشفرض /etc/pacman.d/hooks است) خوانده میشوند. نام این فایلها باید دارای پسوند «.hook» باشد. هوکها به ترتیب الفبایی نام فایلهایشان اجرا میشوند که در این ترتیببندی، پسوند فایل نادیده گرفته میشود.
محرکها (TRIGGERS)
هوکها باید دستکم شامل یک بخش [Trigger] باشند که مشخص میکند کدام تراکنشها باعث اجرای هوک خواهند شد. اگر چند بخش محرک تعریف شده باشد، در صورتی که تراکنش با هر یک از محرکها مطابقت داشته باشد، هوک اجرا خواهد شد.
Operation = Install|Upgrade|Remove
Type = Path|Package
Target = <path|package>
عملیات (ACTIONS)
Description = ...
Exec = <command>
When = PreTransaction|PostTransaction
Depends = <package>
AbortOnFail
NeedsTargets
بازنویسی هوکها (OVERRIDING HOOKS)
هوکها را میتوان با قرار دادن فایلی با همان نام در دایرکتوری هوکی با اولویت بالاتر بازنویسی کرد. همچنین میتوان با بازنویسی آنها بهوسیله یک پیوند نمادین به /dev/null، آنها را غیرفعال کرد.
مثالها (EXAMPLES)
# Force disks to sync to reduce the risk of data corruption [Trigger] Operation = Install Operation = Upgrade Operation = Remove Type = Package Target = * [Action] Depends = coreutils When = PostTransaction Exec = /usr/bin/sync
هشدارها (CAVEATS)
موقعیتهایی وجود دارد که در آنها محرکهای مسیر ممکن است به شیوههای غیرمنتظرهای عمل کنند. هوکها با استفاده از فهرست فایلهای بستهٔ نصبشده، ارتقایافته یا حذفشده راهاندازی میشوند. هنگام نصب یا ارتقای فایلی که با پسوند .pacnew استخراج میشود، از نام اصلی فایل برای راهاندازی هوک استفاده میشود. هنگام حذف یک بسته، همه فایلهای متعلق به آن بسته میتوانند یک هوک را راهاندازی کنند، چه قبل از حذف بسته واقعاً روی سیستمفایل وجود داشته باشند و چه نداشته باشند.
هوکهای PostTransaction در صورتی که تراکنش به هر دلیلی کامل نشود، اجرا نخواهند شد.
برای اطلاعات بهروز در مورد pacman و ابزارهای مرتبط با آن، به وبسایت pacman در نشانی https://archlinux.org/pacman مراجعه کنید.
باگها (BUGS)
باگ؟ حتماً شوخی میکنید؛ هیچ باگی در این نرمافزار وجود ندارد. اما اگر احیاناً اشتباه کرده باشیم، لطفاً آنها را با اطلاعات مشخصی نظیر خط فرمان شما، ماهیت باگ و حتی در صورت مفید بودن، پایگاهداده بسته، به سامانه پیگیری اشکالات در https://gitlab.archlinux.org/pacman/pacman/-/issues گزارش دهید.
نویسندگان (AUTHORS)
نگهدارندگان فعلی:
مشارکتکنندگان عمده پیشین:
برای مشارکتکنندگان دیگر، از دستور git shortlog -s در مخزن pacman.git استفاده کنید.
| 2026-05-06 | Pacman 7.1.0 |