Bug 2211386

Summary: libguestfs-1.51.3-2.fc39 FTBFS with DNF5: Unknown argument "-c" for command "download"
Product: [Fedora] Fedora Reporter: Petr Pisar <ppisar>
Component: superminAssignee: Richard W.M. Jones <rjones>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: rawhideCC: egoode, rjones
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
URL: https://koschei.fedoraproject.org/package/libguestfs?collection=f39
Whiteboard:
Fixed In Version: supermin-5.3.3-7.fc39 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-05-31 12:16:29 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Petr Pisar 2023-05-31 11:27:55 UTC
libguestfs-1.51.3-2.fc39 fails to build with DNF5:

  - zlib-1.2.13-3.fc38.aarch64
  - zstd-1.5.5-1.fc39.aarch64
Unknown argument "-c" for command "download". Add "--help" for more information about the arguments.
supermin: /usr/bin/dnf5 download -c '/builddir/build/BUILD/libguestfs-1.51.3/yum.conf' --destdir='/var/tmp/superminb02916.tmpdir/dgk0a6ws' 'glibc-gconv-extra.aarch64' 'iproute.aarch64' 'openssh-clients.aarch64' 'policycoreutils.aarch64' 'systemd.aarch64' 'vim-minimal.aarch64' 'glibc.aarch64' 'libtirpc.aarch64' 'bash.aarch64' 'e2fsprogs.aarch64' 'file.aarch64' 'grep.aarch64' 'lvm2.aarch64' 'mdadm.aarch64' 'rsync.aarch64' 'systemd-udev.aarch64' 'util-linux.aarch64' 'libattr.aarch64' 'elfutils-debuginfod-client.aarch64' 'coreutils-common.aarch64' 'openssl-libs.aarch64' 'libpwquality.aarch64' 'dracut.aarch64' 'krb5-libs.aarch64' 'crypto-policies.noarch' 'openssh.aarch64' 'audit-libs.aarch64' 'libsemanage.aarch64' 'rpm.aarch64' 'kbd.aarch64' 'pam.aarch64' 'setup.noarch' 'shadow-utils.aarch64' 'ca-certificates.noarch' 'openldap.aarch64' 'dbus-common.noarch' 'fedora-release-common.noarch' 'libssh-config.noarch' 'fedora-repos.noarch' 'fedora-repos-rawhide.noarch' 'groff-base.aarch64': command failed, see earlier errors
make[2]: Leaving directory '/builddir/build/BUILD/libguestfs-1.51.3/appliance'
make[2]: *** [Makefile:1074: stamp-supermin] Error 1
make[1]: *** [Makefile:1083: all-recursive] Error 1
make[1]: Leaving directory '/builddir/build/BUILD/libguestfs-1.51.3'

/usr/bin/dnf5 does not implement "-c" option, it only implements a long "--config" form.
This issue was discovered when dnf5 package briefly replaced dnf in Fedora 39 build root (now the build is untagged).

I recommend changing libguestfs (or supermin?) to use --config argument instead. It's supported by both DNF as well as with DNF5.

Reproducible: Always

Comment 1 Richard W.M. Jones 2023-05-31 11:51:19 UTC
$ dnf5 download --help
Usage:
  dnf5 download [GLOBAL OPTIONS] [OPTIONS] [ARGUMENTS]
                          
Options:                  
  --alldeps               When running with --resolve, download all dependencies
                           (do not exclude already installed ones)
  --destdir=DESTDIR       Set directory used for downloading packages to. Defaul
                          t location is to the current working directory
  --resolve               Resolve and download needed dependencies
                          
Arguments:                
  keys_to_match           List of keys to match

Note "GLOBAL OPTION" which includes ...

$ dnf5 --help |& grep -- -c
  --config=CONFIG_FILE_PATH              Configuration file location

Apparently only --config, not -c is supported?  Whereas in old dnf:

$ dnf --help |& grep -- -c
  -c [config file], --config [config file]

Comment 2 Richard W.M. Jones 2023-05-31 11:58:01 UTC
Reproducer:

$ supermin --packager-config /etc/dnf/dnf.conf --prepare bash -o /var/tmp/appliance 
Unknown argument "-c" for command "download". Add "--help" for more information about the arguments.
supermin: /usr/bin/dnf5 download -q -c '/etc/dnf/dnf.conf' --destdir='/var/tmp/supermin1fe51f.tmpdir/fdyc17hv' 'bash.x86_64' 'glibc.x86_64' 'setup.noarch' 'fedora-release-common.noarch' 'fedora-repos.noarch' 'fedora-repos-rawhide.noarch': command failed, see earlier errors

Comment 4 Fedora Update System 2023-05-31 12:09:21 UTC
FEDORA-2023-f99c4c17c1 has been submitted as an update to Fedora 39. https://bodhi.fedoraproject.org/updates/FEDORA-2023-f99c4c17c1

Comment 5 Fedora Update System 2023-05-31 12:16:29 UTC
FEDORA-2023-f99c4c17c1 has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.