Commit Graph

104 Commits

Author SHA1 Message Date
Daniel Girtler ac4bc442de
Refactor logging and formatting logic (#4542)
* Refactor logging and formatting

* Refactor logging and formatting

* Refactor logging and formatting

* Updaet
2026-05-19 17:48:03 +02:00
Softer e7d38d0e82
Fix Limine install with ESP mounted outside /boot (#4442)
* Fix Limine install with ESP mounted outside /boot

Place limine.conf next to the EFI binary on the ESP so it is found
regardless of ESP mountpoint, and block unbootable layouts (non-UKI
Limine with ESP not at /boot and no separate /boot partition) in
GlobalMenu validation, guided.main() and _add_limine_bootloader().

Fixes #4333

* Extract bootloader layout validation into lib/bootloader/utils

* Consolidate Limine layout validation in bootloader utils

Move the boot-partition FAT check from GlobalMenu into
validate_bootloader_layout so all three call sites (GlobalMenu,
guided.py, Installer._add_limine_bootloader) share one function.

Return a BootloaderValidationFailure dataclass (kind + description)
instead of str | None, so callers can match on the failure kind and
the description is built where partition context is in scope.

* Encapsulate FAT filesystem detection in FilesystemType.is_fat()
2026-04-22 21:32:41 +10:00
codefiles 2b27e565ae
Refactor ModificationStatus (#4422)
* Use UPPER_CASE for ModificationStatus member names

* Use StrEnum for ModificationStatus

* Replace LvmVolumeStatus with ModificationStatus
2026-04-14 15:37:14 +10:00
codefiles 335a7b792c
Refactor FilesystemType (#4417)
* Use UPPER_CASE for FilesystemType member names

* Use StrEnum for FilesystemType

* Use FilesystemType member values
2026-04-13 18:41:59 +10:00
codefiles a8d265184c
Add constant for archiso mountpoint (#4377) 2026-04-06 22:41:33 +10:00
codefiles e2bd7b3405
Remove is_subpath() and use Path.is_relative_to() (#4372) 2026-04-06 16:42:45 +10:00
Daniel Girtler dd0da34ed9
Move luks into disk module (#4296) 2026-03-21 18:36:00 +11:00
codefiles 6d87a062fd
Move all LVM helpers to dedicated module (#4283) 2026-03-05 09:13:04 +11:00
codefiles 452abe4277
Move udev_sync() to disk.utils (#4281) 2026-03-04 12:43:47 +11:00
codefiles 64567a748a
Remove support for NTFS root file system (#4279)
* Remove support for NTFS root file system

* Fix rootfstype value
2026-03-03 12:21:31 +11:00
Daniel Girtler e4faba2de0
Convert imports to absolute imports (#4196)
* Enable ruff absolute import check

* Convert all relative imports to absolute

* Update

* Update
2026-02-26 20:17:48 +11:00
codefiles bd35473b5d
Move LVM helpers to dedicated module (#4245) 2026-02-18 15:57:10 +11:00
codefiles f2c17c6341
Move get_parent_device_path() to disk.utils (#4243) 2026-02-18 09:12:47 +11:00
codefiles 8edab9fafd
Move get_unique_path_for_device() to disk.utils (#4242) 2026-02-17 13:15:07 +11:00
codefiles 083a73eab1
Move unlock_luks2_dev() (#4234) 2026-02-17 07:35:25 +11:00
codefiles 35c2ff3ef5
Move swapon() to disk.utils (#4233) 2026-02-16 14:43:10 +11:00
codefiles 3b6f7db942
Move mount() to disk.utils (#4232) 2026-02-16 13:08:59 +11:00
correctmost a61d4e5314
Revert "Handle whole-disk LUKS root params (#4205)" (#4229)
This reverts commit 0dddc7308d.
2026-02-15 08:38:55 +11:00
Favilances 0dddc7308d
Handle whole-disk LUKS root params (#4205)
Co-authored-by: favilances <favilances@proton.me>
2026-02-03 22:03:22 +11:00
Daniel Girtler bde544caca
Refactor syscommand (#4176)
* Refactor SysCommand

* Refactor syscommand
2026-01-27 13:31:33 +01:00
codefiles 82512eed0e
Remove superfluous list creation in join calls (#4119) 2026-01-12 12:56:55 +11:00
codefiles db6c11345a
Remove superfluous __future__ imports (#4117) 2026-01-12 10:20:07 +11:00
HADEON 747385a883
Lvm2/LUKS fixes/Mirror Logic (#4047)
* Lvm hotfix attempt

* Use --force and --yes flags

* Changed mirror behavior and more lvm testing

* Handle properly LvmOnLuks to only export in one fo the scenarios

* Idek

* Remove dead block

* Use -f flag and wipefs to remove any existing headers avoid "has signatures"

* oops

* Revert mirror change
2025-12-29 17:35:24 +01:00
HADEON 5fcea379b9
Fix LVM creation/ info (#4024)
* use pull and udev sync

* 30s -> 5min
2025-12-25 13:07:26 +11:00
Daniel Girtler d256e70480
Fix 3785 - F2FS parameters require 'extra_attr' (#3796)
Co-authored-by: Daniel Girtler <dgirtler@atlassian.com>
2025-09-17 10:32:04 +02:00
Daniel Girtler 96aaf5b6ac
Rename module device_model -> device (#3639) 2025-07-15 09:29:58 +02:00
Haouari haitam Kouider b3b00aa00f
Add interface to change LUKS iteration time (#3634)
* Added User Interface to change iteration time for LUKS encryption

* removing unneessary try catch and imports

* used the same constant in luks.py file

* fixed issue with error firing in default value

* fixed ruf preview warnings

* preview even if its default value. (iter_time)

* check encryption type is not non before showing iter_time

* using _real_input with input_vp instead of _current_text

* proper check for enc_type

* added Interation time to outer menu preview

* removed (ms) from title. so that we don't need to translate "Iteration time" and "iteration time (ms)".

* a comment slipped in. this was not supposed to be in this pull

* fixed comparison str with EncryptionType
2025-06-30 11:11:24 +10:00
codefiles c8f1f78679
Remove duplicate LUKS unlock check (#3510) 2025-05-27 13:08:45 +10:00
Daniel Girtler d3f32f308c
Update ruff formatter (#3496)
* Update ruff formatter

* Update
2025-05-24 07:58:42 +00:00
Daniel Girtler c67ac97f18
Ruff formatting (#3459)
* Update

* Update
2025-05-15 14:26:41 +02:00
correctmost 781760a157
Break an import cycle between lib/luks and lib/disk/device_handler (#3438) 2025-05-05 17:04:16 +10:00
Anton Hvornum 16e9bbe583
Removed the @.snapshots volume in order to support both Snapper and Timeshift #3363 (#3408) 2025-04-26 11:57:36 +02:00
Daniel Girtler 4f1d1b4739
Store password as hash instead of plaintext (#3276)
* Rework user password to be hash

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Generate yescrypt hash

* Update

* Update

* Update

* Update
2025-04-08 08:53:18 +02:00
correctmost 4711f7abad
Fix Pydantic deprecation warnings (#3301)
This commit also enables mypy checks for deprecated calls.
2025-03-26 08:14:11 +11:00
mintsuki c78f78fa9a
More properly support FAT12 and FAT16 ESPs (#3268)
FAT12 and FAT16 are also valid filesystems for ESPs, therefore, try to support them
2025-03-23 10:14:52 +11:00
codefiles d326ceff45
Add udev sync after LUKS encrypt (#3289) 2025-03-22 11:16:19 +11:00
Daniel Girtler 12562f4cae
Add newline after countdown (#3237) 2025-03-10 22:02:26 +11:00
correctmost 6a90760e67
Clean up most no-implicit-reexport warnings from mypy (#3233)
This makes it easier to run mypy --strict from the command line
and should hopefully make it easier to clean up import cycles in
future commits.
2025-03-09 19:50:56 +11:00
codefiles 4b07f8a3ae
Rework default partition table (#3197) 2025-02-23 21:16:11 +01:00
codefiles d69441a2da
Fix typing for enc_conf parameter (#3195) 2025-02-23 18:50:32 +11:00
codefiles b83bc79d91
Fix MBR conditional (#3192) 2025-02-23 10:20:06 +11:00
Daniel Girtler b57f7f91cf
Integrate new arguments data structure (#3167)
* Integrate new args dataclass

* Integrate args

* Update

* Update

* Update

* Update
2025-02-20 07:35:59 +11:00
Anton Hvornum 6d371da5df
Remove reiserfs as it's been deprecated since 2022 (https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a452c4eb404df8a7f2a79a37ac77b90b6db1a2c9) and been removed in the kernel as of 2024-11-21 (https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c01f664e4ca210823b7594b50669bbd9b0a3c3b0) (#3134) 2025-01-21 18:53:55 +01:00
codefiles 19c390e072
disk: add support for creating swap partitions (#3129) 2025-01-18 16:48:48 +11:00
codefiles 5f8cdcb39b
disk: change from_partition() parameters (#3039) 2024-12-23 09:08:02 +11:00
codefiles 4dccd54cbd
Replace commonprefix() with commonpath() (#3016) 2024-12-09 13:25:08 +11:00
codefiles 3716df9bb7
Fix pre-mounted Btrfs subvolumes root detection (#3014) 2024-12-09 10:38:16 +11:00
codefiles ae3b0f8d75
Remove superfluous try in get_btrfs_info() (#3010) 2024-12-08 09:01:51 +11:00
Michael Ziminsky (Z) 256f206b9e
btrfs improvements and fixes (#2970) 2024-12-01 18:35:30 +11:00
correctmost f314b7be54
Replace some Any instances with specific type hints (#2950) 2024-11-28 20:14:58 +11:00