archinstall/archinstall/lib
Anton Hvornum e729457b6c
Support encrypting multiple partitions (#759)
* Added support for storing disk encryption keyfiles and add them to a keyslot.
* Added a luks2().add_key() function in order to inject a keyfile into a keyslot on a encrypted volume.
* Simplified 'missing encryption password' logic in Filesystem(). Added a call to luks2().add_key() after the root-password is set on the volume, to add the keyfile in slot 2
* Adding in password handling in luks2().add_key(). It's required to enter a previous passphrase to unlock the volume and add a new keyslot. Also simplified the handling of partition in Installer().mount_ordered_layout()
* Adding in encryption on all partitions except /boot when encryption is opted in
* Removed setting size on Partition() as it's a read only value. No idea how Partition().size = size hasn't caused an issue before. Removed size=X argument to Partition()
* Added a uniqueness to the loopdevice name. This should ensure that multiple encrypted volumes can be opened at the same time, except for Partition().detect_inner_filesystem() operations which can only happen one at a time since they share namespace. This should never be an issue since archinstall is single threaded and no concurrent operations can/should happen.
* Added partprobe() as part of disk/helpers.py, added a /dev/ -> UUID mapper function called convert_device_to_uuid(path). Added a luks2().crypttab() function that sets up a /etc/crypttab entry.
* Moved the responsability for telling archinstall to generate a keyfile from Filesystem() to user_interaction.py. This should in the future be a user-input based value, and not something the Filesystem() automatically dictates.
* Added a retry mechanism to luks2().encrypt() to avoid having to re-start the installation when a device simply wasn't up yet.
* Swapping UUID= lookup from loopdev to physdev.
2021-11-24 00:09:33 +01:00
..
disk Support encrypting multiple partitions (#759) 2021-11-24 00:09:33 +01:00
__init__.py Converted the lib to a pip supported structure to make packaging easier. Also tweaked some minor issues and added the AUR function 2020-07-06 18:44:42 +02:00
exceptions.py Remove PermissionError since it shadows the built-in of the same name 2021-05-18 08:27:59 -04:00
general.py Support encrypting multiple partitions (#759) 2021-11-24 00:09:33 +01:00
hardware.py Cleaned up all flake8 issues/warnings. Did some code cleaning as well, mostly how we called things in guided.py but also some SysCommand calls 2021-11-05 16:27:01 +01:00
installer.py Support encrypting multiple partitions (#759) 2021-11-24 00:09:33 +01:00
locale_helpers.py Reworking SysCommand & Moving to localectl for locale related activities 2021-05-19 16:45:13 +02:00
luks.py Support encrypting multiple partitions (#759) 2021-11-24 00:09:33 +01:00
mirrors.py Cleaned up all flake8 issues/warnings. Did some code cleaning as well, mostly how we called things in guided.py but also some SysCommand calls 2021-11-05 16:27:01 +01:00
networking.py Fixed flake8 issues in networking, plugins and profiles. 2021-11-01 12:03:40 +00:00
output.py source code improvement 2021-11-19 14:09:47 +11:00
packages.py Cleaned up all flake8 issues/warnings. Did some code cleaning as well, mostly how we called things in guided.py but also some SysCommand calls 2021-11-05 16:27:01 +01:00
plugins.py Fixed flake8 issues in networking, plugins and profiles. 2021-11-01 12:03:40 +00:00
profiles.py Cleaned up all flake8 issues/warnings. Did some code cleaning as well, mostly how we called things in guided.py but also some SysCommand calls 2021-11-05 16:27:01 +01:00
services.py Cleaned up all flake8 issues/warnings. Did some code cleaning as well, mostly how we called things in guided.py but also some SysCommand calls 2021-11-05 16:27:01 +01:00
storage.py Increased disk delays by 100% (for unsuccessful operations), successful should still be quick. (#730) 2021-11-18 13:07:28 +00:00
systemd.py Fixed spelling error on variables 2021-11-18 16:09:25 +00:00
user_interaction.py Support encrypting multiple partitions (#759) 2021-11-24 00:09:33 +01:00