On Thu, May 21, 2015 at 02:37:31PM +0100, Richard W.M. Jones wrote:
Previous attempt:
https://www.redhat.com/archives/libguestfs/2015-April/msg00013.html
supermin needs to download packages (eg. RPMs) when preparing the
appliance.
After a lot of work, 'dnf download' can now be used as a replacement
for the (deprecated) 'yumdownloader' program.
This only affects the 'supermin --prepare' phase, which means it only
affects people building libguestfs from source. Ordinary use of
libguestfs, even in Rawhide, should be unaffected.
If you are building libguestfs from source on Fedora please try the
new supermin + dnf, and let me know if you find any problems.
I just built `supermin` from source on my Fedora 22 machine, and somehow
it can't seem to detect RPM (but `supermin` from Rawhide detects it).
Exact error:
supermin: could not detect package manager used by this system or
distro.
which is coming from: supermin/src/package_handler.ml.
Test
----
Build `supermin` from source:
$ git clone
https://github.com/libguestfs/supermin.git
$ ./bootstrap
$ ./autogen.sh
$ ./configure
$ make
$ echo $?
0
Try to build a `supermin` appliance:
$ ../src/supermin --prepare bash coreutils -o basic-supermin.d
supermin: could not detect package manager used by this system or distro.
If this is a new Linux distro, or not Linux, or a Linux distro that uses
an unusual packaging format then you may need to port supermin. If
you are expecting that supermin should work on this system or distro
then it may be that the package detection code is not working.
To list which package handlers are compiled into this version of
supermin, do:
supermin --list-drivers
List `supermin` drivers:
$ ../src/supermin --list-drivers | grep -fedora
fedora/rpm not-detected
Build an appliance from rawhide-installed `supermin` proceeds further,
because RPM was detected, however it seems to fail due to cache
synchronization issue on my Fedora 22 machine (but obtained `supermin`
from Rawhide):
$ rpm -q supermin
supermin-5.1.12-11.fc23.x86_64
$ supermin --list-drivers | grep fedora
fedora/rpm detected
$ supermin --prepare bash coreutils -o supermin.d
Error: Failed to synchronize cache for repo 'fedora' from
'https://mirrors.fedoraproject.org/metalink?repo=fedora-22&arch=x86_64':
Cannot prepare internal mirrorlist: Curl error (28): Timeout was reached for
https://mirrors.fedoraproject.org/metalink?repo=fedora-22&arch=x86_64 [Connection
timed out after 120002 milliseconds]
supermin: /usr/bin/dnf download -q --destdir
'/tmp/supermin8ff696.tmpdir/o64gk00o' 'bash.x86_64'
'coreutils.x86_64' 'glibc.x86_64' 'info.x86_64'
'grep.x86_64' 'libattr.x86_64' 'openssl-libs.x86_64'
'glibc-common.x86_64' 'ca-certificates.noarch'
'crypto-policies.noarch' 'krb5-libs.x86_64' 'setup.noarch'
'fedora-release.noarch' 'fedora-repos.noarch': command failed, see earlier
errors
What am I missing?
--
/kashyap