Re: [PATCH 0/2] Locales fixes

Chuck Lever <[email protected]> Fri, 17 Oct 2025 17:59:10 -0400
Newsgroups dev.linux.lists.kdevops
Message-ID <[email protected]>
On 10/16/25 2:56 PM, Chuck Lever wrote:
> On 10/15/25 5:17 PM, Chuck Lever wrote:
>>> Note, I can't fully test this or the patch, as it appears to be broken (at least
>>> for me) when using a Debian host and a Fedora guest with kdevops/libguestfs:
>>>
>>> virt-builder fedora-41 --arch x86_64 -o /xfs1/libvirt/images/kdevops/guestfs/base_images/fedora-41.raw --size 20G --format raw --commands-from-file /tmp/ansible.8r5zc3so
>>> [   3.7] Downloading: http://builder.libguestfs.org/fedora-41.xz
>>> ###################################################################################################################################################################################################### 100.0%
>>> [ 140.6] Planning how to build this image
>>> [ 140.6] Uncompressing
>>> [ 141.7] Resizing (using virt-resize) to expand the disk to 20.0G
>>> [ 171.5] Opening the new disk
>>> [ 181.7] Setting a random seed
>>> [ 181.7] Installing packages: sudo qemu-guest-agent python3 bash policycoreutils-python-utils
>>> [ 194.7] Uninstalling packages: dracut-config-rescue
>>> [ 195.0] Deleting: /boot/*rescue*
>>> [ 195.0] Deleting: /boot/loader/entries/*rescue*
>>> [ 195.0] Running: useradd -u 1012 -s /bin/bash -m kdevops
>>> [ 195.1] Appending line to /etc/sudoers.d/kdevops
>>> [ 195.1] Editing: /etc/default/grub
>>> [ 195.2] Running: /usr/sbin/grub2-mkconfig -o /boot/grub2/grub.cfg
>>> [ 195.9] Installing packages: isc-dhcp-client ifupdown
>>> Updating and loading repositories:
>>>  Fedora 41 - x86_64                     100% | 221.4 KiB/s |  30.3 KiB |  00m00s
>>>  Fedora 41 - x86_64 - Updates           100% | 289.6 KiB/s |  29.0 KiB |  00m00s
>>>  Fedora 41 openh264 (From Cisco) - x86_ 100% |   3.2 KiB/s | 986.0   B |  00m00s
>>>  Fedora 41 - x86_64                     100% | 241.7 KiB/s | 480.5 KiB |  00m02s
>>>  Fedora 41 - x86_64 - Updates           100% |   4.4 MiB/s |  11.5 MiB |  00m03s
>>>  Fedora 41 openh264 (From Cisco) - x86_ 100% |   7.3 KiB/s |   5.8 KiB |  00m01s
>>> Repositories loaded.
>>> Package "sudo-1.9.15-5.p5.fc41.x86_64" is already installed.
>>> ...
>>> Complete!
>>> Generating grub configuration file ...
>>> Adding boot menu entry for UEFI Firmware Settings ...
>>> done
>>> Updating and loading repositories:
>>> Repositories loaded.
>>> Failed to resolve the transaction:
>>> No match for argument: isc-dhcp-client
>>> No match for argument: ifupdown
>>> You can try to add to command line:
>>>   --skip-unavailable to skip unavailable packages
>>> virt-builder: error: dnf -y install 'isc-dhcp-client' 'ifupdown': command
>>> exited with an error
>>>
>>> If reporting bugs, run virt-builder with debugging enabled and include the
>>> complete output:
>>>
>>>   virt-builder -v -x [...]
>> This appears to come from the new base_image virt_builder template,
>> where we have:
>>
>> {% if distro_debian_based is defined and distro_debian_based %}
>> {# Ugh, debian has to be told to bring up the network and regenerate ssh
>> keys #}
>> {# Hope we get that interface name right! #}
>> install isc-dhcp-client,ifupdown
>> mkdir /etc/network/interfaces.d/
>>
>> Which I would expect to apply only when the /guest/ is Debian, not
>> the host. It could be that the distro detection logic works only when
>> both the host and guest are the same?
> 
> I think the problem arises because the new base_image role uses these
> distro checks instead of what bringup_guestfs.sh did, which was select
> these commands based on {{ virtbuilder_os_version }}
> 
> virt-builder.j2 needs to use virtbuilder_os_version for these checks.
virtbuild_os_version doesn't give us quite everything that is needed.
Looks like the template needs to add some more cruft if Trixie is in
use. So I've put together a possible fix, pushed to the cel-fixes branch
in linux-kdevops. Please have a look.

Passes some (very) light testing with a Fedora 41 host and all of a
Debian 12, Debian 13, or Fedora 42 guest. Bringup gets past the
virt-builder stage now for all three.


-- 
Chuck Lever