RPM Package Manager je nástroj pro správu balíčků určený k instalaci, aktualizaci, odinstalaci, ověřování a vyžádání programů
Bylo oznámeno spuštění nové verze správce balíčků "RPM 4.19", která zdůrazňuje vylepšení a opravy, které byly provedeny, stejně jako vylepšení APIS, podpora, nový systém kompilace CMake, mimo jiné dále.
Projekt RPM4 je v současné době vyvíjen společností Red Hat a používá se v distribucích jako RHEL (včetně projektů odvozených od CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen a mnoha dalších.
Nezávislý vývojový tým dříve vyvinul projekt RPM5, který přímo nesouvisí s RPM4 a je aktuálně opuštěný (od roku 2010 nebyl aktualizován).
Balíček RPM může obsahovat libovolný počet souborů. Většina souborů RPM jsou „binární RPM“ (nebo BRPM), které obsahují zkompilovanou verzi nějakého softwaru. Existují také „zdrojové RPM“ (nebo SRPM), které obsahují zdrojový kód použitý k sestavení binárního balíčku. Soubory SRPM mají obvykle příponu souboru „.src.rpm“ (nebo „.spm“ na souborových systémech omezených na 3 znaky, jako je starší DOS FAT).
Hlavní nové funkce RPM 4.19
V této nové verzi RPM 4.19 je jednou z nejpozoruhodnějších funkcí přidání podpory pro soubory „.specpart“ pro dynamické generování specifikačních souborů a také přidání parametru „ --generate-subpackages “ do find_lang.sh, který používá .specpart.
Další pozoruhodnou změnou v této nové verzi RPM 4.19 je integrace s adresářem uživatelských účtů systému sysusers.d pro automatické zpracování uživatelů a skupin. Dále byla přidána podpora pro generování uživatelů a skupin ze souborů /etc/passwd, /etc/group a sysusers.d, které jsou součástí balíčku.
Pokud jde o vylepšení podpory, vynikají následující: byly přidány úrovně architektury x86-64, byl opraven způsob odvozování modelů x86 v rpmrc, byl změněn systém sestavení CMake tak, aby nahradil Autotools, a fakechroot byl nahrazen technologií kontejnerů.
Můžeme také zjistit, že v souborech specifikací byla přidána podpora pro skriptlety %preuntrans a %postuntrans, byla přidána utilita rpmsort pro třídění verzí balíčků rpm.
Kromě toho byly přidány možnosti „–nopreuntrans“, „–nopostuntrans“ a „–nosysusers“, které zakazují skripty a vytvářejí uživatele a skupiny automaticky během instalace balíčku.
Mezi další významné změny v této nové verzi patří:
- Zajistěte, aby informace o uživatelích/skupinách fungovaly spolehlivě v chrootu
- Udělejte stroj rpmscript tak, aby vyhovoval chrootu
- Opravená regrese zásuvného modulu pro jednotlivé soubory zavedená ve 4.18
- Potlačit varovnou zprávu zablokování, když služba DBus není dostupná
- Oprava chybějících součástí v macOS
- Funkce související se souborem classifierrpmfcNew() byla prohlášena za zastaralou
- Opraveno ignorování výstupního kódu podřízených skriptů v případě EINTR
- Kód povolení vlákna rpmioe byl zjednodušen a vyčištěn.
- Blok %files a obslužný program příkazového řádku nyní podporují globování ve stylu shellu a speciální escapování.
- Odstraňte některé další staré a nadbytečné kontroly času konfigurace
- Rozdělte překlady do samostatného projektu
- Výchozí je národní prostředí C.UTF-8, umožňuje přechod na C
- Knihovny byly exportovány jako konfigurace cmake „find_package()“.
- Do rozhraní API byly přidány funkce rpmGlobPath(), rpmEscape() a rpmUnescape().
- Paralelizace sestavení se nyní provádí s ohledem na paměť a adresní prostor.
- Přidána vývojová dokumentace při vytváření dokumentace.
- Různé další doplňky a opravy
- Pro projekty využívající CMake je k dispozici funkce find_package(rpm).
- Opravena chyba segmentace v nezřetězeném argumentu pro volání makra z Lua
A konečně, pokud se chcete o této nové verzi dozvědět více, podrobnosti naleznete na následujícím odkazu.