build { core init timer app/sequence lib/libc_noux noux noux-pkg/coreutils } create_boot_directory install_config { <config verbose="yes"> <parent-provides> <service name="ROM"/> <service name="LOG"/> <service name="RM"/> <service name="CPU"/> <service name="PD"/> <service name="IRQ"/> <service name="IO_MEM"/> <service name="IO_PORT"/> </parent-provides> <default-route> <any-service> <any-child/> <parent/> </any-service> </default-route> <default caps="256"/> <start name="timer"> <resource name="RAM" quantum="1M"/> <provides><service name="Timer"/></provides> </start> <start name="sequence"> <resource name="RAM" quantum="16M"/> <config> <start name="spoof"> <binary name="noux"/> <config verbose="yes" stdin="/null" stdout="/log" stderr="/log"> <fstab> <null/> <log/> <dir name=".sysctl"> <dir name="kern"> <inline name="ostype">Muck OS XIII</inline> <inline name="hostname">localhost</inline> </dir> <dir name="hw"> <inline name="machine">norisc</inline> </dir> </dir> <tar name="coreutils.tar" /> </fstab> <start name="/bin/uname"> <arg value="-a"/> </start> </config> </start> <start name="noux"> <resource name="RAM" quantum="16M"/> <config verbose="yes" stdin="/null" stdout="/log" stderr="/log"> <fstab> <null/> <log/> <tar name="coreutils.tar" /> </fstab> <start name="/bin/uname"> <arg value="-a"/> </start> </config> </start> </config> </start> </config> } build_boot_image { core init ld.lib.so coreutils.tar libc_noux.lib.so libm.lib.so noux libc.lib.so vfs.lib.so posix.lib.so sequence timer } append qemu_args " -nographic -serial mon:stdio " # coreutils.tar is really huge when built for x86_64 run_genode_until {child "sequence" exited with exit value 0.*\n} 30