Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/archinstall/lib/luks.py
diff options
context:
space:
mode:
authorcodefiles <11915375+codefiles@users.noreply.github.com>2023-06-08 04:48:56 -0400
committerGitHub <noreply@github.com>2023-06-08 10:48:56 +0200
commitde9b8d4f0e5852d7b4cd4d06e975a2e466fc00f4 (patch)
tree54168e7c4510b801b9639bd28759fcdae578293a /archinstall/lib/luks.py
parent96d0eb1de982acc7e66f2a72d38a83a3abbea29e (diff)
Fix paths used for steps in keyfile creation (#1851)
* Fix paths used for steps in keyfile creation * Simplify
Diffstat (limited to 'archinstall/lib/luks.py')
-rw-r--r--archinstall/lib/luks.py10
1 files changed, 5 insertions, 5 deletions
diff --git a/archinstall/lib/luks.py b/archinstall/lib/luks.py
index f9b09b53..84b0e6fd 100644
--- a/archinstall/lib/luks.py
+++ b/archinstall/lib/luks.py
@@ -187,8 +187,8 @@ class Luks2:
# Once we store the key as ../xyzloop.key systemd-cryptsetup can
# automatically load this key if we name the device to "xyzloop"
- key_file_path = target_path / 'etc/cryptsetup-keys.d/' / self.mapper_name
- key_file = key_file_path / '.key'
+ kf_path = Path(f'/etc/cryptsetup-keys.d/{self.mapper_name}.key')
+ key_file = target_path / kf_path.relative_to(kf_path.root)
crypttab_path = target_path / 'etc/crypttab'
if key_file.exists():
@@ -198,15 +198,15 @@ class Luks2:
else:
info(f'Key file {key_file} already exists, overriding')
- key_file_path.mkdir(parents=True, exist_ok=True)
+ key_file.parent.mkdir(parents=True, exist_ok=True)
with open(key_file, "w") as keyfile:
keyfile.write(generate_password(length=512))
- key_file_path.chmod(0o400)
+ key_file.chmod(0o400)
self._add_key(key_file)
- self._crypttab(crypttab_path, key_file, options=["luks", "key-slot=1"])
+ self._crypttab(crypttab_path, kf_path, options=["luks", "key-slot=1"])
def _add_key(self, key_file: Path):
info(f'Adding additional key-file {key_file}')