On 09/30/22 14:11, Richard W.M. Jones wrote:
On Fri, Sep 30, 2022 at 12:56:40PM +0200, Laszlo Ersek wrote:
> On 09/30/22 11:46, Daniel P. Berrangé wrote:
>> On Fri, Sep 30, 2022 at 10:33:02AM +0100, Richard W.M. Jones wrote:
>>>
>>> Hmm, here's an interesting stackoverflow posting ...
>>>
>>>
https://stackoverflow.com/questions/3301023/gtk-spinner-not-appearing
>>>
>>> The first point is "Make sure librsvg is installed". librsvg is
_not_
>>> installed in the ISO. Laszlo, can you try building an ISO with this
>>> package explicitly added to the deps?
>>
>> Yes, that could be it. The widget is rendered using CSS and the
>> Adwaita CSS rule references "process-working-symbolic" as the
>> icon, and that icon is only shipped in SVG format AFAICT.
>
> (1) sorry, I've been in write-only mode for a long while now. That's why
> we've apparently arrived at nearly the same conclusions thus far,
> duplicating (triplicating?) our efforts. That said, I'm glad we did
> arrive at the same ideas.
>
> (2) A number of surprises:
>
> (2a) p2v already spells out icewm[-lite] as a depencency, just not when
> the VM boot disk image / ISO image is based on Fedora (more precisely:
> for SUSE). When building on Fedora, the WM included is Metacity instead
> (and the launch script starts metacity vs. icewm accordingly.)
It seems like SUSE developer Cédric Bosdonnat made that addition. He
actually removed metacity and replaced it with icewm-lite
(commit cebcf47f6) and then made the change to the launch script to
select the right WM (commit 75c24c710). However he didn't make any
corresponding change to Fedora so we now have both.
[out of order]
BTW we used to use matchbox (see commit 47a3518b28).
I ended up tracking down the same set of commits, with git-blame.
In particular, 47a3518b28e0 says that matchbox was replaced with
metacity because the latter supported multiple top-level windows; IceWM
trivially supports those as well, and is also light-weight.
(I guess I should just get the patches on the list, rather than rewrite
the commit messages in emails, piecemeal :))
icewm is available in RHEL 9. I don't know if there's any reason to
prefer metacity over icewm. Usually when looking at virt-p2v
dependencies, we tended to prefer, in order:
- availability in RHEL
IceWM is in EPEL9.
- small size
- functionality
IceWM is small, and (IMO) much more functional than Metacity.
> (2b) There is a makefile dependency bug in virt-p2v; I'm going to post
> the patch for that.
>
>> diff --git a/Makefile.am b/Makefile.am
>> index 02ff1bb2eebd..2881fc947b24 100644
>> --- a/Makefile.am
>> +++ b/Makefile.am
>> @@ -328,7 +328,7 @@ $(BLANK_DISK):
>> $(top_builddir)/run guestfish -N $@=part exit
>>
>> virt-p2v.img: \
>> - dependencies.m4 \
>> + $(dependencies_files) \
>> issue \
>> launch-virt-p2v \
>> p2v.service \
>> @@ -373,7 +373,7 @@ stamp-test-virt-p2v-pxe-data-files: \
>> touch $@
>>
>> test-virt-p2v-pxe.img: \
>> - dependencies.m4 \
>> + $(dependencies_files) \
>> issue \
>> launch-virt-p2v \
>> p2v.service \
Yes, seems like a mistake.
> Namely, even after I modified "dependencies.m4", the disk image did not
> get correctly regenerated for "run-virt-p2v-in-a-vm". While the image
> *was* regenerated, the intermediate (OS-filtered) deps files were not,
> and so the change I had made to "dependencies.m4" did not affect the
> actual package installation command line.
Is there another missing dep or did you track down the reason for that?
I mean the above dependency updates are the fix.
> (2c) I learned about metacity already being present when I launched an
> xterm window from the first dialog of p2v, and attempted to run icewm.
> IceWM complained that another window manager was already present; that
> was when I found metacity in the process list (pstree).
>
> (2d) I started icewm with "icewm --replace" (as recommended by the error
> message from (2c)), and lo and behold, two changes had come into effect:
>
> - the spinner started working
This is strange ..? Did librsvg get installed at some point?
Since Daniel is asking the same -- librsvg2 is not installed in the
problematic build of the ISO (with metacity). I'm currently checking if,
when using IceWM, it is present...
Yes, it is!
I still like IceWM much more -- I'm not a sworn enemy of Metacity, so we
could just add the librsvg2 dependency explicitly, but it really irks me
that with Metacity, there isn't *any* task bar-like widget on the
screen; no Activities button in the upper left corner, no overview of
windows -- honestly, even though I could move windows around by their
captions (no WM decorations, of course), for the longest time I had
believed that there was *no* WM at all in place.
Laszlo
>
>> - I actually got an actual Task Bar, where I could see all the windows:
>> virt-p2v, the GTK debug windows (plural), the XTerm window, and (in
>> the Tray area) even nm-applet! This is not a small improvement: QEMU
>> doesn't let me easily inject Alt-Tab, so switching between windows in
>> the VM environment has been a huge chore (made worse by the many GTK
>> debug windows).
>
> Yup.
>
>> (2e) That is, elaborating on the second bullet from (2d), not only is
>> metacity (or else, our setup/usage of metacity) bugged enough to break
>> the spinner, it even (i) does not offer a functional task bar, (b) does
>> not show nm-applet -- there is no tray area!
>>
>> I'm of the opinion that we should just get rid of metacity altogether,
>> and use icewm. I don't know why metacity is not working, but I consider
>> metacity a seriously substandard WM anyway, so let's just get rid of it?
>
> Sure. I don't think we have any particular affinity to metacity. It
> does however depend on icewm being and staying in RHEL long term.
>
BTW we used to use matchbox (see commit 47a3518b28).
>
> Rich.
>