vp-build/doc/BINPKG_REPOSITORY

66 lines
2.2 KiB
Plaintext
Raw Normal View History

A repository for binary packages contains the packages itself, and
an index file describing the information about available packages.
The structure for this file is just the same than the plist file used
to register installed packages, aka "an array of dictionaries" and
a "dictionary per package". Additional objects are added into the
main dictionary to specify more info, like:
- pkgindex-version: version used to build the index.
- location-local: local path to the repository.
- location-remote: remote URI repository.
- total-pkgs: total of number of available packages.
"location-local" will always be created, and it might be exported via
a remote location specified with "location-remote".
The package dictionary will be the same than the one available in
package's metadata directory "/var/cache/xbps/$pkgname/props.plist",
but some additional objects are added to provide enough info for
the repository itself:
- filename: name (and path) for the binary package.
- filename-sha256: SHA256 hash of the binary package.
Here's how the package index plist file shall look like in a repository:
<dict>
<key>pkgindex-version</key>
<string>1.0</string>
<key>location-local</key>
<string>/xbps/repo/local</string>
<key>location-remote</key>
<string>http://www.xbps-remote.org/repo/public</string>
<key>total-pkgs</key>
<integer>666</integer>
<key>available-packages</key>
<array>
<dict>
<key>pkgname</key>
<string>klibc</string>
<key>version</key>
<string>1.5.17</string>
<key>filename</key>
<string>klibc-1.5.17.x86_64.xbps</string>
<key>filename-sha256</key>
<string>7b0de0521983037107cc33f2b1514126432f86ac2be1ef9b9dc51a1e959ea777</string>
<key>architecture</key>
<string>x86_64</string>
<key>installed_size</key>
<integer>9471141</integer>
<key>maintainer</key>
<string>Juan RP xtraeme@gmail.com</string>
<key>short_desc</key>
<string>Minimal libc subset for use with initramfs</key>
<key>long_desc</key>
<string>
klibc is intended to be a minimalistic libc subset for use with initramfs.
It is deliberately written for small size, minimal entanglement, and
portability, not speed. It is definitely a work in progress and a lot of
things are still missing.</string>
...
</dict>
...
</array>
</dict>