diff options
Diffstat (limited to 'vm-lib/make-vm.nix')
-rw-r--r-- | vm-lib/make-vm.nix | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/vm-lib/make-vm.nix b/vm-lib/make-vm.nix index 61e0b2d..45ff78d 100644 --- a/vm-lib/make-vm.nix +++ b/vm-lib/make-vm.nix @@ -11,7 +11,7 @@ pkgs.pkgsStatic.callPackage ( -{ lib, runCommand, writeReferencesToFile, e2fsprogs, tar2ext4 }: +{ lib, runCommand, writeReferencesToFile, erofs-utils }: { run, providers ? {}, sharedDirs ? {} }: @@ -24,7 +24,7 @@ in assert !(any (hasInfix "\n") (concatLists (attrValues providers))); runCommand "spectrum-vm" { - nativeBuildInputs = [ e2fsprogs tar2ext4 ]; + nativeBuildInputs = [ erofs-utils ]; providerDirs = concatStrings (concatLists (mapAttrsToList (kind: map (vm: "${kind}/${vm}\n")) providers)); @@ -35,11 +35,10 @@ runCommand "spectrum-vm" { mkdir root cd root ln -s ${run} run - comm -23 <(sort ${writeReferencesToFile run}) \ - <(sort ${writeReferencesToFile basePaths}) | - tar -cf ../run.tar --verbatim-files-from -T - run - tar2ext4 -i ../run.tar -o "$out/blk/run.img" - e2label "$out/blk/run.img" ext + + ${../scripts/make-erofs.sh} -L ext -- "$out/blk/run.img" run run \ + $(comm -23 <(sort ${writeReferencesToFile run}) \ + <(sort ${writeReferencesToFile basePaths}) | sed p) pushd "$out" |