VMSetup.md
September 11, 2025 ยท View on GitHub
Setting up Virtual Machine for Xeneva
Notice
Xeneva is well tested only on VMware Workstation and Virtual Box with vmdk file that maps PhysicalDisk (The USB Flash drive containing all required binaries). Refer to Setting up USB Flash Drive for more information. Everything should be set up as mentioned in this document. You can skip to Virtual Machine Creation if you have downloaded the release vhd file.
Creating the .vmdk file
In VirtualBox, the VMs will use the .vmdk file in AHCI Controller Port 1. To Create vmdk we will use Virtual Box VBoxManage.exe tool present in location C:\Program Files\Oracle\VirtualBox. You can add this location to Windows Environment Variable PATH for accessing the tool from any location inside your local Machine.
- Check for Drive Number of USB Flash Drive using
diskmgmt.msc. On Linux or macOS, you can uselsblkordiskutil listrespectively. - Start
cmd.exein Run as administrator mode. - Type
VBoxManage createmedium -filename "Your\path\to\filename.vmdk" --variant RawDisk --format=VMDK --property RawDrive=\\.\PhysicalDriveX.
RepaceXwith your drive number of USB Flash drive. - Example here:
VBoxManage createmedium -filename "E:\usb.vmdk" --variant RawDisk --format=VMDK --property RawDrive=\\.\PhysicalDrive1. Here PhysicalDrive1 is my USB Flash Drive. - Upto here you should be able to create .vmdk file mapped to Physical Drive.
Disabling VBS(Virtualization Based Security) on Windows (~Important)
Before running XenevaOS on Windows Machine, we need to temporarily disable VBS feature of Windows. Xeneva fails to access virtualized hardware memory regions on VBS enabled Windows machine for which the OS cannot continue the boot process. VBS completely occupies all hardware resource to create an isolated region of memory. To turn off VBS, please follow the steps below :
- Turn off Memory integrity :
- Open Windows Security.
- Go to Device Security : In the left panel of Windows Security, click Device Security.
- Open Core Isolation details : Under Core Isolation, click Core Isolation details.
- Turn off Memory Integrity : Toggle Memory Integrity to Off.
- We're done, now Restart the PC (~~We can also restart all together after we turn off hypervisorlaunchtype).
- Turn off hypervisorlaunchtype
- Open Command Prompt as Administrator.
- Type
bcdedit /set hypervisorlaunchtype offand press Enter. - We're done, now Restart the PC.
Creating the Virtual Machine in Virtual Box
-
Create a new Virtual Machine in Virtual Box.
{Machine - New} -
Give a suitable name to the VM and select
Linuxfrom Type andUbuntu (64-bit)from Version and click Next. -
Set Base Memory to 2048 MB and Processor Count to 3 and check the Enable EFI(special OSses only) and click Next.
-
Select Do Not Add a Virtual Hard Disk option and Click Next.
-
Click Finish to complete the process.
-
Upto here the new Virtual Machine should appear inside Virtual Box.
-
Now Open Settings of newly created Virtual Machine.
-
Go to System and select ICH9 from the Chipset , USB Tablet from the Pointing Device and Enable I/O APIC from Extended Features.
-
Go to Storage and Add a controller of AHCI(SATA). This should create a new controller in the Storage Device list.
-
Now Add a Hard disk inside newly created Controller then click Add button from Hard Disk Selector window and select the vmdk that is created using the steps mentioned above, or directly the downloaded vhd file, if you have downloaded Xeneva from official release page.
-
Go to Audio and Windows Direct Sound in Host Audio Driver and Intel HD Audio from Audio Controller and check Enable Audio Output and Enable Audio Input.
-
Go to USB and select Enable USB Controller and select USB 3.0 (XHCI) Controller.
-
Upto here XenevaOS is ready to run.
Using Xeneva Terminal (only for v1.0)
When the OS boots, up it automatically starts the Window Manager and launches Xeneva Terminal application. The desktop must be started manually. Follow the steps below to start the desktop :
- Type
xelnchand press Enter, this starts the AppTray process. - Send a
CTRL+Csignal to the terminal. - Type
nmdaphaand press Enter, to start the Namdapha Desktop bar. - Now you should able open the AppTray by clicking the Xeneva Logo on the Namdapha Bar.
- Now launch applications from the AppTray.
Starting play application to play audio
XenevaOS has built-in play application which can play audio files of 48kHz - 16bit format .wav files.
- In Xeneva Terminal, type
play -file /music/folk.wav. This will play the Xeneva default music file present in the music folder. - You can send a signal to the Terminal to return to the shell input.
Conclusion
Currently components of Xeneva should be started separately, automatic starting of components is not supported. You can attach a serial terminal to print Xeneva's internal messages which helps debugging the system on various crashes. See How to setup a serial Terminal for Xeneva for more information.