summaryrefslogtreecommitdiff
path: root/app-admin/calamares/files/calamares-3.1.0-luksfix.patch
blob: af9a79bf7ffb9255ff8ba6f6c280cc2f187edda7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
diff -Nur a/src/modules/bootloader/main.py b/src/modules/bootloader/main.py
--- a/src/modules/bootloader/main.py	2017-02-17 15:21:02.000000000 +0000
+++ b/src/modules/bootloader/main.py	2017-06-02 13:38:49.275348324 +0100
@@ -98,14 +98,15 @@
     cryptdevice_params = []
 
     for partition in partitions:
-        if partition["fs"] == "linuxswap":
+        if partition["fs"] == "linuxswap" and not "luksMapperName" in partition:
             swap_uuid = partition["uuid"]
 
         if partition["mountPoint"] == "/" and "luksMapperName" in partition:
             cryptdevice_params = [
                 "cryptdevice=UUID={!s}:{!s}".format(partition["luksUuid"],
                                                     partition["luksMapperName"]),
-                "root=/dev/mapper/{!s}".format(partition["luksMapperName"])
+                "root=/dev/mapper/{!s}".format(partition["luksMapperName"]),
+                "resume=/dev/mapper/{!s}".format(partition["luksMapperName"])
             ]
 
     if cryptdevice_params:
diff -Nur a/src/modules/fstab/main.py b/src/modules/fstab/main.py
--- a/src/modules/fstab/main.py	2016-11-25 17:38:49.000000000 +0000
+++ b/src/modules/fstab/main.py	2017-06-02 13:28:53.792308347 +0100
@@ -257,8 +257,23 @@
                         check=check,
                         )
 
+        if filesystem == "swap" and "luksMapperName" in partition:
+            return dict(device="/dev/mapper/" + partition["luksMapperName"],
+                        mount_point=mount_point or "swap",
+                        fs=filesystem,
+                        options=options,
+                        check=check,
+                        )
+        else:
+            return dict(device="UUID=" + partition["uuid"],
+                        mount_point=mount_point or "swap",
+                        fs=filesystem,
+                        options=options,
+                        check=check,
+                        )
+
         return dict(device="UUID=" + partition["uuid"],
-                    mount_point=mount_point or "swap",
+                    mount_point=mount_point,
                     fs=filesystem,
                     options=options,
                     check=check,
diff -Nur a/src/modules/grubcfg/main.py b/src/modules/grubcfg/main.py
--- a/src/modules/grubcfg/main.py	2017-02-17 15:21:02.000000000 +0000
+++ b/src/modules/grubcfg/main.py	2017-06-02 13:36:55.032340654 +0100
@@ -48,7 +48,7 @@
 
     if dracut_bin == 0:
         for partition in partitions:
-            if partition["fs"] == "linuxswap":
+            if partition["fs"] == "linuxswap" and not "luksMapperName" in partition:
                 swap_uuid = partition["uuid"]
 
             if partition["fs"] == "linuxswap" and "luksMapperName" in partition:
@@ -58,14 +58,15 @@
                 cryptdevice_params = ["rd.luks.uuid={!s}".format(partition["luksUuid"])]
     else:
         for partition in partitions:
-            if partition["fs"] == "linuxswap":
+            if partition["fs"] == "linuxswap" and not "luksMapperName" in partition:
                 swap_uuid = partition["uuid"]
 
             if partition["mountPoint"] == "/" and "luksMapperName" in partition:
                 cryptdevice_params = [
                     "cryptdevice=UUID={!s}:{!s}".format(partition["luksUuid"],
                                                         partition["luksMapperName"]),
-                    "root=/dev/mapper/{!s}".format(partition["luksMapperName"])
+                    "root=/dev/mapper/{!s}".format(partition["luksMapperName"]),
+                    "resume=/dev/mapper/{!s}".format(partition["luksMapperName"])
                 ]
 
     kernel_params = ["quiet"]
@@ -80,6 +81,7 @@
         kernel_params.append("resume=UUID={!s}".format(swap_uuid))
 
     if dracut_bin == 0 and swap_outer_uuid:
+        kernel_params.append("resume=/dev/mapper/{!s}".format(partition["luksMapperName"]))
         kernel_params.append("rd.luks.uuid={!s}".format(swap_outer_uuid))
 
     distributor_line = "GRUB_DISTRIBUTOR='{!s}'".format(distributor_replace)