У Fedora плануюць замяніць пакетны мэнэджар DNF на Microdnf

Распрацоўнікі Fedora Linux маюць намер перавесці дыстрыбутыў на новы пакетны мэнэджар Microdnf замест цяпер выкарыстоўванага DNF. Першым крокам на шляхі да міграцыі стане планаванае ў выпуску Fedora Linux 38 значнае абнаўленне Microdnf, які будзе набліжаны па функцыянальнасці да DNF, а ў некаторых абласцях нават стане яго пераўзыходзіць. Адзначаецца, што новая версія Microdnf будзе падтрымліваць усе асноўныя магчымасці DNF, але пры гэтым захавае высокую прадукцыйнасць і кампактнасць.

Ключавым адрозненнем Microdnf ад DNF з'яўляецца выкарыстанне для распрацоўкі мовы Сі, замест Python, што дазваляе пазбавіцца ад вялікай колькасці залежнасцяў. Першапачаткова Microdnf развіваўся як зрэзаны варыянт DNF для выкарыстання ў кантэйнерах Docker, які не патрабуе ўсталёўкі Python. Цяпер распрацоўшчыкі Fedora плануюць давесці Microdnf да ўзроўню DNF і з часам цалкам замяніць DNF на Microdnf.

Асновай Microdnf выступае бібліятэка libdnf5, якая развіваецца ў рамках праекту DNF 5. Асноўная ідэя DNF 5 у перапісванні базавых аперацый кіравання пакетамі на мове З++ і іх вынас у асобную бібліятэку са стварэннем вакол гэтай бібліятэкі абвязкі для захавання Python API.

Новая версія Microdnf таксама будзе выкарыстоўваць фонавы працэс DNF Daemon, які замяняе функцыянальнасць PackageKit і які прадстаўляе інтэрфейс для кіравання пакетамі і абнаўленнямі ў графічных асяродках. У адрозненне ад PackageKit у DNF Daemon будзе прадастаўляцца падтрымка толькі фармату RPM.

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

З абласцей, у якіх Microdnf пераўзыходзіць DNF, адзначаецца: больш навочная індыкацыя прагрэсу выканання аперацый; палепшаная рэалізацыя табліцы транзакцый; магчымасць вываду ў справаздачах аб выкананых транзакцыях інфармацыі, якая выдаецца ўбудаванымі ў пакеты скрыптамі (scriplets); падтрымка выкарыстання лакальных RPM-пакетаў для транзакцый; больш прасунутая сістэма аўтададатку ўводу для bash; падтрымка выканання каманды builddep без усталёўкі Python у сістэме.

Сярод мінусаў пераходу дыстрыбутыва на Microdnf згадваецца змена структуры ўнутраных БД і паасобная ад DNF апрацоўка БД, што не дазволіць бачыць у Microdnf транзакцыі з пакетамі, выкананыя ў DNF і наадварот. Акрамя таго, у Microdnf не плануюць захаваць 100% сумяшчальнасць у DNF на ўзроўні каманд і опцый каманднага радка. Таксама будуць назірацца некаторыя разыходжанні ў паводзінах. Напрыклад, выдаленне пакета не будзе прыводзіць да выдалення злучаных з ім залежнасцяў, якія не выкарыстоўваюцца ў іншых пакетах.

Крыніца: opennet.ru

Дадаць каментар