Get Manjaro to start at an arbitrary screen resolution

How can I get my Manjaro Xfce virtual machine (running in VMware Workstation 17) to start at screen resolution 1400x1024?

Below you will see the things I have already tried. One maddening circumstance is that, with version 1 of 10-monitor.conf, it worked one time (i.e. on reboot I got the screen resolution I wanted) but not again.

Not working means that, when the VM has booted, it is at 1280x1024.

At that one time it “worked,” the VM started at 1280x1024 on boot but a moment later fattened itself to 1400x1024 as if to say, “Oh yeah, I forgot.”

If it matters, 1400x1024 is the screen resolution of my physical monitor. Yes, it is a CRT (with a SONY Trinitron bulb in it) that I can set to any resolution I want.

I’d appreciate any idea on what else I could try. Thanks.

What I have already tried:

VMware Workstation has settings that cause VMs to adapt screen resolution to fit the size of the WMware Workstation window size (or vice versa). For these experiments, I disabled all of them. (If it matters, when these are enabled I could easily get the VM to become 1400x1024 simply by enlarging it to full screen, which is at 1400x1024. But for complicated reasons, which I could divulge if anybody cared for them, I want this VM to start at and retain a constant 1400x1024.)

I saw this WIKI: Permanently adding undetected resolutions

For convenience of reading, I will replicate here the template found in the WIKI:

/etc/X11/xorg.conf.d/10-monitor.conf

Section "Monitor"
    Identifier "VGA1"
    Modeline "1280x1024_60.00"  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
    Option "PreferredMode" "1280x1024_60.00"
EndSection

Section "Screen"
    Identifier "Screen0"
    Monitor "VGA1"
    DefaultDepth 24
    SubSection "Display"
        Modes "1280x1024_60.00"
    EndSubSection
EndSection

Section "Device"
    Identifier "Device0"
    Driver "intel"
EndSection

Based on the template I tried using these two versions of 10-monitor.conf. (I got Virtual1 from Display in the Whisker menu.)

Version 1:

Section "Monitor"
	Identifier "Virtual1"
	Modeline "1400x1024_60.00"  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
	Option "PreferredMode" "1400x1024_60.00"
EndSection

Version 2:

Section "Monitor"
	Identifier "Virtual1"
	Modeline "1400x1024_60.00"  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
	Option "PreferredMode" "1400x1024_60.00"
EndSection

Section "Screen"
	Identifier "Screen0"
	Monitor "Virtual1"
	DefaultDepth 24
	SubSection "Display"
		Modes "1400x1024_60.00"
	EndSubSection
EndSection

I have no idea what the little green numbers (starting “109.00”) are doing. Maybe I am to change them to suit my own situation. If so, I don’t know how to find out what my numbers should be.

I did not enter any “Device” section because I didn’t know how to find out the relevant information (such as identifier and driver).

I ran inxi -Fza. The relevant portion of the output goes like this:

Graphics:
  Device-1: VMware SVGA II Adapter driver: vmwgfx v: 2.20.0.0 ports:
    active: Virtual-1 empty: Virtual-2, Virtual-3, Virtual-4, Virtual-5,
    Virtual-6, Virtual-7, Virtual-8 bus-ID: 00:0f.0 chip-ID: 15ad:0405
    class-ID: 0300
  Display: x11 server: X.Org v: 21.1.8 compositor: xfwm v: 4.18.0 driver: X:
    loaded: vmware unloaded: modesetting alternate: fbdev,vesa gpu: vmwgfx
    display-ID: :0.0 screens: 1
  Screen-1: 0 s-res: 1280x1024 s-dpi: 96 s-size: 339x271mm (13.35x10.67")
    s-diag: 434mm (17.09")
  Monitor-1: Virtual-1 mapped: Virtual1 res: 1280x1024 hz: 60 size: N/A
    modes: max: 1013x694 min: 640x480
  API: OpenGL Message: Unable to show GL data. Required tool glxinfo
    missing.

You can

  • use the view menu → virtual screen
  • use the settings panel to set your preferred screen size
  • drag the window to the desired size

View menu in what?

The virtualbox menu at the top of any virtual machine

Oh - I missed this

VMware is unsupported

Right. VMware does not have an equivalent menu item.

But in all events, I want the VM to have a constant screen resolution (at 1400x1024) no matter what happens to the size of the VMware window. It would mean that, when that window size is small, I cannot see all of the VM’s desktop. Parts of it would stick out of view.

The hypervisor will adjust the display on resize as if it was a physical screen.

On the other hand - I you create a virtual screen to be displayed on a physical screen - the virtual screen can have other boundaries - and if those boundaries are bigger than the physical screen you will get the effect you are looking for.

I tried to run a search[1] and found this https://superuser.com/questions/1435053/how-to-use-xrandr-to-crop-part-of-my-monitor - especially this comment https://superuser.com/a/1780351 seems to address - at least partly - what you are looking for.

Thank you! There’s a lot there. I’ll delve into it.