The Haiku VM has bitrotted again: At least since Haiku r1beta6 has been released, the image does not work anymore. I tried to update the script to use the r1beta6 repositories instead, but after the update, the Haiku kernel only crashes during reboot.
Given the fact that hardly anybody seems to use this image and that it is more often broken than working, let's stop wasting our time here and simply remove it. Signed-off-by: Thomas Huth <[email protected]> --- If somebody wants to see Haiku being tested more frequently again, it might be better to look into alternatives like Github actions. tests/vm/haiku.x86_64 | 124 ------------------------------------------ 1 file changed, 124 deletions(-) delete mode 100755 tests/vm/haiku.x86_64 diff --git a/tests/vm/haiku.x86_64 b/tests/vm/haiku.x86_64 deleted file mode 100755 index 3ea48dc38a1..00000000000 --- a/tests/vm/haiku.x86_64 +++ /dev/null @@ -1,124 +0,0 @@ -#!/usr/bin/env python3 -# -# Haiku VM image -# -# Copyright 2020-2022 Haiku, Inc. -# -# Authors: -# Alexander von Gluck IV <[email protected]> -# -# This code is licensed under the GPL version 2 or later. See -# the COPYING file in the top-level directory. -# - -import os -import re -import sys -import time -import socket -import subprocess -import basevm - -VAGRANT_KEY_FILE = os.path.join(os.path.dirname(__file__), - "..", "keys", "vagrant") - -VAGRANT_PUB_KEY_FILE = os.path.join(os.path.dirname(__file__), - "..", "keys", "vagrant.pub") - -HAIKU_CONFIG = { - 'cpu' : "max", - 'machine' : 'pc', - 'guest_user' : "vagrant", - 'guest_pass' : "", - 'root_user' : "vagrant", - 'root_pass' : "", - 'ssh_key_file' : VAGRANT_KEY_FILE, - 'ssh_pub_key_file': VAGRANT_PUB_KEY_FILE, - 'memory' : "4G", - 'extra_args' : [], - 'qemu_args' : "-device VGA", - 'dns' : "", - 'ssh_port' : 0, - 'install_cmds' : "", - 'boot_dev_type' : "block", - 'ssh_timeout' : 1, -} - -class HaikuVM(basevm.BaseVM): - name = "haiku" - arch = "x86_64" - - link = "https://app.vagrantup.com/haiku-os/boxes/r1beta4-x86_64/versions/20230114/providers/libvirt.box" - csum = "6e72a2a470e03dbc3c5e808664e057bb4022b390dca88e4c7da6188f26f6a3c9" - - poweroff = "shutdown" - - requirements = [ - "devel:libbz2", - "devel:libcapstone", - "devel:libcurl", - "devel:libfdt", - "devel:libgcrypt", - "devel:libgl", - "devel:libglib_2.0", - "devel:libgnutls", - "devel:libgpg_error", - "devel:libintl", - "devel:libjpeg", - "devel:liblzo2", - "devel:libncursesw", - "devel:libnettle", - "devel:libpixman_1", - "devel:libpng16", - "devel:libsdl2_2.0", - "devel:libslirp", - "devel:libsnappy", - "devel:libssh2", - "devel:libtasn1", - "devel:libusb_1.0", - "devel:libz", - "ninja", - "pip", - "tomli_python310", - "wheel_python310", - "setuptools_python310", - ] - - BUILD_SCRIPT = """ - set -e; - rm -rf /tmp/qemu-test.* - cd $(mktemp -d /tmp/qemu-test.XXXXXX); - mkdir src build; cd src; - tar -xf /dev/disk/virtual/virtio_block/1/raw; - mkdir -p /usr/bin - ln -s /boot/system/bin/env /usr/bin/env - cd ../build - ../src/configure {configure_opts}; - make --output-sync -j{jobs} {target} {verbose}; - """ - - def build_image(self, img): - self.print_step("Downloading disk image") - tarball = self._download_with_cache(self.link, sha256sum=self.csum) - - self.print_step("Extracting disk image") - - subprocess.check_call(["tar", "xzf", tarball, "box.img", "-O"], - stdout=open(img, 'wb')) - - self.print_step("Preparing disk image") - self.boot(img) - - # Wait for ssh to be available. - self.wait_ssh(wait_root=True, cmd="exit 0") - - # Install packages - self.ssh_root("echo yes | pkgman add-repo https://eu.hpkg.haiku-os.org/haiku/r1beta5/$(getarch)/current") - self.ssh_root("echo yes | pkgman add-repo https://eu.hpkg.haiku-os.org/haikuports/r1beta5/$(getarch)/current") - self.ssh_root("pkgman install -y %s" % " ".join(self.requirements)) - self.graceful_shutdown() - - self.print_step("All done") - -if __name__ == "__main__": - sys.exit(basevm.main(HaikuVM, config=HAIKU_CONFIG)) -- 2.55.0
