Window Manager help

Norman Feske norman.feske at genode-labs.com
Mon Mar 4 10:36:39 CET 2019


Hello Joel,

thanks for giving Sculpt CE a try. The documentation for the new version
is not there yet. Sorry about that. Let me try to fill the gap.

> Working on Sculpt CE with framework version 19.02. I've got Debian downloaded but I'm doing a terrible job of getting it to run. Running without any window manager has the Debian install boot up but I can't interface with it at all. So Im guessing I need to build my GUI software stack before it will work. I just have no idea where to begin! It was all done almost automatically with Sculpt VC. Can anyone show me how to properly setup the window manager so I can properly run vbox5-nova-sculpt?

the easiest way is using the "themed_wm":

1. Connect to the network, which is needed to install software.

2. In the '+' menu, go to "Depot... -> genodelabs -> GUI..." and select
   the "themed wm" and install it. Wait until the download is finished.

3. In the routing dialog, connect the themed wm as follows

   GUI (focus)  -> keyboard focus
   GUI          -> system GUI server
   Report       -> system reports

   After clicking "Add component", the graph should show the themed wm
   running.

4. For a quick test that the themed wm is running properly, you may
   start "Depot... -> genodelabs -> Demos... -> nano3d" with the
   following connection:

   GUI -> themed wm

   You should now see a spinning 3D shape in a window. When pressing
   F12, you should be able to move the window around.

5. Start the "vm_fs" component by clicking on the corresponding launcher
   at the top level of the '+' menu. This is a chroot instance that
   provides the <sculpt-partition>/vm/debian directory as a file system.

6. Start the "shared_fs" component analogously to the vm fs. This chroot
   instance provides the <sculpt-partition>/shared/ directory as a file
   system.

7. Start the "usb_devices_rom" component from the '+' menu, which can
   be used to assign USB devices to the VM.

8. To add the VM, select
   "Depot... -> genodelabs -> Virtual machines... -> vbox5-nova-sculpt"
   and connect it as follows:

   File system (vm)     -> vm fs
   File system (shared) -> shared fs
   GUI                  -> themed wm
   Network              -> nic router
   ROM (capslock)       -> global capslock state
   ROM (platform info)  -> platform information
   ROM (usb devices)    -> usb devices rom
   Report (shape)       -> themed wm
   Report               -> system reports
   Region maps          -> custom virtual memory objects
   Real-time clock      -> system clock
   USB                  -> direct USB device access

Now the virtual-machine window should come up.

BTW, it is possible to start the VM without any window manager. If no
window manager is running, you may connect "GUI" to "keyboard focus",
which will allow the VM to obtain (and manage) the keyboard focus. Note
however, that only one component can manage the keyboard focus.
Normally, this would be the window manager.

The upcoming documentation will of course go into more detail what all
those assignments are about.

As two other practical hints:

* Your current system state corresponds to /config/managed/deploy (you
  can see it using the inspect window). To use it automatically at boot
  time (or when you select the sculpt partition for "use"), copy the
  file to <sculpt-partition>/config/19.02/.

* Alex noticed that the default RAM assignment of the
  genodelabs/vbox5-nova-sculpt package is set to 8 GiB where the default
  RAM assignment used in Sculpt VC was 4 GiB. I changed the default back
  to 4 GiB in my version of the package (you may use it from
  "Depot... -> nfeske").

* If you want to easily start and remove the VM without going though
  the routing dialog each time, you can create a launcher from the
  information of the /config/managed/deploy by copying the corresponding
  <start> node to a new file /config/launcher/vm and rename <start> to
  <launcher>. This also gives you a nice way to customize the component,
  e.g., be adding 'ram="6G"' as attribute.

I hope these hints will accommodate you with migrating to Sculpt CE. If
you encounter any problem or have questions, please don't hesitate to ask.

Cheers
Norman

-- 
Dr.-Ing. Norman Feske
Genode Labs

https://www.genode-labs.com · https://genode.org

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth



More information about the users mailing list