* Added back xinit for awesome, since it can be used without a greeter, as well as other useful tools we've had in previous releases
* Fixing xinitrc for awesome profile
* Attempting to grab xorg packages when installing the desktop profile
* Spelling error on xorg-server
* Fixed sway value error on seat selection
* Adding python-simple-term-menu to the dependency list
* Added dependencies to all binaries we call, such as 'ps' and 'mkfs' etc
* Sorted the depends list - just for peace of mind
* Bumped version in prep for release of rc1, also updated README a bit
* Removed older python versions from classifiers
* fix: check for helper functions for unsafe encode before falling back to safe encoding
* feat: merge _encode and _unsafe_encode into simple serialization function to avoid immediate json.loads after json.dumps
* fix: use function instead of a serializing class without trying to serialize keys that are unhashable or unsupported
* feat: lazily evaluate serialized value based on key validity
* feat: use dictionary comprehension and predefined compatible types
* fix: handle enum types immediately after dicts
* fix: return stringified object as a default
* doc: update function docstring for serialize_to_dict
* fix: rename serialize_to_dict to jsonify as it serializes to other primitive types as well
* Save encryption configuration
* Fix deserialization problem
* Added .part_uuid to MapperDev
---------
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
Co-authored-by: Anton Hvornum <anton.feeds+github@gmail.com>
* Attempting a retry-attempt on the broken part of lsblk
* Improved logging
* Adding a retry to Partition._call_lsblk()
* Added error checks if lsblk returns nothing, also handles empty Partition().info instance.
* Added missing check of disk encryption is None or not.
* Added tweak to catching output from lsblk.stderr
* Added missing check of disk encryption is None or not.
* Fixed a logic test for empty lsblk info
* Fixed instances of None being interated
* Added some errro handling for weird block devices
* Fixed flake8
* Added /etc/vconsole.conf generation in Installer.mkinitcpio() as it's a dependency for it to generate properly without errors. Otherwise we'll get ==> ERRROR: file not found: '/etc/vconsole.conf'
* Prep for tagging RC1 of 2.5.3
* Corrected helpers.py get_blockdevice_info() to deal with empty lsblk results
* Cleaned up argument loading slighly. Also flipped some --silent logic to avoid double negatives. --plugin and --conf {'plugin': ...} should now both work.
* Tweaked xorg profile to use list instead of strings. Because strings causes some issues through add_additional_packages() as it ends up as [(xorg, xorg-xinit), nano] instead of a flat list of packages or string.
* Tweaked xorg profile to use list instead of strings. Because strings causes some issues through add_additional_packages() as it ends up as [(xorg, xorg-xinit), nano] instead of a flat list of packages or string.
* Added more offline functionality, such as skipping package search
* Disabled list_mirrors() from going online if --offline is given. Defaults to /etc/pacman.d/mirrorlist instead.
* Forgot import of pathlib
* Made list_mirrors() open /etc/pacman.d/mirrorlist in byte mode to better emulate the result of urllib response reading.
* Forgot variable declaration
* Made list_mirrors include activated server definitions
* Added a HSM menu entry, but also a safety check to make sure a FIDO device is connected
* flake8 complaints
* Adding FIDO lookup using cryptenroll listing
* Added systemd-cryptenroll --fido2-device=list
* Removed old _select_hsm call
* Fixed flake8 complaints
* Added support for locking and unlocking with a HSM
* Removed hardcoded paths in favor of PR merge
* Removed hardcoded paths in favor of PR merge
* Fixed mypy complaint
* Flake8 issue
* Added sd-encrypt for HSM and revert back to encrypt when HSM is not used (stability reason)
* Added /etc/vconsole.conf and tweaked fido2_enroll() to use the proper paths
* Spelling error
* Using UUID instead of PARTUUID when using HSM. I can't figure out how to get sd-encrypt to use PARTUUID instead. Added a Partition().part_uuid function. Actually renamed .uuid to .part_uuid and created a .uuid instead.
* Adding missing package libfido2 and removed tpm2-device=auto as it overrides everything and forces password prompt to be used over FIDO2, no matter the order of the options.
* Added some notes to clarify some choices.
* Had to move libfido2 package install to later in the chain, as there's not even a base during mounting :P
* Deflate the user interactions file
* Fix flake8
* GlobalMenu split from selection_menu.py
* Upgrades to ListManager:
Can now show an empty list if there is no null action.
More information to the user at the header
* Put only_hd.py and swiss.py to use new config printing mechanism
Solved a couple of bugs at
ListManager adding a str and a DeferredTranslation
ManageUser was missing an self argument in _check ...
* Create list and menus to manage subvolumes in btrfs partitions
Needed to modify manage_new_and_existing_partitions
Added a new parameter filter to select_partition, to allow filtering there
* Update internationalization strings
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
* add new widget ListManager
* flake8 complains
* Null_action appears now in the main list (to simplify additions to the list)
Formatted data are now at the from to the actions submenu
* Define a default action in the menu, potentially independent of a null_action
Both default and null actions don't have to be part of the element's action list
Some cleanup