make-disk-image: add compressed option to compress qcow2 images
This commit is contained in:
parent
a2d3ee77b8
commit
608de48fe4
1 changed files with 6 additions and 1 deletions
|
@ -35,11 +35,16 @@
|
|||
|
||||
, # Disk image format, one of qcow2, vpc, raw.
|
||||
format ? "raw"
|
||||
|
||||
, # Whether to compress the image, applicable only when the format is qcow2.
|
||||
compressed ? false
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
compress = optionalString compressed (assert format == "qcow2"; "-c");
|
||||
|
||||
filename = "nixos." + {
|
||||
qcow2 = "qcow2";
|
||||
vpc = "vhd";
|
||||
|
@ -136,7 +141,7 @@ in pkgs.vmTools.runInLinuxVM (
|
|||
${if format == "raw" then ''
|
||||
mv $diskImage $out/${filename}
|
||||
'' else ''
|
||||
${pkgs.qemu}/bin/qemu-img convert -f raw -O ${format} $diskImage $out/${filename}
|
||||
${pkgs.qemu}/bin/qemu-img convert -f raw -O ${format} ${compress} $diskImage $out/${filename}
|
||||
''}
|
||||
diskImage=$out/${filename}
|
||||
${postVM}
|
||||
|
|
Loading…
Reference in a new issue