Hi Ludovic, Ludovic Courtès <l...@gnu.org> writes:
> Hello! > > Commit 945ad48cd8029fa77a643e00c7fd350e98cacca0 added an mcron job to > ‘vm-image.tmpl’ that resets screen size every second. I’m don’t fully > understand the problem this was addressing, but it has two drawbacks: The vm-image.tmpl is the template we use for our graphical Guix demo QEMU image that can be downloaded from our site (https://guix.gnu.org/en/download/ -> https://ftp.gnu.org/gnu/guix/guix-system-vm-image-1.3.0.x86_64-linux.qcow2). This commit was made to allow SPICE dynamic resizing to work, as mentioned in a comment part of this commit. XFCE lacks support for it, as also mentioned in the comment (https://gitlab.xfce.org/xfce/xfce4-settings/-/issues/142), which means a new user downloading the image and running it in a SPICE-capable viewer such as virt-manager or gnome-boxes will be dismayed that it doesn't resize as they may have come to expect from other modern distributions. > 1. Kicking in every second is inefficient. 5% on my machine, as mentioned in the commit message. The trade is still on the winning side for me (dynamic resizing is a big upgrade for the user experience in my book). > 2. Resetting the screen size prevents users from changing it. For > example, if I run: > > $(guix system vm gnu/system/examples/vm-image.tmpl) -m 1024 > > then go to the Xfce menu, Settings -> Display, and change the screen > size, I have it immediately reset back to the default value. OK. I didn't know this could be workable use case with the stock QEMU viewer when playing with graphical VMs. > Should we remove this workaround, possibly finding another one? I think we should use a desktop environment that is better maintained, and which works well with SPICE, without hacks, given the improvements to the user experience it provides, and given it's important that a first user encounter with Guix be smooth and shiny. GNOME could do it, at the cost of a bigger image size. There are other, perhaps worst issues with XFCE, which is that the keyboard layout switcher doesn't work, and it didn't seem trivial to fix when I looked at it. What do you think? Thanks, Maxim