Description of problem: I'm working on packaging Zypper for Fedora. For now, it sits in a COPR repository[1] and requires manual effort to configure properly. However, I'd like to set up Zypper to use the repo files in /etc/yum.repos.d when I'm ready to submit it for review. For that to work, two values are missing from each repository specified in the .repo files in /etc/yum.repos.d: the repo type and whether to verify the signature of the repository metadata. The repository type is set by adding "type=rpm-md" under each section in the .repo files. This is necessary because Zypper supports three types: rpm-md, yast2, and plaindir. This is noted in zypper(8). As for verifying the signature of repository metadata, Fedora currently does not sign repository metadata (with the exception of the Cisco OpenH264 repository). For the repositories where it does not sign the repository metadata, "repo_gpgcheck=0" needs to be added so that Zypper will not refuse to load repository metadata that isn't signed. By default, it expects them to be signed. The addition of these values has no effect on DNF, as it simply ignores "type=" and it already defaults to "repo_gpgcheck=0" if not specified in the .repo file. [1]: https://copr.fedorainfracloud.org/coprs/ngompa/zypper/ Version-Release number of selected component (if applicable): All current versions are affected for Fedora 24, 25, and Rawhide (F26)
Also, changes to COPR have already been merged in to generate .repo files that include this new data: https://github.com/fedora-copr/copr/pull/12
Do we know how this interacts with gnome-software/PackageKit? We will want to make sure it doesn't run into any problems with it.
I think these should both be fine for PackageKit. It has support for parsing the "repo_gpgcheck" key and just ignores the "type" key.
I have no problems adding repo_gpgcheck however the type is kinda messy and strange
How is it strange? It just declares what type of repodata it is.
what is rpm-md? and why do we need a type anyway?
loking further I found https://en.opensuse.org/openSUSE:Standards_Rpm_Metadata which makes me sad, it does not use the sqlitedbs we produce to make things work faster. suse has also added its own non standard data.
I have filed https://github.com/openSUSE/zypper/issues/100 upstream as rpm-md really makes no sense
The nonstandard parts are the "susetags"/"yast2" format, which is rpm-md with extra suse stuff. The SQLite database information isn't used by DNF either. libsolv constructs a solver cache from the rpm-md XML data and uses that for quickly identifying things in repositories. The SQLite metadata form is essentially deprecated, and as far as I'm aware, the only tool that actually handled that data was Yum.
So now libzypp supports "rpm" as an alias for "rpm-md". Would you now be willing to add it to the repo files in fedora-repos?
added in https://pagure.io/fedora-repos/pull-request/14
Could you also add it to F25 (and maaaybe even F24)?
This is coming with F26...