RPM-VERSION(7) Miscellaneous Information Manual RPM-VERSION(7) NAMN rpm-version -- RPM:s versionssystem SYNOPSIS [EPOK:]VERSION[-UTGAVA] BESKRIVNING En etikett kand som EVR anvands for att referera till programvaruversioner i RPM och bestar av upp till tre komponenter: o VERSION avspeglar den faktiska versionen av den paketerade programvaran. o UTGAVA reflekterar paketeringsrevisioner inom den programvaruversionen. o EPOK ar ett artificiellt asidosattande som gor det mojligt att ga runt anomalier i versioneringen. Endast komponenten VERSION ar obligatorisk i en EVR-etikett. Alla RPM-paket har dock en VERSION och en UTGAVA. Version VERSIONsstrangen avspeglar den faktiska versionen av den paketerade programvaran. Strangen bestar av alfanumeriska ASCII-tecken, eventuellt avdelade med separatorerna punkt (.), understrykningstecken (_) och plustecknet (+), samt operatorerna tilde (~) och cirkumflex (^). Operatorerna anvands for att avbilda versionsstrangar fore och efter utgavor till en koherent uppgradering. Sarskilt kan tecknet bindestreck (-) INTE anvandas i VERSION eller UTGAVA eftersom det ar komponentseparatorn. Utgava UTGAVAN avspeglar en revision inom en enda programvaruversion. Idealt ar UTGAVA ett enkelt heltal som okas narhelst andringar gors av ett paket, och skall aterstallas (till 1) narhelst programvaruversionen andras. Tektiskt ar formatet exakt samma som for VERSION. Epok EPOKEN ar ett ickenegativt heltal, separat fran versionen med ett kolon (:). Det ar den mest signifikanta delen av en EVR som vrider versionsjamforelsen sa att en aldre version forefaller nyare. Den ar ibland nodvandig for att ga runt versionsanomalier sasom att ett programvaruprojekt andrar sin versioneringsmetod, men aven paketeringsmisstag. En utelamnad EPOK har det implicita vardet noll. Epoken skall bara anvandas som en sista utvag. Den bryter principen om minsta mojliga forvaning, och att andra den kraver att alla relaterade versionerade beroenden i andra paket uppdateras pa motsvarande satt. Jamforelse Tva EVRer jamfors fran vanster till hoger, en komponent at gangen. Komponenterna jamfors fran vanster till hoger, ett segment at gangen. Jamforelsen slutar sa fort som ett segment eller en komponentniva skiljer, sa om t.ex. epoken skiljer beaktas inte resten av EVRen alls. Inom komponenter utgor konsekutiva alfabetiska tecken och konsekutiva siffror implicita segment. Explicita segment markeras med separatorer och operatorer. Numeriska segment jamfors numeriskt som heltal dar inledande nollor ignoreras, annars anvands lexikografisk jamforelse. Det vill saga, abc123 bestar av tva segment: abc och 123 och ar lika med abc0123, abc.123 och abc.000123 trots att de ser olika ut. Numeriska segment anses nyare an alfanumeriska segment oavsett det faktiska innehallet. Nar de ar i ovrigt lika betraktas komponenten med fler segment som nyare, pa samma satt som en EVR med fler komponenter betraktas som nyare. Till exempel ar 0.0 nyare an 0 och 1.xyz ar aldre an 1.0 men nyare an 1. Tecknen som utgor segmentseparator jamfors inte, sa de kan anvandas utbytbart, och flera pa varandra foljande separatorer hanteras som om endast en separator anvandes. Alltsa ar 1.0 lika med 1+0 och 1+.+0. Tildeoperatorer far ett segment att sorteras som aldre, och anvands till forhandsutgaveversioner. Till exempel ar 2.0~beta1 aldre an 2.0 eller 2.0~rc1, och nyare an 1.0. Operatorn cirkumflex ar vasentligen motsatsen till tilde. Den far ett segment att sorteras som nyare, och anvands for ogonblicksbilder efter utgavan som finns mellan faktiska utgavor av programvara. Till exampel ar 2.0^150825 nyare an 2.0 men aldre an 2.0.1. EXEMPEL 123 En enkel ensegmentsversion 123. Nyare an 99, aldre an 321. 1.0.1 En segmenterad versionsstrang 1.0.1, sa som de ofta anvands i programvaruprojekt for att indikera major.minor.mikro-semantik. Nyare an 1.0, aldre an 1.0.2. 2.60.1-1 Forsta utgavan av version 2.60.1. Nyare an 2.0 eller 2.60, men aldre an 3.0. 1.0-5 Femte utgavan av version 1.0, nyare an 1.0 eller 1.0-1, aldre an 1.0.1. 5:3.0-1 Forsta utgavan av version 3.0, med epoken 5. Nyare an 6.0-1, eller 4:6.0-1, aldre an 5:3.1-1. 1.0~beta2 Forhandsutgava beta2 av version 1.0. Nyare an 0.99 och 1.0~beta1, aldre an 1.0. 2.0^20250611 Ogonblicksbild fran 20250611 efter version 2.0. Nyare an 2.0, aldre an 2.0.1. FEL Olika inte uppenbara beteenden och morka horn finns inom algoritmen for jamforelse av versioner, men ar svara att atgarda pa grund av hog risk att forstora for befintliga paket: o Icke-ASCII tecken ignoreras och ar darmed lika: 1.1. ar lika med 1.1. och till och med 1.1.. rpmbuild(1) tillater inte sadanda EVR:er men det ar mojligt att patraffa "otillatna" varden via API-anvandning, valdigt gamla paket och paket som skapats med tredjepartsverktyg. o Implicita segment kan vara vilseledande: 1.f ar nyare an 1c.f. Resultatet blir mer uppenbart genom att gora segmenten explicita: 1.f ar nyare an 1.c.f eftersom segmenten jamfors ett och ett, och c sorterar lagre an f lexikografiskt. rpm(8) rpmbuild(1) rpmsort(1) http://www.rpm.org/ OVERSATTNING Den svenska oversattningen av denna manualsida skapades av Goran Uddeborg Denna oversattning ar fri dokumentation; las GNU General Public License Version 3 eller senare for upphovsrattsvillkor. Vi tar INGET ANSVAR. Om du hittar fel i oversattningen av denna manualsida, skicka ett mail till . RPM 6.0.1 6 mars 2026 RPM-VERSION(7)