diff --git a/src/modules/dracut/dracut.schema.yaml b/src/modules/dracut/dracut.schema.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..503b1a4f096610384ad8ba591ccd15328a22b10f
--- /dev/null
+++ b/src/modules/dracut/dracut.schema.yaml
@@ -0,0 +1,9 @@
+# SPDX-FileCopyrightText: 2022 Anke Boersma <demm@kaosx.us>
+# SPDX-License-Identifier: GPL-3.0-or-later
+---
+$schema: https://json-schema.org/schema#
+$id: https://calamares.io/schemas/dracut
+additionalProperties: false
+type: object
+properties:
+    kernelName: { type: string }
diff --git a/src/modules/dracut/main.py b/src/modules/dracut/main.py
index 32f9a842ea05241ba774b1f806192335431fc85f..071406580ad57d3b4af2bf432cc93958e1566ec2 100644
--- a/src/modules/dracut/main.py
+++ b/src/modules/dracut/main.py
@@ -36,10 +36,10 @@ def run_dracut():
     """
     kernelName = libcalamares.job.configuration['kernelName']
 
-    if kernelName != 0:
-        return check_target_env_call(['dracut', '-f', '{}'.format(kernelName)])
-    else:
+    if not kernelName:
         return check_target_env_call(['dracut', '-f'])
+    else:
+        return check_target_env_call(['dracut', '-f', '{}'.format(kernelName)])
 
 
 def run():