# F23: where does anaconda get the software groups from?

Dear all, I'm puzzling over an issue, where we try to kickstart Fedora23 using the "@" and "@^" syntax for DNF groups and environments. However, anaconda keeps complaining about not being able to resolve groups (I haven't made it past 'missing group 'core''; The literal message: " The group 'core' is required for this installation. This group does not exist. This is a fatal error[...] " (I do not request 'core' but I guess one of my List: @ Base @system-tools @base @^Fedora Server @Administration Tools @Headless Management @System Tools does resolve to 'core')

Anyhow: I checked the comps.xml file, that always resides with the repodata, checked that all groups and environments are included, checked/corrected the checksums (given in the repomd.xml), but. BUT. I cannot even see Anaconda downloading the specified comps.xml file. In non of the serverlogs I see a download of comps.xml, only of filelists.xml.gz and primary.xml.gz.

So where does anaconda get the comps.xml info it uses from? From kickstart's 'dnf.log': " DDEBUG timer: sack setup: 65772ms DDEBUG Getting group metadata DDEBUG timer: loading comps: 1ms "

I'd really appreciate some insights, best -KD

edit retag close merge delete

Sort by » oldest newest most voted

On my system, the comps file is dowloaded as repo metadata and discoverable in ie /var/cache/dnf/${repo}-${uuid}/repodata/${comps_uuid}-comps-f${releasever}.xml.xz

The file is built from https://git.fedorahosted.org/cgit/com... .There's an overview of usage, for both users and packagers, at https://fedoraproject.org/wiki/How_to... .

more

While that is valid and true for an UP-and-RUNNING system, it does not hold true for a being-kickstarted system. Additionally: Yes thanks for the links, I used the first in my 5th try to give anaconda a comps.xml file, and I found the second one, early in my research, but sadly it only tells of the dnf system on installed systems. And that not toooo detailed.

( 2016-01-25 05:47:23 -0500 )edit

I'm not sure why this would be different. @Base doesn't exist in the sources, and @Base doesn't exist in your ks environment. Are there problems not relating to this group?

( 2016-01-25 08:44:33 -0500 )edit

Why yes! Anaconda complains about group 'core' (not 'base') to be required and not existant. Funny enough, in the comps.xml 'core' does exist. That's why I'd like to find out where anaconda takes the groups-info from, since it does NOT load the comps.xml[.xz|.gz|] file from the given repository. That would register as a server-transfer (apache/tomcat/tftp/...)

( 2016-01-25 09:03:01 -0500 )edit

I am riddling another question, since I broke something else while poking around.

However, I did find an answer, though it is a bit weird.

librepo pulls the files specified by dnf that it reads from the repodata/repomd.xml file. So far so good. But. While the entries 'primary' 'filelist' and 'other' are just expected like that (and it is assumed they are compressed, and have also supplied an unpacked-sha256 checksum, this does not hold true for the groups information. 'group' is a valid entry in the repomd.xml afaict however, anaconda's dnf/dnf itself is only checking for 'group_gz'. Once i supply an entry 'group_gz' and place a compressed 'comps.xml' there, it DOES get downloaded from my kickstart-server.

Now, if I could solve the other issue, I might actually see if the loaded comps.xml also get used to resolve the groups/environment issue.

more