The horrors of package formats, in Rust!
- Do I even need to say anything here? Horrible choice of package format, unless you’re distributing one file.
- As far as I can tell, the
tarcrate can only unpack to a real directory on the filesystem, because nobody would ever have a use-case for extracting a tarball in-memory.
tarcrate follows symlinks by default.
- Directories are an entry of type
- Symlinks are an entry of type
- Symlinks have special extra metadata directly on the tar entry header.
- If you forget to set the checksum on an entry header, tooling may break in new and unhelpful ways.
- Downloading an image, building an image, and uploading a rootfs tarball to the daemon are all the same command (
- An exported Docker image is a tarball of tarballs (that may contain more tarballs as part of the layer!) + some metadata.
- An exported...
Continue reading →