2
0
Fork 0
genodepkgs/tests/vmm_arm.nix

52 lines
1.4 KiB
Nix

# SPDX-License-Identifier: CC0-1.0
{ pkgs, localPackages, ... }:
{
name = "vmm_arm";
constraints = specs:
with builtins;
all (f: any f specs) [ (spec: spec == "aarch64") ];
machine = {
config = with localPackages;
let
linux = fetchurl {
url = "http://genode.org/files/release-20.02/linux-arm64";
hash = "sha256-H6FhNGgkApouy+PyjxrgAPnJSc4BIlWlpg+VhWiUI6o=";
};
dtb = fetchurl {
url = "http://genode.org/files/release-20.02/dtb-arm64-virt";
hash = "sha256-MFzwYtjAmR/V3WLkmWojYhi3aPrzEqsy1kA46Y512UM=";
};
initrd = fetchurl {
url = "http://genode.org/files/release-20.02/initrd-arm64";
hash = "sha256-iOKd2X2zgDIGeuLEDSSTLSw/Ywi7mDET36J1NAqgqls=";
};
guest = writeText "guest.dhall" ''
{ linux = "${linux}", dtb = "${dtb}", initrd = "${initrd}" }
'';
in "${./vmm_arm.dhall} ${guest}";
inputs = with pkgs;
let
vmm' = genodeSources.buildUpstream {
name = "vmm_arm";
targets = [ "server/vmm" ];
KERNEL = "hw";
};
in [ vmm' ] ++ map genodeSources.depot [
"log_terminal"
"nic_router"
"terminal_crosslink"
] ++ map genodeSources.make [ "test/terminal_expect_send" ];
};
testScript = ''
start_all()
machine.wait_until_serial_output("linuxrc")
'';
}