class SwitchConfig(bricks.Config): parameters = { "numports": bricks.SpinInt(32, 1, 128), "hub": bricks.Boolean(False), "fstp": bricks.Boolean(False) }
class TunnelConnectConfig(TunnelListenConfig): parameters = {"host": bricks.String(""), "localport": bricks.SpinInt(10771, 1, 65535)}
class TunnelListenConfig(bricks.Config): parameters = {"password": bricks.String(""), "port": bricks.SpinInt(7667, 1, 65535)}
class VirtualMachineConfig(bricks.Config): parameters = {"name": bricks.String(""), # boot options "boot": bricks.String(""), "snapshot": bricks.Boolean(False), # cdrom device "deviceen": bricks.Boolean(False), "device": bricks.String(""), "cdromen": bricks.Boolean(False), "cdrom": bricks.String(""), # additional media "use_virtio": bricks.Boolean(False), "hda": Device("hda"), "privatehda": bricks.Boolean(False), "hdb": Device("hdb"), "privatehdb": bricks.Boolean(False), "hdc": Device("hdc"), "privatehdc": bricks.Boolean(False), "hdd": Device("hdd"), "privatehdd": bricks.Boolean(False), "fda": Device("fda"), "privatefda": bricks.Boolean(False), "fdb": Device("fdb"), "privatefdb": bricks.Boolean(False), "mtdblock": Device("mtdblock"), "privatemtdblock": bricks.Boolean(False), # system and machine "argv0": bricks.String("qemu-system-i386"), "cpu": bricks.String(""), "machine": bricks.String(""), "kvm": bricks.Boolean(False), "smp": bricks.SpinInt(1, 1, 64), # audio device soundcard "soundhw": bricks.String(""), # memory device settings "ram": bricks.SpinInt(64, 1, 99999), "kvmsm": bricks.Boolean(False), "kvmsmem": bricks.SpinInt(1, 0, 99999), # display options "novga": bricks.Boolean(False), "vga": bricks.Boolean(False), "vnc": bricks.Boolean(False), "vncN": bricks.SpinInt(1, 0, 500), "sdl": bricks.Boolean(False), "portrait": bricks.Boolean(False), # usb settings "usbmode": bricks.Boolean(False), "usbdevlist": bricks.ListOf(UsbDeviceParameter("")), # extra settings "rtc": bricks.Boolean(False), "tdf": bricks.Boolean(False), "keyboard": bricks.String(""), "serial": bricks.Boolean(False), # booting linux "kernelenbl": bricks.Boolean(False), "kernel": bricks.String(""), "initrdenbl": bricks.Boolean(False), "initrd": bricks.String(""), "kopt": bricks.String(""), "gdb": bricks.Boolean(False), "gdbport": bricks.SpinInt(1234, 1, 65535), # virtual machine icon "icon": bricks.String(""), # others "noacpi": bricks.String(""), "stdout": bricks.String(""), "loadvm": bricks.String("")}