OPAM-INIT(1) Opam Manual OPAM-INIT(1)

opam-init - مقداردهی اولیه وضعیت opam یا تنظیم گزینه‌های init

opam init [OPTION]… [NAME] [ADDRESS]

مقداردهی اولیه وضعیت opam، یا به‌روزرسانی گزینه‌های init برای opam.

دستور init یک «opam root» محلی (به‌طور پیش‌فرض ~/.opam/ مگر اینکه توسط --root یا متغیر محیطی OPAMROOT لغو شده باشد) را مقداردهی اولیه می‌کند که داده‌ها و بسته‌های opam را در خود نگه می‌دارد. این یک گام ضروری برای عملکرد عادی opam است. مخازن نرم‌افزاری اولیه دریافت می‌شوند، و بر اساس پیکربندی و گزینه‌ها، یک 'switch' اولیه نیز می‌تواند نصب شود. این موارد را می‌توان بعداً با استفاده از opam switch و opam repository پیکربندی کرد.

مخزن اولیه و مقادیر پیش‌فرض را می‌توان از طریق فایل پیکربندی موجود در ~/.opamrc یا /etc/opamrc تنظیم کرد.

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

آدرس مخزن بسته‌های اولیه، هنگام ایجاد یک opam root جدید.
نام مخزن اولیه، هنگام ایجاد یک opam root جدید.

-a, --auto-setup
انجام خودکار راه‌اندازی کامل، شامل افزودن یک سطر به فایل‌های راه‌انداز شل شما.
--bare
مقداردهی اولیه وضعیت opam، بدون راه‌اندازی هیچ switch کامپایلری در این مرحله.
--bypass-checks
صرف‌نظر کردن از بررسی ابزارهای لازم یا توصیه‌شده، و فرض اینکه همه چیز مرتب است
-c PACKAGE, --compiler=PACKAGE
تعیین کامپایلر برای نصب (هنگام ایجاد یک switch اولیه)
--config=FILE
استفاده از فایل پیکربندی init داده‌شده. در صورت تکرار، آخرین مورد بالاترین اولویت را دارد (یعنی هر فیلد مقدار خود را از آخرین جایی که تعریف شده است دریافت می‌کند). مشخص کردن یک URL که به فایل پیکربندی اشاره دارد نیز مجاز است.
--cygwin-extra-packages=CYGWIN_PACKAGES
فقط در Windows (آزمایشی). مشخص کردن بسته‌های اضافی برای نصب با --cygwin-internal-install
--cygwin-internal-install
فقط در Windows (آزمایشی). اجازه به opam برای راه‌اندازی و مدیریت یک نصب داخلی Cygwin (توصیه‌شده)
--cygwin-local-install
فقط در Windows (آزمایشی). استفاده از نصب از پیش موجود Cygwin
--cygwin-location=DIR
فقط در Windows (آزمایشی). تعیین مکان ریشه Cygwin
--disable-completion
غیرفعال کردن تکمیل خودکار شل در اسکریپت‌های init برای opam.
--disable-sandboxing
استفاده از پیکربندی پیش‌فرض با غیرفعال بودن sandboxing (توجه داشته باشید که اگر --no-opamrc مشخص نشده باشد یا از --config استفاده شود، این مورد ممکن است توسط `opamrc' لغو شود). استفاده از این گزینه با مسئولیت خودتان است؛ بدون sandboxing این احتمال وجود دارد که اسکریپت یک بستهٔ معیوب تمامی فایل‌های شما را پاک کند.
--disable-shell-hook
غیرفعال کردن ثبت قلاب شل (shell hook) در اسکریپت‌های init برای opam.
--dot-profile=FILENAME
نام فایل پیکربندی جهت به‌روزرسانی به‌جای ~/.profile یا ~/.zshrc بر اساس تشخیص شل.
--enable-completion
راه‌اندازی تکمیل خودکار شل در اسکریپت‌های init برای opam، برای شل‌های پشتیبانی‌شده.
--enable-shell-hook
راه‌اندازی اسکریپت‌های init در opam برای ثبت یک قلاب شل که به‌طور خودکار محیط شل را در هر خط اعلان (prompt) به‌روز نگه می‌دارد.
--git-location=DIR
فقط در Windows (آزمایشی). مشخص کردن دایرکتوری باینری git. اطمینان حاصل کنید که شامل bash در همان دایرکتوری نباشد
-i, --interactive
اجرای تعاملی راه‌اندازی (این حالت پیش‌فرض برای اجرای اولیه است، یا زمانی که گزینه‌های خاص‌تری مشخص نشده باشند)
-k KIND, --kind=KIND
مشخص کردن نوع مخزن مورد استفاده (یکی از http، local، git، darcs یا hg).
-n, --no-setup
پیکربندی شل کاربر را برای راه‌اندازی opam به‌روزرسانی نکن. همچنین به معنای --disable-shell-hook است، مگر اینکه --interactive فعال باشد یا به‌صورت دیگری مشخص شده باشد
--no-cygwin-setup
آزمایشی. عدم راه‌اندازی Cygwin
--no-git-location
آزمایشی. دایرکتوری باینری git مشخص نشود و برای تعیین آن نیز سوالی پرسیده نشود.
--no-opamrc
فایل‌های `/etc/opamrc' یا `~/.opamrc' خوانده نشوند: تنها از تنظیمات پیش‌فرض و فایل‌های مشخص‌شده از طریق --config استفاده شود
--reinit
اجرای مجدد بررسی‌ها و راه‌اندازی اولیه بر اساس opamrc، حتی اگر این یک opam root جدید نباشد
--shell=SHELL
تنظیم حالت پیکربندی برای محیط opam متناسب با SHELL. یکی از bash، sh، csh، zsh، fish، pwsh، cmd یا powershell. به‌طور پیش‌فرض از روی فرآیندهای والد و متغیر $SHELL حدس زده می‌شود.
--shell-setup
راه‌اندازی خودکار پیکربندی شل کاربر برای opam، به عنوان مثال افزودن یک خط به فایل `~/.profile'.
--show-default-opamrc
چاپ پیکربندی پیش‌فرض توکار در stdout و خروج.SH "فایل پیکربندی (CONFIGURATION FILE)"

هر فیلدی از پیکربندی اولیه‌ی توکار را می‌توان از طریق ~/.opamrc، /etc/opamrc، یا فایلی که با --config مشخص شده، بازنویسی کرد. پیکربندی پیش‌فرض برای این نسخه از opam را می‌توان با استفاده از --show-default-opamrc به دست آورد.

--assume-depexts
مرحله‌ی نصب برای هرگونه بسته سیستمی ناموجود را نادیده گرفته و در هر صورت تلاش می‌کند تا با کامپایل بسته‌های opam ادامه دهد. در صورت موفقیت‌آمیز بودن نصب، opam دیگر درباره‌ی این بسته‌های سیستمی سؤالی نمی‌پرسد. تنها در صورتی معنادار است که مدیریت وابستگی‌های خارجی فعال باشد.
-b, --keep-build-dir
پوشه‌های ساخت را پس از کامپایل بسته‌ها نگه می‌دارد. این معادل تنظیم $OPAMKEEPBUILDDIR بر روی "true" است.
--build-doc
در نسخه‌ی 2.1 حذف شد، به جای آن از --with-doc استفاده کنید.
--build-test
در نسخه‌ی 2.1 حذف شد، به جای آن از --with-test استفاده کنید.
-d, --with-doc
مستندات بسته را می‌سازد. این گزینه فقط بر بسته‌های مشخص‌شده در خط فرمان تأثیر می‌گذارد. این معادل تنظیم $OPAMWITHDOC (یا متغیر منسوخ‌شده‌ی $OPAMBUILDDOC) بر روی "true" است.
--dry-run
دستور را شبیه‌سازی می‌کند، اما در عمل هیچ تغییری اعمال نمی‌کند. همچنین می‌تواند از طریق متغیر محیطی $OPAMDEBUG تنظیم شود.
--fake
این گزینه عملیات را در پایگاه‌داده‌ی opam ثبت می‌کند، بدون اینکه واقعاً آن‌ها را انجام دهد. هشدار: این گزینه خطرناک است و احتمالاً محیط opam شما را خراب می‌کند. احتمالاً آنچه می‌خواهید --dry-run است. به شما هشدار داده شد.
--ignore-constraints-on[=PACKAGES] (default=)
برنامه opam را مجبور می‌کند تا محدودیت‌های نسخه را در تمام وابستگی‌ها به بسته‌های فهرست‌شده نادیده بگیرد. این مورد می‌تواند برای آزمایش سازگاری استفاده شود، اما در صورت استفاده از آن انتظار خرابی در ساخت را داشته باشید. توجه داشته باشید که در دسترس بودن بسته‌ها و همچنین محدودیت‌های نسخه روی وابستگی‌های اختیاری و تداخل‌ها بدون تغییر باقی می‌مانند. این معادل تنظیم $OPAMIGNORECONSTRAINTS است.
--inplace-build
هنگام کامپایل بسته‌ای که سورس آن به یک پوشه‌ی محلی متصل است، عملیات ساخت و نصب را مستقیماً در همان پوشه انجام می‌دهد، نه در یک رونوشت تمیز که توسط opam مدیریت می‌شود. این گزینه تنها بر بسته‌هایی تأثیر می‌گذارد که به صراحت در خط فرمان فهرست شده‌اند. این معادل تنظیم $OPAMINPLACEBUILD بر روی "true" است.
-j JOBS, --jobs=JOBS
حداکثر تعداد کارهای همزمان مورد استفاده را تعیین می‌کند. مقدار پیش‌فرض بر اساس تعداد هسته‌ها محاسبه می‌شود. همچنین می‌توانید آن را با متغیر محیطی $OPAMJOBS تنظیم کنید.
--lock-suffix=SUFFIX (absent=locked)
پسوند فایل‌های قفل‌شده را به SUFFIX تنظیم می‌کند.
--locked
در دستوراتی که از فایل‌های opam یافت‌شده از سورس‌های پین‌شده استفاده می‌کنند، اگر نسخه‌ای از فایل با پسوند افزوده‌شده‌ی .locked پیدا شود (به عنوان مثال foo.opam.locked در کنار foo.opam)، آن نسخه به جای نسخه اصلی استفاده خواهد شد. این ویژگی معمولاً برای ارائه‌ی مجموعه‌ای دقیق‌تر از وابستگی‌ها و بازتولید شرایط ساخت مشابه کاربرد دارد، از این رو این نام را گرفته است. گزینه‌ی lock می‌تواند برای تولید چنین فایل‌هایی بر اساس نسخه‌های وابستگی‌های فعلی نصب‌شده روی میزبان استفاده شود. این معادل تنظیم متغیر محیطی $OPAMLOCKED است. توجه داشته باشید که این گزینه عموماً بر بسته‌هایی که قبلاً پین شده‌اند تأثیری ندارد.
-m MAKE, --make=MAKE
در نسخه‌ی 2.1 حذف شد، به جای آن از opam config set[-global] make MAKE استفاده کنید.
--no-checksums
چک‌سام آرشیوهای بارگیری‌شده را اعتبارسنجی نمی‌کند. این معادل تنظیم $OPAMNOCHECKSUMS بر روی "true" است.
--no-depexts
مدیریت وابستگی‌های خارجی را به‌طور موقت غیرفعال می‌کند. این گزینه را می‌توان زمانی به کار برد که بسته‌ای در مدیر بسته‌ی سیستم در دسترس نیست، اما وابستگی مورد نیاز به صورت دستی نصب شده است. این گزینه متضمن --assume-depexts است و در صورت موفقیت، استثناها را نیز ذخیره می‌کند.
--require-checksums
نصب بسته‌هایی را که برای آرشیوهای بالادست چک‌سام ارائه نمی‌دهند رد می‌کند. این معادل تنظیم $OPAMREQUIRECHECKSUMS بر روی "true" است.
--reuse-build-dir
به جای کامپایل از یک کلون تازه از سورس، پوشه‌های ساخت موجود (که با استفاده از --keep-build-dir نگه داشته شده‌اند) را دوباره استفاده می‌کند. این کار می‌تواند سرعت را افزایش دهد، اما اگر سیستم‌های ساخت بسته‌ها ارتقای وابستگی‌ها را به خوبی مدیریت نکنند ممکن است منجر به خرابی شود. این معادل تنظیم $OPAMREUSEBUILDDIR بر روی "true" است.
--show-actions
حل‌کننده را فراخوانی کرده و عملیات را نمایش می‌دهد. هیچ تغییری اعمال نمی‌کند. این معادل تنظیم $OPAMSHOW است.
--skip-updates
هنگام اجرای install، upgrade یا reinstall بر روی بسته‌های سورس‌پین‌شده، آن‌ها به طور معمول ابتدا از مبدأ خود به‌روزرسانی می‌شوند. این پرچم رفتار مذکور را غیرفعال کرده و آن‌ها را در نسخه‌ی موجود در حافظه‌ی پنهان نگه می‌دارد. این معادل تنظیم $OPAMSKIPUPDATE است.
-t, --with-test
آزمون‌های واحد بسته را ساخته و اجرا می‌کند. این تنها بر بسته‌های فهرست‌شده در خط فرمان تأثیر می‌گذارد. این معادل تنظیم $OPAMWITHTEST (یا متغیر منسوخ‌شده‌ی $OPAMBUILDTEST) بر روی "true" است.
--unlock-base
در نسخه‌ی 2.1 حذف شد، به جای آن از --update-invariant استفاده کنید.
--update-invariant
امکان اعمال تغییرات بر روی بسته‌های تنظیم‌شده به عنوان پایه‌ی switch (معمولاً کامپایلر اصلی) را فراهم می‌کند. با احتیاط استفاده شود. این معادل تنظیم متغیر محیطی $OPAMUNLOCKBASE است.
--verbose-on=PACKAGES
ارائه‌ی خروجی پرجزئیات‌تر درباره‌ی بسته‌های خاص. این معادل تنظیم $OPAMVERBOSE است.
--with-dev-setup
وابستگی‌های مربوط به ابزارهای صرفاً توسعه را شامل می‌شود.

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

--best-effort
در صورتی که نصب تمام بسته‌های درخواستی مقدور نباشد، با خطا متوقف نشو: تلاش می‌کند تا جای ممکن بسته‌های بیشتری را نصب کند. توجه داشته باشید که ممکن است تمام حل‌کننده‌های خارجی از این گزینه پشتیبانی نکنند (نسخه‌های اخیر aspcud یا mccs باید پشتیبانی کنند). این معادل تنظیم متغیر محیطی $OPAMBESTEFFORT است.
--cli=MAJOR.MINOR (absent=2.5)
از نحو و معناشناسی رابط خط فرمان MAJOR.MINOR استفاده می‌کند. این گزینه برای هرگونه استفاده‌ی مکرر و پایدار از opam (اسکریپت‌ها، پست‌های وبلاگ و غیره) در نظر گرفته شده است؛ هر نسخه‌ای از opam در همان سری MAJOR مشابه نسخه‌ی MINOR مشخص‌شده رفتار خواهد کرد. این پرچم در opam 2.0 در دسترس نبود، بنابراین برای انتخاب CLI نسخه‌ی 2.0، متغیر محیطی OPAMCLI را به جای استفاده از این پارامتر بر روی 2.0 تنظیم کنید.
--color=WHEN
رنگی‌سازی خروجی. مقدار WHEN باید یکی از موارد always، never یا auto باشد.
--confirm-level=LEVEL
سطح تأیید؛ مقدار LEVEL باید یکی از موارد ask، no، yes یا unsafe-yes باشد. می‌تواند بیش از یک بار مشخص شود. اگر --yes یا --no نیز داده شوند، مقدار آخرین --confirm-level لحاظ می‌شود. این معادل تنظیم $OPAMCONFIRMLEVEL است.
--criteria=CRITERIA
ترجیحات کاربر را برای حل وابستگی‌ها در این اجرا مشخص می‌کند. متغیرهای $OPAMCRITERIA، $OPAMFIXUPCRITERIA و $OPAMUPGRADECRITERIA را نادیده می‌گیرد. برای جزئیات در مورد زبان پشتیبانی‌شده و حل‌کننده‌های خارجی موجود، به http://opam.ocaml.org/doc/External_solvers.html مراجعه کنید. یک راهنمای عمومی برای استفاده از اولویت‌های حل‌کننده در http://www.dicosmo.org/Articles/usercriteria.pdf موجود است.
--cudf=FILENAME
گزینه‌ی اشکال‌زدایی: درخواست‌های CUDF ارسال‌شده به حل‌کننده را در FILENAME-<n>.cudf ذخیره می‌کند، که در آن <n> نشان‌دهنده‌ی فراخوانی n-ام از حل‌کننده در طول اجرای opam است.
--debug
چاپ پیام‌های اشکال‌زدایی در stderr. این معادل تنظیم $OPAMDEBUG بر روی "true" است.
--debug-level=LEVEL
مشابه --debug، اما امکان تعیین سطح اشکال‌زدایی را فراهم می‌کند (--debug آن را بر روی ۱ تنظیم می‌کند). معادل تنظیم $OPAMDEBUG بر روی یک عدد صحیح مثبت است.
--git-version
نسخه‌ی git مربوط به opam را در صورت تعیین بودن (یعنی زمانی که از یک نسخه‌ی توسعه استفاده می‌کنید) چاپ کرده و خارج می‌شود.
--help[=FMT] (default=auto)
نمایش این راهنما در قالب FMT. مقدار FMT باید یکی از مقادیر auto، pager، groff یا plain باشد. با گزینه‌ی auto، هر زمان که متغیر محیطی TERM برابر با dumb یا تعریف‌نشده باشد، قالب به صورت pager یا plain خواهد بود.
--ignore-pin-depends
پین‌های اضافی مورد نیاز بسته‌هایی را که پین می‌شوند (چه به صورت دستی از طریق opam pin یا از طریق opam install DIR)، نادیده می‌گیرد. این معادل تنظیم IGNOREPINDEPENDS=true است.
--json=FILENAME
نتایج اجرای opam را در یک فایل ماشین‌خوان ذخیره می‌کند. اگر نام فایل شامل نویسه‌ی `%' باشد، با شاخصی جایگزین می‌شود که از رونویسی فایل‌های موجود جلوگیری کند. مشابه تنظیم متغیر $OPAMJSON است.
--no
بدون پرسش به تمام سؤالات بله/خیر opam پاسخ خیر می‌دهد. همچنین --confirm-level را ببینید. این معادل تنظیم $OPAMNO بر روی "true" است.
--no-aspcud
در نسخه‌ی 2.1 حذف شد.
--no-auto-upgrade
هنگام پیکربندی یا به‌روزرسانی مخزنی که برای نسخه‌های اولیه‌ی opam (نسخه 1.2) نوشته شده است، opam به صورت درونی آن را به قالب فعلی تبدیل می‌کند. این گزینه آن رفتار را غیرفعال می‌کند. توجه داشته باشید که مخازن باید نسخه‌ی قالب خود را در یک فایل 'repo' در ریشه‌ی خود مشخص کنند، در غیر این صورت فرض می‌شود که در قالب قدیمی هستند. در هر صورت، ارتقای دستی مخازن با استفاده از opam admin upgrade [--mirror URL] در صورت امکان ترجیح داده می‌شود.
--no-self-upgrade
برنامه opam در صورت وجود، خود را با یک باینری جدیدتر در مسیر OPAMROOT/opam جایگزین خواهد کرد. این گزینه این رفتار را غیرفعال می‌کند.
-q, --quiet
گزینه‌ی --verbose را غیرفعال می‌کند.
--root=ROOT
از ROOT به عنوان مسیر ریشه‌ی فعلی استفاده می‌کند. این معادل تنظیم $OPAMROOT بر روی ROOT است.
--safe, --readonly
اطمینان حاصل می‌کند که هیچ چیزی به طور خودکار به‌روزرسانی یا بازنویسی نمی‌شود. به عنوان مثال برای فراخوانی از اسکریپت‌های تکمیل خودکار مفید است. هر زمان که به چنین عملیاتی نیاز باشد با شکست متوقف می‌شود؛ همچنین از انتظار برای قفل‌ها جلوگیری کرده، سؤالات تعاملی را رد می‌کند و متغیر $OPAMDEBUG را نادیده می‌گیرد. این معادل تنظیم متغیر محیطی $OPAMSAFE است.
--solver=CMD
حل‌کننده‌ی CUDF مورد استفاده برای رفع مشکلات نصب بسته را تعیین می‌کند. این می‌تواند یک حل‌کننده‌ی از پیش‌تعریف‌شده باشد (این نسخه از opam از موارد builtin-mccs+lp()، builtin-mccs+glpk، builtin-dummy-z3-solver، builtin-0install، aspcud، mccs، aspcud-old و packup پشتیبانی می‌کند) یا یک دستور سفارشی که باید شامل متغیرهای %{input}%، %{output}%، %{criteria}% و در صورت تمایل %{timeout}% باشد. این معادل تنظیم $OPAMEXTERNALSOLVER است.
--strict
هر زمان که خطایی در تعریف یک بسته یا در فایل پیکربندی یافت شود با خطا متوقف می‌شود. پیش‌فرض بر این است که در صورت امکان بدون هشدار ادامه یابد.
--switch=SWITCH
از SWITCH به عنوان switch کامپایلر فعلی استفاده می‌کند. این معادل تنظیم $OPAMSWITCH بر روی SWITCH است.
--use-internal-solver
هرگونه حل‌کننده‌ی خارجی را غیرفعال کرده و از حل‌کننده‌ی درونی استفاده می‌کند (این نیازمند آن است که opam با یک حل‌کننده‌ی توکار کامپایل شده باشد). این معادل تنظیم $OPAMNOASPCUD یا $OPAMUSEINTERNALSOLVER است.
-v, --verbose
توضیحات بیشتر و پرجزئیات‌تر ارائه می‌دهد. یک بار درج -v تمام دستورهای بسته را نشان می‌دهد؛ با تکرار آن دستورهای فراخوانی‌شده به صورت داخلی نیز نمایش داده می‌شوند (مانند tar، curl، patch و غیره). تکرار به تعداد n بار معادل تنظیم $OPAMVERBOSE بر روی "n" است.
--version
نمایش اطلاعات نسخه.
-w, --working-dir
هنگام به‌روزرسانی بسته‌های متصل به یک پوشه‌ی محلی و تحت سیستم کنترل نسخه، به جای آخرین وضعیت ثبت‌شده (commit) یا ارجاعی که به آن اشاره می‌کنند، به وضعیت کاری فعلی سورس آن‌ها به‌روزرسانی می‌کند. از آنجا که پوشه‌ی سورس همان‌طور که هست کپی می‌شود، اگر تمیز نباشد ممکن است به خرابی ساخت opam منجر شود. این گزینه فقط بر بسته‌هایی که به صراحت در خط فرمان فهرست شده‌اند تأثیر می‌گذارد. همچنین می‌تواند با متغیر $OPAMWORKINGDIR تنظیم شود.
-y, --yes
بدون پرسش به تمام سؤالات بله/خیر opam پاسخ بله می‌دهد. همچنین --confirm-level را ببینید. این معادل تنظیم $OPAMYES بر روی "true" است..SH "محیط (ENVIRONMENT)"

دستور opam از متغیرهای محیطی فهرست‌شده در اینجا استفاده می‌کند. متغیرهای بولی (Boolean) باید برای غیرفعال‌سازی روی "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 اعلام می‌کند که برخی گزارش‌های موقت دستورات و برخی پشتیبان‌ها را حذف نکند. این کار برخی بخش‌های پایانی را نادیده می‌گیرد و همچنین ممکن است به دریافت ردگیری‌های پشته (backtraces) قابل‌اعتمادتر کمک کند.

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

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

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

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

OPAMNO پاسخ منفی (no) به تمام پرسش‌های مطرح‌شده؛ گزینه‌های `--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 این مقدار را روی false تنظیم کنید تا پیش‌پردازش CUDF غیرفعال شود. کارایی کمتری دارد، اما ممکن است به اشکال‌زدایی مشکلات حل‌کننده کمک کند.

OPAMREPOSITORYTARRING مخازن را در ساختار داخلی به صورت فایل‌های tar.gz ذخیره می‌کند. این ویژگی می‌تواند روی سیستم‌های فایلی که با پیمایش درخت‌های بزرگ به‌خوبی کنار نمی‌آیند اما کش مناسبی در /tmp دارند بسیار سریع‌تر باشد. با این حال در حالت کلی کندتر است.

OPAMREQUIRECHECKSUMS گزینهٔ `--require-checksums' را در صورت در دسترس بودن فعال می‌کند (برای نمونه برای `opam install').

OPAMRETRIES تعداد دفعات تلاش پیش از ناموفق اعلام شدن دانلودها را مشخص می‌کند.

OPAMREUSEBUILDDIR گزینهٔ `--reuse-build-dir' را ببینید.

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

OPAMROOTISOK هنگام اجرا با دسترسی ریشه (root) هشداری نمایش نمی‌دهد.

OPAMSAFE گزینهٔ `--safe' را ببینید.

OPAMSHOW گزینهٔ `--show' را ببینید.

OPAMSKIPUPDATE گزینهٔ `--skip-updates' را ببینید.

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

OPAMSOLVERALLOWSUBOPTIMAL (پیش‌فرض `true') به برخی از حل‌کننده‌ها اجازه می‌دهد که پس از به پایان رسیدن مهلت زمانی نیز پاسخی بازگردانند؛ اگرچه سازگاری پاسخ همچنان تضمین‌شده است، اما در این حالت هیچ تضمینی نیست که با معیارهای بهینه‌سازی مورد انتظار همخوانی داشته باشد. اگر `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 استفاده از نویسه‌های UTF8 در خروجی (یکی از مقادیر always، never یا auto). مقدار پیش‌فرض `auto' است که بر اساس locale مشخص می‌شود).

OPAMUTF8MSGS استفاده از نویسه‌های گسترش‌یافتهٔ UTF8 (نماد شترها) در پیام‌های 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 را بازنویسی می‌کند..SH "نسخه خط فرمان (CLI VERSION)"

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

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

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

نسخه خط فرمان با استفاده از گزینه `--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
شکست حل‌کننده (Solver). حل‌کننده نتوانست پاسخی معتبر و منطقی بازگرداند. این مشکل می‌تواند ناشی از یک حل‌کننده خارجی معیوب یا خطایی در پیکربندی حل‌کننده باشد.
99
خطای داخلی. مشکلی رخ داد، احتمالاً به دلیل یک باگ در خود opam.
130
وقفه کاربر. سیگنال SIGINT دریافت شد، که معمولاً به دلیل فشردن Ctrl-C توسط کاربر است.
0
در صورت موفقیت.
123
در صورت خطاهای نامشخص گزارش‌شده روی خروجی خطای استاندارد.
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>.SH "همچنین ببینید (SEE ALSO)"

opam(1)

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

Opam 2.5.2