Subject: bug#57068: Resizing mcron job in vm-image.tmpl interferes with settings

From: Maxim Cournoyer <[email-masked]>
Date: Wed, 10 Aug 2022 00:46:04 -0400

Hi,

Ludovic Courtès <[email-masked]> writes:

> Ludovic Courtès <[email-masked]> skribis:
>
>> 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:
>>
>>   1. Kicking in every second is inefficient.
>>
>>   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.
>
> There’s a third problem that I initially thought was unrelated:
>
>   3. The mcron job starts running before ‘xorg-server’ is up, and that
>      can cause Xorg to fail to start.
>
> Namely, if you run the command above, you’ll see that Xorg starts and
> fails typically a few times in a row, until it eventually succeeds.  In
> /var/log/messages, you can see that the ‘xorg-server’ process exits with
> code 1 (without any indication of what went wrong AFAICS) and the
> service gets respawned.
>
> Now if you remove the mcron job and boot the VM, the ‘xorg-server’
> service successfully starts.  It’s 100% reproducible for me.

I tried to reproduce the problem without any luck on my machine (it
always boots fine).  Odd.

I don't mind the hack removed, but I think we should aim to keep SPICE
dynamic resizing working, and currently that'd mean switching desktop
environment, unless we fix
https://gitlab.xfce.org/xfce/xfce4-settings/-/issues/142 (GNOME had
adjusted for the years old change in SPICE with
https://gitlab.gnome.org/GNOME/mutter/-/commit/957513242c26be458be7a101b83180e3f59f6a44),
in case your looking for something fun to hack on :-).

Thanks,

Maxim