source "virtualbox-iso" "arch-vbox-efi" { guest_os_type = "Linux_64" iso_urls = ["https://packages.oth-regensburg.de/archlinux/iso/2024.07.01/archlinux-2024.07.01-x86_64.iso"] iso_checksum = "sha256:398dceea2d04767fbb8b61a9e824f2c8f5eacf62b2cb5006fd63321d978d48bc" firmware = "efi" memory = "1024" cpus = "2" disk_size = "5000" boot_wait = "5s" boot_command = [ "", "passwdpackerpacker", "top" ] ssh_username = "root" ssh_password = "packer" shutdown_command = "echo 'packer' | sudo -S shutdown -P now" output_directory = "builds/${source.name}-${source.type}" } source "qemu" "arch-qemu-efi" { machine_type = "q35" iso_urls = ["https://packages.oth-regensburg.de/archlinux/iso/2024.07.01/archlinux-2024.07.01-x86_64.iso"] iso_checksum = "sha256:398dceea2d04767fbb8b61a9e824f2c8f5eacf62b2cb5006fd63321d978d48bc" efi_boot = true memory = "1024" cpus = "2" disk_size = "5000" disk_interface = "virtio-scsi" boot_wait = "5s" boot_command = [ "", "passwdpackerpacker", "top" ] ssh_username = "root" ssh_password = "packer" shutdown_command = "echo 'packer' | sudo -S shutdown -P now" output_directory = "builds/${source.name}-${source.type}" format = "qcow2" } build { sources = ["sources.virtualbox-iso.arch-vbox-efi", "sources.qemu.arch-qemu-efi"] provisioner "file" { source = "deliver" destination = "/tmp/" } provisioner "shell" { scripts = [ "scripts/00-packeys.sh", "scripts/10-disk.sh", "scripts/20-install.sh", "scripts/30-configure.sh", "scripts/40-bootloader.sh" ] expect_disconnect = "true" } }