Age | Commit message (Collapse) | Author |
|
* Attempt to fetch partuuid multiple times
* Update
---------
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>
|
|
* 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
|
|
* New encryption menu
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
|
|
|
|
|
|
|
|
* Updating Partition() information after mount and unmount.
* Cleaned up raw_parted() to gracefully output relevant partition error information.
* Adding timestmap to cmd_history.txt as it's impossible to debug properly otherwise
* Adding more verbose debugging information
* Reinstating the lsblk retry code for PARTUUID and UUID on Partition()'s information
* Added error handling for JSON parsing
|
|
* Exclude liveusb from disk selection
* Exclude arch iso from being an option
* Update
* Update
* Update
* Mypy
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
common name, a smart mapping is done and block devices will show up under /sys/class/block/ but not always under /dev/* and thus breaking the all_blockdevices() logic. This should fix that. (#1475)
|
|
* Adding a btrfs compression plugin to genfstab
* Allowing the genfstab plugin to break on success
|
|
* Moving a partprobe() call to better allow for cache updates
* Trying to improve Partition()._fetch_information()
* Removed a sleep() for debugging purposes
* Tweaked a sleep
|
|
* Converted a path to pathlib.Path
* Using Partition.mountpoints instead of Partition.mountpoint
* Update mapperdev.py
* Added .mountpoints to MapperDev
* Spelling error
|
|
* fix `valid_parted_position()`
* make lines shorter
* change `pos` to `pos.lower()`
* revert changing `if not len(pos):` to `if not pos:`
* `b` can not have decimal places
* add `.lower()`
|
|
* Solves issue 1343. Could not locate partition after creation
* Added some flake fixes.
Co-authored-by: Anton Hvornum <anton@hvornum.se>
|
|
* Cleanup partition
* Update
* Remove unused method
* Update partitioning
* Update
* Update
* Fix mypy
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
* Rework partition management
* Update
* Update list manager
* Update
* Update
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
* Update blockdevice class
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
* Update subvolume
* Add mypy compliance
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
|
|
|
|
|
|
|
|
* Adding debug information
* Adding debug information
* Adding debug information
* Removed a 'already-a-subvolume' check as it requires more information.
* Adding debug information
* Adding debug information
* Made sure Partition().subvolumes() only attempts to retrieve btrfs subvolume information if fstype==btrfs.
* Removed debug information
|
|
encryption (#1264)
Corrected the check for partitions marked with `encrypt: true`
|
|
Fixed issue where `options` wasn't passed as `options=options` and got mixed up as fs-type.
|
|
|
|
partitions (#1256)
* If BlockDevice.partitions is zero, we set a new partition label to ensure new drives are setup correctly
* Added a sleep after mklabel.
* Removed redundant log message.
* Tweaked log message from print() to log().
* Trying PARTUUID in reusage of partitions.
* Debugging.
|
|
# Fixes
* Optimized partition lookups
* Fixed re-use of partition UUID's
* `BlockDevice().get_partition()` now supports looking up both `PARTUUID` and `UUID` for a partition under itself
* Partitions listed in `--disk-layout` that doesn't have a PARTUUID/UUID should no longer cause an exception, but instead logs a warning and they will simply be ignored
* `Filesystem().add_partition()` now handles `DiskError` raised by `partition.part_uuid`
* Fixed issue on normal partitions where the device was not properly frozen in `lambda` calls, meaning two or more mount-points shared the same `device_instance`.
* Lowered global `DISK_RETRY_ATTEMPTS` to 5, as the timeouts are linear *(`range(DISK_RETRY_ATTEMPTS) * DISK_TIMEOUTS`)*
|
|
* Fixed a silent try/except, and MapperDev.subvolumes should now work.
* MapperDev.subvolumes now properly sends a pathlib.Path.
|
|
* Restructuring btrfs.py into lib/btrfs/*.py
* Reworking how BTRFS subvolumes get represented, and worked with. Subvolumes are now their own entity which can be used to access it's information, parents or mount location.
* Added BtrfsSubvolume.partition and other stuff.
* Reworking the way luks2().unlock and .format() returns device instances. They should now return BTRFSSubvolume where appropriate.
* Fixed a missing import
* Fixed an issue where mkfs.btrfs wouldn't trigger due to busy disk.
* Fixing subvol mounting without creating a fake instance.
* Added creation of mountpint for btrfs subvolume
* Fixed root detection
* Re-worked mounting into a queue system using frozen mounting calls using lambda
* Removed old mount_subvolume() function
* Removed get_subvolumes_from_findmnt()
* Fixed Partition().subvolumes iteration
* Adding .root to BtrfsSubvolume
* Fixed issue in SysCommandWorker where log output would break and crash execution due to cmd being a string vs list
* Changed return-value from MapperDev.mountpoint to pathlib.Path
|
|
* Add preview for menu entries
* Fix mypy
* Update
* Update
* Fix mypy
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
* 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
|
|
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
|
|
|
|
* Intergrate ctrl+c
* stash
* Update
* Fix profile reset
* flake8
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
* Fix 1117
* Update
* flake8
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
technically not the true block device, as the mapper dev belongs to a partition, but in this context blockdev means the harddrive/medium that the partition (unlocked or otherwise) lives on. (#1100)
|
|
* Optimized a bunch of partprobe calls. Namely fixed sleep calls, added optional path to the general archinstall.partprobe() call. And fixed some error handling in a few places which should tell us where #1083 might be going wrong.
* Fixed some flake8 complaints
* Fixed sleep having a min() of 0.1 or given value.
* Fixed sleep having a correct range variable.
* Fixed sleep logic to use max() instead of min() as it will never use the higer sleep values otheride
* Added error handling to Partition().partprobe() as it would cause certain issues with USB disks. Also made Partition()._safe_uuid more safe by eliminating exceptions being raised.
|
|
* Optimized a bunch of partprobe calls. Namely fixed sleep calls, added optional path to the general archinstall.partprobe() call. And fixed some error handling in a few places which should tell us where #1083 might be going wrong.
* Fixed some flake8 complaints
* Fixed sleep having a min() of 0.1 or given value.
* Fixed sleep having a correct range variable.
* Fixed sleep logic to use max() instead of min() as it will never use the higer sleep values otheride
|
|
* Adding compression as an option
* Ignore 'misaligned' ending parenthathese
* Moved the 'mark compressed' logic into the sub block within manual disk operations.
* Fixed flake8 complaints
* Muting a complextion warning on manage_new_and_existing_partitions(). It is too complex, but not something that we'll bother with for v2.4.0. As this whole function could be replaced with a new and improved menu system split into tasks rather than one huge if/else.
|
|
For a btrfs volume with a subvolume to be mounted on /, we will not generate a keyfile anymore
|
|
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|
|
|
|
* Permit multiple default actions as a list
* Define headers for list at ListManager and Menu
* small corrections for default values
* Make subvolume info work.
The real marker that signifies that a mounted subvolume exist is the bracket notation nor the at sign
|
|
* Fix mypy things
* Fix flake8
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
|