m0skit0.org

Computers, motherf*cker

Back to posts

Omarchy on VMware Workstation on Windows 10

I got Omarchy working on VMware Workstation by enabling virtualization and 3D acceleration, installing open-vm-tools, and tweaking Hyprland’s environment and monitor config. The final fix was editing the VM’s .vmx file with the right SVGA settings.

The Basic VM Settings

Before getting too deep into the Linux side, I made sure the VM had the right settings enabled in VMware Workstation:

  • Enable **Virtualize Intel VT-x/EPT or AMD-V/RVI**
  • Enable **Accelerate 3D Graphics**
  • Do **not** enable Secure Boot

Installing Omarchy

I installed Omarchy without any noticeable issues. After booting into the system however, I ran into the main problem: Hyprland would start, but some of the expected keyboard shortcuts were not behaving properly.

In particular, the `Super` key shortcuts were unreliable or completely broken. Things like opening the terminal, app launcher, or Omarchy menu did not work the way they should. Also the UI would not react to most of the mouse clicks.

Getting Into a TTY

Since the UI shortcuts were not working, the first trick was getting into a TTY. You can achieve this by pressing Ctrl+Alt+F3 while in the Omarchy UI. This works even in the login screen, which sometimes also got stuck for me.

Once I had a TTY, I could log in and make the changes from there.

Updating the System and Installing VMware Tools

The first thing I did was update the system:

sudo pacman -Syu

Then I installed VMware tools for Linux:

sudo pacman -S open-vm-tools

And enabled the services:

sudo systemctl enable vmtoolsd.service vmware-vmblock-fuse.service

After that, I added a software rendering environment variable for Hyprland:

echo 'env = LIBGL_ALWAYS_SOFTWARE, 1' >> ~/.config/hypr/envs.conf

I suggest also adding this line to your Hyprland config at at `~/.config/hypr/hyprland.conf` in case it is not loading `envs.conf`:

source = ~/.config/hypr/envs.conf

Then reboot:

sudo reboot

Fixing the Display Scaling

After the reboot, I logged into the TTY again and adjusted the Hyprland monitor configuration.

~/.config/hypr/monitors.conf

In my case, I used a 1080p resolution with a little scaling:

env = GDK_SCALE,1.25
monitor=,1920x1080,auto,1.25

Editing the VMware `.vmx` File

In my case, this did not completely fix the problem in some of the cases. I had to edit the VMware virtual machine config file.

First, shut down the VM completely. Do not just suspend it. Then find the VM's `.vmx` file on the Windows host and add these lines:

svga.present = "TRUE"
svga.autodetect = "TRUE"
svga.maxWidth = "1920"
svga.maxHeight = "1080"
svga.vgaOnly = "FALSE"

One important note: do **not** add entries that are already present.VMware does not like duplicate entries!

After saving the `.vmx` file, I booted the VM again.

The Result

After all of that, Omarchy finally behaved inside VMware Workstation. The desktop came up, the display was usable, VMware integration was better, and the Hyprland/Super-key shortcuts started working the way I expected.

However some quirks remained. For example I could not make Android Studio boot up (but it did work in VirtualBox ¯\_(ツ)_/¯).

TLDR

  • Enable virtualization and 3D acceleration in VMware
  • Keep Secure Boot disabled
  • Install and enable `open-vm-tools`
  • Add `LIBGL_ALWAYS_SOFTWARE` to Hyprland's environment config
  • Set an explicit monitor resolution and scale
  • Shut down the VM and add the SVGA settings to the `.vmx` file
  • Avoid duplicating `svga.vramSize`

Source

This post is based on my own setup notes and the troubleshooting details shared in this GitHub discussion:

Basecamp Omarchy discussion #572