table of contents
deb-buildinfo(5) | dpkg suite | deb-buildinfo(5) |
NAMN¶
deb-buildinfo - filformat för Debiansbygginformation
SYNOPS¶
filnamn.buildinfo
BESKRIVNING¶
Alla Debian-källkodspaket kan lagra bygginformation i en .buildinfo-styrfil, som innehåller ett antal fält i deb822(5)-format.
Varje fält börjar med en etikett, såsom Source eller Binary (skiftlägesoberoende), följt av ett kolontecken och fältets kropp (skiftlägesberoende såvida inte annat anges). Fält avdelas endast av fältetiketter. Med andra ord kan texten i fälten spänna över flera rader, men installationsverktygen kommer oftast att slå samman rader när kroppen tolkas (förutom när det gäller flerradsfälten Binary-Only-Changes, Installed-Build-Depends, Environment, Checksums-Md5, Checksums-Sha1 och Checksums-Sha256, se nedan).
The control data might be enclosed in an OpenPGP ASCII Armored signature, as specified in RFC9580.
Namnet på .buildinfo-filen kommer att bero på byggtypen och kommer att vara så specifik som möjligt, men inte mer; namnet kommer att vara:
- källkodsnamn_binärversion_ark.buildinfo
- för ett bygge som innehåller any (någon)
- källkodsnamn_binärversion_all.buildinfo
- annars för ett bygge som innehåller all (alla)
- källkodsnamn_källkodsversion_source.buildinfo
- annars för ett bygge som innehåller source (källkod)
FÄLT¶
- Format: formatversion (krävs)
- Värdet för fältet anger filens formatversion. Fältets syntax är ett versionsnummer med en huvud- och en underdel. Ändringar som inte är bakåtkompatibla ökar huvudversionen medan ändringar som är bakåtkompatibla (till exempel nya fält) ökar underversionen. Aktuell formatversion är 1.0.
- Source: källkodsnamn [(källkodsversion)] (krävs)
- Namnet på källkodspaketet. Om källkodsversionen skiljer sig från binärversionen kommer källkodsnamn följas av källkodsversion i parentes. Detta kan uppstå när bygget är för en insändning bestående av enbart binärer från någon annan än den paketansvarige (”binary-only non-maintainer upload”).
- Binary: binärpaketlista (krävs i sammanhang)
- Det här flerdelade fältet är en blankstegsavdelad lista över byggda binärpaket. Om endast källkod byggs kommer fältet att uteslutas (sedan dpkg 1.20.0).
- Architecture: ark-lista (krävs)
- Detta blankstegsavdelade fält anger vilken sorts maskinvara paketet för tillfället byggs för. Vanliga arkitekturer är amd64, armel, i386 osv. Observera att värdet all är avsett för paket som är oberoende av arkitektur. Om källkoden för paketet också byggs kommer specialposten source också vara med. Arkitekturer med jokertecken är inte tillåtna i listan.
- Version: versionssträng (krävs)
- Vanligtvis är detta det ursprungliga paketets versionsnummer på den form programmets författare använder. Den kan även innehålla ett Debianuppdateringsnummer (för paket vars källa är utanför Debian). Exakt format och sorteringsalgoritm beskrivs i deb-version(7).
- Binary-Only-Changes:
- post-från-ändringsloggen
- Det här flerradiga fältet innehåller den sammanslagna texten från ändringsloggposter för en insändning av enbart binärer från någon annan än paketansvarige (”binary-only non-maintainer upload”, binNMU) om detta är tillfället. För att göra fältet till ett giltigt flerradsfält ersätts tomma rader med en ensam punkt (”.”) och alla rader får ett teckens indrag. Exakt innehåll beror på formatet på ändringsloggen.
- Checksums-Md5: (required, weak)
- Checksums-Sha1: (required, weak)
- Checksums-Sha256: (required, strong)
- kontrollsumma storlek filnamn
- De här flerradsfälteten innehåller en lista med filer
med en kontrollsumma och storlek för var och en. Fälten har
samma syntax och skiljer sig bara vad gäller vilken
kontrollsummealgoritm som används: MD5 för
Checksums-Md5, SHA-1 för Checksums-Sha1 och SHA-256
för Checksums-Sha256.
Note: The MD5 and SHA-1 checksums are considered weak, and should never be assumed to be sufficient for secure verification.
Första raden i fältvärdet (delen av på samma rad som fältnamnet följt av kolon) är alltid tom. Innehållet i fältet anges som fortsättningsrader, en rad per fil. Varje rad består av blankstegsavdelade fält som beskriver filen: kontrollsumman, filstorleken och filnamnet.
De här fälten visar alla filer bygget består av.
- Build-Origin: namn
- Namnet på den distribution paketet härstammar från.
- Build-Architecture: ark (krävs)
- Debianarkitekturen för den installation paketen byggs i. Vanliga arkitekturer är amd64, armel, i386 osv.
- Build-Date: byggdatum
- Datumet paketet byggdes. Det måste vara på samma format som datumet i en deb-changelog(5)-post.
- Build-Kernel-Version: byggkärneversion
- Utgåva och version (i ett inte specificerat format) för kärnan som körs på byggsystemet. Fältet kommer endast finnas om byggaren specifikt har bett om det, för att undgå att läcka möjligt känslig information.
- Build-Path: byggsökväg
- Absolut byggsökväg som motsvarar det uppackade
källkodsträdet. Fältet kommer endast finnas om
återförsäljaren tillåter det via en
mönsterigenkänning för att undgå att
läcka möjligt känslig information.
På Debian och dess derivat tillåts bara byggsökvägar som börjar med /build/ att ta med detta fält.
- Build-Tainted-By:
- lista-fördärvelsesorsaker
- Det här flerdelade fältet innehåller en
blankstegsavdelad lista över ofullständiga orsagstaggar
(bestående av alfanumeriska tecken och bindestreck) som anger
varför aktuellt bygge har fördärvats (sedan dpkg
1.19.5).
På Debian och dess derivat kan följande orsakstaggar skapas:
- merged-usr-via-aliased-dirs
- Systemet har en sammanslagen /usr via aliaskataloger (tidigare känt som merged-usr-via-symlinks). Detta kommer förvirra dpkg-query, dpkg-statoverride, dpkg-trigger, update-alternatives och andra verktyg som använder sökvägsnamn som nyckel i sina databaser, eftersom det skapar filsystemaliasproblem och stör förståelsen av filsystemet som dpkg har lagrat i sin databas. För byggsystem som hårdkodar sökvägar till specifika binärer eller bibliotek i de resulterande artefakterna kan det också skapa paket som är inkompatibla med system som inte har /usr-sammanslagna filsystem.
- usr-local-has-configs
- Systemet har konfigurationsfiler under /usr/local/etc.
- usr-local-has-includes
- Systemer har huvudfiler under /usr/local/include.
- usr-local-has-programs
- Systemet har program under /usr/local/bin och /usr/local/sbin.
- usr-local-has-libraries
- Systemet har bibliotek, antingen statiska eller delade, under /usr/local/lib.
- can-execute-cross-built-programs
- Systemet kan köra korskompilerade program, antingen direkt eller
via ett emuleringslager.
Stöds sedan dpkg 1.21.10.
- Installed-Build-Depends: (krävs)
- paketlista
- Listan över intallerade och konfigurerade paket som kan
påverka paketets byggprocess.
Listan innehåller varje paketnamn, möjligen med en angiven arkitektur för oegna arkitekturer, med en exakt versionsbegränsning, avdelade med kommatecken.
Listan innehåller alla systemkritiska paket, paket angivna i källkodens styrfält Build-Depends, Build-Depends-Arch, Build-Depends-Indep, eventuella återförsäljarspecifika inbyggda beroenden och alla deras rekursiva beroenden. På Debian och dess derivat är det inbyggda beroendet build-essential.
Alla beroendealternativ och alla försöjare av virtuella paketberoenden kommer tas med för beroenden som kommer från fält i källkodsstyrfilen.
- Environment:
- variabellista
- Listan över miljövariabler som är kända för att påverka paketbyggprocessen, där varje miljövariabel följs av ett likamedtecken (”=”) och variabelns citerade värde, inom dubbla citattecken (’"’) och med omvända snedstreck ersatta (”\\”).
SE ÄVEN¶
deb822(5), deb-changes(5), deb-version(7), dpkg-genbuildinfo(1).
ÖVERSÄTTNING¶
Peter Krefting och Daniel Nylander.
2024-08-01 | 1.22.11 |