]> code.ossystems Code Review - openembedded-core.git/commitdiff
package_manager.py: set dnf's releasever setting from DISTRO_CODENAME
authorAlexander Kanavin <alexander.kanavin@linux.intel.com>
Wed, 21 Jun 2017 12:58:21 +0000 (15:58 +0300)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 23 Jun 2017 10:43:40 +0000 (11:43 +0100)
So that:

1) dnf does not complain anymore about releasever not being set and then fail
for the same reason;

2) it's possible to refer to $releasever in dnf package feed configuration
(repo paths in particular) without hardconding the release name (pyro, morty, etc.)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/lib/oe/package_manager.py

index bc4e3013f0c255ab6fca8941280a2620e5f1a185..72503eb9d3828e98bde5fc2f5f68521d996099aa 100644 (file)
@@ -494,9 +494,11 @@ class RpmPM(PackageManager):
         # This prevents accidental matching against libsolv's built-in policies
         if len(archs) <= 1:
             archs = archs + ["bogusarch"]
-        archconfdir = "%s/%s" %(self.target_rootfs, "etc/dnf/vars/")
-        bb.utils.mkdirhier(archconfdir)
-        open(archconfdir + "arch", 'w').write(":".join(archs))
+        confdir = "%s/%s" %(self.target_rootfs, "etc/dnf/vars/")
+        bb.utils.mkdirhier(confdir)
+        open(confdir + "arch", 'w').write(":".join(archs))
+        distro_codename = self.d.getVar('DISTRO_CODENAME')
+        open(confdir + "releasever", 'w').write(distro_codename if distro_codename is not None else '')
 
         open(oe.path.join(self.target_rootfs, "etc/dnf/dnf.conf"), 'w').write("")