Fedora에서는 DNF를 Microdnf로 대체할 계획입니다.

최근에 Fedora 개발자가 마이그레이션 의도를 알렸습니다. 라는 새 패키지 관리자에 배포 대신 "Microdnf" 패키지 관리자에서 "DNF" 현재 사용하고 있는 것입니다.

마이그레이션 경로의 첫 번째 단계는 Microdnf의 주요 업데이트이며, Fedora 38에 대한 계획, 기능면에서 DNF에 가깝고 일부 영역에서는 이를 능가합니다.

언급된다 의도 이 마이그레이션을 수행하기 위해 Microdnf와 DNF의 주요 차이점은 Python 대신 C를 사용한다는 것입니다. 개발을 위해 많은 종속성을 제거할 수 있습니다.

한때 DNF는 Python으로 완전히 작성된 Yum을 대체했고 DNF에서는 성능을 요구하는 저수준 함수를 다시 작성하여 별도의 hawkey, librepo, libsolv 및 libcomps C 라이브러리로 옮겼지만 프레임워크와 고급 레벨 구성 요소는 Python 언어로 유지되었습니다.

Microdnf는 원래 DNF의 단순화된 버전으로 개발되었습니다. Python을 설치할 필요가 없는 Docker 컨테이너에서 사용하기 위한 것입니다. 이제 Fedora 개발자는 Microdnf를 DNF 기능 수준으로 가져오고 결국 DNF를 Microdnf로 완전히 대체할 계획입니다.

Microdnf의 주요 업데이트는 Fedora의 패키지 관리 진화의 첫 번째 단계입니다. 새로운 microdnf는 최소한의 설치 공간을 잃지 않고 DNF의 모든 핵심 기능을 제공하려는 야심을 가지고 있습니다.

Microdnf는 libdnf5 라이브러리를 기반으로 하며, DNF 5 프로젝트의 일부로 개발된 DNF 5는 기존 저수준 라이브러리를 통합하고 나머지 Python 패키지 관리 작업을 C++로 다시 작성하며 핵심 기능을 별도의 라이브러리로 이동하여 이 라이브러리 주변에 바인딩을 생성하여 파이썬 API.

MICRODNF는 사용자 경험을 크게 향상시키고 향후 DNF의 모든 중요한 기능을 제공할 것입니다. 또한 컨테이너에 필요한 최소 크기와 같은 원래 MICRODNF의 모든 장점을 유지합니다.

새로운 버전 Microdnf는 백그라운드 프로세스 DNF Daemon도 사용합니다. PackageKit 기능을 대체하고 그래픽 환경에서 패키지 및 업데이트를 관리하기 위한 인터페이스를 제공합니다. PackageKit과 달리 DNF Daemon은 RPM 형식만 지원합니다.

Microdnf, libdnf5 및 DNF 데몬은 구현의 첫 번째 단계에서 기존 DNF 툴킷과 함께 제공될 예정입니다. 프로젝트가 완료되면 새 패키지가 dnf, python3-dnf, python3-hawkey, libdnf, dnfdragora 및 python3-dnfdaemon과 같은 패키지를 대체합니다.

~ 중 Microdnf가 DNF보다 우수한 영역에서 두드러집니다.: 작업 진행 상황을 보다 시각적으로 표시합니다. 향상된 트랜잭션 테이블 구현; 패키지된 스크립틀릿(스크립틀릿)에 의해 발행된 완료된 트랜잭션에 대한 보고서에 정보를 표시하는 기능; 트랜잭션을 위한 로컬 RPM 패키지 사용 지원; bash를 위한 고급 입력 완성 시스템; 시스템에 Python을 설치하지 않고 builddep 명령 실행을 지원합니다.

단점 중 배포판의 패키지 관리자를 Microdnf로 변경 내부 데이터베이스 구조의 변화입니다. DNF에서 별도의 데이터베이스를 처리하여 Microdnf에서 DNF로 만든 패키지와의 트랜잭션을 볼 수 없으며 그 반대의 경우도 마찬가지입니다.

이전에 DNF와 함께 설치된 패키지는 Microdnf로 마이그레이션한 후 "dnf 기록에서 설치된 사용자"로 처리되며 다른 패키지 관리자가 설치한 패키지를 제거해도 이와 관련된 사용하지 않는 종속성은 제거되지 않습니다. 또한 Microdnf는 명령 수준 및 명령줄 옵션에서 100% DNF 지원을 유지할 계획이 없습니다.

Microdnf의 새 버전은 DNF의 모든 주요 기능을 지원하지만 동시에 고성능과 컴팩트함을 유지합니다.

마지막으로, 그것에 대해 더 자세히 알고 싶다면 다음과 같이 상담하십시오. 다음 링크의 세부 정보.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   쿠르트

    저는 프로그래밍이 처음이고 Linux에 열광합니다. 저는 항상 설치에 문제가 있고 데비안(및 파생 제품) 또는 OpenSUSE로 끝나기 때문에 Fedora를 사용한 적이 없습니다. 하지만 저는 Linux 세계의 중요성과 Fedora에서 일어나는 일의 연관성을 이해하고 있다고 생각합니다.
    내 의심은 C/C++를 Python으로 대체한다는 아이디어에서 비롯된 것입니다. 변종과 제대로 정의되지 않은 표준으로 인해 높은 비판을 받아온 저급 언어로 구현하는 이유는 무엇입니까? 해석된 언어에서 컴파일된 언어로의 변화를 조금 이해하지만 일부 영역에서 덜 사용하려는 언어로의 점프를 이해하지 못합니다. Rust나 C#을 사용하는 것이 좋지 않을까요?
    나는 Fedora 사람들의 결정을 비판하지 않지만 프로그래밍 세계가 어떻게 발전하는지 이해하려고 합니다. 저는 웹에서 Python과 JS를 배우고 있으며 기초를 위해 C/C++로 다시 뛰어들고 싶다고 생각했습니다. 그래서 이 노트가 초점을 맞추는 데 도움이 될 것 같습니다.

    매우 감사합니다! 그리고 언제나처럼 <• 사람들에게 훌륭한 일을 하셨습니다.DesdeLinux