-- SPDX-License-Identifier: CC0-1.0 let Genode = env:DHALL_GENODE let Init = Genode.Init let Child = Init.Child let wrapHarness : Init.Type → Child.Type = env:DHALL_WRAP_HARNESS ? ./sotest-wrapper.dhall let Child = Genode.Init.Child in λ(boot : Genode.Boot.Type) → { config = Genode.Init::{ , children = [ { mapKey = "timer" , mapValue = Child.flat Child.Attributes::{ , binary = "linux_timer_drv" , provides = [ "Timer" ] } } , { mapKey = "harness", mapValue = wrapHarness boot.config } ] } , rom = let manifest = env:MANIFEST in Genode.BootModules.toRomPaths [ manifest.base-linux.bin.core-linux , manifest.base-linux.bin.linux_timer_drv , manifest.base-linux.lib.ld , manifest.os.bin.init , manifest.sotest-producer.bin.sotest-harness ] # boot.rom : Genode.BootModules.Type }