From 1ca4d8e6bb241d2715b66ea1ec723015fdd3f98a Mon Sep 17 00:00:00 2001 From: Martin Sehnoutka Date: Mon, 29 Jul 2019 12:03:33 +0200 Subject: [PATCH] introduce keymap stage --- stages/org.osbuild.keymap | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100755 stages/org.osbuild.keymap diff --git a/stages/org.osbuild.keymap b/stages/org.osbuild.keymap new file mode 100755 index 00000000..080d3eb6 --- /dev/null +++ b/stages/org.osbuild.keymap @@ -0,0 +1,28 @@ +#!/usr/bin/python3 + +import json +import subprocess +import sys +import os + + +def main(tree, options): + keymap = options["keymap"] + + # We need to remove the /etc/vconsole.conf file first, because it is created while we install RPM packages. + # systemd-firstboot expects that if /etc/vconsole.conf exists it is a user-defined value and does not change it, but + # the assumption is wrong, because it contains a default value from RPM package. + try: + os.remove(f"{tree}/etc/vconsole.conf") + except FileNotFoundError: + print("vconsole.conf does not exist") + + subprocess.run(["systemd-firstboot", f"--root={tree}", f"--keymap={keymap}"], check=True) + + return 0 + + +if __name__ == '__main__': + args = json.load(sys.stdin) + r = main(args["tree"], args["options"]) + sys.exit(r)