Skip to content

lume pull skips multi-part tar layers, fails to assemble disk image #1102

@zpv

Description

@zpv

Summary

lume pull fails to pull images that use multi-part tar layers (e.g. ubuntu-noble-vanilla:latest). All 41 disk image parts are skipped as "unsupported layer media type," resulting in a VM directory with only config.json and nvram.bin but no disk.img.

Reproduction

lume pull ubuntu-noble-vanilla:latest my-vm

Expected

The 41 disk.img.part.* layers should be downloaded and reassembled into a single disk.img.

Actual

All layers are skipped:

[INFO] Skipping unsupported layer media type: application/vnd.oci.image.layer.v1.tar;part.number=1;part.total=41
[INFO] Skipping unsupported layer media type: application/vnd.oci.image.layer.v1.tar;part.number=2;part.total=41
... (repeated for all 41 parts)
[INFO] Found 0 lz4 disk parts in cache to reassemble.
[INFO] Download complete: Files extracted to /path/to/vm/
[INFO] Setting new VM mac address vm_name=my-vm
[ERROR] Failed to get VM error=Virtual machine not found: my-vm
[ERROR] Failed to pull image error=Virtual machine not found: my-vm

The resulting VM directory contains only:

config.json   (159 bytes)
nvram.bin     (131 KB)

No disk.img is created.

Image manifest

The ubuntu-noble-vanilla:latest manifest shows 41 layers of type application/vnd.oci.image.layer.v1.tar;part.number=N;part.total=41, each ~500MB, totaling ~21.5GB. These are plain tar parts (not lz4-compressed), with annotations like disk.img.part.aa, disk.img.part.ab, etc.

The pull code appears to only recognize lz4 disk parts for reassembly, not plain tar parts.

Versions tested

  • lume v0.2.80 (official release via install script)
  • lume v0.2.81 (built from main at HEAD)

All three exhibit the same behavior.

Environment

  • macOS 26.2 (Tahoe), Apple Silicon

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions