Turn pkg/noux-system into pkg/system_shell

The new package does no longer require noux.

Issue #3696
This commit is contained in:
Norman Feske 2020-03-18 11:01:05 +01:00
parent a1a9e59a6f
commit 0f5fd1e8de
11 changed files with 91 additions and 28 deletions

View File

@ -1,4 +1,4 @@
_/pkg/noux-system
_/pkg/system_shell
_/pkg/wifi
_/pkg/ipxe_nic_drv
_/pkg/chroot

View File

@ -88,6 +88,7 @@ install_config {
<policy label="depot_deploy -> blueprint" report="depot_query -> blueprint"/>
<policy label="depot_query -> query" report="depot_deploy -> query"/>
<policy label="dynamic -> config" report="depot_deploy -> init.config"/>
<policy label="dynamic -> clipboard" report="dynamic -> clipboard"/>
</config>
</start>
@ -111,7 +112,7 @@ install_config {
</start>
<start name="depot_query">
<resource name="RAM" quantum="1M"/>
<resource name="RAM" quantum="2M"/>
<config query="rom">
<vfs> <dir name="depot"> <fs label="depot"/> </dir> </vfs>
</config>
@ -142,6 +143,7 @@ install_config {
<service name="Timer"/>
<service name="Nitpicker"/>
<service name="File_system"/>
<service name="Report"/>
</parent-provides>
</static>
<common_routes>
@ -209,21 +211,24 @@ install_config {
<config shape="cube"/>
</start>
<!--
<start name="fonts_fs" pkg="} [depot_user]/pkg/[current_pkg fonts_fs] {">
<route>
<service name="ROM" label="config"> <parent label="fonts.config"/> </service>
</route>
</start>
<start name="noux" pkg="} [depot_user]/pkg/[current_pkg noux-system] {">
<start name="system_shell" pkg="} [depot_user]/pkg/[current_pkg system_shell] {">
<route>
<service name="Nitpicker"> <child name="wm"/> </service>
<service name="File_system" label="fonts"> <child name="fonts_fs"/> </service>
<service name="File_system"> <parent/> </service>
<service name="Report" label="clipboard"> <parent label="clipboard"/> </service>
<service name="ROM" label="clipboard"> <parent label="clipboard"/> </service>
<service name="ROM" label="vimrc"> <parent label="vimrc"/> </service>
<service name="ROM" label_last="cached_fs_rom">
<parent label="fs_rom"/> </service>
</route>
</start>
-->
<!-- vbox, nic_router, acpica -->
@ -231,18 +236,22 @@ install_config {
<route>
<service name="ROM" label="blueprint"> <child name="report_rom"/> </service>
<service name="Report" label="query"> <child name="report_rom"/> </service>
<service name="Report" label="clipboard"> <child name="report_rom"/> </service>
<service name="ROM" label="clipboard"> <child name="report_rom"/> </service>
<any-service> <parent/> <any-child/> </any-service>
</route>
</start>
<start name="dynamic" caps="8000">
<resource name="RAM" quantum="160M"/>
<resource name="RAM" quantum="180M"/>
<binary name="init"/>
<route>
<service name="ROM" label_last="ld.lib.so"> <parent/> </service>
<service name="ROM" label_last="init"> <parent/> </service>
<service name="ROM" label="config"> <child name="report_rom"/> </service>
<service name="ROM" label_last="fonts.config"> <parent/> </service>
<service name="ROM" label_last="vimrc"> <parent/> </service>
<service name="ROM" label_last="fs_rom"> <parent/> </service>
<service name="ROM"> <child name="fs_rom"/> </service>
<service name="Timer"> <child name="timer"/> </service>
<service name="Nitpicker" label_last="backdrop">
@ -257,6 +266,7 @@ install_config {
build { app/depot_query app/depot_deploy }
file copy -force [genode_dir]/repos/gems/run/sculpt/fonts.config [run_dir]/genode/
file copy -force [genode_dir]/repos/ports/recipes/raw/system_shell/system_shell.config [run_dir]/genode/
#
# Pin the nitpicker focus to the window manager by providing a static focus ROM
@ -265,6 +275,17 @@ set fd [open [run_dir]/genode/focus w]
puts $fd "<focus label=\"dynamic -> wm -> focus\"/>"
close $fd
# write default vimrc file
set vimrc_fd [open [run_dir]/genode/vimrc w]
puts $vimrc_fd {
set noloadplugins
set hls
set nocompatible
set laststatus=2
set noswapfile
set viminfo=}
close $vimrc_fd
build_boot_image { depot_query depot_deploy }
run_genode_until forever

View File

@ -11,7 +11,7 @@
</index>
<index name="Tools">
<pkg path="noux-system" info="command-line interface to the system"/>
<pkg path="system_shell" info="command-line interface to the system"/>
<pkg path="qt5_textedit" info="Qt5-based text editor"/>
<pkg path="report_dump" info="save periodic snapshots of the report fs"/>
</index>

View File

@ -1,3 +1,3 @@
Noux runtime that allows the user to interact with a 'report' file system
Unix runtime that allows the user to interact with a 'report' file system
(mounted at /report), a 'config' file system (mounted at /config), and a
'target' file system (mounted at /rw).

View File

@ -1,4 +1,4 @@
_/raw/noux-system
_/raw/system_shell
_/src/noux
_/src/bash-minimal
_/src/vim-minimal
@ -10,3 +10,5 @@ _/src/nit_fb
_/src/terminal
_/src/init
_/src/vfs
_/src/vfs_pipe
_/src/cached_fs_rom

View File

@ -1,4 +1,4 @@
<runtime ram="76M" caps="1000" binary="init" config="noux-system.config">
<runtime ram="76M" caps="1000" binary="init" config="system_shell.config">
<requires>
<nitpicker/>
@ -10,18 +10,20 @@
<rom label="vimrc"/>
<rom label="clipboard"/>
<report label="clipboard"/>
<rm/>
</requires>
<content>
<rom label="noux-system.config"/>
<rom label="system_shell.config"/>
<rom label="ld.lib.so"/>
<rom label="libc.lib.so"/>
<rom label="libm.lib.so"/>
<rom label="init"/>
<rom label="nit_fb"/>
<rom label="vfs"/>
<rom label="vfs_pipe.lib.so"/>
<rom label="cached_fs_rom"/>
<rom label="terminal"/>
<rom label="noux"/>
<rom label="libc_noux.lib.so"/>
<rom label="posix.lib.so"/>
<rom label="ncurses.lib.so"/>
<rom label="bash-minimal.tar"/>

View File

@ -1,4 +0,0 @@
content: noux-system.config
noux-system.config:
cp $(REP_DIR)/recipes/raw/noux-system/$@ $@

View File

@ -0,0 +1,4 @@
content: system_shell.config
system_shell.config:
cp $(REP_DIR)/recipes/raw/system_shell/$@ $@

View File

@ -39,25 +39,30 @@
</route>
</start>
<start name="noux" caps="500">
<resource name="RAM" quantum="60M" />
<exit propagate="yes"/>
<start name="vfs" caps="150">
<resource name="RAM" quantum="12M"/>
<provides><service name="File_system"/></provides>
<config>
<fstab>
<vfs>
<tar name="bash-minimal.tar" />
<tar name="coreutils-minimal.tar" />
<tar name="vim-minimal.tar" />
<dir name="dev"> <zero/> <null/> </dir>
<dir name="dev">
<zero/> <null/> <terminal/>
<dir name="pipe"> <pipe/> </dir>
<inline name="rtc">2018-01-01 00:01</inline>
</dir>
<dir name="rw"> <fs label="target"/> </dir>
<dir name="report"> <fs label="report"/> </dir>
<dir name="config"> <fs label="config"/> </dir>
<dir name="tmp"> <ram /> </dir>
<dir name="share"> <dir name="vim"> <rom name="vimrc"/> </dir> </dir>
</fstab>
<start name="/bin/bash">
<env name="TERM" value="screen" />
<env name="PS1" value="noux:$PWD> " />
</start>
<dir name="share"> <dir name="vim">
<rom name="vimrc" binary="no"/>
</dir> </dir>
</vfs>
<policy label_prefix="vfs_rom" root="/"/>
<default-policy root="/" writeable="yes"/>
</config>
<route>
<service name="File_system" label="target"> <parent label="target"/> </service>
@ -68,4 +73,37 @@
<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="/bin/bash" caps="450">
<resource name="RAM" quantum="28M" />
<exit propagate="yes"/>
<config>
<libc stdin="/dev/terminal" stdout="/dev/terminal"
stderr="/dev/terminal" rtc="/dev/rtc" pipe="/dev/pipe"/>
<vfs> <fs/> </vfs>
<arg value="bash"/>
<env key="TERM" value="screen"/>
<env key="PATH" value="/bin" />
<env key="PS1" value="system:$PWD> " />
</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/bash"> <child name="vfs_rom"/> </service>
<service name="ROM" label_prefix="/bin"> <child name="vfs_rom"/> </service>
<any-service> <parent/> <any-child/> </any-service>
</route>
</start>
</config>