У Fedora планують замінити DNF на Microdnf

Нещодавно Розробники Fedora повідомили про свої наміри перейти розповсюдження до нового менеджера пакетів викликано Натомість «Microdnf». з менеджера пакетів "DNF" який на даний момент використовується.

Першим кроком на шляху до міграції буде серйозне оновлення Microdnf, планується для Fedora 38, який наблизиться за функціональністю до DNF і навіть перевершить його в деяких областях.

Згадується, що наміри здійснити цю міграцію обумовлено Ключова відмінність між Microdnf і DNF полягає у використанні C замість Python для розвитку, який дозволяє позбутися багатьох залежностей.

У якийсь момент DNF замінив Yum, який був повністю написаний на Python, а в DNF вимагають продуктивності низькорівневі функції були переписані та переміщені в окремі бібліотеки C hawkey, librepo, libsolv і libcomps, але фреймворк і високо- компоненти рівня залишилися в мові Python.

Microdnf спочатку був розроблений як спрощена версія DNF для використання в контейнерах Docker, які не потребують встановлення Python. Тепер розробники Fedora планують вивести Microdnf на рівень функціональності DNF і в кінцевому підсумку повністю замінити DNF на Microdnf.

Серйозне оновлення Microdnf є першим кроком в еволюції управління пакетами у Fedora. Новий microdnf має амбіцію надати всі основні функції DNF без втрати мінімального розміру.

Microdnf заснований на бібліотеці libdnf5, розроблено в рамках проекту DNF 5. DNF 5 має на меті уніфікувати існуючі низькорівневі бібліотеки, переписати решту операцій керування пакетами Python на C++ і перемістити основні функції в окрему бібліотеку зі створенням прив’язки навколо цієї бібліотеки для збереження API Python.

MICRODNF значно покращує користувацький досвід і забезпечить усі важливі функції DNF у майбутньому. Він також збереже всі переваги оригінального MICRODNF, наприклад мінімальний розмір, необхідний для контейнерів.

Нова версія Microdnf також використовуватиме фоновий процес DNF Daemon, заміна функціональності PackageKit та надання інтерфейсу для керування пакетами та оновленнями в графічних середовищах. На відміну від PackageKit, DNF Daemon підтримуватиме лише формат RPM.

Microdnf, libdnf5 і DNF Daemon планується постачати разом із традиційним набором інструментів DNF на першому етапі впровадження. Після завершення проекту новий пакет замінить такі пакунки, як dnf, python3-dnf, python3-hawkey, libdnf, dnfdragora та python3-dnfdaemon.

З області, де Microdnf перевершує DNF, він виділяється: більш наочна індикація ходу операцій; покращена реалізація таблиці транзакцій; можливість відображення інформації у звітах про завершені транзакції, що видається запакованими скриптлетами (скриптлетами); підтримка використання локальних пакетів RPM для транзакцій; розширена система завершення введення для bash; підтримка виконання команди builddep без встановлення Python в системі.

Серед недоліків змінюючи менеджер пакетів дистрибутива на Microdnf це зміна структури внутрішніх баз даних і обробка окремої бази даних від DNF, яка не дозволить вам побачити транзакції з пакетами, зробленими в DNF в Microdnf і навпаки.

Пакети, раніше встановлені за допомогою DNF, будуть розглядатися як «користувач, встановлений з історії dnf» після міграції на Microdnf, і видалення пакунка, встановленого іншим менеджером пакунків, не видалить невикористані залежності, пов’язані з ним. Крім того, Microdnf не планує підтримувати 100% підтримку DNF на рівні команд і параметрах командного рядка.

Відзначається, що нова версія Microdnf буде підтримувати всі основні функції DNF, але при цьому збереже високу продуктивність і компактність.

Нарешті, якщо вам цікаво дізнатися більше про це, ви можете проконсультуватися деталі у наступному посиланні.


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.

  1.   kourt - сказав він

    Я новачок у програмуванні та захоплююся Linux. Я ніколи не використовував Fedora, тому що у мене завжди виникають проблеми з інсталяцією, і я в кінцевому підсумку з Debian (і похідними) або OpenSUSE. Але я думаю, що я розумію важливість у світі Linux і те, наскільки актуально те, що відбувається у Fedora.
    Мої сумніви виникають через ідею заміни Python на C/C++, навіщо реалізовувати за допомогою низькорівневої мови, яку дуже критикували за її варіанти та погано визначений стандарт? Я трохи розумію перехід від інтерпретованої мови до компільованої, але я не розумію переходу до мови, для якої я бачив, що її намагаються менше використовувати в деяких областях. Чи не було б краще використовувати Rust або C#?
    Я не критикую рішення людей Fedora, але прагну зрозуміти, як розвивається світ програмування. Я вивчаю Python і JS в Інтернеті і вирішив повернутися до C/C++ для основ, тому ця примітка, здається, може допомогти мені зосередитися.

    Muchas gracias! Y excelente trabajo como siempre a la gente de <•DesdeLinux