export class OptionData {
constructor(description, tooltip) {
this.tooltip = tooltip;
this.description = description;
}
static add(name, description, tooltip) {
OptionData.map.set(name, new OptionData(description, tooltip));
}
static description(name) {
var _a;
return (_a = OptionData.map.get(name)) === null || _a === void 0 ? void 0 : _a.description;
}
static tooltip(name) {
var _a;
return (_a = OptionData.map.get(name)) === null || _a === void 0 ? void 0 : _a.tooltip;
}
}
OptionData.map = new Map();
OptionData.add('use-gpu', 'Use GPU in Realm', `If enabled the render node device /dev/dri/renderD128 will be mounted into the realm container.
If privileged device /dev/dri/card0 is also needed set
additional variable in realm configuration file:
use-gpu-card0 = true
`);
OptionData.add('use-wayland', 'Use Wayland in Realm', `If enabled access to Wayland display will be permitted in realm by adding wayland socket to realm.
/run/user/1000/wayland-0
`);
OptionData.add('use-x11', 'Use X11 in Realm', `If enabled access to X11 server will be added by mounting directory X11 directory into realm.
/tmp/.X11-unix
`);
OptionData.add('use-sound', 'Use sound in Realm', `If enabled allows use of sound inside of realm. The following items will be added:
/dev/snd
/dev/shm
/run/user/1000/pulse
`);
OptionData.add('use-shared-dir', 'Mount /Shared directory in Realm', `If enabled the shared directory will be mounted as /Shared in home directory of realm.
This directory is shared between all realms with this option enabled and is an easy way to move files between realms.
`);
OptionData.add('use-network', 'Realm has network access', `If enabled the realm will have access to the network.`);
OptionData.add('use-kvm', 'Use KVM (/dev/kvm) in Realm', `If enabled device /dev/kvm will be added to realm`);
OptionData.add('use-ephemeral-home', 'Use ephemeral tmpfs mount for home directory', `If enabled the home directory of realm will be set up in ephemeral mode.
The ephemeral home directory is set up with the following steps:
1. Home directory is mounted as tmpfs filesystem
2. Any files in /realms/skel are copied into home directory
3. Any files in /realms/realm-$name/skel are copied into home directory.
4. Any directories listed in config file variable ephemeral_persistent_dirs
are bind mounted from /realms/realm-$name/home into ephemeral
home directory.
`);
OptionData.add('overlay', 'Type of rootfs overlay Realm is configured to use.', `Overlay
Type of rootfs overlay realm is configured to use.
None Don't use a rootfs overlay
TmpFS Use a rootfs overlay stored on tmpfs
Storage Use a rootfs overlay stored on disk in storage partition
`);
OptionData.add('realmfs', 'Root filesystem image to use for Realm.', `RealmFS
Root filesystem image to use for realm.`);
OptionData.add('colorscheme', 'Terminal Color Scheme', `Terminal Color Scheme
Choose a color scheme to use in the terminals in this realm.`);
OptionData.add('window-label-color', 'Window Label Color', `Window Label Color
Set a color to be used when a label is drawn on the window titlebar indicating which realm the application is running in.`);