summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/lib/oe/package_manager.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index b016bc32dc..eeb4c76071 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -520,7 +520,14 @@ class RpmPM(PackageManager):
520 open(platformconfdir + "macros", 'a').write("%_prefer_color 7") 520 open(platformconfdir + "macros", 'a').write("%_prefer_color 7")
521 521
522 if self.d.getVar('RPM_SIGN_PACKAGES') == '1': 522 if self.d.getVar('RPM_SIGN_PACKAGES') == '1':
523 raise NotImplementedError("Signature verification with rpm not yet supported.") 523 pubkey_path = self.d.getVar('RPM_GPG_PUBKEY')
524 rpm_bin = bb.utils.which(os.getenv('PATH'), "rpmkeys")
525 cmd = [rpm_bin, '--root=%s' % self.target_rootfs, '--import', pubkey_path]
526 try:
527 subprocess.check_output(cmd, stderr=subprocess.STDOUT)
528 except subprocess.CalledProcessError as e:
529 bb.fatal("Importing GPG key failed. Command '%s' "
530 "returned %d:\n%s" % (' '.join(cmd), e.returncode, e.output.decode("utf-8")))
524 531
525 def create_configs(self): 532 def create_configs(self):
526 self._configure_dnf() 533 self._configure_dnf()
@@ -570,7 +577,8 @@ class RpmPM(PackageManager):
570 output = self._invoke_dnf((["--skip-broken"] if attempt_only else []) + 577 output = self._invoke_dnf((["--skip-broken"] if attempt_only else []) +
571 (["-x", ",".join(exclude_pkgs)] if len(exclude_pkgs) > 0 else []) + 578 (["-x", ",".join(exclude_pkgs)] if len(exclude_pkgs) > 0 else []) +
572 (["--setopt=install_weak_deps=False"] if self.d.getVar('NO_RECOMMENDATIONS') == 1 else []) + 579 (["--setopt=install_weak_deps=False"] if self.d.getVar('NO_RECOMMENDATIONS') == 1 else []) +
573 ["--nogpgcheck", "install"] + 580 (["--nogpgcheck"] if self.d.getVar('RPM_SIGN_PACKAGES') != '1' else ["--setopt=gpgcheck=True"]) +
581 ["install"] +
574 pkgs) 582 pkgs)
575 583
576 failed_scriptlets_pkgnames = collections.OrderedDict() 584 failed_scriptlets_pkgnames = collections.OrderedDict()