OPAM-CONFIG(1) Opam Manual OPAM-CONFIG(1)

opam-config - نمایش گزینه‌های پیکربندی برای بسته‌ها

opam config [OPTION]… [COMMAND] [ARG]…

این دستور از وضعیت opam برای خروجی دادن اطلاعات درباره نحوه استفاده از کتابخانه‌های نصب‌شده، به‌روزرسانی PATH و جایگزینی متغیرهای استفاده‌شده در بسته‌های opam استفاده می‌کند.

به‌جز opam config env، بیشتر این دستورات به صورت داخلی توسط opam استفاده می‌شوند و برای کاربران عادی کاربرد چندانی ندارند.

مقادیر متغیرهای محیطی تنظیم‌شده در سوئیچ فعلی (مانند PATH) را در قالبی برمی‌گرداند که برای ارزیابی توسط یک پوسته طراحی شده است. همراه با -v، توضیحاتی اضافه می‌کند که دلیل یا بسته مبدا هر متغیر را مستند می‌سازد. کاربرد اصلی آن به صورت eval $(opam config env) است تا دستورات بعدی پوسته در بستر (context) مناسب opam ارزیابی شوند. همچنین از طریق opam env نیز قابل دسترسی است.
تغییرات اعمال‌شده بر محیط توسط opam را تا حد امکان بازمی‌گرداند؛ برای مثال، دستور eval $(opam config revert-env) اثرات اجرای eval $(opam config env) را لغو می‌کند.
بدون آرگومان، فهرستی همراه با توضیحات از تمام متغیرهای موجود را چاپ می‌کند. در صورت مشخص شدن PACKAGE، تمام متغیرهای در دسترس برای این بسته‌ها را فهرست می‌کند.
درون‌یابی متغیرها را در رشته داده‌شده بسط می‌دهد.
متغیرها را در فایل‌های داده‌شده جایگزین می‌کند. رشته‌های %{var}% با مقدار متغیر var جایگزین می‌شوند (نگاه کنید به var).
خلاصه‌ای از پیکربندی سیستم شما را چاپ می‌کند که برای گزارش اشکالات مفید است.
جهان بسته‌های در دسترس فعلی را در قالب CUDF خروجی می‌دهد.
جهان بسته‌های فعلی را در قالب PEF خروجی می‌دهد.
در نسخه 2.1 حذف شده است، به جای آن از opam exec استفاده کنید.
در نسخه 2.1 حذف شده است، به جای آن از opam var استفاده کنید.
در نسخه 2.1 حذف شده است، به جای آن از opam var استفاده کنید.
در نسخه 2.1 حذف شده است، به جای آن از opam var استفاده کنید.
در نسخه 2.1 حذف شده است، به جای آن از opam var استفاده کنید.
در نسخه 2.1 حذف شده است، به جای آن از opam var استفاده کنید.

هنگام به‌روزرسانی متغیر PATH، هر مسیر از پیش موجود opam را درجا جایگزین می‌کند به جای اینکه مسیر جدید را در ابتدای آن قرار دهد. این بدان معناست که برنامه‌های نصب‌شده در opam که سایه‌اندازی شده بودند (shadowed)، پس از اجرای opam env نیز همچنان به همان صورت باقی می‌مانند.
همراه با زیردستورهای env و exec، متغیر OPAMROOT را نیز تنظیم می‌کند و تضمین می‌کند که فراخوانی‌های بعدی opam از همان ریشه استفاده کنند.
همراه با زیردستورهای env و exec، متغیر OPAMSWITCH را نیز تنظیم می‌کند و تضمین می‌کند که فراخوانی‌های بعدی opam از همان سوئیچ فعلی استفاده کنند.
متغیرهای محیطی را به جای قالب پوسته، به صورت s-expression چاپ می‌کند.
حالت پیکربندی محیط opam را متناسب با SHELL تنظیم می‌کند. یکی از مقادیر bash، sh، csh، zsh، fish، pwsh، cmd یا powershell. به صورت پیش‌فرض از فرایندهای والد و متغیر $SHELL حدس زده می‌شود.

این گزینه‌ها میان تمامی دستورات مشترک هستند.

اگر امکان نصب تمام بسته‌های درخواستی وجود نداشت، با خطا متوقف نشو: تلاش کن تا جای ممکن بیشترین تعداد بسته را نصب کنی. توجه داشته باشید که ممکن است همه حل‌کننده‌های خارجی از این گزینه پشتیبانی نکنند (نسخه‌های اخیر aspcud یا mccs باید پشتیبانی کنند). این معادل تنظیم متغیر محیطی $OPAMBESTEFFORT است.
از نحو و معناشناسی رابط خط فرمان MAJOR.MINOR استفاده می‌کند. برای هرگونه استفاده دائمی از opam (اسکریپت‌ها، پست‌های وبلاگ و غیره) در نظر گرفته شده است؛ هر نسخه از opam در همان سری MAJOR مشابه نسخه انتشار MINOR مشخص‌شده عمل خواهد کرد. این فلگ در opam 2.0 در دسترس نبود، بنابراین برای انتخاب CLI نسخه 2.0، متغیر محیطی OPAMCLI را به جای استفاده از این پارامتر برابر با 2.0 قرار دهید.
رنگی‌سازی خروجی. WHEN باید یکی از مقادیر always، never یا auto باشد.
سطح تایید. LEVEL باید یکی از مقادیر ask، no، yes یا unsafe-yes باشد. می‌تواند بیش از یک بار مشخص شود. اگر --yes یا --no نیز داده شوند، مقدار آخرین --confirm-level در نظر گرفته می‌شود. این معادل تنظیم $OPAMCONFIRMLEVEL است.
مشخص کردن ترجیحات کاربر برای حل وابستگی‌ها در این اجرا. بر $OPAMCRITERIA، $OPAMFIXUPCRITERIA و $OPAMUPGRADECRITERIA اولویت دارد. برای جزئیات درباره زبان پشتیبانی‌شده و حل‌کننده‌های خارجی موجود، به http://opam.ocaml.org/doc/External_solvers.html مراجعه کنید. یک راهنمای عمومی برای استفاده از ترجیحات حل‌کننده در http://www.dicosmo.org/Articles/usercriteria.pdf در دسترس است.
گزینه اشکال‌زدایی: درخواست‌های CUDF ارسال‌شده به حل‌کننده را در FILENAME-<n>.cudf ذخیره می‌کند که در آن <n> نشان‌دهنده n-امین فراخوانی حل‌کننده در طول اجرای opam است.
چاپ پیام‌های اشکال‌زدایی در stderr. این معادل تنظیم $OPAMDEBUG روی "true" است.
مشابه --debug، اما امکان تعیین سطح اشکال‌زدایی را فراهم می‌کند (گزینه --debug آن را روی 1 تنظیم می‌کند). معادل تنظیم $OPAMDEBUG روی یک عدد صحیح مثبت است.
نسخه گیت opam را در صورت تنظیم بودن (یعنی زمانی که از نسخه توسعه استفاده می‌کنید) چاپ کرده و خارج می‌شود.
نمایش این راهنما در قالب FMT. مقدار FMT باید یکی از مقادیر auto، pager، groff یا plain باشد. با auto، هر زمان که متغیر محیطی TERM برابر با dumb یا تعریف‌نشده باشد، قالب به صورت pager یا plain خواهد بود.
نادیده گرفتن پین‌های اضافی مورد نیاز بسته‌هایی که پین می‌شوند، چه به صورت دستی از طریق opam pin یا از طریق opam install DIR. این معادل تنظیم IGNOREPINDEPENDS=true است.
ذخیره نتایج اجرای opam در یک فایل ساختاریافته قابل خواندن توسط رایانه. اگر نام فایل شامل نویسه `% باشد، با شاخصی جایگزین می‌شود که روی فایل موجود بازنویسی نکند. مشابه تنظیم متغیر $OPAMJSON است.
پاسخ منفی (خیر) به تمام پرسش‌های بله/خیر opam بدون درخواست از کاربر. همچنین نگاه کنید به --confirm-level. این معادل تنظیم $OPAMNO روی "true" است.
در نسخه 2.1 حذف شده است.
هنگام پیکربندی یا به‌روزرسانی مخزنی که برای نسخه‌های پیشین opam (1.2) نوشته شده است، opam به صورت داخلی آن را به قالب فعلی تبدیل می‌کند. این گزینه این رفتار را غیرفعال می‌کند. توجه داشته باشید که مخازن باید نسخه قالب خود را در یک فایل repo در ریشه خود مشخص کنند، در غیر این صورت فرض می‌شود که در قالب قدیمی‌تر هستند. در هر صورت، ارتقای دستی مخازن با استفاده از opam admin upgrade [--mirror URL] در صورت امکان ترجیح داده می‌شود.
در صورت وجود یک فایل اجرایی جدیدتر در مسیر OPAMROOT/opam، نرم‌افزار opam خود را با آن جایگزین می‌کند. این گزینه این رفتار را غیرفعال می‌کند.
گزینه --verbose را غیرفعال می‌کند.
استفاده از ROOT به عنوان مسیر ریشه فعلی. این معادل تنظیم $OPAMROOT روی ROOT است.
تضمین می‌کند که هیچ چیز به صورت خودکار به‌روزرسانی یا بازنویسی نشود. برای نمونه هنگام فراخوانی از اسکریپت‌های تکمیل خودکار مفید است. در صورت نیاز به چنین عملیاتی با شکست مواجه می‌شود؛ همچنین از انتظار برای قفل‌ها جلوگیری کرده، سوالات تعاملی را نادیده می‌گیرد و متغیر $OPAMDEBUG را باطل می‌کند. این معادل تنظیم متغیر محیطی $OPAMSAFE است.
تعیین حل‌کننده CUDF برای رفع مشکلات نصب بسته‌ها. این مقدار یا یک حل‌کننده از پیش تعریف‌شده است (این نسخه از opam از builtin-mccs+lp()، builtin-mccs+glpk، builtin-dummy-z3-solver، builtin-0install، aspcud، mccs، aspcud-old و packup پشتیبانی می‌کند) یا یک دستور سفارشی که باید شامل متغیرهای %{input}%، %{output}%، %{criteria}% و در صورت تمایل %{timeout}% باشد. این معادل تنظیم $OPAMEXTERNALSOLVER است.
در صورت مشاهده هرگونه خطا در تعریف بسته یا فایل پیکربندی، با شکست متوقف شود. حالت پیش‌فرض ادامه بدون وقفه در صورت امکان است.
استفاده از SWITCH به عنوان سوئیچ کامپایلر فعلی. این معادل تنظیم $OPAMSWITCH روی SWITCH است.
غیرفعال کردن هرگونه حل‌کننده خارجی و استفاده از حل‌کننده توکار (این امر مستلزم کامپایل شدن opam همراه با یک حل‌کننده داخلی است). این معادل تنظیم $OPAMNOASPCUD یا $OPAMUSEINTERNALSOLVER است.
پرگویی بیشتر در خروجی. یک بار -v تمام دستورات بسته را نشان می‌دهد؛ تکرار آن دستورات فراخوانی‌شده داخلی (مانند tar، curl، patch و غیره) را نیز نمایش می‌دهد. تکرار به تعداد n بار معادل تنظیم $OPAMVERBOSE روی "n" است.
نمایش اطلاعات نسخه.
هنگام به‌روزرسانی بسته‌هایی که به یک دایرکتوری محلی تحت کنترل نسخه متصل هستند، به جای آخرین وضعیت ثبت‌شده (commit) یا مرجعی که به آن اشاره می‌کنند، به وضعیت کاری فعلی کد مبدا آن‌ها به‌روزرسانی شود. از آنجا که دایرکتوری مبدا همان‌طور که هست کپی می‌شود، تمیز نبودن آن ممکن است به خرابی در ساخت opam منجر گردد. این تنها بر بسته‌هایی تاثیر می‌گذارد که به صراحت در خط فرمان ذکر شده‌اند. همچنین می‌تواند با $OPAMWORKINGDIR تنظیم شود.
پاسخ مثبت (بله) به تمام پرسش‌های بله/خیر opam بدون درخواست از کاربر. همچنین نگاه کنید به --confirm-level. این معادل تنظیم $OPAMYES روی "true" است.

نرم‌افزار opam از متغیرهای محیطی فهرست‌شده در اینجا استفاده می‌کند. متغیرهای بولی برای غیرفعال‌سازی باید روی "0"، "no"، "false" یا رشته خالی، و برای فعال‌سازی روی "1"، "yes" یا "true" تنظیم شوند.

OPAMALLPARENS تمامی فیلترها را درون پرانتز قرار می‌دهد.

OPAMASSUMEDEPEXTS نگاه کنید به گزینه --assume-depexts.

OPAMAUTOANSWER فقط برای استفاده داخلی.

OPAMAUTOREMOVE نگاه کنید به گزینه حذف --auto-remove.

OPAMBESTEFFORT نگاه کنید به گزینه --best-effort.

OPAMBESTEFFORTPREFIXCRITERIA رشته‌ای را تنظیم می‌کند که در هنگام تنظیم گزینه --best-effort باید به ابتدای معیارها افزوده شود، و انتظار می‌رود ویژگی opam-query را در راه‌حل به بیشترین مقدار برساند.

OPAMBUILDDOC در نسخه 2.1 حذف شده است.

OPAMBUILDTEST در نسخه 2.1 حذف شده است.

OPAMCLI نگاه کنید به گزینه --cli.

OPAMCOLOR در صورت تنظیم روی always یا never، یک مقدار پیش‌فرض برای گزینه --color تعیین می‌کند.

OPAMCONFIRMLEVEL نگاه کنید به گزینه --confirm-level. متغیر OPAMCONFIRMLEVEL بر OPAMYES و OPAMNO اولویت دارد.

OPAMCRITERIA ترجیحات (preferences) کاربر را برای حل وابستگی‌ها مشخص می‌کند. مقدار پیش‌فرض به نسخه حل‌کننده بستگی دارد؛ برای آگاهی از تنظیم فعلی از config report استفاده کنید. همچنین نگاه کنید به گزینه --criteria.

OPAMCUDFFILE گراف CUDF را در file-actions-explicit.dot ذخیره می‌کند.

OPAMCUDFTRIM فیلتر کردن بسته‌های غیرمرتبط را در طول پیش‌پردازش CUDF کنترل می‌کند.

OPAMCURL می‌تواند برای انتخاب برنامه مشخص curl استفاده شود. برای گزینه‌های بیشتر به OPAMFETCH مراجعه کنید.

OPAMDEBUG نگاه کنید به گزینه‌های --debug و --debug-level.

OPAMDEBUGSECTIONS در صورت تنظیم، پیام‌های اشکال‌زدایی را به فهرست بخش‌های جداشده با فاصله محدود می‌کند. بخش‌ها می‌توانند به صورت اختیاری دارای سطح اشکال‌زدایی خاص باشند (برای مثال CLIENT:2 یا CLIENT CUDF:2)، در غیر این صورت از --debug-level استفاده می‌شود.

OPAMDIGDEPTH میزان عمق و سخت‌گیری جستجوی تداخل‌ها را در طول پیش‌پردازش CUDF تعیین می‌کند.

OPAMDOWNLOADJOBS حداکثر تعداد دانلودهای همزمان را تعیین می‌کند.

OPAMDROPWORKINGDIR هنگام به‌روزرسانی، بسته‌هایی را که پیش‌تر با --working-dir به‌روزرسانی شده بودند لغو و بازنویسی می‌کند. بدون تنظیم این متغیر، opam آن‌ها را بدون تغییر نگه می‌دارد مگر آنکه صراحتاً در خط فرمان ذکر شوند.

OPAMDRYRUN نگاه کنید به گزینه --dry-run.

OPAMEDITOR ویرایشگر مورد استفاده برای ویرایش فایل‌های opam را تنظیم می‌کند و بر $EDITOR و $VISUAL تقدم دارد.

OPAMERRLOGLEN تعداد خطوط گزارش چاپ‌شده در هنگام شکست یک زیرفرایند را تعیین می‌کند؛ 0 برای چاپ تمام خطوط.

OPAMEXTERNALSOLVER نگاه کنید به گزینه --solver.

OPAMFAKE نگاه کنید به گزینه --fake.

OPAMFETCH نحوه دانلود فایل‌ها را مشخص می‌کند: مقدار wget، curl یا یک دستور سفارشی که در آن متغیرهای %{url}%، %{out}%، %{retry}%، %{compress}% و %{checksum}% جایگزین خواهند شد. بر مقدار download-command در فایل پیکربندی اصلی تقدم دارد.

OPAMFIXUPCRITERIA همانند OPAMUPGRADECRITERIA است، اما مختص اصلاح (fixup) و نصب مجدد می‌باشد.

OPAMIGNORECONSTRAINTS نگاه کنید به گزینه نصب --ignore-constraints-on.

OPAMIGNOREPINDEPENDS نگاه کنید به گزینه --ignore-pin-depends.

OPAMINPLACEBUILD نگاه کنید به گزینه --inplace-build.

OPAMJOBS حداکثر تعداد کارگزارهای موازی را برای اجرا تنظیم می‌کند.

OPAMJSON خروجی JSON را در فایل داده‌شده ثبت می‌کند (از نویسه `% برای شماره‌گذاری فایل‌ها استفاده کنید).

OPAMKEEPBUILDDIR نگاه کنید به گزینه نصب --keep-build-dir.

OPAMKEEPLOGS به opam می‌گوید که برخی گزارش‌های موقت دستورات و برخی پشتیبان‌ها را حذف نکند. این کار برخی مراحل نهایی‌سازی را نادیده گرفته و ممکن است به دریافت ردگیری پشته (backtrace) قابل‌اعتمادتر کمک کند.

OPAMLOCKED ترکیبی از گزینه‌های --locked و --lock-suffix.

OPAMLOGS logdir دایرکتوری گزارش‌ها را مشخص می‌کند؛ پیش‌فرض دایرکتوری موقت در /tmp است.

OPAMMAKECMD دستور make سیستم را برای استفاده تنظیم می‌کند.

OPAMMERGEOUT خروجی‌های فرایند را ادغام می‌کند (stderr روی stdout).

OPAMNO پاسخ منفی به هر پرسش مطرح‌شده؛ نگاه کنید به گزینه‌های --no و --confirm-level. در صورت تنظیم OPAMCONFIRMLEVEL یا OPAMYES، متغیر OPAMNO نادیده گرفته می‌شود.

OPAMNOAGGREGATE همراه با opam admin check، بسته‌ها را تجمیع نمی‌کند.

OPAMNOASPCUD منسوخ شده است.

OPAMNOAUTOUPGRADE ارتقای خودکار داخلی مخازن با فرمت قبلی به فرمت فعلی را در هنگام update یا init غیرفعال می‌کند.

OPAMNOCHECKSUMS در صورت موجود بودن، گزینه --no-checksums را فعال می‌کند.

OPAMNODEPEXTS مدیریت وابستگی‌های سیستمی را غیرفعال می‌کند؛ نگاه کنید به گزینه --no-depexts.

OPAMNOENVNOTICE استفاده داخلی.

OPAMNOSELFUPGRADE نگاه کنید به گزینه --no-self-upgrade.

OPAMPINKINDAUTO تعیین می‌کند که آیا در هنگام پین کردن به یک مسیر محلی، سیستم‌های کنترل نسخه تشخیص داده شوند یا خیر. از نسخه 1.3.0 به بعد به صورت پیش‌فرض فعال است.

OPAMPRECISETRACKING ردیابی دقیق و با جزئیات دایرکتوری‌ها.

OPAMPREPRO برای غیرفعال کردن پیش‌پردازش CUDF این مقدار را روی false قرار دهید. کارایی کمتری دارد، اما ممکن است به اشکال‌زدایی مشکلات حل‌کننده کمک کند.

OPAMREPOSITORYTARRING مخازن را در قالب فایل‌های tar.gz به صورت درونی ذخیره می‌کند. این کار می‌تواند روی سیستم‌فایل‌هایی که با پیمایش درخت‌های بزرگ مشکل دارند اما حافظه موقت (caching) خوبی در /tmp دارند بسیار سریع‌تر باشد؛ با این حال در حالت کلی کندتر است.

OPAMREQUIRECHECKSUMS در صورت موجود بودن، گزینه --require-checksums را فعال می‌کند (برای مثال در opam install).

OPAMRETRIES تعداد دفعات تلاش مجدد قبل از اعلام شکست دانلودها را تعیین می‌کند.

OPAMREUSEBUILDDIR نگاه کنید به گزینه --reuse-build-dir.

OPAMROOT نگاه کنید به گزینه --root. این متغیر به صورت خودکار توسط دستور opam env --root=DIR --set-root تنظیم می‌شود.

OPAMROOTISOK هنگام اجرا با دسترسی ریشه (مدیر سیستم) خطایی اعلام نمی‌کند.

OPAMSAFE نگاه کنید به گزینه --safe.

OPAMSHOW نگاه کنید به گزینه --show.

OPAMSKIPUPDATE نگاه کنید به گزینه --skip-updates.

OPAMSKIPVERSIONCHECKS برخی از بررسی‌های نسخه را دور می‌زند. ناامن است و صرفاً برای آزمون‌های سازگاری کاربرد دارد.

OPAMSOLVERALLOWSUBOPTIMAL (پیش‌فرض true) به برخی حل‌کننده‌ها اجازه می‌دهد در صورت اتمام مهلت زمانی (timeout)، همچنان یک پاسخ بازگردانند؛ در حالی که از سازگاری پاسخ اطمینان حاصل می‌شود، در این حالت هیچ تضمینی وجود ندارد که پاسخ با معیارهای بهینه‌سازی مورد انتظار مطابقت داشته باشد. اگر true باشد، opam با یک هشدار ادامه می‌دهد، و اگر false باشد، اتمام مهلت زمانی یک خطا در نظر گرفته می‌شود. در حال حاضر فقط بخش پشتیبان builtin-z3 این حالت را مدیریت می‌کند.

OPAMSOLVERTIMEOUT مهلت زمانی مجاز حل‌کننده را تغییر می‌دهد. پیش‌فرض 60.0 است؛ برای زمان نامحدود روی 0 تنظیم کنید. توجه داشته باشید که ممکن است همه حل‌کننده‌ها از این گزینه پشتیبانی نکنند.

OPAMSOLVERTOLERANCE میزان مدارا در قبال انتخاب راه‌حل غیربهینه توسط حل‌کننده را تغییر می‌دهد (به عنوان مثال ممکن است بسته‌های قدیمی را واکشی کند). مقادیر معمول از 0.0 (بهترین راه‌حل شناخته‌شده برای حل‌کننده) تا 1.0 (راه‌حل غیربهینه) متغیر است. مقدار پیش‌فرض 0.0 است. این گزینه زمانی مفید است که حل‌کننده نتواند در زمانی معقول پاسخی پیدا کند (نگاه کنید به $OPAMSOLVERTIMEOUT). توجه داشته باشید که ممکن است همه حل‌کننده‌ها از این گزینه پشتیبانی نکنند.

OPAMSTATS در نسخه 2.4 حذف شده است.

OPAMSTATUSLINE یک خط وضعیت پویا نمایش می‌دهد که رویدادهای در حال اجرا را روی ترمینال نشان می‌دهد (یکی از مقادیر always، never یا auto).

OPAMSTRICT در صورت بروز هرگونه ناهمخوانی (خواندن فایل، ایمپورت سوئیچ و غیره) با خطا متوقف می‌شود.

OPAMSWITCH نگاه کنید به گزینه --switch. به صورت خودکار توسط دستور opam env --switch=SWITCH --set-switch تنظیم می‌شود.

OPAMUNLOCKBASE نگاه کنید به گزینه نصب --unlock-base.

OPAMUPGRADECRITERIA ترجیحات (preferences) کاربر را برای حل وابستگی‌ها هنگام انجام ارتقا مشخص می‌کند. در صورت تنظیم هر دو، در ارتقاها بر OPAMCRITERIA تقدم دارد. همچنین نگاه کنید به گزینه --criteria.

OPAMUSEINTERNALSOLVER نگاه کنید به گزینه --use-internal-solver.

OPAMUSEOPENSSL در نسخه 2.2 حذف شده است.

OPAMUTF8 استفاده از نویسه‌های UTF-8 در خروجی (یکی از مقادیر always، never یا auto؛ پیش‌فرض auto است که بر اساس لوکال سیستم تعیین می‌شود).

OPAMUTF8MSGS استفاده از نویسه‌های گسترده UTF-8 (شترها) در پیام‌های opam. مستلزم فعال بودن OPAMUTF8 است. این متغیر به صورت پیش‌فرض تنها در macOS فعال است.

OPAMVALIDATIONHOOK در صورت تنظیم، از دستور %{hook}% برای اعتبارسنجی به‌روزرسانی مخزن opam استفاده می‌کند.

OPAMVERBOSE نگاه کنید به گزینه --verbose.

OPAMVERBOSEON نگاه کنید به گزینه --verbose-on.

OPAMVERSIONLAGPOWER استفاده نکنید.

OPAMWITHDEVSETUP نگاه کنید به گزینه نصب --with-dev-setup.

OPAMWITHDOC نگاه کنید به گزینه نصب --with-doc.

OPAMWITHTEST نگاه کنید به گزینه نصب --with-test.

OPAMWORKINGDIR نگاه کنید به گزینه --working-dir.

OPAMYES نگاه کنید به گزینه‌های --yes و --confirm-level. متغیر OPAMYES بر OPAMNO تقدم دارد و در صورت تنظیم OPAMCONFIRMLEVEL نادیده گرفته می‌شود.

OPAMVAR_var هنگام جایگزینی رشته‌های %{var}% در فایل‌های opam، محتوای متغیر var را بازنویسی می‌کند.

OPAMVAR_package_var هنگام جایگزینی رشته‌های %{package:var}% در فایل‌های opam، محتوای متغیر package:var را بازنویسی می‌کند.

تمامی اسکریپت‌ها و فراخوانی‌های برنامه‌نویسی‌شده opam باید از گزینه --cli استفاده کنند تا اطمینان حاصل شود که با نسخه‌های آینده کلاینت opam بدون مشکل کار خواهند کرد. علاوه بر این، پست‌های وبلاگ یا سایر مستندات نیز می‌توانند از آن بهره‌مند شوند، چرا که از قدیمی و منسوخ شدن اطلاعات جلوگیری می‌کند.

اگرچه opam فقط از ریشه‌ها (~/.opam/) برای نسخه فعلی پشتیبانی می‌کند، اما سازگاری رو به عقب را برای رابط خط فرمان خود فراهم می‌سازد.

از آنجا که پشتیبانی از نسخه CLI فقط از نسخه opam 2.1 اضافه شد، برای انتخاب پشتیبانی 2.0 از متغیر OPAMCLI استفاده کنید (چرا که opam 2.0 آن را نادیده خواهد گرفت)، و برای نسخه‌های 2.1 (یا بالاتر) از --cli=2.1 استفاده نمایید، چرا که کنترل نحو با استفاده از متغیر محیطی شکننده است. به همین منظور، اگر OPAMCLI نسخه‌ای معتبر غیر از 2.0 را مشخص کند یا اگر --cli=2.0 مشخص شده باشد، opam یک هشدار نمایش می‌دهد.

نسخه خط فرمان با استفاده از گزینه --cli یا متغیر محیطی OPAMCLI انتخاب می‌شود. گزینه --cli می‌تواند بیش از یک بار مشخص شود که در این حالت آخرین مورد اولویت خواهد داشت. متغیر OPAMCLI فقط در صورتی بررسی می‌شود که --cli داده نشده باشد.

به عنوان استثنایی بر موارد زیر، در صورتی که دستور یافت نشود یا قابل اجرا نباشد، دستور exec مقدار 127 و در غیر این صورت مقدار خروج خود دستور را برمی‌گرداند.

0
موفقیت، یا true برای پرس‌وجوهای بولی.
1
مقدار False. هنگامی که یک مقدار بازگشتی بولی انتظار می‌رود بازگردانده می‌شود، مثلاً هنگام اجرا با --check، یا برای پرس‌وجوهایی مانند opam lint.
2
آرگومان‌های نامعتبر در خط فرمان، یا اشاره آرگومان‌های خط فرمان به بستری نامعتبر (مانند فایلی که از قالب مورد انتظار پیروی نمی‌کند).
5
پیدا نشد. موردی که درخواست کردید (بسته، نسخه، مخزن و غیره) پیدا نشد.
10
لغو شد. عملیات نیازمند تایید بود که داده نشد.
15
قفل‌های مورد نیاز برای عملیات به دست نیامد.
20
هیچ راه‌حلی برای درخواست کاربر وجود ندارد. این امر برای نمونه می‌تواند ناشی از درخواست نصب دو بسته ناسازگار باشد.
30
خطا در تعریف بسته یا سایر فایل‌های فراداده (متادیتا). استفاده از --strict این خطا را بیشتر نمایان می‌سازد.
31
خطای اسکریپت بسته. برخی عملیات بسته ناموفق بود. این ممکن است خطایی در بسته‌ها یا ناسازگاری با سیستم شما باشد. این می‌تواند یک خطای جزئی باشد.
40
خطای همگام‌سازی. واکشی برخی ریموت‌ها از شبکه امکان‌پذیر نبود. این می‌تواند یک خطای جزئی باشد.
50
خطای پیکربندی. پیکربندی opam یا سیستم اجازه انجام عملیات را نمی‌دهد و نیاز به اصلاح دارد.
60
شکست حل‌کننده. حل‌کننده نتوانست پاسخی معتبر ارائه دهد. این امر می‌تواند به دلیل خرابی حل‌کننده خارجی یا خطا در پیکربندی حل‌کننده باشد.
99
خطای داخلی. مشکلی رخ داده است که احتمالاً ناشی از یک اشکال در خود opam است.
130
وقفه توسط کاربر. سیگنال SIGINT دریافت شد، که معمولاً به دلیل فشردن کلیدهای Ctrl-C توسط کاربر است.
0
در صورت موفقیت.
123
در صورت بروز خطاهای نامشخص گزارش‌شده در خطای استاندارد (stderr).
124
در صورت بروز خطاهای تجزیه خط فرمان.
125
در صورت بروز خطاهای غیرمنتظره داخلی (اشکالات نرم‌افزاری).

به https://opam.ocaml.org/doc مراجعه کنید.

David Allsopp <david@tarides.com>

Vincent Bernardoff <vb@luminar.eu.org>

Raja Boujbel <raja.boujbel@ocamlpro.com>

Kate Deplaix <kit-ty-kate@outlook.com>

Roberto Di Cosmo <roberto@dicosmo.org>

Thomas Gazagnaire <thomas@gazagnaire.org>

Louis Gesbert <louis.gesbert@ocamlpro.com>

Fabrice Le Fessant <Fabrice.Le_fessant@inria.fr>

Anil Madhavapeddy <anil@recoil.org>

Guillem Rieu <guillem.rieu@ocamlpro.com>

Ralf Treinen <ralf.treinen@pps.jussieu.fr>

Frederic Tuong <tuong@users.gforge.inria.fr>

opam(1)

گزارش‌های اشکال را در https://github.com/ocaml/opam/issues بررسی کنید.

Opam 2.5.2