Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/archinstall/__init__.py
AgeCommit message (Collapse)Author
2023-06-28Adding python-simple-term-menu to the dependency list (#1901)Anton Hvornum
* 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
2023-06-22Simplify object serialization before JSON encoding (#1871)Himadri Bhattacharjee
* 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
2023-06-21Make Gfx driver handling saver (#1885)Daniel Girtler
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-06-21Always verify permissions and check for log dir (#1874)Daniel Girtler
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-06-05Move locales and cleanup menu (#1814)Daniel Girtler
* Cleanup imports and unused code * Cleanup imports and unused code * Update build check * Keep deprecation exception * Simplify logging * Move locale into new sub-menu --------- Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-15Add custom mirror support (#1816)Daniel Girtler
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-11Cleanup imports and unused code (#1801)Daniel Girtler
* Cleanup imports and unused code * Update build check * Keep deprecation exception * Simplify logging --------- Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-07Update version 2.5.6 (#1791)Daniel Girtler
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-03Full mypy compliance and small fixes (#1777)Daniel Girtler
* Fix mypy compliance --------- Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-04-22Fix import and configuration loading issues (#1764)Daniel Girtler
* Fix import and configuration loading issues * Fix mypy --------- Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-04-19PyParted and a large rewrite of the underlying partitioning (#1604)Daniel Girtler
* Invert mypy files * Add optional pre-commit hooks * New profile structure * Serialize profiles * Use profile instead of classmethod * Custom profile setup * Separator between back * Support profile import via url * Move profiles module * Refactor files * Remove symlink * Add user to docker group * Update schema description * Handle list services * mypy fixes * mypy fixes * Rename profilesv2 to profiles * flake8 * mypy again * Support selecting DM * Fix mypy * Cleanup * Update greeter setting * Update schema * Revert toml changes * Poc external dependencies * Dependency support * New encryption menu * flake8 * Mypy and flake8 * Unify lsblk command * Update bootloader configuration * Git hooks * Fix import * Pyparted * Remove custom font setting * flake8 * Remove default preview * Manual partitioning menu * Update structure * Disk configuration * Update filesystem * luks2 encryption * Everything works until installation * Btrfsutil * Btrfs handling * Update btrfs * Save encryption config * Fix pipewire issue * Update mypy version * Update all pre-commit * Update package versions * Revert audio/pipewire * Merge master PRs * Add master changes * Merge master changes * Small renaming * Pull master changes * Reset disk enc after disk config change * Generate locals * Update naming * Fix imports * Fix broken sync * Fix pre selection on table menu * Profile menu * Update profile * Fix post_install * Added python-pyparted to PKGBUILD, this requires [testing] to be enabled in order to run makepkg. Package still works via python -m build etc. * Swaped around some setuptools logic in pyproject Since we define `package-data` and `packages` there should be no need for: ``` [tool.setuptools.packages.find] where = ["archinstall", "archinstall.*"] ``` * Removed pyproject collisions. Duplicate definitions. * Made sure pyproject.toml includes languages * Add example and update README * Fix pyproject issues * Generate locale * Refactor imports * Simplify imports * Add profile description and package examples * Align code * Fix mypy * Simplify imports * Fix saving config * Fix wrong luks merge * Refactor installation * Fix cdrom device loading * Fix wrongly merged code * Fix imports and greeter * Don't terminate on partprobe error * Use specific path on partprobe from luks * Update archinstall/lib/disk/device_model.py Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com> * Update archinstall/lib/disk/device_model.py Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com> * Update github workflow to test archinstall installation * Update sway merge * Generate locales * Update workflow --------- 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> Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com>
2023-03-29Version bump v2.5.4 (#1694)Anton Hvornum
2023-03-29Save encryption configuration (#1672)Daniel Girtler
* 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>
2023-02-28Fixed indentation issue after #1657Anton Hvornum
2023-02-28Uses dict setdefault instead of manually checking if key-value pair exists. ↵Himadri Bhattacharjee
(#1657)
2023-02-27Bumped version to v2.5.3Anton Hvornum
2023-02-27Patch for 1557 (#1645)Anton Hvornum
* 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
2022-11-11New encryption menu (#1520)Daniel Girtler
* New encryption menu Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com> Co-authored-by: Anton Hvornum <anton@hvornum.se>
2022-10-12Version bump v2.5.2 (forgot before tagging the release)Anton Hvornum
2022-10-02Fixed spelling mistakes (#1496)benni347
* Fixed spelling mistakes * Fixed the spelling of JSON so it comforms to the offical spelling of it.
2022-09-25Updating version to v2.5.1Anton Hvornum
2022-09-06Move deserialization into init (#1456)Daniel Girtler
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2022-08-30Version bump to v2.5.1rc1 in prep for releaseAnton Hvornum
2022-08-11Cleaned up argument loading slighly. (#1419)Anton Hvornum
* 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.
2022-08-09Add command line option to get the program version (#1406)Metin Yazici
2022-08-01Update translations (#1348)Daniel Girtler
* Show translations in own tongue * Fix flake8 * Update * Update * Update * Update * fix mypy * Update * Update Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2022-06-06Update the subvolume menu - fix for #1278 (#1297)Daniel Girtler
* Update subvolume * Add mypy compliance Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com> Co-authored-by: Anton Hvornum <anton@hvornum.se>
2022-06-06Handle cyrillic characters (#1309)Daniel Girtler
* Handle cyrillic characters * Update Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2022-06-02Added more offline functionality, such as skipping package search (#1296)Anton Hvornum
* 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
2022-05-29Fix typos (#1265)Kian-Meng Ang
2022-05-27Version bump in prep for release + fixed a variable issueAnton Hvornum
2022-05-26Rework user management (#1220)Daniel Girtler
* Rework users * Update user installation * Fix config serialization * Update * Update schemas and documentation * Update * Fix flake8 * Make users mypy compatible * Fix minor copy Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com> Co-authored-by: Anton Hvornum <anton@hvornum.se>
2022-05-18Version bump to RC1 for v2.4.3Anton Hvornum
2022-05-18Added a HSM menu entry (#1196)Anton Hvornum
* 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
2022-05-12Made sure remote sourcing works for --creds, --config and --disk-layout. (#1170)Anton Hvornum
* Made sure remote sourcing works for --creds, --config and --disk-layout. * Spelling error when moving around source code.
2022-05-10Disable UniCyr font for nowAnton Hvornum
2022-05-10Set the unicode cyrillic font by default (#1153)Daniel Girtler
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2022-04-29Version bump to v2.4.2Anton Hvornum
2022-04-27Version bump to v2.4.1 (due to pypi.org having a yanked 2.4.0)Anton Hvornum
2022-04-25When using disk_layout files but not config file, we autofill the harddrives ↵Werner Llácer
argument (#1067)
2022-04-22Support for multiple network interfaces (#1052)Daniel
* Support for multiple network interfaces * Fix mypy * Fix flake8 Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2022-03-29Version bump to v2.4.0 RC2Anton Hvornum
2022-03-28Fixed an import of not yet loaded moduleAnton Hvornum
2022-03-28Fixed an import of not yet loaded moduleAnton Hvornum
2022-03-28Subvolume User Interface (#1032)Werner Llácer
* 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>
2022-03-28Version bump for release candidate of v2.4.0 RC1Anton Hvornum
2022-02-28add new widget ListManager (#1005)Werner Llácer
* 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
2022-02-28Rework network config (#1001)Daniel
* Update network configuration * Rework network configuration * Update documentation * Fix flake8 * Update Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com> Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
2022-02-28enhacements to the menu infraestructure (#978)Werner Llácer
* Correct definition of btrfs standard layout * Solve issue #936 * make ask_for_a_timezone as synonym to ask_timezone * Some refining in GeneralMenu secret is now a general function * Revert "Some refining in GeneralMenu" This reverts commit e6e131cb19795e0ddc169e897ae4df57a1c7f9fb. * Activate load of preset values in GeneralMenu Changed all select_functions definitions to the need of passing the preset value Corrected problems at ask_to_configure_network, and management of preset values added * minor glitches in menu processing, plus flake8 complains * Changes to ask_to_configure_network following @svartkanin code * select_language adapted to preset value. changes to the infraestructure to solve bugs * functions adapted for preset values * select_mirror_regions * select_locale_lang * select_locale_enc * ask_for_swap * Updated to preset values * ask_for_bootloader Won't use it * set_root_password() * Updated to preset values * ask_for_audio_selection * select_kernel * ask_for_a_timezone * Updated to use preset values * select_ntp * ask_ntp * ask_for_swap flake8 complains * Adapted to preset values * ask_additional_packages_to_install (from svartkanin) * ask_to_configure_network (adapted from svartkanin version) * Updated to preset values * ask_hostname * select_additional_repositories * bug in nic conversion _select_harddrives adapted to preset_menu
2022-02-15Fix #966 - DeferredTranslation errors (#976)Daniel
* Fix #966 * Add types to parameters * Update network configuration * Backwards compability for nic config * Update Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>