След почти две години развитие, пускането на новия версия от мениджъра на пакети Обороти 4.15.0. RPM Package Manager (или RPM, първоначално наречен Red Hat Package Manager, но се превърна в рекурсивна абревиатура) е инструмент за управление на пакети основно предназначени за GNU / Linux. Той е в състояние да инсталира, актуализира, деинсталира, проверява и заявява програми.
Проектът RPM4 е разработен от Red Hat и се използва в дистрибуции като RHEL (включително проекти, получени от CentOS, Scientific Linux, Asia Linux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen и много други.
Проектът RPM5 е разработен преди това от независим екип за разработка, който не е пряко свързан с RPM4 и в момента е изоставен (не е актуализиран от 2010 г.).
RPM пакет може да съдържа произволен набор от файлове. най-много RPM файловете са "двоични RPM" (или BRPM), които съдържат компилираната версия на някакъв софтуер.
Има и "RPM на източника" (или SRPM), които съдържат изходния код, използван за изграждане на двоичен пакет.
Те имат подходящ таг в заглавката на файла, който ги отличава от нормалните RPM, което ги кара да бъдат извлечени в / usr / src при инсталиране.
SRPM обикновено имат файлово разширение ".src.rpm" (.spm на файлови системи с дължина до 3 знака, например стари DOS FAT).
RPM функциите включват:
- Пакетите могат да бъдат криптирани и проверени с GPG и MD5.
- Файловете с изходен код (например .tar.gz, .tar.bz2) са включени в SRPM, което позволява по-късна проверка.
- PatchRPM и DeltaRPM, които са еквивалентни на файловете за корекции, могат постепенно да актуализират инсталираните RPM пакети.
- Зависимостите могат да бъдат разрешени автоматично от мениджъра на пакети.
Какво ново в RPM 4.15
В тази нова версия на RPM 4.15 Rpmbuild добавя поддръжка за динамично изграждане на зависимости с включването му в src.rpm. Добавена е поддръжка за раздела "% generiraj_стройки" в спецификационния файл, чието съдържание се третира като списък на зависимости (BuildRequires), който изисква проверка (ако няма зависимост, ще се покаже грешка).
Друга новост в това издание е това добавена експериментална поддръжка за операции, зависими от chroot, без да се изисква root (посредством пространства на потребителски имена), с които ще бъде възможно да се извършват компилации без привилегии в chroot среди.
Освен това, Поддръжката на пакети за паралелизиране е внедрена в многоядрени системи. Ограничението за броя нишки се задава чрез макроса "% _smp_build_ncpus" и променливата $ RPM_.
също подобрена е поддръжката за ARM архитектура, плюс добавена поддръжка за armv8.
Друга важна промяна е добавяне на фиктивна база данни за база данни, за да помогне на RPM да работи на системи без RPMDB като Debian.
От другите промени, които са подчертани в рекламата:
- Добавена е опция „–scm“ за активиране на режима „% autosetup SCM“
- Добавен е вграден макрос „% {expr: ...}“ за изчисляване на произволни изрази (формат „% [expr]“ също беше предложен преди няколко дни)
- UTF-8 кодирането се използва по подразбиране за низови данни в заглавките
- Добавени са глобални макроси% build_cflags,% build_cxxflags,% build_fflags и% build_ldflags с флагове за компилатора и компонент
- Добавен е макросът „% dnl“ (Отхвърляне на следващия ред), за да вмъкнете коментари
- Обвързването за Python 3 осигурява връщане на низове под формата на екранирани UTF-8 последователности вместо байтови данни.
- Осигурена е непрекъсната поддръжка за Lua 5.2-5.3, която не изисква дефиниции за съвместимост в кода.
- Добавен е нов раздел "% patchlist" и "% sourcelist", който може да се използва за добавяне на кръпки и изходен код от прост списък с имена, без да се посочват номерата на записите (например вместо "Patch0: - popt 1,16-pkgconfig.patch »раздел patchlist, можете да посочите%« popt-1.16-pkgconfig.patch »);
И накрая, за тези, които се интересуват от тестването на подобренията на тази нова версия на мениджъра на пакети, те трябва да знаят това Fedora 31 бета е един от първите дистрибуции, който внедри тази нова версия на RPM 4.15.
Ако искате да научите повече за това, можете да се консултирате следната връзка.