Apk spec: Difference between revisions

From Alpine Linux
m (Created File Formats section, focusing on three related to apk spec: Index, Install DB, Package File)
(Add Provider priority (k))
(13 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Draft}}
This page is to describe and formalize the specication of 'apk' package manager.
This page is to describe and formalize the specication of 'apk' package manager.


Line 11: Line 13:
! Description
! Description
! Field Data Format
! Field Data Format
! regex
! install-db
! install-db
! package-index
! package-index
Line 17: Line 20:
| Architecture
| Architecture
| ?
| ?
| <nowiki>^A:\S+$</nowiki>
| ?
| ?
| ?
| yes
|-
|-
| C
| C
Line 25: Line 29:
| ?
| ?
| ?
| ?
| yes
|-
|-
| D
| D
Line 31: Line 36:
| ?
| ?
| ?
| ?
| yes
|-
|-
| F
| F
Line 37: Line 43:
| ?
| ?
| ?
| ?
| no
|-
|-
| I
| I
Line 43: Line 50:
| ?
| ?
| ?
| ?
| yes
|-
|-
| L
| L
Line 49: Line 57:
| ?
| ?
| ?
| ?
| yes
|-
|-
| M
| M
Line 55: Line 64:
| ?
| ?
| ?
| ?
| no
|-
|-
| P
| P
| Package Name  (no version, just the plain name)
| ?
| ?
| ?
| ?
| ?
| ?
| ?
| yes
|-
|-
| R
| R
Line 67: Line 78:
| ?
| ?
| ?
| ?
| no
|-
|-
| S
| S
| Package Size
| Package Size
| ?
| ?
| <nowiki>^S:(\d+)$</nowiki>
| ?
| ?
| ?
| yes
|-
|-
| T
| T
Line 79: Line 92:
| ?
| ?
| ?
| ?
| yes
|-
|-
| U
| U
Line 85: Line 99:
| ?
| ?
| ?
| ?
| yes
|-
|-
| V
| V
Line 91: Line 106:
| ?
| ?
| ?
| ?
| yes
|-
|-
| Z
| Z
Line 97: Line 113:
| ?
| ?
| ?
| ?
| no
|-
|-
| a
| a
Line 103: Line 120:
| ?
| ?
| ?
| ?
| no
|-
|-
| c
| c
| Git commit of aport
| ?
| ?
| ?
| ?
| yes
|-
| k
| Provider priority
| ?
| ?
| ?
| ?
| ?
| ?
| yes
|-
|-
| i
| i
| Automatic Install Condition (aka Install IF)
| ?
| ?
| ?
| ?
| ?
| ?
| ?
| yes
|-
|-
| m
| m
Line 121: Line 148:
| ?
| ?
| ?
| ?
| yes
|-
|-
| o
| o
Line 127: Line 155:
| ?
| ?
| ?
| ?
| yes
|-
|-
| q
| q
Line 133: Line 162:
| ?
| ?
| ?
| ?
| no
|-
|-
| p
| p
Line 139: Line 169:
| ?
| ?
| ?
| ?
| yes
|-
|-
| r
| r
Line 145: Line 176:
| ?
| ?
| ?
| ?
| no
|-
|-
| s
| s
Line 151: Line 183:
| ?
| ?
| ?
| ?
| no
|-
|-
| t
| t
| Build Timestamp (epoch)
| Build Timestamp (epoch)
| ?
| ?
| <nowiki>^t:(\d+)$</nowiki>
| ?
| ?
| ?
| yes
|}
|}


Line 167: Line 201:
== Package File ==
== Package File ==


= APINDEX =
= APKINDEX =


= Archive =
= Archive =
[[Category:Package Manager]]

Revision as of 16:00, 3 January 2018

This material is work-in-progress ...

Do not follow instructions here until this notice is removed.
(Last edited by Jirutka on 3 Jan 2018.)

This page is to describe and formalize the specication of 'apk' package manager.

Database

Syntax

Starts on line number 800 in database.c, also check package.c

Field Character Description Field Data Format regex install-db package-index
A Architecture ? ^A:\S+$ ? yes
C Pull Checksum ? ? ? yes
D Pull Dependencies ? ? ? yes
F File Path ? ? ? no
I Package Installed Size ? ? ? yes
L License ? ? ? yes
M File Permissions ? ? ? no
P Package Name (no version, just the plain name) ? ? ? yes
R Get File ? ? ? no
S Package Size ? ^S:(\d+)$ ? yes
T Package Description ? ? ? yes
U Package URL ? ? ? yes
V Package Version ? ? ? yes
Z Pull Checksum ? ? ? no
a Check for file existence ? ? ? no
c Git commit of aport ? ? ? yes
k Provider priority ? ? ? yes
i Automatic Install Condition (aka Install IF) ? ? ? yes
m Maintainer ? ? ? yes
o Package Origin ? ? ? yes
q Replaces Priority ? ? ? no
p Package Provides ? ? ? yes
r Pull Dependencies ? ? ? no
s Get Tag Id ? ? ? no
t Build Timestamp (epoch) ? ^t:(\d+)$ ? yes

File Formats

Index

Install DB

Package File

APKINDEX

Archive