2017-09-07 09:55:33 +00:00
|
|
|
if {![have_spec x86] || [have_spec linux]} {
|
|
|
|
puts "Platform is unsupported."
|
|
|
|
exit 0
|
|
|
|
}
|
|
|
|
|
|
|
|
proc depot_user {} { return [get_cmd_arg --depot-user genodelabs] }
|
|
|
|
|
2018-01-18 12:05:44 +00:00
|
|
|
if {[have_spec nova]} {
|
|
|
|
proc kernel_output { } { return "novga serial logmem" }
|
|
|
|
}
|
|
|
|
|
2017-09-07 09:55:33 +00:00
|
|
|
create_boot_directory
|
|
|
|
|
2018-02-22 09:58:56 +00:00
|
|
|
import_from_depot [depot_user]/src/[base_src] \
|
|
|
|
[depot_user]/pkg/sculpt
|
2017-09-07 09:55:33 +00:00
|
|
|
|
|
|
|
proc config_system_content {} { return {\
|
|
|
|
<system state=""/>} }
|
|
|
|
|
|
|
|
|
|
|
|
install_config {
|
|
|
|
<config prio_levels="4"> <!-- set prio_levels to 4 -->
|
|
|
|
<parent-provides>
|
|
|
|
<service name="ROM"/>
|
|
|
|
<service name="IRQ"/>
|
|
|
|
<service name="IO_MEM"/>
|
|
|
|
<service name="IO_PORT"/>
|
|
|
|
<service name="PD"/>
|
|
|
|
<service name="RM"/>
|
|
|
|
<service name="CPU"/>
|
|
|
|
<service name="LOG"/>
|
|
|
|
<service name="TRACE"/>
|
|
|
|
</parent-provides>
|
|
|
|
|
|
|
|
<default-route>
|
|
|
|
<any-service> <parent/> <any-child/> </any-service>
|
|
|
|
</default-route>
|
|
|
|
|
|
|
|
<default caps="100"/>
|
|
|
|
|
|
|
|
<resource name="RAM" preserve="2M"/>
|
|
|
|
|
|
|
|
<start name="timer">
|
|
|
|
<resource name="RAM" quantum="1M"/>
|
|
|
|
<provides><service name="Timer"/></provides>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="report_rom">
|
|
|
|
<binary name="report_rom"/>
|
|
|
|
<resource name="RAM" quantum="2M"/>
|
|
|
|
<provides> <service name="Report"/> <service name="ROM"/> </provides>
|
|
|
|
<config verbose="no">
|
|
|
|
<policy label="leitzentrale_config -> leitzentrale"
|
|
|
|
report="global_keys_handler -> leitzentrale"/>
|
2018-04-27 14:16:31 +00:00
|
|
|
<policy label="leitzentrale -> manager -> nitpicker_hover"
|
|
|
|
report="nitpicker -> hover"/>
|
2017-09-07 09:55:33 +00:00
|
|
|
<policy label="pointer -> hover" report="nitpicker -> hover"/>
|
|
|
|
<policy label="pointer -> xray"
|
|
|
|
report="global_keys_handler -> leitzentrale"/>
|
2018-04-27 14:16:31 +00:00
|
|
|
<policy label="pointer -> shape" report="shape"/>
|
2017-09-07 09:55:33 +00:00
|
|
|
<policy label="drivers -> capslock" report="global_keys_handler -> capslock"/>
|
|
|
|
<policy label="runtime -> capslock" report="global_keys_handler -> capslock"/>
|
|
|
|
<policy label="drivers -> numlock" report="global_keys_handler -> numlock"/>
|
2018-04-27 14:16:31 +00:00
|
|
|
<policy label="runtime -> clicked" report="nitpicker -> clicked"/>
|
2017-09-07 09:55:33 +00:00
|
|
|
<policy label="nit_focus -> leitzentrale"
|
|
|
|
report="global_keys_handler -> leitzentrale"/>
|
|
|
|
<policy label="nit_focus -> slides"
|
|
|
|
report="global_keys_handler -> slides"/>
|
|
|
|
<policy label="slides_nit_fb_config -> slides"
|
|
|
|
report="global_keys_handler -> slides"/>
|
2018-04-27 14:16:31 +00:00
|
|
|
<policy label="leitzentrale -> manager -> displays"
|
|
|
|
report="nitpicker -> displays"/>
|
2017-09-07 09:55:33 +00:00
|
|
|
</config>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="report_logger" priority="-3">
|
|
|
|
<binary name="report_rom"/>
|
|
|
|
<resource name="RAM" quantum="1M"/>
|
|
|
|
<provides> <service name="Report"/> <service name="ROM"/> </provides>
|
|
|
|
<config verbose="yes"/>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="config_fs" caps="200">
|
|
|
|
<binary name="ram_fs"/>
|
|
|
|
<resource name="RAM" quantum="10M"/>
|
|
|
|
<provides> <service name="File_system"/> </provides>
|
|
|
|
<config>
|
|
|
|
<content>
|
2018-04-27 14:16:31 +00:00
|
|
|
<dir name="managed">
|
|
|
|
<rom name="fonts.config" as="fonts"/>
|
|
|
|
<rom name="fb_drv.config" as="fb_drv"/>
|
|
|
|
<rom name="wlan.config" as="wlan"/>
|
|
|
|
<rom name="installation"/>
|
|
|
|
<rom name="empty_runtime.config" as="runtime"/>
|
|
|
|
<rom name="input_filter.config" as="input_filter"/>
|
|
|
|
<inline name="depot_query"><query/></inline>
|
|
|
|
</dir>
|
|
|
|
<rom name="input_filter.config" as="input_filter"/>
|
|
|
|
<rom name="fb_drv.config" as="fb_drv"/>
|
|
|
|
<rom name="nitpicker.config" as="nitpicker"/>
|
|
|
|
<rom name="numlock_remap.config" as="numlock_remap"/>
|
|
|
|
<rom name="leitzentrale.config" as="leitzentrale"/>
|
|
|
|
<rom name="drivers.config" as="drivers"/>
|
|
|
|
<rom name="manual_deploy.config" as="deploy"/>
|
2017-09-07 09:55:33 +00:00
|
|
|
<rom name="en_us.chargen"/>
|
|
|
|
<rom name="de.chargen"/>
|
2018-04-11 12:40:21 +00:00
|
|
|
<rom name="special.chargen"/>
|
2017-09-07 09:55:33 +00:00
|
|
|
<rom name="vimrc"/>
|
|
|
|
<inline name="system">} [config_system_content] {
|
|
|
|
</inline>
|
|
|
|
</content>
|
2018-04-27 14:16:31 +00:00
|
|
|
<policy label="config_fs_rom -> " root="/" />
|
2017-09-07 09:55:33 +00:00
|
|
|
<policy label="rw" root="/" writeable="yes" />
|
|
|
|
</config>
|
|
|
|
</start>
|
|
|
|
|
2018-04-27 14:16:31 +00:00
|
|
|
<start name="config_fs_rom">
|
2017-09-07 09:55:33 +00:00
|
|
|
<binary name="fs_rom"/>
|
|
|
|
<resource name="RAM" quantum="10M"/>
|
|
|
|
<provides> <service name="ROM"/> </provides>
|
|
|
|
<route>
|
|
|
|
<service name="File_system"> <child name="config_fs"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
2018-04-27 14:16:31 +00:00
|
|
|
<start name="report_fs_rom">
|
|
|
|
<binary name="fs_rom"/>
|
|
|
|
<resource name="RAM" quantum="3M"/>
|
|
|
|
<provides> <service name="ROM"/> </provides>
|
|
|
|
<route>
|
|
|
|
<service name="File_system"> <child name="report_fs"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
2017-09-07 09:55:33 +00:00
|
|
|
<start name="report_fs">
|
|
|
|
<binary name="ram_fs"/>
|
|
|
|
<resource name="RAM" quantum="16M"/>
|
|
|
|
<provides> <service name="File_system"/> </provides>
|
|
|
|
<config>
|
|
|
|
<content>
|
|
|
|
<inline name="log">### start ###</inline>
|
2018-04-27 14:16:31 +00:00
|
|
|
<dir name="runtime">
|
|
|
|
<inline name="state"><empty/></inline>
|
|
|
|
<dir name="wifi_drv">
|
|
|
|
<inline name="wlan_accesspoints"><empty/></inline>
|
|
|
|
<inline name="wlan_state"> <empty/> </inline>
|
|
|
|
</dir>
|
|
|
|
<dir name="nic_router"> <inline name="state"> <empty/></inline> </dir>
|
|
|
|
<dir name="update"> <inline name="state"> <empty/></inline> </dir>
|
|
|
|
<dir name="depot_query"><inline name="blueprint"><empty/></inline> </dir>
|
|
|
|
</dir>
|
2017-09-07 09:55:33 +00:00
|
|
|
</content>
|
2018-04-27 14:16:31 +00:00
|
|
|
<policy label="fs_report -> " root="/" writeable="yes"/>
|
|
|
|
<policy label="log_terminal -> " root="/" writeable="yes"/>
|
|
|
|
<policy label="report_fs_rom -> " root="/"/>
|
|
|
|
<policy label="ro" root="/"/>
|
2017-09-07 09:55:33 +00:00
|
|
|
</config>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="log_terminal">
|
|
|
|
<binary name="file_terminal"/>
|
|
|
|
<resource name="RAM" quantum="2M"/>
|
|
|
|
<provides> <service name="Terminal"/> </provides>
|
|
|
|
<config>
|
|
|
|
<default-policy filename="log" />
|
|
|
|
<vfs> <dir name="dev"> <log/> </dir> <fs/> </vfs>
|
|
|
|
<libc stdout="/dev/log"/>
|
|
|
|
</config>
|
|
|
|
<route>
|
|
|
|
<service name="File_system"> <child name="report_fs"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="log">
|
|
|
|
<binary name="terminal_log"/>
|
|
|
|
<resource name="RAM" quantum="1M"/>
|
|
|
|
<provides> <service name="LOG"/> </provides>
|
|
|
|
<config/>
|
|
|
|
<route>
|
|
|
|
<service name="Terminal"> <child name="log_terminal"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="log_core">
|
|
|
|
<resource name="RAM" quantum="1M"/>
|
|
|
|
<config period_ms="2000"/>
|
|
|
|
<route>
|
|
|
|
<service name="ROM" label="log"> <parent label="core_log"/> </service>
|
|
|
|
<service name="Timer"> <child name="timer"/> </service>
|
|
|
|
<service name="LOG" label="log"> <child name="log" label="core"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
2018-01-18 12:05:44 +00:00
|
|
|
<start name="log_kernel">
|
|
|
|
<binary name="log_core"/>
|
|
|
|
<resource name="RAM" quantum="1M"/>
|
|
|
|
<config period_ms="2000"/>
|
|
|
|
<route>
|
|
|
|
<service name="ROM" label="log"> <parent label="kernel_log"/> </service>
|
|
|
|
<service name="Timer"> <child name="timer"/> </service>
|
|
|
|
<service name="LOG" label="log"> <child name="log" label="kernel"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
2017-09-07 09:55:33 +00:00
|
|
|
<start name="fs_report">
|
|
|
|
<resource name="RAM" quantum="1M"/>
|
|
|
|
<provides> <service name="Report"/> </provides>
|
|
|
|
<config> <vfs> <fs/> </vfs> </config>
|
|
|
|
<route>
|
|
|
|
<service name="File_system"> <child name="report_fs"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="drivers" caps="3000" priority="-1">
|
|
|
|
<resource name="RAM" quantum="66M" constrain_phys="yes"/>
|
|
|
|
<binary name="init"/>
|
|
|
|
<route>
|
|
|
|
<service name="LOG"> <child name="log"/> </service>
|
|
|
|
<service name="ROM" label="config">
|
2018-04-27 14:16:31 +00:00
|
|
|
<child name="config_fs_rom" label="drivers"/> </service>
|
|
|
|
<service name="ROM" label_last="capslock"> <child name="report_rom"/> </service>
|
|
|
|
<service name="ROM" label_last="input_filter.config">
|
|
|
|
<child name="config_fs_rom" label="managed/input_filter"/> </service>
|
|
|
|
<service name="ROM" label_last="fb_drv.config">
|
|
|
|
<child name="config_fs_rom" label="managed/fb_drv"/> </service>
|
|
|
|
<service name="ROM" label_last="numlock_remap.config">
|
|
|
|
<child name="config_fs_rom" label="numlock_remap"/> </service>
|
|
|
|
<service name="ROM" label_last="numlock"> <child name="report_rom"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
<service name="Timer"> <child name="timer"/> </service>
|
|
|
|
<service name="Report"> <child name="fs_report"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
<provides>
|
|
|
|
<service name="Input"/>
|
|
|
|
<service name="Framebuffer"/>
|
|
|
|
<service name="Block"/>
|
|
|
|
<service name="Usb"/>
|
|
|
|
<service name="Platform"/>
|
|
|
|
</provides>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="nitpicker" caps="1000">
|
|
|
|
<resource name="RAM" quantum="6M"/>
|
|
|
|
<provides><service name="Nitpicker"/></provides>
|
|
|
|
<route>
|
|
|
|
<service name="ROM" label="config">
|
2018-04-27 14:16:31 +00:00
|
|
|
<child name="config_fs_rom" label="nitpicker"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
<service name="ROM" label="focus">
|
|
|
|
<child name="nit_focus"/> </service>
|
|
|
|
<service name="Report" label="keystate">
|
|
|
|
<child name="report_logger"/> </service>
|
|
|
|
<service name="Report"> <child name="report_rom"/> </service>
|
|
|
|
<service name="Framebuffer"> <child name="drivers"/> </service>
|
|
|
|
<service name="Input"> <child name="drivers"/> </service>
|
|
|
|
<service name="Timer"> <child name="timer"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<!-- override user focus when leitzentrale is active -->
|
|
|
|
<start name="nit_focus" priority="-1">
|
|
|
|
<binary name="rom_filter"/>
|
|
|
|
<resource name="RAM" quantum="1M"/>
|
|
|
|
<provides> <service name="ROM"/> </provides>
|
|
|
|
<config>
|
|
|
|
<input name="leitzentrale_enabled" rom="leitzentrale" node="leitzentrale">
|
|
|
|
<attribute name="enabled" /> </input>
|
|
|
|
<input name="slides_enabled" rom="slides" node="slides">
|
|
|
|
<attribute name="enabled" /> </input>
|
|
|
|
<output node="focus">
|
|
|
|
<if>
|
|
|
|
<has_value input="leitzentrale_enabled" value="yes" />
|
|
|
|
<then>
|
2018-04-27 14:16:31 +00:00
|
|
|
<attribute name="label" value="leitzentrale -> manager -> fader -> "/>
|
2017-09-07 09:55:33 +00:00
|
|
|
</then>
|
|
|
|
<else>
|
|
|
|
<if>
|
|
|
|
<has_value input="slides_enabled" value="yes" />
|
|
|
|
<then>
|
|
|
|
<attribute name="label" value="slides"/>
|
|
|
|
</then>
|
|
|
|
<else>
|
2018-04-27 14:16:31 +00:00
|
|
|
<attribute name="label" value="runtime -> focus"/>
|
2017-09-07 09:55:33 +00:00
|
|
|
</else>
|
|
|
|
</if>
|
|
|
|
</else>
|
|
|
|
</if>
|
|
|
|
</output>
|
|
|
|
</config>
|
|
|
|
<route>
|
|
|
|
<service name="ROM" label="leitzentrale"> <child name="report_rom"/> </service>
|
|
|
|
<service name="ROM" label="slides"> <child name="report_rom"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="pointer" priority="-1">
|
|
|
|
<resource name="RAM" quantum="2M"/>
|
|
|
|
<provides> <service name="Report"/> </provides>
|
|
|
|
<config shapes="yes"/>
|
|
|
|
<route>
|
|
|
|
<service name="Nitpicker"> <child name="nitpicker"/> </service>
|
|
|
|
<service name="ROM" label="hover"> <child name="report_rom"/> </service>
|
|
|
|
<service name="ROM" label="xray"> <child name="report_rom"/> </service>
|
|
|
|
<any-service> <parent/> <any-child/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="global_keys_handler" priority="-1">
|
|
|
|
<resource name="RAM" quantum="1M"/>
|
|
|
|
<config>
|
|
|
|
<bool name="leitzentrale" initial="yes"/>
|
|
|
|
<bool name="capslock" initial="no"/>
|
|
|
|
<bool name="numlock" initial="no"/>
|
|
|
|
<bool name="slides" initial="no"/>
|
|
|
|
|
2018-04-27 14:16:31 +00:00
|
|
|
<press name="KEY_PRESENTATION" bool="slides" change="toggle"/>
|
|
|
|
<press name="KEY_DASHBOARD" bool="leitzentrale" change="toggle"/>
|
|
|
|
<press name="KEY_CAPSLOCK" bool="capslock" change="toggle"/>
|
|
|
|
<press name="KEY_NUMLOCK" bool="numlock" change="toggle"/>
|
2017-09-07 09:55:33 +00:00
|
|
|
|
|
|
|
<report name="leitzentrale"> <bool name="leitzentrale"/> </report>
|
|
|
|
<report name="capslock"> <bool name="capslock"/> </report>
|
|
|
|
<report name="numlock"> <bool name="numlock"/> </report>
|
|
|
|
<report name="slides"> <bool name="slides"/> </report>
|
|
|
|
</config>
|
|
|
|
<route>
|
|
|
|
<service name="Report"> <child name="report_rom"/> </service>
|
|
|
|
<service name="Nitpicker"> <child name="nitpicker"/> </service>
|
|
|
|
<service name="Timer"> <child name="timer"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="leitzentrale_config" priority="-2">
|
|
|
|
<binary name="rom_filter"/>
|
|
|
|
<resource name="RAM" quantum="1M"/>
|
|
|
|
<provides><service name="ROM"/></provides>
|
|
|
|
<route>
|
|
|
|
<service name="ROM" label="leitzentrale"> <child name="report_rom"/> </service>
|
|
|
|
<service name="ROM" label="config">
|
2018-04-27 14:16:31 +00:00
|
|
|
<child name="config_fs_rom" label="leitzentrale"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
2018-04-27 14:16:31 +00:00
|
|
|
<start name="leitzentrale" caps="4000" priority="-2">
|
2017-09-07 09:55:33 +00:00
|
|
|
<binary name="init"/>
|
|
|
|
<resource name="RAM" quantum="128M"/>
|
2018-04-27 14:16:31 +00:00
|
|
|
<provides> <service name="Nitpicker"/> </provides>
|
2017-09-07 09:55:33 +00:00
|
|
|
<route>
|
|
|
|
<service name="LOG"> <child name="log"/> </service>
|
|
|
|
<service name="ROM" label="config">
|
|
|
|
<child name="leitzentrale_config"/> </service>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="ROM" label_prefix="report -> ">
|
|
|
|
<child name="report_fs_rom"/> </service>
|
|
|
|
<service name="ROM" label_prefix="manager -> report -> ">
|
|
|
|
<child name="report_fs_rom"/> </service>
|
|
|
|
<service name="ROM" label_prefix="manager -> config -> ">
|
|
|
|
<child name="config_fs_rom"/> </service>
|
|
|
|
<service name="ROM" label_prefix="manager -> displays">
|
|
|
|
<child name="report_rom"/> </service>
|
|
|
|
<service name="ROM" label_prefix="config -> ">
|
|
|
|
<child name="config_fs_rom"/> </service>
|
|
|
|
<service name="ROM" label="manager -> nitpicker_hover">
|
2017-09-07 09:55:33 +00:00
|
|
|
<child name="report_rom"/> </service>
|
2018-06-01 15:12:51 +00:00
|
|
|
<service name="Report"> <child name="fs_report"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
<service name="Nitpicker"> <child name="nitpicker"/> </service>
|
|
|
|
<service name="Timer"> <child name="timer"/> </service>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="File_system" label="config">
|
2017-09-07 09:55:33 +00:00
|
|
|
<child name="config_fs" label="rw"/> </service>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="File_system" label="report">
|
2017-09-07 09:55:33 +00:00
|
|
|
<child name="report_fs" label="ro"/> </service>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="File_system" label="report">
|
2017-09-07 09:55:33 +00:00
|
|
|
<child name="report_fs" label="ro"/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="rtc_drv" priority="-1">
|
|
|
|
<resource name="RAM" quantum="1M"/>
|
|
|
|
<provides> <service name="Rtc"/> </provides>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="runtime" caps="50000" priority="-3">
|
|
|
|
<binary name="init"/>
|
2018-04-27 14:16:31 +00:00
|
|
|
<resource name="RAM" quantum="32G"/>
|
2017-09-07 09:55:33 +00:00
|
|
|
<route>
|
|
|
|
<service name="ROM" label="config">
|
2018-04-27 14:16:31 +00:00
|
|
|
<child name="config_fs_rom" label="managed/runtime"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
<service name="ROM" label_prefix="config -> ">
|
2018-04-27 14:16:31 +00:00
|
|
|
<child name="config_fs_rom"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
<service name="ROM" label="capslock">
|
|
|
|
<child name="report_rom"/> </service>
|
|
|
|
<service name="ROM" label="clicked">
|
|
|
|
<child name="report_rom"/> </service>
|
|
|
|
<service name="File_system" label="config">
|
|
|
|
<child name="config_fs" label="rw"/> </service>
|
|
|
|
<service name="File_system" label="report">
|
|
|
|
<child name="report_fs" label="ro"/> </service>
|
|
|
|
<service name="Block"> <child name="drivers"/> </service>
|
|
|
|
<service name="Usb"> <child name="drivers"/> </service>
|
|
|
|
<service name="Platform" label_prefix="acpica">
|
|
|
|
<child name="drivers" label="acpica"/> </service>
|
|
|
|
<service name="Platform"> <child name="drivers"/> </service>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="Nitpicker" label_prefix="leitzentrale">
|
|
|
|
<child name="leitzentrale"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
<service name="Nitpicker" label="backdrop">
|
|
|
|
<child name="nitpicker" label="backdrop"/> </service>
|
|
|
|
<service name="Nitpicker"> <child name="nitpicker"/> </service>
|
|
|
|
<service name="Timer"> <child name="timer"/> </service>
|
|
|
|
<service name="Report" label_suffix="-> shape"> <child name="pointer"/> </service>
|
|
|
|
<service name="Report"> <child name="fs_report"/> </service>
|
|
|
|
<service name="LOG" label="unlogged"> <parent/> </service>
|
|
|
|
<service name="LOG"> <child name="log"/> </service>
|
|
|
|
<service name="Rtc"> <child name="rtc_drv"/> </service>
|
|
|
|
<service name="IO_MEM" label_prefix="acpica"> <parent/> </service>
|
|
|
|
<service name="IO_PORT" label_prefix="acpica"> <parent/> </service>
|
|
|
|
<service name="IRQ" label_prefix="acpica"> <parent/> </service>
|
|
|
|
<any-service> <parent/> </any-service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
</config>}
|
|
|
|
|
|
|
|
foreach file [glob "[genode_dir]/repos/gems/run/sculpt/*.config"] {
|
|
|
|
file copy -force $file [run_dir]/genode/ }
|
|
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
# Override files normally obtained from depot archive with the most current
|
|
|
|
# version found in the Genode source tree. This way, we don't need to
|
|
|
|
# rebuild the corresponding depot archives each time we tweak one of the
|
|
|
|
# files. This is just a hack to accelerate the work flow.
|
|
|
|
#
|
|
|
|
|
2018-02-25 18:05:27 +00:00
|
|
|
file copy -force [genode_dir]/repos/gems/recipes/pkg/sculpt/README [run_dir]/genode/
|
|
|
|
|
2017-09-07 09:55:33 +00:00
|
|
|
file copy -force [genode_dir]/repos/gems/run/sculpt/vimrc [run_dir]/genode/
|
|
|
|
|
|
|
|
file copy -force [genode_dir]/repos/gems/run/sculpt/machine.vbox [run_dir]/genode/
|
|
|
|
|
|
|
|
file copy -force [genode_dir]/repos/gems/recipes/raw/drivers_managed-pc/drivers.config \
|
|
|
|
[run_dir]/genode/drivers.config
|
|
|
|
|
2018-04-11 12:40:21 +00:00
|
|
|
foreach file { en_us.chargen de.chargen special.chargen } {
|
|
|
|
file copy -force [genode_dir]/repos/os/src/server/input_filter/$file \
|
|
|
|
[run_dir]/genode/$file }
|
2017-09-07 09:55:33 +00:00
|
|
|
|
|
|
|
file copy -force [genode_dir]/repos/gems/recipes/raw/drivers_managed-pc/input_filter.config \
|
|
|
|
[run_dir]/genode/input_filter.config
|
|
|
|
|
|
|
|
file copy -force [genode_dir]/repos/gems/recipes/raw/depot_download/depot_download.config \
|
|
|
|
[run_dir]/genode/depot_download.config
|
|
|
|
|
2018-04-16 13:08:18 +00:00
|
|
|
file copy -force [genode_dir]/VERSION [run_dir]/genode/
|
|
|
|
|
2018-04-27 14:16:31 +00:00
|
|
|
file copy -force [genode_dir]/repos/gems/src/app/backdrop/genode_logo.png [run_dir]/genode/
|
2018-05-27 23:24:02 +00:00
|
|
|
file copy -force [genode_dir]/repos/gems/run/sculpt/drop_shadow.png [run_dir]/genode/
|
2018-04-27 14:16:31 +00:00
|
|
|
|
2017-09-07 09:55:33 +00:00
|
|
|
exec gzip -dc [genode_dir]/repos/gems/run/sculpt/machine.vdi.gz > [run_dir]/genode/machine.vdi
|
|
|
|
|
|
|
|
|
2018-04-16 13:08:18 +00:00
|
|
|
#
|
|
|
|
# Define 'VERSION' ROM module
|
|
|
|
#
|
|
|
|
proc sculpt_version { } {
|
|
|
|
return "[string trim [exec cat [genode_dir]/VERSION]]" }
|
|
|
|
|
|
|
|
# write file with newline (for producing nice output when using 'cat /VERSION')
|
|
|
|
set fd [open [run_dir]/genode/VERSION w]
|
|
|
|
puts $fd "[sculpt_version]"
|
|
|
|
close $fd
|
|
|
|
|
|
|
|
|
2017-09-07 09:55:33 +00:00
|
|
|
#
|
2018-04-27 14:16:31 +00:00
|
|
|
# Assemble 'depot_users.tar' with the keys and download locations of the
|
|
|
|
# depot user found at genode/depot/.
|
2017-09-07 09:55:33 +00:00
|
|
|
#
|
2018-04-27 14:16:31 +00:00
|
|
|
set depot_users_files [exec sh -c "cd [genode_dir]; \
|
|
|
|
find depot -maxdepth 3 -name pubkey \
|
|
|
|
-or -name download"]
|
|
|
|
exec sh -c "tar cf [run_dir]/genode/depot_users.tar -C [genode_dir] \
|
|
|
|
[join $depot_users_files]"
|
2017-09-07 09:55:33 +00:00
|
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
# Depot packages to be included in the default installation
|
|
|
|
#
|
2018-04-27 14:16:31 +00:00
|
|
|
|
|
|
|
proc current_pkg { pkg } { return $pkg/[_current_depot_archive_version pkg $pkg] }
|
|
|
|
|
|
|
|
set pkgs_to_install { }
|
2017-09-07 09:55:33 +00:00
|
|
|
|
|
|
|
set fd [open [run_dir]/genode/installation w]
|
|
|
|
puts $fd "<installation arch=\"[depot_spec]\">"
|
|
|
|
foreach pkg $pkgs_to_install {
|
|
|
|
puts $fd " <archive path=\"[depot_user]/pkg/[current_pkg $pkg]\" source=\"false\"/>" }
|
|
|
|
puts $fd "</installation>"
|
|
|
|
close $fd
|
|
|
|
|
2018-04-27 14:16:31 +00:00
|
|
|
|
2017-09-07 09:55:33 +00:00
|
|
|
#
|
2018-04-27 14:16:31 +00:00
|
|
|
# Manual configuration of deploy runtime
|
2017-09-07 09:55:33 +00:00
|
|
|
#
|
|
|
|
# This configuration is not provided as a file at run/sculpt/ because some
|
|
|
|
# parts need to be filled in at run-script execution time, in particular the
|
|
|
|
# current versions of the packages to deploy.
|
|
|
|
#
|
2018-04-27 14:16:31 +00:00
|
|
|
append manual_deploy_config {
|
2017-09-07 09:55:33 +00:00
|
|
|
<config arch="} [depot_spec] {">
|
2018-04-27 14:16:31 +00:00
|
|
|
|
2017-09-07 09:55:33 +00:00
|
|
|
<common_routes>
|
|
|
|
<service name="ROM" label_last="ld.lib.so"> <parent/> </service>
|
|
|
|
<service name="ROM" label_last="init"> <parent/> </service>
|
|
|
|
<service name="CPU"> <parent/> </service>
|
|
|
|
<service name="PD"> <parent/> </service>
|
|
|
|
<service name="LOG"> <parent/> </service>
|
|
|
|
<service name="Timer"> <parent/> </service>
|
|
|
|
</common_routes>
|
|
|
|
|
2018-04-27 14:16:31 +00:00
|
|
|
<!--
|
2018-04-11 12:14:20 +00:00
|
|
|
<start name="fonts_fs" pkg="} [depot_user]/pkg/[current_pkg fonts_fs] {">
|
|
|
|
<route>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="ROM" label="config"> <parent label="config -> managed/fonts"/> </service>
|
2018-04-11 12:14:20 +00:00
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
2018-04-04 12:50:49 +00:00
|
|
|
<start name="wm" pkg="} [depot_user]/pkg/[current_pkg themed_wm] {">
|
2017-09-07 09:55:33 +00:00
|
|
|
<route>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="Nitpicker" label="wm -> "> <parent label="focus"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
<service name="Nitpicker"> <parent/> </service>
|
2018-04-04 12:50:49 +00:00
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
|
|
|
|
<start name="backdrop" pkg="} [depot_user]/pkg/[current_pkg sticks_blue_backdrop] {">
|
|
|
|
<route>
|
|
|
|
<service name="Nitpicker"> <parent label="backdrop"/> </service>
|
|
|
|
</route>
|
|
|
|
</start>
|
2018-04-27 14:16:31 +00:00
|
|
|
-->
|
2018-04-04 12:50:49 +00:00
|
|
|
|
2018-04-27 14:16:31 +00:00
|
|
|
<!--
|
|
|
|
<start name="nano3d" pkg="} [depot_user]/pkg/[current_pkg nano3d] {">
|
|
|
|
<route>
|
|
|
|
<service name="Nitpicker"> <child name="wm"/> </service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
-->
|
|
|
|
|
|
|
|
<!--
|
2018-04-04 12:50:49 +00:00
|
|
|
<start name="noux" pkg="} [depot_user]/pkg/[current_pkg noux-system] {">
|
|
|
|
<route>
|
|
|
|
<service name="Nitpicker"> <child name="wm"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
<service name="File_system" label="config">
|
|
|
|
<parent label="config"/> </service>
|
|
|
|
<service name="File_system" label="report">
|
|
|
|
<parent label="report"/> </service>
|
2018-04-11 12:14:20 +00:00
|
|
|
<service name="File_system" label="fonts">
|
|
|
|
<child name="fonts_fs"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
<service name="File_system" label="target">
|
2018-04-27 14:16:31 +00:00
|
|
|
<child name="default_fs_rw"/> </service>
|
|
|
|
<service name="ROM" label_last="vimrc">
|
|
|
|
<parent label="config -> vimrc"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
</route>
|
|
|
|
</start>
|
2018-04-27 14:16:31 +00:00
|
|
|
-->
|
2017-09-07 09:55:33 +00:00
|
|
|
|
2018-04-04 12:50:49 +00:00
|
|
|
<!--
|
2018-04-27 14:16:31 +00:00
|
|
|
<start name="shared_fs" pkg="} [depot_user]/pkg/[current_pkg chroot] {">
|
2018-04-04 12:50:49 +00:00
|
|
|
<route>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="File_system"> <child name="default_fs_rw"/> </service>
|
2018-04-04 12:50:49 +00:00
|
|
|
</route>
|
2018-04-27 14:16:31 +00:00
|
|
|
<config> <default-policy path="/shared" writeable="yes"/> </config>
|
2018-04-04 12:50:49 +00:00
|
|
|
</start>
|
2018-04-27 14:16:31 +00:00
|
|
|
|
|
|
|
<start name="usb_devices_rom" pkg="} [depot_user]/pkg/[current_pkg rom_filter] {">
|
|
|
|
<config>
|
|
|
|
<output node="devices">
|
|
|
|
<inline>
|
|
|
|
</inline>
|
|
|
|
</output>
|
|
|
|
</config>
|
|
|
|
</start>
|
|
|
|
-->
|
2018-04-04 12:50:49 +00:00
|
|
|
|
2017-09-07 09:55:33 +00:00
|
|
|
<!--
|
2018-04-27 14:16:31 +00:00
|
|
|
<start name="vm_fs" pkg="} [depot_user]/pkg/[current_pkg chroot] {">
|
2017-09-07 09:55:33 +00:00
|
|
|
<route>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="File_system"> <child name="default_fs_rw"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
</route>
|
2018-04-27 14:16:31 +00:00
|
|
|
<config> <default-policy path="/vm/debian" writeable="yes"/> </config>
|
2017-09-07 09:55:33 +00:00
|
|
|
</start>
|
2018-06-01 12:14:41 +00:00
|
|
|
-->
|
|
|
|
|
|
|
|
<!--
|
|
|
|
<start name="download_debian" pkg="cnuke/pkg/download_debian/2018-05-30">
|
|
|
|
<route>
|
|
|
|
<service name="File_system" label="fonts"> <child name="fonts_fs"/> </service>
|
|
|
|
<service name="File_system" label="target"> <child name="vm_fs"/> </service>
|
|
|
|
<service name="Nic"> <child name="nic_router"/> </service>
|
|
|
|
<service name="Nitpicker"> <child name="wm"/> </service>
|
|
|
|
<service name="RM"> <parent/> </service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
-->
|
2017-09-07 09:55:33 +00:00
|
|
|
|
2018-06-01 12:14:41 +00:00
|
|
|
<!--
|
2018-04-27 14:16:31 +00:00
|
|
|
<start name="vm" ram="4300M" pkg="} [depot_user]/pkg/[current_pkg vbox5-nova-sculpt] {">
|
2017-09-07 09:55:33 +00:00
|
|
|
<route>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="ROM" label="capslock"> <parent label="capslock"/> </service>
|
|
|
|
<service name="ROM" label="platform_info"> <parent/> </service>
|
|
|
|
<service name="ROM" label="usb_devices"> <child name="usb_devices_rom"/> </service>
|
|
|
|
<service name="Report" label="shape"> <parent label="wm -> wm -> vm -> shape"/> </service>
|
|
|
|
<service name="Nitpicker"> <child name="wm"/> </service>
|
|
|
|
<service name="Nic"> <child name="nic_router"/> </service>
|
|
|
|
<service name="Report"> <parent/> </service>
|
|
|
|
<service name="RM"> <parent/> </service>
|
|
|
|
<service name="Rtc"> <parent/> </service>
|
|
|
|
<service name="Usb"> <parent/> </service>
|
|
|
|
<service name="File_system" label="vm"> <child name="vm_fs"/> </service>
|
|
|
|
<service name="File_system" label="shared"> <child name="shared_fs"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
-->
|
|
|
|
|
|
|
|
<!--
|
2018-04-27 14:16:31 +00:00
|
|
|
<start name="top_view" pkg="alex-ab/pkg/top_view/2018-05-29-a">
|
2017-09-07 09:55:33 +00:00
|
|
|
<route>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="TRACE"> <parent/> </service>
|
|
|
|
<service name="Timer"> <parent/> </service>
|
|
|
|
<service name="Nitpicker"> <child name="wm"/> </service>
|
|
|
|
<service name="File_system" label="fonts">
|
|
|
|
<child name="fonts_fs"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
</route>
|
|
|
|
</start>
|
2018-04-27 14:16:31 +00:00
|
|
|
-->
|
2017-09-07 09:55:33 +00:00
|
|
|
|
2018-04-27 14:16:31 +00:00
|
|
|
<!--
|
|
|
|
<start name="2048" pkg="ehmry/pkg/2048/18.05">
|
2017-09-07 09:55:33 +00:00
|
|
|
<route>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="Nitpicker"> <child name="wm"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
</route>
|
|
|
|
</start>
|
2018-04-27 14:16:31 +00:00
|
|
|
-->
|
2017-09-07 09:55:33 +00:00
|
|
|
|
2018-04-27 14:16:31 +00:00
|
|
|
<!--
|
2018-06-11 20:11:02 +00:00
|
|
|
<start name="vbox5-tc-browser" pkg="alex-ab/pkg/vbox5-tc-firefox-nova-sculpt/2018-06-11">
|
2017-09-07 09:55:33 +00:00
|
|
|
<route>
|
|
|
|
<service name="ROM" label="capslock"> <parent label="capslock"/> </service>
|
2018-03-08 10:34:59 +00:00
|
|
|
<service name="ROM" label="platform_info"> <parent/> </service>
|
2018-06-01 12:22:06 +00:00
|
|
|
<service name="Report" label="shape"> <parent label="wm -> wm -> vbox5-tc-browser -> shape"/> </service>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="RM"> <parent/> </service>
|
|
|
|
<service name="Rtc"> <parent/> </service>
|
2018-04-04 12:50:49 +00:00
|
|
|
<service name="Nitpicker"> <child name="wm"/> </service>
|
2018-04-27 14:16:31 +00:00
|
|
|
<service name="Nic"> <child name="nic_router"/> </service>
|
2017-09-07 09:55:33 +00:00
|
|
|
<service name="File_system" label="shared"> <child name="shared_fs"/> </service>
|
|
|
|
</route>
|
|
|
|
</start>
|
2018-04-27 14:16:31 +00:00
|
|
|
-->
|
|
|
|
|
|
|
|
<!--
|
2018-06-11 20:11:02 +00:00
|
|
|
<start name="seoul-vmm-browser" pkg="alex-ab/pkg/seoul-nova-sculpt/2018-06-11">
|
2018-04-27 14:16:31 +00:00
|
|
|
<route>
|
|
|
|
<service name="ROM" label="platform_info"> <parent/> </service>
|
|
|
|
<service name="RM"> <parent/> </service>
|
|
|
|
<service name="Rtc"> <parent/> </service>
|
|
|
|
<service name="Nitpicker"> <child name="wm"/> </service>
|
|
|
|
<service name="Nic"> <child name="nic_router"/> </service>
|
|
|
|
</route>
|
|
|
|
</start>
|
|
|
|
-->
|
|
|
|
|
|
|
|
<!--
|
|
|
|
<start name="qt5_textedit" pkg="cproc/pkg/qt5_textedit/2018-05-30">
|
|
|
|
<route>
|
|
|
|
<service name="File_system" label="rw"> <parent label="config"/> </service>
|
|
|
|
<service name="Nitpicker"> <child name="wm"/> </service>
|
|
|
|
<service name="Report" label="shape"> <parent label="wm -> wm -> qt5_textedit -> shape"/> </service>
|
|
|
|
</route>
|
|
|
|
</start>
|
2017-09-07 09:55:33 +00:00
|
|
|
-->
|
|
|
|
|
|
|
|
</config>}
|
|
|
|
|
2018-04-27 14:16:31 +00:00
|
|
|
set fd [open [run_dir]/genode/manual_deploy.config w]
|
|
|
|
puts $fd $manual_deploy_config
|
2017-09-07 09:55:33 +00:00
|
|
|
close $fd
|
|
|
|
|
|
|
|
|
|
|
|
#
|
2018-02-26 14:02:44 +00:00
|
|
|
# Create boot image
|
2017-09-07 09:55:33 +00:00
|
|
|
#
|
|
|
|
|
|
|
|
append boot_modules { }
|
|
|
|
|
|
|
|
build_boot_image $boot_modules
|