From 452d8d33496ca44f0de4d4c4d75d922f5fb46eec Mon Sep 17 00:00:00 2001 From: Recolic Date: Tue, 30 Sep 2025 14:51:52 -0700 Subject: [PATCH 1/5] . --- archinstall/lib/interactions/disk_conf.py | 8 ++++++-- archinstall/lib/models/device.py | 3 +++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/archinstall/lib/interactions/disk_conf.py b/archinstall/lib/interactions/disk_conf.py index 1f3497869a..f4fdc06c6c 100644 --- a/archinstall/lib/interactions/disk_conf.py +++ b/archinstall/lib/interactions/disk_conf.py @@ -197,8 +197,9 @@ def select_lvm_config( ) -> LvmConfiguration | None: preset_value = preset.config_type.display_msg() if preset else None default_mode = LvmLayoutType.Default.display_msg() + no_home = LvmLayoutType.NoHome.display_msg() - items = [MenuItem(default_mode, value=default_mode)] + items = [MenuItem(default_mode, value=default_mode), MenuItem(no_home, value=no_home)] group = MenuItemGroup(items) group.set_focus_by_value(preset_value) @@ -218,6 +219,8 @@ def select_lvm_config( case ResultType.Selection: if result.get_value() == default_mode: return suggest_lvm_layout(disk_config) + if result.get_value() == no_home: + return suggest_lvm_layout(disk_config, home_volume=False) return None @@ -551,13 +554,14 @@ def suggest_lvm_layout( disk_config: DiskLayoutConfiguration, filesystem_type: FilesystemType | None = None, vg_grp_name: str = 'ArchinstallVg', + home_volume: bool = True ) -> LvmConfiguration: if disk_config.config_type != DiskLayoutType.Default: raise ValueError('LVM suggested volumes are only available for default partitioning') + # TODO: default config without home using_subvolumes = False btrfs_subvols = [] - home_volume = True mount_options = [] if not filesystem_type: diff --git a/archinstall/lib/models/device.py b/archinstall/lib/models/device.py index 7dc940392e..f09c1f124e 100644 --- a/archinstall/lib/models/device.py +++ b/archinstall/lib/models/device.py @@ -1070,6 +1070,7 @@ def table_data(self) -> dict[str, str]: class LvmLayoutType(Enum): Default = 'default' + NoHome = 'no_home' # Manual = 'manual_lvm' @@ -1077,6 +1078,8 @@ def display_msg(self) -> str: match self: case LvmLayoutType.Default: return tr('Default layout') + case LvmLayoutType.NoHome: + return tr('No home volume (root only)') # case LvmLayoutType.Manual: # return str(_('Manual configuration')) From 355fdf2db9afc74be000c68a4f8a6c83a65beeee Mon Sep 17 00:00:00 2001 From: Recolic Date: Tue, 30 Sep 2025 14:52:11 -0700 Subject: [PATCH 2/5] . --- archinstall/lib/interactions/disk_conf.py | 1 - 1 file changed, 1 deletion(-) diff --git a/archinstall/lib/interactions/disk_conf.py b/archinstall/lib/interactions/disk_conf.py index f4fdc06c6c..f64c1cb17e 100644 --- a/archinstall/lib/interactions/disk_conf.py +++ b/archinstall/lib/interactions/disk_conf.py @@ -558,7 +558,6 @@ def suggest_lvm_layout( ) -> LvmConfiguration: if disk_config.config_type != DiskLayoutType.Default: raise ValueError('LVM suggested volumes are only available for default partitioning') - # TODO: default config without home using_subvolumes = False btrfs_subvols = [] From 3a3c6cb996a7662424ad6bbdd3f7ac6507715d1e Mon Sep 17 00:00:00 2001 From: Recolic Date: Tue, 30 Sep 2025 14:52:50 -0700 Subject: [PATCH 3/5] . --- archinstall/lib/interactions/disk_conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/archinstall/lib/interactions/disk_conf.py b/archinstall/lib/interactions/disk_conf.py index f64c1cb17e..2084e1b2b4 100644 --- a/archinstall/lib/interactions/disk_conf.py +++ b/archinstall/lib/interactions/disk_conf.py @@ -554,7 +554,7 @@ def suggest_lvm_layout( disk_config: DiskLayoutConfiguration, filesystem_type: FilesystemType | None = None, vg_grp_name: str = 'ArchinstallVg', - home_volume: bool = True + home_volume: bool = True ) -> LvmConfiguration: if disk_config.config_type != DiskLayoutType.Default: raise ValueError('LVM suggested volumes are only available for default partitioning') From 1f0b5740087c455edfdd575ed3f18b34cf747f86 Mon Sep 17 00:00:00 2001 From: Recolic Date: Tue, 30 Sep 2025 14:55:27 -0700 Subject: [PATCH 4/5] . --- archinstall/lib/models/device.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/archinstall/lib/models/device.py b/archinstall/lib/models/device.py index f09c1f124e..bf73dfb4c3 100644 --- a/archinstall/lib/models/device.py +++ b/archinstall/lib/models/device.py @@ -1077,9 +1077,9 @@ class LvmLayoutType(Enum): def display_msg(self) -> str: match self: case LvmLayoutType.Default: - return tr('Default layout') + return tr('Default layout (root volume + seperate home volume)') case LvmLayoutType.NoHome: - return tr('No home volume (root only)') + return tr('No home layout (root volume only)') # case LvmLayoutType.Manual: # return str(_('Manual configuration')) From f1ad6eaa836a8a4171a287ae7ba5dbc345b03533 Mon Sep 17 00:00:00 2001 From: Recolic Date: Tue, 30 Sep 2025 15:13:57 -0700 Subject: [PATCH 5/5] . --- archinstall/lib/interactions/disk_conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/archinstall/lib/interactions/disk_conf.py b/archinstall/lib/interactions/disk_conf.py index 2084e1b2b4..5122aff36c 100644 --- a/archinstall/lib/interactions/disk_conf.py +++ b/archinstall/lib/interactions/disk_conf.py @@ -605,7 +605,7 @@ def suggest_lvm_layout( [p.length for p in other_part], Size(0, Unit.B, SectorSize.default()), ) - root_vol_size = Size(20, Unit.GiB, SectorSize.default()) + root_vol_size = Size(20, Unit.GiB, SectorSize.default()) if home_volume else total_vol_available home_vol_size = total_vol_available - root_vol_size lvm_vol_group = LvmVolumeGroup(vg_grp_name, pvs=other_part)