Age | Commit message (Collapse) | Author |
|
* fix: refactor clear_vt100_escape_codes
* fix: check for structure being a dict after handling potential parsing errors
* refactor: use short circuit logic than if-elif-else chains
* fix: use or for nullish moutpoint attribute
* fix: better error handling for JSON from urls and paths
* chore: json_stream_to_structure documentation
* refactor: dry up relative and chroot path for custom command scripts
* refactor: use write_text for pathlib.Path object
* refactor: use sets to find intersection instead of filter and list
* refactor: replace loop with dictionary comprehension in preparing luks partition
* refactor: use walrus operator to check if luks_handler exists
* refactor: use read_text and splitlines for potential Path object
* fix: use keepends in splitlines for compatibility
* fix: use keepends in splitlines for compatibility
* feat: set pacman_conf Path as an attribute of installer
* fix: empty string is a part of any string, avoid tuples
* refactor: use iterator patterns to uncomment multilib and testing blocks
* fix: don't json.loads an already loaded structure
* fix: use fstab_path uniformly in genfstab
* fix: remove unused variable matched
* refactor: create separate class to modify pacman.conf in a single pass
* fix: remove unused attribute pacman_conf from installer
* fix: remove unused attribute pacman_conf from installer
* feat: add persist method for pacman.conf, rewrite only when needed
* fix: use path.write_text for locale.conf
* use `or` operator for nullish new_conf
* refactor: Installer.target is always a pathlib.Path object, do not check for string type
* fix: use Optional[str] in function type definition instead of sumtype of str and None
* fix: mypy type annotation
* fix: make flake8 happy
* chore: move pacman config and repo into pacman module
* refactor: use Pacman object instead of Installer's pacstrap method
* fix: break after first sync
* fix: keep old build script for now
* use nullish operator for base_packages and disk_encryption of Installer
* feat: use shutil.which instead of rolling our own implementation
* fix: check for binary only if list is not empty
* fix: import Enum and fix mypy errors
* refactor: use nullish operator for default values
* refactor: linear search for key in Installer._trace_log only once
* fix: use logs instead of the entirety of self._trace_log when searching for key
* refactor: do not copy slice of bytes for search
* refactor: use rfind only once to iterate over logs, do not raise ValueError in clear_vt100_escape_codes since TYPE_CHECKING will take care of it.
* refactor: try decoding trace log before falling back to strigification
* refactor: use an empty dict as default for callbacks in SysCommand.__init__
* refactor: use nullish or operator for slice start and end when not specified
* refactor: use nullish or operator for SysCommand session
* refactor: use pre-existing decode method in __repr__ for SysCommand
* fix: overindentation
* fix: use shallow copy of callbacks to prevent mutating the key-value relationships of the argument dict
* refactor: use truthy value of self.session is not None for json encoding SysCommand
* refactor: directly assign to SysCommand.session in create_session since it short circuits to True if already present
* refactor: use dict.items() instead of manually retrieving the value using the key
* refactor: user_config_to_json method sounds pretty self explanatory
* refactor: store path validity as boolean for return
* refactor: use pathlib.Path.write_text to write configs to destinations
* fix: cannot use assignment expressions with expression
* fix: use config_output.save for saving both config and creds
* refactor: switch dictionary keys and values for options to avoid redundancy
* refactor: use itertools.takewhile to collect locale.gen entries until the empty line
* refactor: use iterative approach for nvidia driver fix
* refactor: install packages if not nvidia
* refactor: return early if no profile is selected
* refactor: use strip to remove commented lines
* fix: install additional packages only when we have a driver
* fix: path with one command is matched as relative to '.'
* fix: remove translation for debug log
---------
Co-authored-by: Anton Hvornum <anton@hvornum.se>
|
|
path (#1728)
* align with newly merged master
* retry save config
* fix mypy error with str type - this menu with allows return a string
* Removed unused import
---------
Co-authored-by: Anton Hvornum <anton@hvornum.se>
|
|
* Cleanup imports and unused code
* Update build check
* Keep deprecation exception
* Simplify logging
---------
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
* 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>
|
|
Fixes #1704
|
|
* 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>
|
|
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
* New encryption menu
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
|
|
* Changed permissions on the logs stored in /var/log/archinstall. Also cleaned up one of the saves to have the same syntax as the others
* Tweaked secondary encryption password detection logic, as it wouldn't take it from the main arguments[] otherwise.
* Changed permission on cmd_output.txt
* Changed permission on cmd_history.txt
|
|
* 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>
|
|
* 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
|
|
* Add new save config menu option
* Update
* Fixed issue with merging
* Fixed merge issue (I think)
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
|
|
* Created a standard function to show/save the config parameters
* flake8 complains
* Correct definition of btrfs standard layout
* Solve issue #936
* Moved output_configs to lib/configuration.py
|