deb-changes(5) dpkg suite deb-changes(5)

deb-changes - قالب پرونده کنترل تغییرات بارگذاری دبیان

filename.changes

هر بارگذاری دبیان از یک پروندهٔ کنترل .changes تشکیل شده است که حاوی تعدادی فیلد در قالب deb822(5) است.

هر فیلد با یک برچسب آغاز می‌شود، مانند Source یا Binary (غیرحساس به حروف کوچک و بزرگ)، که به دنبال آن یک دونقطه (:) و سپس بدنهٔ فیلد (حساس به حروف کوچک و بزرگ مگر خلاف آن قید شده باشد) می‌آید. فیلدها فقط با برچسب‌های فیلد جدا می‌شوند. به عبارت دیگر، متن فیلد ممکن است چندین خط باشد، اما ابزارهای نصب هنگام پردازش بدنهٔ فیلد، خطوط را به هم متصل می‌کنند (به‌جز در مورد فیلدهای چندخطی Description، Changes، Files، Checksums-Sha1 و Checksums-Sha256، به ادامه مراجعه کنید).

داده‌های کنترلی ممکن است در یک امضای محصور OpenPGP ASCII Armored، همان‌طور که در RFC9580 مشخص شده است، قرار گیرند.

مقدار این فیلد، نسخهٔ قالب پرونده را مشخص می‌کند. نحو مقدار فیلد، یک شمارهٔ نسخه با دو بخش اصلی (major) و فرعی (minor) است. تغییرات ناسازگار با نسخه‌های پیشین باعث افزایش نسخهٔ اصلی می‌شوند و تغییرات سازگار با گذشته (مانند افزودن فیلدها) نسخهٔ فرعی را افزایش می‌دهند. نسخهٔ کنونی این قالب 1.8 است.
تاریخی که بسته ساخته شده یا آخرین بار ویرایش شده است. باید دقیقاً در همان قالب تاریخ در یک مدخل deb-changelog(5) باشد.

مقدار این فیلد معمولاً از پروندهٔ debian/changelog استخراج می‌شود.

نام بستهٔ مبدأ. اگر نسخهٔ مبدأ با نسخهٔ باینری متفاوت باشد، پس از source-name یک source-version داخل پرانتز قرار می‌گیرد. این حالت زمانی رخ می‌دهد که بارگذاری از نوع صرفاً باینری توسط غیر نگه‌دارنده (binNMU) باشد.
این فیلد ادغام‌شده، فهرستی از بسته‌های باینری برای بارگذاری است که با فاصله از هم جدا شده‌اند. اگر بارگذاری صرفاً مبدأ (source-only) باشد، این فیلد حذف می‌شود (از نسخهٔ dpkg 1.19.3 به بعد).
معماری‌های پرونده‌هایی را که در حال حاضر بارگذاری می‌شوند فهرست می‌کند.

معماری‌های رایج عبارتند از amd64، armel، i386 و غیره. توجه داشته باشید که مقدار ویژهٔ all برای بسته‌هایی در نظر گرفته شده که مستقل از معماری هستند (مانند اسکریپت‌های شل و Perl یا مستندات). اگر مبدأ بسته نیز در حال بارگذاری باشد، ورودی ویژهٔ source نیز درج می‌شود.

نکته: نویسه‌های عام (wildcard) معماری در این زمینه مجاز نیستند.

به‌طور معمول، این مقدار همان شمارهٔ نسخهٔ اصلی بسته به هر شکلی است که نویسندهٔ برنامه به کار برده است. همچنین ممکن است شامل یک شماره بازنگری دبیان (برای بسته‌های غیربومی) باشد. قالب دقیق و الگوریتم مرتب‌سازی در deb-version(7) شرح داده شده است.

نکته: در برخی توزیع‌ها، dpkg طوری ساخته شده است که اجازه می‌دهد سورس‌های بومی دارای نسخه‌های غیربومی باشند؛ این موضوع باعث ناهمخوانی و سردرگمی در این مفهوم شده و علاوه بر این معمولاً دامی برای اشتباهات تصادفی است.

یک یا چند توزیع را فهرست می‌کند که با فاصله از هم جدا شده‌اند و نشان می‌دهد این نسخه پس از بارگذاری در آرشیو باید در کجا نصب شود.
میزان فوریت بارگذاری. مقادیر شناخته‌شدهٔ کنونی، به ترتیب صعودی فوریت عبارتند از: low، medium، high، critical و emergency.
باید در قالب “Joe Bloggs <jbloggs@example.org>” باشد و معمولاً شخصی است که بسته را ایجاد کرده است، برخلاف نویسندهٔ نرم‌افزاری که بسته‌بندی شده است.
باید در قالب “Joe Bloggs <jbloggs@example.org>” باشد و معمولاً شخصی است که تغییرات بسته را برای این انتشار آماده کرده است.
 binary-package-name - binary-package-summary
این فیلد چندخطی حاوی فهرستی از نام‌های بسته‌های باینری است که به دنبال آن یک فاصله، یک خط تیره (‘-’) و توضیحات کوتاه و احتمالاً کوتاه‌شدهٔ آن‌ها می‌آید. اگر بارگذاری صرفاً مبدأ (source-only) باشد، این فیلد حذف می‌شود (از نسخهٔ dpkg 1.19.3 به بعد).
فهرستی از شماره‌های گزارش اشکال (bug) جداشده با فاصله، برای اشکالاتی که با این بارگذاری حل شده‌اند. نرم‌افزار آرشیو توزیع ممکن است از این فیلد برای بستن خودکار شماره اشکال‌های ارجاع‌شده در سیستم ردیابی اشکال توزیع استفاده کند.
این فیلد نشان می‌دهد که بارگذاری، یک ساخت صرفاً باینری توسط غیر نگه‌دارنده (binNMU) است. این مقدار از کلید/مقدار binary-only=yes در مدخل فرادادهٔ changelog سرچشمه می‌گیرد.
این فیلد فهرستی از پروفایل‌های ساخت جداشده با نویسه‌های فاصله را مشخص می‌کند که این بارگذاری با آن‌ها ساخته شده است.
 changelog-entries
این فیلد چندخطی حاوی متن به‌هم‌پیوستهٔ تمام مدخل‌های تغییراتی (changelog) است که بخشی از این بارگذاری هستند. برای اینکه این فیلد یک فیلد چندخطی معتبر باشد، خطوط خالی با یک نقطهٔ تنها (‘.’) جایگزین می‌شوند و همهٔ خطوط به اندازهٔ یک نویسهٔ فاصله دندانه‌دار می‌شوند. محتوای دقیق به قالب changelog بستگی دارد.
 md5sum size section priority filename
این فیلد چندخطی شامل فهرستی از پرونده‌ها به همراه مقدار md5sum، اندازه، بخش (section) و اولویت (priority) برای هر پرونده است.

خط اول مقدار فیلد (بخشی که در همان خطِ نام فیلد پس از دونقطه قرار دارد) همیشه خالی است. محتوای فیلد به صورت خطوط ادامه‌دار، یک خط به ازای هر پرونده، بیان می‌شود. هر خط شامل ورودی‌هایی است که با فاصله از هم جدا شده‌اند و پرونده را توصیف می‌کنند: مقدار md5sum، اندازهٔ پرونده، بخش پرونده، اولویت پرونده و نام پرونده.

اگر بخش در پروندهٔ کنترل الگوی بستهٔ مبدأ قید نشده باشد، مقدار پیش‌فرض آن unknown خواهد بود (از نسخهٔ dpkg 1.22.13 به بعد).

اگر اولویت در پروندهٔ کنترل الگوی بستهٔ مبدأ قید نشده باشد، مقدار پیش‌فرض آن optional خواهد بود (از نسخهٔ dpkg 1.22.13 به بعد).

این فیلد تمام پرونده‌هایی را که این بارگذاری را تشکیل می‌دهند فهرست می‌کند. فهرست پرونده‌ها در این فیلد باید با فهرست پرونده‌ها در سایر فیلدهای مرتبط Checksums مطابقت داشته باشد.

نکته: جمع‌آزمای MD5 ضعیف در نظر گرفته می‌شود و هرگز نباید برای اعتبارسنجی امن کافی فرض شود، اما این فیلد قابل حذف نیست زیرا فراداده‌هایی را فراهم می‌کند که در هیچ جای دیگر در دسترس نیستند.

 checksum size filename
این فیلدهای چندخطی حاوی فهرستی از پرونده‌ها به همراه جمع‌آزما و اندازهٔ هر یک هستند. این فیلدها نحو یکسانی دارند و تنها در الگوریتم جمع‌آزمای استفاده‌شده تفاوت دارند: SHA-1 برای Checksums-Sha1 و SHA-256 برای Checksums-Sha256.

خط اول مقدار فیلد (بخشی که در همان خطِ نام فیلد پس از دونقطه قرار دارد) همیشه خالی است. محتوای فیلد به صورت خطوط ادامه‌دار، یک خط به ازای هر پرونده، بیان می‌شود. هر خط شامل ورودی‌هایی است که با فاصله از هم جدا شده‌اند و پرونده را توصیف می‌کنند: جمع‌آزما، اندازهٔ پرونده و نام پرونده.

این فیلدها تمام پرونده‌هایی را که این بارگذاری را تشکیل می‌دهند فهرست می‌کند. فهرست پرونده‌ها در این فیلدها باید با فهرست پرونده‌ها در فیلد Files و سایر فیلدهای مرتبط Checksums مطابقت داشته باشد.

نکته: جمع‌آزمای SHA-1 ضعیف در نظر گرفته می‌شود و هرگز نباید برای اعتبارسنجی امن کافی فرض شود.

فیلد Files با سایر فیلدهای Checksums ناهمخوان است. فیلدهای Changed-By و Maintainer نام‌های گیج‌کننده‌ای دارند. فیلد Distribution حاوی اطلاعاتی در مورد چیزی است که معمولاً به عنوان یک مجموعه (suite) از آن یاد می‌شود.

deb822(5)، deb-src-control(5)، deb-version(7).

2026-03-06 1.23.7-dirty