Red Hat์ Daniel Mach ัะพะพะฑัะธะป Python์ผ๋ก ๊ตฌํ๋ DNF ๋ก์ง์ด C++๋ก ์์ฑ๋ libdnf ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ์ ์ก๋๋ DNF 5 ํจํค์ง ๊ด๋ฆฌ์ ๊ฐ๋ฐ์ ์์์ ๋ํด ์ค๋ช
ํฉ๋๋ค. DNF 5๋ Fedora 33 ๊ฐ๋ฐ ์ค 2020์๋ถํฐ ํ
์คํธ๋ฅผ ์์ํ ์์ ์ด๋ฉฐ, ์ดํ 2021๋
4์ Rawhide ์ ์ฅ์์ ์ถ๊ฐ๋๊ณ 4๋
8์ DNF XNUMX๋ฅผ ๋์ฒดํ ์์ ์
๋๋ค. DNF XNUMX ๋ธ๋์น์ ์ ์ง ๊ด๋ฆฌ๋ ๊ทธ๋๋ก ๊ณ์๋ฉ๋๋ค. Red Hat Enterprise Linux XNUMX์์ ์ฌ์ฉ๋ฉ๋๋ค.
API/ABI ์์ค์์ ํธํ์ฑ์ ๊นจ์ง ์๊ณ ๋ ์ฝ๋ ๊ฐ๋ฐ์ ์ง์ํ๋ ๊ฒ์ด ๊ฑฐ์ ๋ถ๊ฐ๋ฅํ ์ํ์ ์ด๋ฅด๋ ๋ค๋ ์ ์ ์ฃผ๋ชฉ๋๋ค. ์ด๋ ์ฃผ๋ก ๋ค์์ผ๋ก ์ธํด ๋ฐ์ํฉ๋๋ค. ์์ค PackageKit์ ๊ด๋ จ์ฑ๊ณผ "libhif" API๋ฅผ ๋ณ๊ฒฝํ์ง ์๊ณ ๋ libdnf๋ฅผ ๊ฐ๋ฐํ ์ ์๋ค๋ ์ ์
๋๋ค. ๋์์ API๋ฅผ ๋ณ๊ฒฝํ๋ ค๋ ์๋์๋ ๋ถ๊ตฌํ๊ณ ๋ช
๋ น์ค ์ธํฐํ์ด์ค์ API ์์ค์์ ํ์ ํธํ์ฑ์ ์ ์งํ๋ ๊ฒ์ด ์ต์ฐ์ ๊ณผ์ ๋ผ๊ณ ํฉ๋๋ค.
DNF์ Python API์ ๋ํ ์ง์์ ์ ์ง๋์ง๋ง Python์ผ๋ก ์์ฑ๋ ๋น์ฆ๋์ค ๋
ผ๋ฆฌ๋ libdnf(C++) ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ์ ์ก๋์ด ๋ฐฐํฌํ์์ ํจํค์ง ๊ด๋ฆฌ์์ ๋์ผํ ์๋์ ๋ณด์ฅํฉ๋๋ค. ๊ฐ๋ฐ์ C++ API๋ฅผ ์ค์ฌ์ผ๋ก ์ด๋ฃจ์ด์ง๋ฉฐ, ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก Python API๊ฐ Wrapper ํํ๋ก ์๋ ์์ฑ๋ฉ๋๋ค.
Go, Perl ๋ฐ
๋ฃจ๋น. C++ API๊ฐ ์์ ํ๋๋ฉด ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก C API๊ฐ ์ค๋น๋์ด rpm-ostree๊ฐ ์ด์ ๋ฉ๋๋ค. Hawkey Python API๊ฐ ์ ๊ฑฐ๋๊ณ ๋ค์์ผ๋ก ๋์ฒด๋ฉ๋๋ค. libdnf ํ์ด์ฌ API.
DNF์ ํต์ฌ ๊ธฐ๋ฅ์ ์ ์ง๋ฉ๋๋ค. ๋๊ท๋ชจ ํ
์คํธ ๋ชจ์(์ฝ 1400๊ฐ ํ
์คํธ)์ผ๋ก ์ธํด API ์ฌ์์
์ด ์ต์ข
์ฌ์ฉ์๋ฅผ ์ํ ๋ช
๋ น์ค ์ธํฐํ์ด์ค์ ์ํฅ์ ๋ฏธ์น์ง ์์ ๊ฒ์ผ๋ก ์์๋ฉ๋๋ค. ์ธ์ ๊ตฌ๋ฌธ ๋ถ์ ๋ฐ ์ถ๋ ฅ์ด ์ฝ๊ฐ ๋ณ๊ฒฝ๋ ์ ์์ง๋ง ์ด๋ฌํ ๋ณ๊ฒฝ ์ฌํญ์ ์ ๋ฌธ์ํ๋์ด ์์ต๋๋ค. ์ ๊ฑฐ๋ ๋ฒ์ ์์ ๋ง์ดํฌ๋ก์ํ, ์ปจํ
์ด๋์ ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ DNF ๊ธฐ๋ฅ์ ํ์ ์งํฉ์ ๊ตฌํํ ๊ณํ์ด์ง๋ง ๊ธฐ๋ฅ์ ์์ ํ ํจ๋ฆฌํฐ ๋ฌ์ฑ์ ๊ณ ๋ ค๋์ง ์์ต๋๋ค.
๋์ ์ ํจํค์ง ํคํธ ๊ทธ๋ํฝ ์ ํ๋ฆฌ์ผ์ด์
์ ๋ํ ํจํค์ง ๋ฐ ์
๋ฐ์ดํธ ๊ด๋ฆฌ๋ฅผ ์ํ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํ๋ ์๋ก์ด DBus ์๋น์ค๊ฐ ์์ฑ๋ฉ๋๋ค. ๋ณธ ์๋น์ค๋ ์ฒ์๋ถํฐ ๊ฐ๋ฐํ ์์ ์ด๋ฏ๋ก ์ ์์ ๋ง์ ์๊ฐ์ด ์์๋ ์ ์์ต๋๋ค. PackageKit์ ์ต๊ทผ์ ๊ฐ๋ฐ๋์ง ์์์ผ๋ฉฐ ๊ด๋ จ์ฑ ์์ค๋ก ์ธํด 2014๋
๋ถํฐ ์ ์ง ๊ด๋ฆฌ ๋ชจ๋์ ์์์ต๋๋ค. Snaps ๋ฐ Flatpak ์์คํ
์ ๋ฐ์ ์ผ๋ก ๋ฐฐํฌํ์ PackageKit์ ๋ํ ๊ด์ฌ์ ์๊ณ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ๋ ์ด์ ๋น๋์์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ํ๋๋ผ ์ค๋ฒ ๋ธ๋ฃจ. ํจํค์ง ๊ด๋ฆฌ๋ฅผ ์ํ ์ถ์ํ ๊ณ์ธต์ ๊ธฐ๋ณธ GNOME ๋ฐ KDE ์์ฉ ํ๋ก๊ทธ๋จ ์ ์ด ์ผํฐ์์ ์ฃผ๋ก ์ ๊ณต๋๋ฉฐ, ์ด๋ฅผ ํตํด ๊ฐ๋ณ ์ฌ์ฉ์ ์์ค์์ flatpak ํจํค์ง๋ฅผ ์ค์นํ ์ ์์ต๋๋ค. ์ค์น๋ ํจํค์ง ๋ชฉ๋ก์ ๊ฐ์ ธ์ค๋ ํตํฉ ์์คํ
API๋ ์ด์ ๋งํผ ์ ์ฉํ์ง ์์ต๋๋ค.
์ถ์ฒ : opennet.ru