Započet je razvoj DNF 5 paketnog upravitelja i PackageKit zamjene

Daniel Mach iz Red Hata сообщил o početku razvoja DNF 5 package managera, u kojem će se DNF logika implementirana u Pythonu prenijeti u libdnf biblioteku napisanu u C++. Planirano je da će DNF 5 početi testirati u lipnju tijekom razvoja Fedore 33, nakon čega će biti dodan u Rawhide repozitorij u listopadu 2020. i zamijenit će DNF 2021 u veljači 4. Održavanje grane DNF 4 nastavit će se kao i sada koristi se u Red Hat Enterprise Linux 8.

Napominje se da je projekt dosegao stanje u kojem je gotovo nemoguće nastaviti razvijati kod bez prekidanja kompatibilnosti na API/ABI razini. To je uglavnom zbog gubitak relevantnost PackageKita i nemogućnost razvoja libdnf-a bez promjene API-ja “libhif”. U isto vrijeme, unatoč namjeri promjene API-ja, održavanje kompatibilnosti unazad na razini sučelja naredbenog retka i API-ja navodi se kao glavni prioritet.

Podrška za Python API u DNF-u će biti zadržana, ali će poslovna logika napisana u Pythonu biti prebačena u libdnf (C++) biblioteku koja će osigurati identičan rad paket managera u distribuciji. Razvoj će biti usredotočen na C++ API, a Python API će se automatski generirati u obliku omota na temelju njega.
Vezovi za Go, Perl i
Rubin. Nakon što se C++ API stabilizira, na njegovoj osnovi će se pripremiti C API na koji će se prenijeti rpm-ostree. Hawkey Python API bit će uklonjen i zamijenjen s libdnf Python API.

Osnovna funkcionalnost DNF-a bit će zadržana. Zbog velikog paketa testova (oko 1400 testova), očekuje se da prerada API-ja neće utjecati na sučelje naredbenog retka za krajnje korisnike. Raščlanjivanje argumenata i izlaz mogu se malo promijeniti, ali te će promjene biti dobro dokumentirane. U ogoljenoj varijanti mikrodnf, koji se koristi u spremnicima, planira se implementirati podskup DNF mogućnosti; postizanje potpunog pariteta u funkcionalnosti se ne razmatra.

Umjesto PackageKit Stvorit će se nova DBus usluga koja pruža sučelje za upravljanje paketima i ažuriranjima za grafičke aplikacije. Ova usluga planira se razvijati od nule, tako da bi njena izrada mogla zahtijevati dosta vremena. PackageKit nije nedavno razvijen te je u načinu održavanja od 2014. zbog gubitka važnosti. S napretkom sustava Snaps i Flatpak, distribucije gube interes za PackageKit, na primjer, više nije dostupan u verzijama Fedora srebrno plava. Sloj apstrakcije za upravljanje paketima uvelike osiguravaju izvorni GNOME i KDE kontrolni centri aplikacija, koji omogućuju instalaciju paketa flatpak na razini pojedinačnog korisnika. Unificirani API sustava za dobivanje popisa instaliranih paketa nije tako koristan kao prije.

Izvor: opennet.ru

Dodajte komentar