<config>
	<parent-provides>
		<service name="ROM"/>
		<service name="PD"/>
		<service name="RM"/>
		<service name="CPU"/>
		<service name="LOG"/>
		<service name="File_system"/>
		<service name="Timer"/>
		<service name="Terminal"/>
	</parent-provides>

	<default-route> <any-service> <parent/> <any-child/> </any-service> </default-route>

	<default caps="100"/>

	<start name="depot_ro">
		<binary name="chroot"/>
		<resource name="RAM" quantum="2M" />
		<provides> <service name="File_system"/> </provides>
		<config>
			<default-policy path="/depot" writeable="no"/>
		</config>
		<route>
			<service name="File_system">
				<parent label="used"/>
			</service>
			<any-service> <parent/> </any-service>
		</route>
	</start>

	<start name="vfs" caps="150">
		<resource name="RAM" quantum="12M"/>
		<provides><service name="File_system"/></provides>
		<config>
			<vfs>
				<dir name="depot"> <fs label="depot"/> </dir>
				<dir name="debug"> <ram/> </dir>
				<tar name="gdb.tar"/>
			</vfs>
			<policy label_prefix="vfs_rom" root="/"/>
			<policy label_prefix="gdb_support -> debug" root="/debug" writeable="yes"/>
			<default-policy root="/" writeable="no"/>
		</config>
		<route>
			<service name="File_system" label="depot">
				<child name="depot_ro"/>
			</service>
			<any-service> <parent/> </any-service>
		</route>
	</start>

	<start name="gdb_support">
		<resource name="RAM" quantum="16M"/>
		<config>
			<vfs>
				<dir name="config"> <fs label="config"/> </dir>
				<dir name="debug"> <fs label="debug"/> </dir>
			</vfs>
		</config>
		<route>
			<service name="File_system" label="config">
				<parent label="system_config"/>
			</service>
			<service name="File_system" label="debug">
				<child name="vfs"/>
			</service>
			<service name="ROM" label="build_info">
				<parent label="build_info"/>
			</service>
			<any-service> <parent/> </any-service>
		</route>
	</start>

	<start name="vfs_rom">
		<resource name="RAM" quantum="16M"/>
		<binary name="cached_fs_rom"/>
		<provides> <service name="ROM"/> </provides>
		<config/>
		<route>
			<service name="File_system"> <child name="vfs"/> </service>
			<any-service> <parent/> </any-service>
		</route>
	</start>

	<start name="gdb" caps="1000">
		<binary name="/bin/genode-x86-gdb"/>
		<resource name="RAM" quantum="1G" />
		<config>
			<vfs>
				<dir name="dev">
					<log/>
					<inline name="rtc">2018-01-01 00:01</inline>
					<terminal name="monitor" label="monitor"/>
					<terminal name="tty" label="ui"/>
				</dir>
				<dir name="pipe"> <pipe/> </dir>
				<fs/>
			</vfs>
			<libc stdin="/dev/tty"
			      stdout="/dev/tty"
			      stderr="/dev/tty"
			      pipe="/pipe"
			      rtc="/dev/rtc"/>
			<arg value="genode-x86-gdb"/>
			<arg value="-ex"/> <arg value="set non-stop on"/>
			<arg value="-ex"/> <arg value="target extended-remote /dev/monitor"/>
		</config>
		<route>
			<service name="File_system">
				<child name="vfs"/>
			</service>
			<service name="ROM" label_suffix=".lib.so">
				<parent/>
			</service>
			<service name="ROM" label_last="/bin/genode-x86-gdb">
				<child name="vfs_rom"/>
			</service>
			<service name="Terminal" label="monitor">
				<parent label="monitor"/>
			</service>
			<service name="Terminal" label="ui">
				<parent label="ui"/>
			</service>
			<any-service> <parent/> <any-child/> </any-service>
		</route>
	</start>

</config>
