RPM Package Manager är ett pakethanteringsverktyg utformat för att installera, uppdatera, avinstallera, verifiera och begära program
Lanseringen av den nya versionen av pakethanteraren "RPM 4.19" tillkännagavs, vilket lyfter fram de förbättringar och korrigeringar som har gjorts, samt förbättringar av APIS, support, ett nytt CMake-kompileringssystem, bland annat ytterligare.
För närvarande utvecklas RPM4-projektet av Red Hat och används i distributioner som RHEL (inklusive projekt härledda från CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen och många andra.
Tidigare utvecklade ett oberoende utvecklingsteam RPM5-projektet, som inte är direkt relaterat till RPM4 och för närvarande överges (det har inte uppdaterats sedan 2010).
Ett RPM-paket kan innehålla ett valfritt antal filer. De flesta RPM-filer är "binära RPM" (eller BRPM), vilka innehåller den kompilerade versionen av viss programvara. Det finns också "källkods-RPM" (eller SRPM), vilka innehåller källkoden som används för att bygga ett binärt paket. SRPM-filer har vanligtvis filändelsen ".src.rpm" (eller ".spm" på filsystem begränsade till 3 tecken, till exempel äldre DOS FAT).
De viktigaste nya funktionerna i RPM 4.19
I den här nya versionen av RPM 4.19 är en av dess mest anmärkningsvärda funktioner tillägget av stöd för ".specpart"-filer för dynamisk generering av specifikationsfiler, samt tillägget av " --generate-subpackages " till find_lang.sh, som använder .specpart.
En annan anmärkningsvärd förändring i den här nya versionen av RPM 4.19 är integrationen med systemets användarkontokatalog sysusers.d för automatisk bearbetning av användare och grupper. Dessutom har stöd lagts till för att generera användare och grupper från filerna /etc/passwd, /etc/group och sysusers.d som ingår i paketet.
Beträffande supportförbättringar utmärker sig följande: x86-64-arkitekturnivåer lades till, hur x86-modeller härleds i rpmrc korrigerades, CMake-byggsystemet ändrades för att ersätta Autotools och fakechroot ersattes med containerteknik.
Vi kan också finna att stöd för %preuntrans och %postuntrans scriptlets lades till i specifikationsfilerna, rpmsort-verktyget lades till för att sortera rpm-paketversioner.
Utöver detta lades alternativen "–nopreuntrans", "–nopostuntrans" och "–nosysusers" till för att inaktivera skript och skapa användare och grupper automatiskt under paketinstallationen.
Andra anmärkningsvärda förändringar i den här nya versionen inkluderar:
- Få användar-/gruppinformation att fungera tillförlitligt i chroot
- Gör rpmscript-maskineri chroot-vänliga
- Fixad per-fil plugin hook regression introducerades i 4.18
- Dämpa varningsmeddelandet för spärrlås när DBus-tjänsten inte är tillgänglig
- Åtgärda saknade inkluderar i macOS
- Funktionen relaterad till filen classifierrpmfcNew() förklarades föråldrad
- Fixat ignorering av utgångskoden för underordnade skript vid EINTR
- Koden för rpmioe trådaktivering har förenklats och rensats upp.
- Block- och kommandoradsverktyget %files stöder nu skal-stil globbing och specialtecken escape.
- Ta bort några andra gamla och redundanta konfigurationstidskontroller
- Dela översättningar i ett separat projekt
- Standardinställningen är C.UTF-8, tillåter återgång till C
- Bibliotek exporterades som en cmake "find_package()"-konfiguration
- Funktionerna rpmGlobPath(), rpmEscape() och rpmUnescape() har lagts till i API:t.
- Monteringsparallellisering görs nu med hänsyn till minne och adressutrymme.
- Lade till utvecklingsdokumentation för att skapa dokumentation.
- Diverse andra tillägg och korrigeringar
- För projekt som använder CMake, finns funktionen find_package(rpm).
- Fixade ett segmenteringsfel i ett icke-kedjabart argument för ett makroanrop från Lua
Slutligen, om du är intresserad av att lära dig mer om den här nya versionen, kan du hitta detaljerna på följande länk.