Talk:Apk spec: Difference between revisions

From Alpine Linux
No edit summary
m (Unsigned comment attribution, part 2)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
APK v2 package/index terminology
record/block                     
A 512 byte sequence of bytes, a block
h                         
header record/block
d                         
data record/block
e1, e2                     
EOF markers (two blocks 1024 bytes)
tar archive               
A tar archive file, consiting of a set of files, a sequence of blocks ending with the eof marker blocks.
tar segment               
A set of tar records, a sequence of tar records withouth a ending eof marker.
gzip stream               
A stream is a sequence gzip compressed data, starting with a magic number, headers, body and an ending 8-byte trailer.
[ ... ]                   
A gzip stream containing blocks
concatenate               
To link togther things in a series or chain. ie. concatenate.
Concatenate 3 gzip streams sequentially in a file.
package signature         
A single file that is a binary signature over the concatenated (control + data) gzip streams
package signature file     
DigestRSA-PKCS1v15(SHA1( apk-gzip-stream-2 ++ apk-gzip-stream-3), DER)
index signature file       
DigestRSA-PKCS1v15(SHA1( index-gzip-stream-2), DER)
h                         
A tar header record block
h1                         
Signature file header, permission 0644, uid 0 and gid 0.
C: checksum               
The SHA1 hash of the "Control data" gzip stream (gzip stream 2)
{| class="wikitable"
{| class="wikitable"
|+ APK v2 package layout
|+ APK v2 package layout
Line 55: Line 6:
| '''Tar''' || apk-tar-segment-1 || apk-tar-segment-2 || apk-tarball
| '''Tar''' || apk-tar-segment-1 || apk-tar-segment-2 || apk-tarball
|-
|-
| '''Blocks''' || [h1, d, ...] || [h, d, ...] || [h, d, h, d, ..., e1, e2 ]
| '''Blocks''' || [h1, d, ...] || [h, d, ...] || [h, d, h, d, ..., eof1, eof2 ]
|-
|-
| '''Files''' || Package Signature || Control Data || Package Data
| '''Files''' || Package Signature || Control Data || Package Data
Line 67: Line 18:
| '''Tar''' || index-tar-segment-1 || index-tar-segment-2  
| '''Tar''' || index-tar-segment-1 || index-tar-segment-2  
|-
|-
| '''Blocks''' || [h1, d, ...] || [h, d, ..., d1, d2]
| '''Blocks''' || [h1, d, ...] || [h, d, ..., eof1, eof2]
|-
|-
| '''Files''' || Index Signature || Description and APKINDEX  
| '''Files''' || Index Signature || Description and APKINDEX  
|}
|}
<small><span class="autosigned">—&nbsp;Preceding [[Help:Signature|unsigned]] comment added by [[User:Mårten|Mårten]] ([[User talk:Mårten|{{int:talkpagelinktext}}]] • [[Special:Contributions/Mårten|{{int:contribslink}}]]) 12:31, 11 December 2022‎</span></small>
== gzip stream or gzip member ==
Gzip streams could perhaps be called members as the rfc1952 refers them to or the gzip documentation https://www.gnu.org/software/gzip/manual/html_node/Advanced-usage.html.
<small><span class="autosigned">—&nbsp;Preceding [[Help:Signature|unsigned]] comment added by [[User:Mårten|Mårten]] ([[User talk:Mårten|{{int:talkpagelinktext}}]] • [[Special:Contributions/Mårten|{{int:contribslink}}]]) 14:08, 2 March 2023‎</span></small>

Latest revision as of 02:33, 14 August 2023

APK v2 package layout
Gzip Streams apk-gzip-stream1 apk-gzip-stream2 apk-gzip-stream-3
Tar apk-tar-segment-1 apk-tar-segment-2 apk-tarball
Blocks [h1, d, ...] [h, d, ...] [h, d, h, d, ..., eof1, eof2 ]
Files Package Signature Control Data Package Data
Index v2 layout
Gzip Streams index-gzip-stream1 index-gzip-stream2
Tar index-tar-segment-1 index-tar-segment-2
Blocks [h1, d, ...] [h, d, ..., eof1, eof2]
Files Index Signature Description and APKINDEX

— Preceding unsigned comment added by Mårten (talkcontribs) 12:31, 11 December 2022‎

gzip stream or gzip member

Gzip streams could perhaps be called members as the rfc1952 refers them to or the gzip documentation https://www.gnu.org/software/gzip/manual/html_node/Advanced-usage.html.

— Preceding unsigned comment added by Mårten (talkcontribs) 14:08, 2 March 2023‎