در بين توزيعهاي گنو/لينوکس، مديربستههاي متفاوتي وجود داره که از بين اونها ميتونيم به YUM، APT، ZYPPER، PACMAN و …. اشاره کرد که هرکدام از اینها، در بین کاربرها بسیار محبوب هستند. براساس تجربهی شخصي خودم در استفاده از تعدادی از اين مديربستهها، يام (yum) رو از همه بیشتر دوست دارم. کار با يام در عين قدرت فراواني که داره، بسيار ساده و لذت بخش هست. اما بنابه دلايلی، توسعهدهندهان پروژه فدورا تصميم به استفاده از يک مديربستهي جديد در نسخههاي آتی گرفتهاند.
DNF از يام فورک شده و در واقع مثل فرزند اون عمل ميکنه. این مدیر بسته از کتابخانهی libsolv که در توزیع اوپن سوزی برای مدیر بستهی محبوبشون Zypper استفاده شده استفاده می کنه و توسعهدهندههای DNF قرار هست تجربهای بسیار بسیار نزدیک و مشابه با YUM را در اختیار کاربران قرار دهند. اگه قرار هست طبق برنامهریزیها در فدورای 22، با اين مديربسته کار کنيم، پس بد نيست که کمی باهاش آشنا شیم.
اما چرا DNF؟ وقتی این پرسش به ذهنتون بیاد و به دنبال پاسخ اون توی فضای مجازی بگردید، با پاسخ های قانع کنندهای تحت عنوانهای عملکرد بهتر، سرعت بیشتر و … خواهید رسید. البته، اینها برای یک کاربر فدورا کاملا قانع کننده هستند چرا که بسیاری از این کاربرها، بعد از سالها استفاده از این توزیع حالا دیگه از تصمیمهای توسعهدهندههای این پروژه بسیار مطمئن هستند و به راحتی بهشون اعتماد میکنند. اماوقتی کمی به این مسئله فکر کنیم، پاسخ ها کم کم خودشون رو نشون میدن.
همونطور که میدونیم، گنوم نرمافزاری تحت عنوان GNOME Software را در حال توسعه داره. این نکته رو هم باید قبول کنیم که یام با تمامی قدرتهای فراوانش هیچ وقت نتوانست یک API خوب برای GUI ها فراهم کنه. از اونجا که بسیاری از توسعه دهندههای گنوم و فدورا مشترک هستند، این مسئله کاملا درسته که توسعهدهندههای فدورا تصمیم بگیرن تا مدیر بستهای را طراحی کنند که دارای یک API شفافتری نسبت به یام باشه.
البته بعد از گفتن این موضوع شاید در ذهن بعضی افراد این پرسش به وجود بیاد که خب، چرا بجای استفاده از یک مدیر بستهی جدید، API یام را سر و سامان نمیدهند؟ در پاسخ به این پرسش باید گفت که، تنها داشتن یک API خوب و ساده برای استفاده کافی نیست. یام با پایتون نوشته شده و برقراری ارتباط به وسیلهی اون با سایر زبانها به غیر از پایتون کمی دشوار هست. اما نکتهی دیگری که قرار هست در DNF بهبود پیدا کنه، آسانسازی اتصال به زبانهای دیگر هست که در پی اون، متعلقاتی که بخواد با DNF کار کنه، لازم نیست حتما با پایتون نوشته بشه.
نکتهای که بسیاری از کاربران بیان کردند، این پرسش هست که چرا بجای ساخت یک مدیربستهی جدید، از مدیر بستههای موجود مثل zypp و یا zif که از ابتدا طراحی شده بود تا جایگزین یام بشود استفاده نمی کنند؟ پاسخ این پرسش بسیار ساده هست، توسعهدهندههای فدورا (و صد البته ردهت) همواره ترجیح میدن بجای استفاده از ساختهی دیگران، خودشون اون رو بسازند. که این موضوع شامل DNF هم میشه.
از این دلایل که بگذریم، می رسیم به استفاده از DNF!
استفاده از DNF به هیچ وجه ترسناک نیست، چرا که قرار نیست دستورات اون تفاوتی با YUM دوست داشتنی داشته باشه. دستورات نصب کردن برنامه، پاک کردن برنامه، بروزرسانی و … کاملا همون دستورات یام هستند و تنها کاری که در استفاده در DNF باید انجام داد، جایگزین کردن dnf با yum خواهد بود.
وقتی به لیست دستوراتی که برای DNF آماده شده نگاه میکنیم، متوجه میشویم در حال حاظر بعضی از دستورات به صورت تمام و کمال آماده نشدند اما مطمئنا به زودی اون دستورات رو هم در DNF خواهیم دید.
سخن آخر:
به شخصه، يکی از دلايل عمده علاقهام به فدورا، يام دوست داشتنی هست. دلايل زيادي هم براي اين علاقه دارم. يام قدرتمنده، کار باهاش بسيار سادست، طراحيش بسيار شکيل و قابل لمس هست، وقتي زياد از خط فرمان استفاده کنيد، سرعت کار باهاش واستون لذت بخش ِ، به همين دليل يکي ديگر از دليل هام سهولت نوشتن YUM در ترمينال هست. در هرصورت، توسعه دهنده ها بعد ازتقريبا 20 نسخه استفاده از يام، حالا به فکر تغيير اون افتادند. اميدوارم استفاده از DNF، مانند آناکندای جديد شبيه گذشتن از يک بازی چند مرحلهای، همراه با غول آخر نباشه :).
ای بابا
ما تازه با Yum اخت شده بودیم.
چه کاری بود جالا :دی
اصلا DNF رو زبونم نمی چرخه چه برسه به کنسول! (:
من به مدت دو ماه هستش که از فدورا استفاده میکنم. yum در مقایسه با apt واقعا ساده تر و قدرتمندتر هستش. به طوری که من هیچ software manager رو رو فدورا نصب نکردم، چرا که با yum کارامو راحت انجام میدم. یکی از مشکلاتی که تو yum هستش اینه که نمیشه مثل اوبونتو با افزودن ppa به مخزن یه بسته جدید رو راحت اضافه کرد که برای کاربر عادی حوصله بره تا با سورس کد بخاد نرم افزاری رو نصب کنه. امیدوارم این مشکل تو dnf حل بشه. البته من پایتون رو خیلی دوس دارم و میخاستم که این مشکل yum حل بشه ولی به هرحال تو خود پایتون میشه کلی از زبانهای دیگه استفاده کرد که فکر کنم به نوعی روند متکامل شدنه. به dnf امیدوارم. تکامل گاهی بهتر است.
و من هم چنان در حال آپدیت فدورا ۱۷ به ۱۸ و در نهایت به ۱۹ !!!! البته تا کار تموم بشه فدورا ۲۰ میاد !!! :دی