diff --git a/src/modules/initcpiocfg/main.py b/src/modules/initcpiocfg/main.py
index 5d4c704f0eadbb92883c8ac77028b2fc17b4f303..14c9431c203127dbf0656d709370dd47e5e38f22 100644
--- a/src/modules/initcpiocfg/main.py
+++ b/src/modules/initcpiocfg/main.py
@@ -88,6 +88,7 @@ def modify_mkinitcpio_conf(partitions, root_mount_point):
     btrfs = ""
     hooks = ["base", "udev", "autodetect", "modconf", "block", "keyboard", "keymap"]
     modules = []
+    encrypt_hook = False
 
     # It is important that the plymouth hook comes before any encrypt hook
     plymouth_bin = os.path.join(root_mount_point, "usr/bin/plymouth")
@@ -101,6 +102,12 @@ def modify_mkinitcpio_conf(partitions, root_mount_point):
         if partition["fs"] == "btrfs":
             btrfs = "yes"
 
+        if partition["mountPoint"] == "/" and partition["luksMapperName"]:
+            encrypt_hook = True
+
+    if encrypt_hook:
+        hooks.append("encrypt")
+
     if swap_uuid is not "":
         hooks.extend(["resume", "filesystems"])
     else: