I recently installed a virtual machine in GNOME Boxes, and the display was stuck at 1024×768.
The type of display used here is called SPICE, and it includes a channel for auto-scaling. The guest simply needs the agent to be installed.
In this case, I’m running a Debian guest, which means that I must have forgotten to install the
# apt-get install spice-vdagent Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: spice-vdagent 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 47.6 kB of archives. After this operation, 174 kB of additional disk space will be used. Get:1 http://deb.debian.org/debian buster/main amd64 spice-vdagent amd64 0.18.0-1 [47.6 kB] Fetched 47.6 kB in 0s (99.9 kB/s) Selecting previously unselected package spice-vdagent. (Reading database ... 132855 files and directories currently installed.) Preparing to unpack .../spice-vdagent_0.18.0-1_amd64.deb ... Unpacking spice-vdagent (0.18.0-1) ... Setting up spice-vdagent (0.18.0-1) ... Created symlink /etc/systemd/system/sockets.target.wants/spice-vdagentd.socket → /lib/systemd/system/spice-vdagentd.socket. [spice-vdagentd.conf:2] Line references path below legacy directory /var/run/, updating /var/run/spice-vdagentd → /run/spice-vdagentd; please update the tmpfiles.d/ drop-in file accordingly. Processing triggers for man-db (2.8.5-2) ... Processing triggers for systemd (241-5) ...
The easiest way to ensure that everything is running correctly is to reboot, since the agent will start on boot, and this also forces a new log-in, and a new connection to the display.
Assuming that you are otherwise on the default settings, the display in the guest VM will now automatically adjust as you resize the window.
If the “Share Clipboard” setting is enabled for the virtual machine, then
spice-vdagent will also enable you to copy & paste text between the host and guest.