.\" -*- mode: troff; coding: utf-8 -*- .TH "ALPM-REPO-DESC" "5" "2018-05-28" "ALPM" "فرمتهای فایل" .SH "نام (NAME)" alpm-repo-desc \- فرمت فایل برای نمایش فرادادههای بستههای موجود در پایگاهداده مخزن ALPM .SH "توضیحات (DESCRIPTION)" .LP قالب \fBalpm-repo-desc\fR یک فرمت متنی است که فراداده‌های یک بسته منفرد را در نسخه‌ای مشخص در یک مخزن نمایش می‌دهد. هر فایل ویژگی‌های گوناگون یک فایل \fBalpm-package\fR را توصیف می‌کند، از جمله نام، نسخه، وابستگی‌ها، اندازه، اطلاعات مجوز و موارد دیگر. برای مشاهده فهرست کامل ویژگی‌ها به .B بخشها مراجعه کنید. .PP مجموع تمامی فایل‌های \fBalpm-repo-desc\fR در یک \fBalpm-repo-db\fR وضعیت کنونی مخزن را توصیف می‌کنند (یعنی چه بسته‌هایی در چه نسخه‌ای در دسترس هستند). .PP یک سیستم‌عامل متکی بر \fBA\fRrch \fBL\fRinux \fBP\fRackage \fBM\fRanagement یک یا چند فایل \fBalpm-repo-db\fR را نگهداری می‌کند که هر کدام شامل یک فایل \fBalpm-repo-desc\fR به ازای هر بسته هستند؛ هر یک از این فایل‌ها .I desc نام دارند و در یک پوشه منحصربه‌فرد مخصوص آن بسته قرار گرفته‌اند. به طور مشخص‌تر، نرم‌افزارهای مدیریت بسته مانند \fBpacman\fR و ابزارهای مرتبط از این فرمت فایل برای نمونه جهت حل وابستگی‌ها و نمایش اطلاعات بسته‌های \fBalpm-package\fR در مخازن استفاده می‌کنند. .PP داده‌های موجود در یک فایل \fBalpm-repo-desc\fR از یک \fBalpm-package\fR مشتق شده‌اند. بخش عمده‌ای از فراداده‌های آن از داده‌های \fBPKGINFO\fR بسته سرچشمه می‌گیرد. یک فایل \fBalpm-repo-desc\fR معمولاً توسط نرم‌افزارهای مدیریت‌کننده یک \fBalpm-repo\fR مانند \fBrepo-add\fR ایجاد می‌شود. .PP فرمت فایل توصیف‌شده در این سند نباید با فرمت فایل \fBalpm-db-desc\fR اشتباه گرفته شود، که در چارچوب یک پایگاه‌داده \fBlibalpm\fR استفاده می‌شود و مجموعه متفاوتی از فراداده‌ها را حمل می‌کند، اما معمولاً آن هم .I desc نامیده می‌شود. .PP فرمت \fBalpm-repo-desc\fR در چندین نسخه وجود دارد. اطلاعات موجود در این سند مربوط به نسخه ۲ است که نسخه کنونی بوده و با انتشار \fBpacman\fR 6.1.0 در تاریخ 2024-03-04 معرفی شده است. .SS قالب کلی .LP یک فایل \fBalpm-repo-desc\fR فایلی با کدگذاری UTF-8 و جداشده با خط جدید است که از مجموعه‌ای از .B بخشها تشکیل شده است. .PP هر بخش با یک \fIخط سربرگ بخش\fR منحصربه‌فرد آغاز می‌شود. خط سربرگ بخش با یک یا چند خط دنبال می‌شود که هر کدام حاوی یک \fIمقدار مختص بخش\fR هستند. تمام \fIمقادیر مختص بخش\fR باید از .B نویسه‌های اسکی قابل چاپ\c [1] تشکیل شوند، مگر آنکه خلاف آن ذکر شده باشد. یک بخش زمانی پایان می‌یابد که به خط سربرگ بخش دیگری برخورد شود یا به پایان فایل برسد. .PP خطوط خالی میان بخش‌ها نادیده گرفته می‌شوند. .SS تغییرات نسبت به نسخه پیشین .LP بخش .B %MD5SUM% حذف شده است. بخش .B %PGPSIG% به صورت اختیاری درآمده است. .SH "بخشها (SECTIONS)" .LP هر \fIخط سربرگ بخش\fR شامل \fIنام بخش\fR با حروف تمام‌بزرگ است که میان علامت‌های درصد قرار دارد (مانند \f(CR%NAME%\fR). \fIنام‌های بخش\fR به عنوان کلید برای هر \fIمقدار مختص بخش\fR عمل می‌کنند. .PP هر بخش پس از \fIخط سربرگ بخش\fR، تنها اجازه قرارگیری یک \fIمقدار مختص بخش\fR را می‌دهد. به عنوان استثنایی بر این قاعده، بخش‌های .BR %LICENSE% ، .BR %GROUPS% ، .BR %CHECKDEPENDS% ، .BR %DEPENDS% ، .BR %OPTDEPENDS% ، .BR %REPLACES% ، .B %CONFLICTS% و .B %PROVIDES% می‌توانند بیش از یک \fIمقدار مختص بخش\fR داشته باشند. .SS %FILENAME% .LP نام فایل \fBalpm-package\fR (مانند \f(CRexample-1.2.3-any.pkg.tar.zst\fR). .SS %NAME% .LP یک \fBalpm-package-name\fR، که نشان‌دهنده نام یک بسته است (مانند \f(CRexample\fR). .SS %BASE% .LP یک \fBalpm-package-base\fR که پایه بسته را که بسته از آن سرچشمه می‌گیرد نشان می‌دهد. اگر بسته یک \fBalpm-split-package\fR نباشد، این مقدار همان مقدار بخش .B %NAME% است. اگر بسته یک \fBalpm-split-package\fR باشد، این مقدار ممکن است با مقدار بخش .B %NAME% متفاوت باشد. .SS %VERSION% .LP یک \fBalpm-package-version\fR (\fIfull\fR یا \fIfull with epoch\fR) که نشان‌دهنده نسخه یک بسته است (مانند \f(CR1.0-1\fR). .SS %DESC% .LP توضیحات بسته. مقدار یک رشته UTF-8 به طول صفر یا بیشتر نویسه است (مانند \f(CRA project used for something\fR). اگر توضیحات خالی باشد، از این بخش می‌توان صرف‌نظر کرد. .SS %GROUPS% .LP یک \fBalpm-package-group\fR که نشان‌دهنده یک گروه سراسری در توزیع است که بسته در آن قرار دارد. یک یا چند مقدار ممکن است وجود داشته باشد. اگر بسته در هیچ گروهی نباشد، این بخش حذف می‌شود. .PP مقدار با یک رشته UTF-8 نمایش داده می‌شود. اگرچه امکان استفاده از یک رشته UTF-8 وجود دارد، اما اکیداً توصیه می‌شود که به جای آن از فرمت \fBalpm-package-name\fR برای مقدار استفاده شود، زیرا مدیران بسته ممکن است از گروه بسته برای نصب کل گروه بسته‌ها استفاده کنند. .SS %CSIZE% .LP اندازه بسته فشرده‌شده \fBalpm-package\fR بر حسب بایت. مقدار یک عدد صحیح غیرمنفی است (مانند \f(CR1818463\fR). .SS %ISIZE% .LP اندازه محتویات بسته (فشرده‌نشده و بازشده) بر حسب بایت. مقدار یک عدد صحیح غیرمنفی است که اندازه مطلق محتویات بسته را نشان می‌دهد؛ فایل‌های دارای چندین پیوند سخت (hardlink) تنها یک‌بار شمرده می‌شوند (مانند \f(CR181849963\fR). .SS %SHA256SUM% .LP خلاصه درهم‌ساز \fBSHA-256\fR\c [2] از فایل \fBalpm-package\fR. این رشته شامل ۶۴ نویسه شانزده‌شانزدهی (هگزادسیمال) است (مانند \f(CRb5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c\fR). .SS %PGPSIG% .LP یک \fBامضای OpenPGP\fR\c [4] با کدگذاری اختیاری \fBbase64\fR\c [3] برای فایل \fBalpm-package\fR (مانند \f(CRiHUEABYKAB0WIQRizHP4hOUpV7L92IObeih9mi7GCAUCaBZuVAAKCRCbeih9mi7GCIlMAP9ws/jU4f580ZRQlTQKvUiLbAZOdcB7mQQj83hD1Nc/GwD/WIHhO1/OQkpMERejUrLo3AgVmY3b4/uGhx9XufWEbgE=\fR). ابزار ایجادکننده فایل \fBalpm-repo-desc\fR ممکن است ترجیح دهد بازنمایی امضا را درج نکند، که در این صورت از این بخش صرف‌نظر می‌شود. .SS %URL% .LP نشانی وب (URL) برای پروژه بسته. مقدار یک URL معتبر یا یک رشته خالی است (مانند \f(CRhttps://example.org\fR). اگر توضیحات خالی باشد، از این بخش می‌توان صرف‌نظر کرد. .SS %LICENSE% .LP مجموعه‌ای اختیاری از شناسه‌های مجوز که برای بسته اعمال می‌شوند. یک یا چند مقدار ممکن است وجود داشته باشد. اگر شناسه مجوزی وجود نداشته باشد، این بخش حذف می‌شود. .PP هر مقدار نشان‌دهنده یک شناسه مجوز است، که رشته‌ای با طول غیرصفر است (مانند \f(CRGPL\fR). اگرچه به جز طول رشته، هیچ محدودیت خاصی برای مقدار اعمال نمی‌شود، اما اکیداً توصیه می‌شود که از عبارات مجوز SPDX استفاده شود (مانند \f(CRGPL-3.0-or-later\fR یا \f(CRApache-2.0 OR MIT\fR). برای اطلاعات بیشتر به .B فهرست مجوزهای SPDX\c [5] مراجعه کنید. .SS %ARCH% .LP معماری بسته (برای اطلاعات بیشتر به \fBalpm-architecture\fR مراجعه کنید). مقدار باید از مجموعه نویسه‌های الفبایی-عددی و \(oq_\(oq تشکیل شده باشد (مانند \f(CRx86_64\fR یا \f(CRany\fR). .SS %BUILDDATE% .LP تاریخی که ساخت بسته در آن آغاز شده است. مقدار باید عددی بوده و نشان‌دهنده ثانیه‌های سپری‌شده از مبدأ زمانی (Epoch)، معروف به \(oqزمان یونیکس\(cq باشد (مانند \f(CR1729181726\fR). .SS %PACKAGER% .LP شناسه کاربری (User ID) موجودیتی که بسته را ساخته است. این مقدار برای جستجوی هویت در نظر گرفته شده و نمایانگر یک .B شناسه کاربری OpenPGP\c [6] است. به این ترتیب، این مقدار یک رشته کدگذاری‌شده با UTF-8 است که بر اساس عرف از یک نام و یک نشانی ایمیل تشکیل شده و با ساختار توصیف‌شده در .BR "RFC 2822"\c .UR e.g.%20%60John%20Doe%20%3Cjohn@example.org%3E%60 7 .UE \c \& مطابقت دارد. .SS %REPLACES% .LP یک \fIمؤلفه مجازی\fR یا \fIبسته\fR دیگر، که این بسته هنگام نصب جایگزین آن می‌شود. مقادیر ممکن است یک یا چند بار وجود داشته باشند. اگر بسته جایگزین چیزی نشود، از این بخش صرف‌نظر می‌شود. مقدار یک \fBalpm-package-relation\fR از نوع \fBreplacement\fR است (مانند \f(CRexample\fR یا \f(CRexample=1.0.0\fR). .SS %CONFLICTS% .LP یک \fIمؤلفه مجازی\fR یا \fIبسته\fR دیگر، که این بسته با آن تداخل دارد. مقادیر ممکن است یک یا چند بار وجود داشته باشند. اگر بسته با چیزی تداخل نداشته باشد، از این بخش صرف‌نظر می‌شود. مقدار یک \fBalpm-package-relation\fR از نوع \fBconflict\fR است (مانند \f(CRexample\fR یا \f(CRexample=1.0.0\fR). .SS %PROVIDES% .LP یک \fIمؤلفه مجازی\fR یا \fIبسته\fR دیگر، که این بسته آن را فراهم می‌کند. مقادیر ممکن است یک یا چند بار وجود داشته باشند. اگر بسته چیزی فراهم نکند، از این بخش صرف‌نظر می‌شود. مقدار یک \fBalpm-package-relation\fR از نوع \fBprovision\fR است (مانند \f(CRexample\fR یا \f(CRexample=1.0.0\fR). .SS %DEPENDS% .LP یک وابستگی زمان اجرای بسته (\fIمؤلفه مجازی\fR یا \fIبسته\fR). مقادیر ممکن است یک یا چند بار وجود داشته باشند. اگر بسته هیچ وابستگی زمان اجرایی نداشته باشد، از این بخش صرف‌نظر می‌شود. مقدار یک \fBalpm-package-relation\fR از نوع \fBrun-time dependency\fR است (مانند \f(CRexample\fR یا \f(CRexample=1.0.0\fR). .SS %OPTDEPENDS% .LP یک وابستگی اختیاری بسته (\f(CRvirtual component\fR یا \f(CRpackage\fR). مقادیر ممکن است یک یا چند بار وجود داشته باشند. اگر بسته هیچ وابستگی اختیاری نداشته باشد، از این بخش صرف‌نظر می‌شود. مقدار یک \fBalpm-package-relation\fR از نوع \fBoptional dependency\fR است (مانند \f(CRexample\fR یا \f(CRexample: this is a description\fR). .SS %MAKEDEPENDS% .LP یک وابستگی برای ساخت نرم‌افزار بالادستی بسته. مقادیر ممکن است یک یا چند بار وجود داشته باشند. اگر بسته هیچ وابستگی ساختی نداشته باشد، از این بخش صرف‌نظر می‌شود. مقدار یک \fBalpm-package-relation\fR از نوع \fBbuild dependency\fR است (مانند \f(CRexample\fR یا \f(CRexample=1.0.0\fR). .SS %CHECKDEPENDS% .LP یک وابستگی برای اجرای آزمون‌های پروژه بالادستی بسته. مقادیر ممکن است یک یا چند بار وجود داشته باشند. اگر بسته هیچ وابستگی آزمونی نداشته باشد، از این بخش صرف‌نظر می‌شود. مقدار یک \fBalpm-package-relation\fR از نوع \fBtest dependency\fR است (مانند \f(CRexample\fR یا \f(CRexample=1.0.0\fR). .SH "مثال‌ها (EXAMPLES)" .LP نمونه کاملی از یک فایل \fBalpm-repo-desc\fR برای بسته‌ای به نام \f(CRexample\fR در نسخه \f(CR1.0.0-1\fR: .LP .EX %FILENAME% example-1.0.0-1-any.pkg.tar.zst %NAME% example %BASE% example %VERSION% 1.0.0-1 %DESC% An example package %GROUPS% example-group other-group %CSIZE% 1818463 %ISIZE% 18184634 %SHA256SUM% b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c %PGPSIG% iHUEABYKAB0WIQRizHP4hOUpV7L92IObeih9mi7GCAUCaBZuVAAKCRCbeih9mi7GCIlMAP9ws/jU4f580ZRQlTQKvUiLbAZOdcB7mQQj83hD1Nc/GwD/WIHhO1/OQkpMERejUrLo3AgVmY3b4/uGhx9XufWEbgE= %URL% https://example.org %LICENSE% MIT Apache-2.0 %ARCH% x86_64 %BUILDDATE% 1729181726 %PACKAGER% Foobar McFooface %REPLACES% other-pkg-replaced %CONFLICTS% other-pkg-conflicts %PROVIDES% example-component %DEPENDS% glibc gcc-libs %OPTDEPENDS% bash: for a script %MAKEDEPENDS% cmake %CHECKDEPENDS% bats .EE .PP نمونه حداقلی از یک فایل \fBalpm-repo-desc\fR برای یک \fBalpm-meta-package\fR به نام \f(CRexample-meta\fR در نسخه \f(CR1.0.0-1\fR: .LP .EX %FILENAME% example-meta-1.0.0-1-any.pkg.tar.zst %NAME% example-meta %BASE% example-meta %VERSION% 1.0.0-1 %DESC% An example meta package %CSIZE% 4634 %ISIZE% 0 %SHA256SUM% b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c %URL% https://example.org %LICENSE% GPL-3.0-or-later %ARCH% any %BUILDDATE% 1729181726 %PACKAGER% Foobar McFooface .EE .SH "همچنین ببینید (SEE ALSO)" .LP \fBlibalpm\fR(3), \fBBUILDINFO\fR(5), \fBPKGBUILD\fR(5), \fBPKGINFO\fR(5), \fBalpm-db-desc\fR(5), \fBalpm-architecture\fR(7), \fBalpm-meta-package\fR(7), \fBalpm-package\fR(7), \fBalpm-package-name\fR(7), \fBalpm-package-relation\fR(7), \fBalpm-package-version\fR(7), \fBalpm-repo-db\fR(7), \fBalpm-split-package\fR(7), \fBpacman\fR(8), \fBrepo-add\fR(8) .SH "یادداشت‌ها (NOTES)" .IP "1." 3 نویسه‌های اسکی قابل چاپ (printable ASCII characters) .IP .UR https://en.wikipedia.org/wiki/ASCII#Printable_characters .UE .IP "2." 3 SHA-256 .IP .UR https://en.wikipedia.org/wiki/SHA-2 .UE .IP "3." 3 Base64 .IP .UR https://en.wikipedia.org/wiki/Base64 .UE .IP "4." 3 امضای OpenPGP (OpenPGP signature) .IP .UR https://openpgp.dev/book/signing_data.html#detached-signatures .UE .IP "5." 3 فهرست مجوزهای SPDX (SPDX License List) .IP .UR https://spdx.org/licenses .UE .IP "6." 3 شناسه کاربری OpenPGP (OpenPGP User ID) .IP .UR https://openpgp.dev/book/certificates.html#user-ids .UE .IP "7." 3 RFC 2822 .IP .UR https://www.rfc-editor.org/rfc/rfc2822 .UE