| OPAM(1) | Opam Manual | OPAM(1) |
نام (NAME)
opam - مدیریت بستهها مبتنی بر کد منبع
خلاصه دستور (SYNOPSIS)
opam [COMMAND] …
توضیحات (DESCRIPTION)
Opam یک مدیر بسته است. این ابزار از ابزارهای قدرتمند mancoosi برای مدیریت وابستگیها، از جمله پشتیبانی از محدودیتهای نسخه، وابستگیهای اختیاری و مدیریت تداخلها استفاده میکند. پیکربندی پیشفرض، آن را به مخزن رسمی بستهها برای OCaml متصل میکند.
این ابزار از مخازن دوردست گوناگونی چون HTTP، rsync، git، darcs و mercurial پشتیبانی میکند. همهچیز درون یک دایرکتوری محلی opam نصب میشود که میتواند شامل چندین پیشوند نصب (installation prefix) با مجموعههای متفاوتی از بستههای نصبشده باشد.
برای کسب اطلاعات بیشتر در رابطه با یک دستور خاص، از opam <command> --help یا opam help <command> استفاده کنید.
دستورها (COMMANDS)
- admin [OPTION]…
- ابزارهایی برای مدیران مخزن
- clean [OPTION]…
- پاکسازی حافظههای موقت (caches) opam
- config [OPTION]… [COMMAND] [ARG]…
- نمایش گزینههای پیکربندی برای بستهها.
- env [OPTION]…
- چاپ تخصیص متغیرهای مناسب شل در خروجی استاندارد (stdout)
- exec [OPTION]… COMMAND [ARG]...…
- اجرای یک دستور در محیط مناسب opam
- help [--man-format=FMT] [OPTION]… [TOPIC]
- نمایش راهنما درباره opam و دستورهای opam.
- init [OPTION]… [NAME] [ADDRESS]
- مقداردهی اولیه وضعیت opam یا تنظیم گزینههای init.
- install [OPTION]… [PACKAGES]…
- نصب فهرستی از بستهها.
- lint [OPTION]… [FILES]…
- بررسی و اعتبارسنجی فایلهای توصیف بسته ('opam').
- list [--check] [--no-depexts] [--silent] [OPTION]… [PATTERNS]…
- نمایش فهرست بستههای موجود.
- lock [--direct-only] [--keep-local] [--lock-suffix=SUFFIX] [OPTION]… [PACKAGES]…
- ایجاد فایلهای قفلشده opam برای به اشتراکگذاری محیطهای ساخت میان میزبانها.
- option [--global] [OPTION]… [FIELD[(=|+=|-=)[VALUE]]]
- تنظیمات گزینههای پیکربندی سراسری و switch
- pin [OPTION]… [COMMAND] [ARG]…
- سنجاق کردن (pin) یک بسته به یک نسخه یا منبع خاص.
- reinstall [OPTION]… [PACKAGES]…
- نصب مجدد فهرستی از بستهها.
- remove [OPTION]… [PACKAGES]…
- حذف فهرستی از بستهها.
- repository [--kind=KIND] [--rank=RANK] [--short] [OPTION]… [COMMAND] [ARG]…
- مدیریت مخازن opam.
- show [OPTION]… [PACKAGES]…
- نمایش اطلاعات درباره بستههای خاص.
- source [OPTION]… PACKAGE
- دریافت کد منبع یک بسته opam.
- switch [OPTION]… [COMMAND] [ARG]…
- مدیریت چندین پیشوند نصب.
- tree [--recursive] [--subpath=PATH] [OPTION]… [PACKAGES]…
- رسم ساختار درختی وابستگیهای بستههای نصبشده.
- update [OPTION]… [NAMES]…
- بهروزرسانی فهرست بستههای موجود.
- upgrade [OPTION]… [PACKAGES]…
- ارتقای بستههای نصبشده به آخرین نسخه.
- var [--global] [--package=PACKAGE] [OPTION]… [VAR[=[VALUE]]]
- نمایش و بهروزرسانی مقدار مرتبط با یک متغیر مشخص.SH "نامهای مستعار دستور (COMMAND ALIASES)"
- info [OPTION]… [PACKAGES]…
- نام مستعاری برای show.
- remote [--kind=KIND] [--rank=RANK] [--short] [OPTION]… [COMMAND] [ARG]…
- نام مستعاری برای repository.
- search [--check] [--no-depexts] [--silent] [OPTION]… [PATTERNS]…
- نام مستعاری برای list --search.
- uninstall [OPTION]… [PACKAGES]…
- نام مستعاری برای remove.
- unpin [OPTION]… [ARG]…
- نام مستعاری برای pin remove.
- why [--recursive] [--subpath=PATH] [OPTION]… [PACKAGES]…
- نام مستعاری برای tree --rev-deps.
گزینههای عمومی (COMMON OPTIONS)
این گزینهها میان تمام دستورها مشترک هستند.
- --best-effort
- اگر همهٔ بستههای درخواستی قابل نصب نباشند، با شکست مواجه نشو: تلاش کن تا جای ممکن بیشترین تعداد بسته نصب شود. توجه داشته باشید که ممکن است همهٔ حلکنندههای خارجی از این گزینه پشتیبانی نکنند (نسخههای اخیر aspcud یا mccs باید پشتیبانی کنند). این معادل تنظیم متغیر محیطی $OPAMBESTEFFORT است.`
- --cli=MAJOR.MINOR (در صورت نبود=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] (پیشفرض=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 در یک فایل ماشینخوان (computer-readable). اگر نام فایل شامل نویسهٔ `%' باشد، با نمایهای جایگزین میشود که مانع از رونویسی روی فایلهای موجود خواهد شد. مشابه با مقداردهی متغیر $OPAMJSON است.
- --no
- پاسخ «خیر» (no) به تمام پرسشهای بله/خیر opam بدون درخواست از کاربر. همچنین --confirm-level را ببینید. این معادل تنظیم $OPAMNO روی "true" است.
- --no-aspcud
- در نسخهٔ 2.1 حذف شد.
- --no-auto-upgrade
- هنگام پیکربندی یا بهروزرسانی مخزنی که برای نسخههای قدیمیتر opam (۱.۲) نوشته شده است، 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 به عنوان سوییچ کامپایلر فعلی. این معادل تنظیم $OPAMSWITCH روی SWITCH است.
- --use-internal-solver
- غیرفعال کردن هرگونه حلکنندهٔ خارجی و استفاده از حلکنندهٔ توکار (این مستلزم آن است که opam با یک حلکنندهٔ توکار کامپایل شده باشد). این معادل تنظیم $OPAMNOASPCUD یا $OPAMUSEINTERNALSOLVER است.
- -v, --verbose
- ارائهٔ توضیحات بیشتر. یک -v تمام دستورهای بسته را نشان میدهد؛ برای نمایش دستورهایی که به صورت داخلی فراخوانی میشوند نیز آن را تکرار کنید (مانند tar، curl، patch و غیره). تکرار به تعداد n بار معادل تنظیم $OPAMVERBOSE روی "n" است.
- --version
- نمایش اطلاعات نسخه.
- -w, --working-dir
- هنگام بهروزرسانی بستههایی که به یک دایرکتوری محلی و تحت سامانهٔ کنترل نسخه (version-controlled) متصل هستند، بهجای آخرین وضعیت کامیتشده یا ارجاعی (ref) که به آن اشاره دارند، به وضعیت کاری فعلی منبع آنها بهروزرسانی میکند. از آنجا که دایرکتوری منبع همانگونه که هست کپی میشود، اگر تمیز نباشد ممکن است به شکست ساخت opam منجر شود. این گزینه فقط بر بستههایی تأثیر میگذارد که صریحاً در خط فرمان ذکر شده باشند. همچنین میتواند با $OPAMWORKINGDIR تنظیم شود.
- -y, --yes
- پاسخ «بله» (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 حداکثر تعداد پردازشهای موازی (workers) در حال اجرا را تعیین میکند.
OPAMJSON خروجی json را در فایل دادهشده ثبت میکند (از نویسهٔ `%' برای شمارهگذاری فایلها استفاده کنید).
OPAMKEEPBUILDDIR به گزینهٔ نصب `--keep-build-dir'. مراجعه کنید.
OPAMKEEPLOGS به opam اعلام میکند که برخی گزارشهای موقت دستورات و برخی پشتیبانها را حذف نکند. این کار اجرای برخی اقدامات پایانی (finalisers) را نادیده میگیرد و ممکن است به دریافت ردگیریهای پشته (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') به برخی از حلکنندهها اجازه میدهد پس از رسیدن به اتمام مهلت زمانی (timeout)، همچنان پاسخی ارائه دهند؛ هرچند یکپارچگی پاسخ تضمین میشود، در این حالت هیچ تضمینی مبنی بر برآورده شدن معیارهای بهینهسازی مورد انتظار وجود ندارد. در صورت `true' بودن، opam همراه با یک هشدار به کار خود ادامه میدهد، و اگر `false' باشد، پایان مهلت زمانی یک خطا تلقی میشود. در حال حاضر تنها backend مربوط به builtin-z3 این حالت تنزلیافته را مدیریت میکند.
OPAMSOLVERTIMEOUT مهلت زمانی مجاز حلکننده را تغییر میدهد. مقدار پیشفرض 60.0 است؛ برای حالت نامحدود روی 0 تنظیم کنید. توجه داشته باشید که ممکن است همهٔ حلکنندهها از این گزینه پشتیبانی نکنند.
OPAMSOLVERTOLERANCE میزان تحمل حلکننده در انتخاب پاسخی غیربهینه را تعیین میکند (به عنوان مثال، ممکن است بستههای قدیمیتر انتخاب شوند). مقادیر معمول بین 0.0 (بهترین پاسخ شناختهشده برای حلکننده) تا 1.0 (پاسخ بهینهنشده) متغیر است. مقدار پیشفرض 0.0 است. این گزینه زمانی مفید است که حلکننده در زمان معقول موفق به یافتن پاسخ نشود (به $OPAMSOLVERTIMEOUT مراجعه کنید). توجه داشته باشید که ممکن است همهٔ حلکنندهها از این گزینه پشتیبانی نکنند.
OPAMSTATS در 2.4 حذف شد.
OPAMSTATUSLINE یک نوار وضعیت پویا را برای نمایش فرآیندهای در حال اجرا در پایانه نمایش میدهد. (یکی از گزینههای always، never یا auto)
OPAMSTRICT در صورت بروز هرگونه ناسازگاری (خواندن فایل، وارد کردن switch و غیره) با خطا متوقف میشود.
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/) برای نسخهٔ فعلی پشتیبانی میکند، اما سازگاری عقبرو را برای رابط خط فرمان خود فراهم میآورد.
از آنجا که پشتیبانی از نسخهٔ 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' داده نشده باشد.
وضعیت خروج (EXIT STATUS)
بهعنوان استثنایی بر موارد زیر، دستور `exec' در صورتی که دستور یافت نشود یا قابل اجرا نباشد، کد 127 و در غیر این صورت مقدار خروج خود دستور را برمیگرداند.
- 0
- موفقیت، یا true برای پرسوجوهای بولی.
- 1
- مقدار False. هنگامی که مقدار بازگشتی بولی انتظار میرود بازگردانده میشود؛ مثلاً هنگام اجرا با --check، یا برای پرسوجوهایی مانند opam lint.
- 2
- آرگومانهای نامعتبر خط فرمان، یا آرگومانهای خط فرمان که به یک بافت (context) نامعتبر اشاره دارند (مثلاً فایلی که از قالب مورد انتظار پیروی نمیکند).
- 5
- یافت نشد. موردی (بسته، نسخه، مخزن و غیره) درخواست شده است که یافت نشد.
- 10
- لغو شد. عملیات به تأیید نیاز داشت که داده نشد.
- 15
- قفلهای مورد نیاز برای انجام عملیات دریافت نشد.
- 20
- هیچ راهحلی برای درخواست کاربر وجود ندارد. این حالت میتواند مثلاً ناشی از درخواست نصب همزمان دو بستهٔ ناسازگار باشد.
- 30
- خطا در تعریف بسته، یا سایر فایلهای فراداده (metadata). استفاده از --strict این خطا را در موارد بیشتری ایجاد میکند.
- 31
- خطای اسکریپت بسته. برخی از عملیات بسته ناموفق بود. این ممکن است ناشی از خطایی در بستهها یا ناسازگاری با سیستم شما باشد. این میتواند یک خطای جزئی باشد.
- 40
- خطای همگامسازی. دریافت برخی از منابع دوردست (remotes) از شبکه امکانپذیر نبود. این میتواند یک خطای جزئی باشد.
- 50
- خطای پیکربندی. پیکربندی opam یا سیستم اجازهٔ انجام عملیات را نمیدهد و نیازمند اصلاح است.
- 60
- شکست حلکننده (Solver). حلکننده نتوانست پاسخی معتبر بازگرداند. این میتواند به دلیل یک حلکنندهٔ خارجی معیوب، یا خطایی در پیکربندی حلکننده باشد.
- 99
- خطای داخلی. مشکلی پیش آمد، احتمالاً به دلیل وجود باگ در خود opam.
- 130
- توقف توسط کاربر. سیگنال SIGINT دریافت شد، که معمولاً به دلیل فشردن Ctrl-C توسط کاربر است.
- 0
- در صورت موفقیت.
- 123
- در صورت بروز خطاهای نامشخص گزارششده روی خروجی استاندارد خطا (stderr).
- 124
- در صورت بروز خطاهای تجزیهٔ خط فرمان.
- 125
- در صورت بروز خطاهای غیرمنتظرهٔ داخلی (باگها).
مستندات بیشتر (FURTHER DOCUMENTATION)
به https://opam.ocaml.org/doc مراجعه کنید.
نویسندگان (AUTHORS)
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 "گزارش باگها (BUGS)"
گزارش باگها را در https://github.com/ocaml/opam/issues بررسی کنید.
| Opam 2.5.2 |