خبر و ترفند روز

خبر و ترفند های روز را اینجا بخوانید!

نحوه ایجاد بسته های DEB برای Debian/Ubuntu

اکثر نرم افزارهای لینوکس به صورت بسته توزیع می شوند. ایجاد بسته های DEB برای توزیع های مبتنی بر دبیان ساده تر از آن چیزی است که فکر می کنید.

بسته DEB یک آرشیو شامل تمام فایل ها از جمله نسخه کامپایل شده برنامه ها، کدهای منبع، فایل های پیکربندی، تصاویر و دستورات نصب است. فایل های DEB در سیستم عامل های مبتنی بر دبیان مانند اوبونتو و کالی لینوکس معادل فایل های EXE موجود در ویندوز هستند.

در اینجا نحوه توسعه بسته های DEB خود برای توزیع لینوکس مبتنی بر دبیان آورده شده است.

مرحله 1: نصب بسته های مورد نیاز

آماده سازی یک بسته دبیان به برخی برنامه ها نیاز دارد. برای شروع، این ابزارهای کمکی را روی سیستم خود نصب کنید:

sudo apt install build-essential binutils lintian debhelper dh-make devscripts

مرحله 2: انتخاب بسته

قبل از ایجاد یک بسته دبیان (DEB) برای یک برنامه، باید چند نکته را در نظر بگیرید:

  • بررسی کنید بسته‌ای که می‌خواهید ایجاد کنید از قبل در مخازن Debian:apt-cache search package-name وجود دارد یا خیر
  • بررسی کنید برنامه ای که می خواهید بسته بندی کنید چه نوع مجوزی دارد. فرهنگ عمومی استفاده از مجوز GNU/GPL وجود دارد.
  • مطمئن شوید که برنامه مشکل امنیتی برای سیستم ایجاد نمی کند.
  • با نویسنده برنامه تماس بگیرید. به توسعه دهندگان دبیان برای ورود این برنامه به مخازن دبیان اطلاع دهید.

apt-cache search package-name

مرحله 3: شروع به آماده سازی بسته کنید

ابتدا یک دایرکتوری جدید در فهرست اصلی خود ایجاد کنید تا از سردرگمی جلوگیری کنید.

cd /home
mkdir package
cd package

سپس آرشیو tar حاوی کد منبع برنامه ای را که می خواهید در این فهرست بسته بندی کنید استخراج کنید. برای نمایش، از آرشیو rsyslog استفاده می کنیم.

tar -zxvf rsyslog-6.3.6.tar.gz

با استفاده از دستور cd به دایرکتوری تازه ایجاد شده بروید:

cd rsyslog-6.3.6

معمولا کد منبع برنامه همراه با فایل های INSTALL و README می باشد. حتی اگر بدانید برنامه چیست و چگونه کار می کند، برای شما مفید خواهد بود که مدتی را صرف خواندن این فایل ها کنید.

مطلب مرتبط:   6 بهترین جستجوگر املا و گرامر برای لینوکس

دستوراتی مانند ./configure make and make install وجود دارد که می تواند به راحتی چنین آرشیوهایی را روی سیستم شما نصب کند. اما چندین پارامتر برای گزینه ./configure وجود دارد که باید از آنها آگاه باشید. برای دریافت چنین اطلاعاتی می توانید از دستور ./configure –help استفاده کنید.

مرحله 4: افزودن اطلاعات توسعه دهنده

قبل از ایجاد بسته DEB برای برنامه خود، به نام بسته و شماره نسخه توجه کنید. شما همچنین باید هنگام ایجاد یک بسته اطلاعات بسته‌کننده را اضافه کنید. برای این کار باید اطلاعات خود را با دستورات زیر صادر کنید:

export DEBEMAIL="your@mail.com"
export DEBFULLNAME="Name Lastname"

بعد از این کار از دستور جادویی dh_make استفاده کنید.

dh_make

پس از صدور دستور dh_make باید نوع بسته خود را انتخاب کرده و Enter بزنید.

rsyslog-d-make-usage

پس از این مرحله، یک دایرکتوری در یک پوشه والد با پسوند “.orig” مشاهده خواهید کرد. اگر جواب نداد، دستور dh_make را با پارامتر –createorig اجرا کنید.

ls

# Output
rsyslog-6.3.6rsyslog_6.3.6.orig.tar.xzrsyslog-6.3.6.tar.gz

همچنین می توانید دایرکتوری جدیدی به نام دبیان را در دایرکتوری کاری فعلی مشاهده کنید. این دایرکتوری ها و فایل ها تمام اطلاعات مربوط به بسته دبیان را در مورد برنامه نگهداری می کنند.

syslog-debian-folder-ls-content

مرحله 5: فایل های دبیان مرتبط با بسته

شما باید اطلاعات زیر را در مورد فایل های موجود در دایرکتوری دبیان بدانید.

1. فایل کنترل

فایل کنترل انواع اطلاعات مرتبط با بسته را ارائه می دهد.

کنترل-فایل-گربه-فرمان

  • منبع: خطی که در آن نام برنامه خود را مشخص خواهید کرد
  • Section: خطی که تعیین می کند برنامه شما با توجه به مجوز مربوط به کدام بخش است
  • Maintainer: خط حاوی اطلاعات شخصی که بسته را تهیه کرده است
  • Build-Depends: وابستگی ها در این خط فهرست شده اند
  • بستگی دارد: این خط بسیار مهم است. شما وابستگی های بسته خود را با این مقدار مشخص می کنید
  • توضیحات: خطی که می توانید اطلاعات بسته را وارد کنید
مطلب مرتبط:   با Stress-Terminal UI برای لینوکس، محدودیت های واقعی CPU خود را کشف کنید

2. فایل کپی رایت

این فایل حاوی اطلاعاتی در مورد مجوز برنامه است. محتوای پیش فرض آن به شرح زیر است:

cat-copyright-content-for-debian-package

3. فایل تغییرات

این فایل مانند نقشه راه برنامه شماست. اگر کاری مستقل از منبع برنامه انجام داده اید یا اگر برخی از باگ ها را برطرف کرده اید، می توانید آن را به این فایل اضافه کنید.

4. فایل قوانین

فایل قوانین مانند یک Makefile برای بسته Debian شما است. هنگام نصب پکیج آماده شده دبیان با dpkg اطلاعات این فایل به عنوان پایه در نظر گرفته می شود.

cat-rules-content-for-debian-package

البته می توانید پارامترهای این فایل را به دلخواه تغییر دهید.

5. فایل های دیگر در دایرکتوری

دانستن عملکرد فایل های زیر نیز ممکن است مفید باشد:

  • README.Debian: فایل Readme
  • conffiles.ex: اگر می خواهید فایل تنظیمات قدیمی خود را در حین نصب برنامه حفظ کنید، از این فایل استفاده کنید
  • cron.d.ex: با استفاده از این فایل می توانید عملیات cron را انجام دهید
  • dirs: از این فایل برای تعیین دایرکتوری هایی استفاده کنید که نباید در حین نصب نصب شوند اما باید بعدا ایجاد شوند
  • docs: اگر اسنادی با برنامه شما وجود دارد، آنها را با این فایل مشخص کنید
  • emacsen*.ex: اگر برنامه شما در حین نصب به فایل Emacs نیاز دارد، آن را با این فایل مشخص کنید
  • init.d.ex: اگر می خواهید برنامه شما در هنگام راه اندازی سیستم اجرا شود از این فایل استفاده کنید

برای رفتن به مرحله زیر، فایل‌هایی را که فکر می‌کنید دیگر نیاز ندارید حذف کنید. سپس نام پسوند فایل را تغییر دهید و “.ex” را از انتهای آن حذف کنید. “ex.” (مثال) نشان می دهد که این یک فایل نمونه است.

مطلب مرتبط:   نحوه نصب مایکروسافت آفیس روی لینوکس

مرحله 6: ساخت بسته

اگر تا اینجا پیش رفته اید، اکنون می توانید بسته دبیان را برای برنامه خود آماده کنید. برای این کار دستور زیر را اجرا کنید:

dpkg-buildpackage

مسئله مهم دیگر در اینجا ایجاد یک GPG برای آدرس ایمیلی است که به عنوان Maintainer صادر می کنید.

export DEBEMAIL="example@mail.com"

dpkg هنگام ایجاد بسته به دنبال اطلاعات GPG شما خواهد بود. می توانید آن را با دستور gpg –list-keys فهرست کنید.

اگر در مرحله dpkg-buildpackage با مشکلی مواجه شدید، دستور زیر را امتحان کنید:

dpkg-buildpackage -nc -i

این دستور برخی از قسمت هایی را که ممکن است باعث خطا شوند نادیده می گیرد.

اگر همه چیز خوب پیش برود، بسته دبیان برای برنامه شما آماده نصب و ذخیره در دایرکتوری بعدی خواهد بود. با دستور زیر می توانید بسته را نصب، تست و بررسی کنید.

dpkg -i package-name

dpkg-install-control-success-screen

هر کسی می تواند یک بسته در لینوکس ایجاد کند

سیستم بسته بندی DEB یکی از اساسی ترین عناصری است که دبیان را به عنوان رهبر گنو/لینوکس متمایز می کند. دبیان یک سیستم بزرگ است و برای مشارکت کنندگان بسیار مهم است که توانایی ایجاد بسته های خود را داشته باشند.

اگر در گنو/لینوکس تازه کار هستید، ممکن است گیج کننده به نظر برسد. با این حال، همانطور که می بینید، تهیه یک بسته دبیان ساده تر از آن چیزی است که فکر می کنید. البته ساخت پکیج دبیان نیازمند زمان و کار است.

اما این بدان معنا نیست که شما باید به صورت دستی بسته هایی را برای برنامه هایی که می خواهید نصب کنید ایجاد کنید. چندین وب سایت در اینترنت وجود دارد که می توانید بسته های DEB را به صورت رایگان از آنها دانلود کنید.