DNF 5 рдкреЕрдХреЗрдЬ рдореЕрдиреЗрдЬрд░ рдЖрдгрд┐ PackageKit рд░рд┐рдкреНрд▓реЗрд╕рдореЗрдВрдЯрдЪрд╛ рд╡рд┐рдХрд╛рд╕ рд╕реБрд░реВ рдЭрд╛рд▓рд╛ рдЖрд╣реЗ

рд░реЗрдб рд╣реЕрдЯ рдХрдбреВрди рдбреЕрдирд┐рдпрд▓ рдореЕрдХ рдиреЛрдВрджрд╡рд▓реЗ DNF 5 рдкреЕрдХреЗрдЬ рдореЕрдиреЗрдЬрд░рдЪреНрдпрд╛ рд╡рд┐рдХрд╛рд╕рд╛рдЪреНрдпрд╛ рд╕реБрд░реБрд╡рд╛рддреАрдмрджреНрджрд▓, рдЬреНрдпрд╛рдордзреНрдпреЗ Python рдордзреНрдпреЗ рд▓рд╛рдЧреВ рдХреЗрд▓реЗрд▓реЗ DNF рд▓реЙрдЬрд┐рдХ C++ рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓реНрдпрд╛ libdnf рд▓рд╛рдпрдмреНрд░рд░реАрдордзреНрдпреЗ рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдИрд▓. DNF 5 рдЪреА Fedora 33 рдЪреНрдпрд╛ рд╡рд┐рдХрд╛рд╕рд╛рджрд░рдореНрдпрд╛рди рдЬреВрдирдордзреНрдпреЗ рдЪрд╛рдЪрдгреА рд╕реБрд░реВ рдХрд░рдгреНрдпрд╛рдЪреЗ рдирд┐рдпреЛрдЬрд┐рдд рдЖрд╣реЗ, рддреНрдпрд╛рдирдВрддрд░ рддреЗ рдСрдХреНрдЯреЛрдмрд░ 2020 рдордзреНрдпреЗ рд░реЙрд╣рд╛рдЗрдб рд░рд┐рдкреЙрдЭрд┐рдЯрд░реАрдордзреНрдпреЗ рдЬреЛрдбрд▓реЗ рдЬрд╛рдИрд▓ рдЖрдгрд┐ рдлреЗрдмреНрд░реБрд╡рд╛рд░реА 2021 рдордзреНрдпреЗ DNF 4 рдЪреА рдЬрд╛рдЧрд╛ рдШреЗрдИрд▓. DNF 4 рд╢рд╛рдЦреЗрдЪреА рджреЗрдЦрднрд╛рд▓ рдЬрд╢реА рдЖрд╣реЗ рддрд╢реА рд╕реБрд░реВ рд░рд╛рд╣реАрд▓. Red Hat Enterprise Linux 8 рдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ.

рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдШреЗрддрд▓реЗ рдЬрд╛рддреЗ рдХреА рдкреНрд░рдХрд▓реНрдк рдЕрд╢рд╛ рд╕реНрдерд┐рддреАрдд рдкреЛрд╣реЛрдЪрд▓рд╛ рдЖрд╣реЗ рдЬреНрдпрд╛рдордзреНрдпреЗ API/ABI рд╕реНрддрд░рд╛рд╡рд░ рд╕реБрд╕рдВрдЧрддрддрд╛ рдЦрдВрдбрд┐рдд рдХреЗрд▓реНрдпрд╛рд╢рд┐рд╡рд╛рдп рдХреЛрдб рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдгреЗ рдЬрд╡рд│рдЬрд╡рд│ рдЕрд╢рдХреНрдп рдЖрд╣реЗ. рд╣реЗ рдкреНрд░рд╛рдореБрдЦреНрдпрд╛рдиреЗ рдореБрд│реЗ рдЖрд╣реЗ рддреЛрдЯрд╛ PackageKit рдЪреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХрддрд╛ рдЖрдгрд┐ тАЬlibhifтАЭ API рди рдмрджрд▓рддрд╛ libdnf рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдЕрд╢рдХреНрдпрддрд╛. рддреНрдпрд╛рдЪ рд╡реЗрд│реА, рдПрдкреАрдЖрдп рдмрджрд▓рдгреНрдпрд╛рдЪрд╛ рдЗрд░рд╛рджрд╛ рдЕрд╕реВрдирд╣реА, рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЗрдВрдЯрд░рдлреЗрд╕ рдЖрдгрд┐ рдПрдкреАрдЖрдпрдЪреНрдпрд╛ рд╕реНрддрд░рд╛рд╡рд░ рдмреЕрдХрд╡рд░реНрдб рд╕реБрд╕рдВрдЧрддрддрд╛ рд░рд╛рдЦрдгреЗ рд╣реЗ рдореБрдЦреНрдп рдкреНрд░рд╛рдзрд╛рдиреНрдп рдЕрд╕рд▓реНрдпрд╛рдЪреЗ рдореНрд╣рдЯрд▓реЗ рдЖрд╣реЗ.

DNF рдордзреАрд▓ Python API рд╕рд╛рдареА рд╕рдорд░реНрдерди рдХрд╛рдпрдо рдареЗрд╡рд▓рд╛ рдЬрд╛рдИрд▓, рдкрд░рдВрддреБ Python рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓реЗ рд╡реНрдпрд╡рд╕рд╛рдп рд▓реЙрдЬрд┐рдХ libdnf (C++) рд▓рд╛рдпрдмреНрд░рд░реАрдордзреНрдпреЗ рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдИрд▓, рдЬреЗ рд╡рд┐рддрд░рдгрд╛рдордзреНрдпреЗ рдкреЕрдХреЗрдЬ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХрд╛рдЪреНрдпрд╛ рд╕рдорд╛рди рдСрдкрд░реЗрд╢рдирдЪреА рдЦрд╛рддреНрд░реА рдХрд░реЗрд▓. рд╡рд┐рдХрд╛рд╕ C++ API рднреЛрд╡рддреА рдХреЗрдВрджреНрд░рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рдИрд▓, рдЖрдгрд┐ Python API рддреНрдпрд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рд░реЕрдкрд░рдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд рд╕реНрд╡рдпрдВрдЪрд▓рд┐рддрдкрдгреЗ рд╡реНрдпреБрддреНрдкрдиреНрди рд╣реЛрдИрд▓.
рдЧреЛ, рдкрд░реНрд▓ рдЖрдгрд┐ рд╕рд╛рдареА рдмрд╛рдЗрдВрдбрд┐рдВрдЧреНрдЬ
рд░реБрдмреА. C++ API рд╕реНрдерд┐рд░ рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░, рддреНрдпрд╛рдЪреНрдпрд╛ рдЖрдзрд╛рд░рд╛рд╡рд░ C API рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЬрд╛рдИрд▓, рдЬреНрдпрд╛рдордзреНрдпреЗ rpm-ostree рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдИрд▓. рд╣реЙрдХреА Python API рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реЗ рдЬрд╛рдИрд▓ рдЖрдгрд┐ рдмрджрд▓рд▓реЗ рдЬрд╛рдИрд▓ libdnf рдкрд╛рдпрдерди API.

DNF рдЪреА рдореБрдЦреНрдп рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд░рд╛рдЦреВрди рдареЗрд╡рд▓реА рдЬрд╛рдИрд▓. рдореЛрдареНрдпрд╛ рдЪрд╛рдЪрдгреА рд╕рдВрдЪрдореБрд│реЗ (рд╕реБрдорд╛рд░реЗ 1400 рдЪрд╛рдЪрдгреНрдпрд╛), рд╣реЗ рдЕрдкреЗрдХреНрд╖рд┐рдд рдЖрд╣реЗ рдХреА API рд░реАрд╡рд░реНрдХ рдЕрдВрддрд┐рдо рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрд╕рд╛рдареА рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЗрдВрдЯрд░рдлреЗрд╕рд╡рд░ рдкрд░рд┐рдгрд╛рдо рдХрд░рдгрд╛рд░ рдирд╛рд╣реА. рдЖрд░реНрдЧреНрдпреБрдореЗрдВрдЯ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдЖрдгрд┐ рдЖрдЙрдЯрдкреБрдЯ рдХрд┐рдВрдЪрд┐рдд рдмрджрд▓реВ рд╢рдХрддрд╛рдд, рдкрд░рдВрддреБ рд╣реЗ рдмрджрд▓ рдЪрд╛рдВрдЧрд▓реЗ рджрд╕реНрддрдРрд╡рдЬреАрдХрд░рдг рдХреЗрд▓реЗ рдЬрд╛рддреАрд▓. рд╕реНрдЯреНрд░рд┐рдк рдбрд╛рдЙрди рдЖрд╡реГрддреНрддреАрдордзреНрдпреЗ microdnf, рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░реНтАНрдпрд╛, DNF рдХреНрд╖рдорддрд╛рдВрдЪрд╛ рдЙрдкрд╕рдВрдЪ рд▓рд╛рдЧреВ рдХрд░рдгреНрдпрд╛рдЪреА рдпреЛрдЬрдирд╛ рдЖрд╣реЗ; рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрдордзреНрдпреЗ рдкреВрд░реНрдг рд╕рдорд╛рдирддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреЗ рд╡рд┐рдЪрд╛рд░рд╛рдд рдШреЗрддрд▓реЗ рдЬрд╛рдд рдирд╛рд╣реА.

рддреНрдпрд╛рдРрд╡рдЬреА рдкреЕрдХреЗрдЬрдХрд┐рдЯ рдПрдХ рдирд╡реАрди DBus рд╕реЗрд╡рд╛ рддрдпрд╛рд░ рдХреЗрд▓реА рдЬрд╛рдИрд▓ рдЬреА рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрд╕рд╛рдареА рдкреЕрдХреЗрдЬреЗрд╕ рдЖрдгрд┐ рдЕрджреНрдпрддрдиреЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЗрдВрдЯрд░рдлреЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рддреЗ. рд╣реА рд╕реЗрд╡рд╛ рд╕реБрд░рд╡рд╛рддреАрдкрд╛рд╕реВрди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдгреНрдпрд╛рдЪреЗ рдирд┐рдпреЛрдЬрд┐рдд рдЖрд╣реЗ, рдореНрд╣рдгреВрди рддреНрдпрд╛рдЪреНрдпрд╛ рдирд┐рд░реНрдорд┐рддреАрд╕рд╛рдареА рдмрд░рд╛рдЪ рд╡реЗрд│ рд▓рд╛рдЧреЗрд▓. рдкреЕрдХреЗрдЬрдХрд┐рдЯ рдЕрд▓реАрдХрдбреЗ рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдирд╛рд╣реА рдЖрдгрд┐ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХрддрд╛ рдЧрдорд╛рд╡рд▓реНрдпрд╛рдореБрд│реЗ 2014 рдкрд╛рд╕реВрди рджреЗрдЦрднрд╛рд▓ рдореЛрдбрдордзреНрдпреЗ рдЖрд╣реЗ. Snaps рдЖрдгрд┐ Flatpak рд╕рд┐рд╕реНрдЯреАрдордЪреНрдпрд╛ рдкреНрд░рдЧрддреАрдореБрд│реЗ, рд╡рд┐рддрд░рдгрд╛рдВрдирд╛ PackageKit рдордзреАрд▓ рд╕реНрд╡рд╛рд░рд╕реНрдп рдХрдореА рд╣реЛрдд рдЖрд╣реЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рддреЗ рдпрд╛рдкреБрдвреЗ рдмрд┐рд▓реНрдбрдордзреНрдпреЗ рдЙрдкрд▓рдмреНрдз рдирд╛рд╣реА. рдлреЗрдбреЛрд░рд╛ рд╕рд┐рд▓реНрд╡реНрд╣рд░рдмреНрд▓реВ. рдкреЕрдХреЗрдЬ рдореЕрдиреЗрдЬрдореЗрдВрдЯрд╕рд╛рдареА рдЕреЕрдмреНрд╕реНрдЯреНрд░реЕрдХреНрд╢рди рд▓реЗрдпрд░ рдореБрдЦреНрдпрддреНрд╡реЗ рдиреЗрдЯрд┐рд╡реНрд╣ GNOME рдЖрдгрд┐ KDE рдЕреЕрдкреНрд▓рд┐рдХреЗрд╢рди рдХрдВрдЯреНрд░реЛрд▓ рд╕реЗрдВрдЯрд░реНрд╕рджреНрд╡рд╛рд░реЗ рдкреНрд░рджрд╛рди рдХреЗрд▓реЗ рдЬрд╛рддреЗ, рдЬреЗ рд╕реНрд╡рддрдВрддреНрд░ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╕реНрддрд░рд╛рд╡рд░ рдлреНрд▓реЕрдЯрдкреЕрдХ рдкреЕрдХреЗрдЬреЗрд╕рдЪреНрдпрд╛ рд╕реНрдерд╛рдкрдиреЗрд▓рд╛ рдкрд░рд╡рд╛рдирдЧреА рджреЗрддрд╛рдд. рд╕реНрдерд╛рдкрд┐рдд рдкреЕрдХреЗрдЬреЗрд╕рдЪреА рдпрд╛рджреА рдорд┐рд│рд╡рд┐рдгреНрдпрд╛рд╕рд╛рдареА рдпреБрдирд┐рдлрд╛рдЗрдб рд╕рд┐рд╕реНрдЯрдо API рдкреВрд░реНрд╡реАрд╕рд╛рд░рдЦреЗ рдЙрдкрдпреБрдХреНрдд рдирд╛рд╣реА.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛