diff --git a/archinstall/lib/disk/__init__.py b/archinstall/lib/disk/__init__.py index 956bb25b..9e079756 100644 --- a/archinstall/lib/disk/__init__.py +++ b/archinstall/lib/disk/__init__.py @@ -1,47 +1,43 @@ from .device_handler import device_handler, disk_layouts -from .fido import Fido2 -from .filesystem import FilesystemHandler -from .subvolume_menu import SubvolumeMenu -from .partitioning_menu import ( - manual_partitioning, - PartitioningList -) from .device_model import ( - _DeviceInfo, BDevice, - DiskLayoutType, - DiskLayoutConfiguration, - LvmLayoutType, - LvmConfiguration, - LvmVolumeGroup, - LvmVolume, - LvmVolumeStatus, - PartitionTable, - Unit, - Size, - SectorSize, - SubvolumeModification, DeviceGeometry, - PartitionType, - PartitionFlag, - FilesystemType, - ModificationStatus, - PartitionModification, DeviceModification, - EncryptionType, DiskEncryption, + DiskLayoutConfiguration, + DiskLayoutType, + EncryptionType, Fido2Device, + FilesystemType, LsblkInfo, - get_lsblk_info, + LvmConfiguration, + LvmLayoutType, + LvmVolume, + LvmVolumeGroup, + LvmVolumeStatus, + ModificationStatus, + PartitionFlag, + PartitionModification, + PartitionTable, + PartitionType, + SectorSize, + Size, + SubvolumeModification, + Unit, + _DeviceInfo, get_all_lsblk_info, get_lsblk_by_mountpoint, + get_lsblk_info, ) +from .disk_menu import DiskLayoutConfigurationMenu from .encryption_menu import ( - select_encryption_type, + DiskEncryptionMenu, select_encrypted_password, + select_encryption_type, select_hsm, select_partitions_to_encrypt, - DiskEncryptionMenu, ) - -from .disk_menu import DiskLayoutConfigurationMenu +from .fido import Fido2 +from .filesystem import FilesystemHandler +from .partitioning_menu import PartitioningList, manual_partitioning +from .subvolume_menu import SubvolumeMenu diff --git a/archinstall/lib/disk/device_handler.py b/archinstall/lib/disk/device_handler.py index 30b44d01..b74921dd 100644 --- a/archinstall/lib/disk/device_handler.py +++ b/archinstall/lib/disk/device_handler.py @@ -1,34 +1,47 @@ from __future__ import annotations import json -import os import logging +import os import time import uuid from collections.abc import Iterable from pathlib import Path -from typing import Any, TYPE_CHECKING, Literal +from typing import TYPE_CHECKING, Any, Literal -from parted import ( - Disk, Geometry, FileSystem, - PartitionException, DiskException, IOException, - getDevice, getAllDevices, newDisk, freshDisk, Partition, Device -) - -from .device_model import ( - DeviceModification, PartitionModification, - BDevice, _DeviceInfo, _PartitionInfo, - FilesystemType, Unit, PartitionTable, - ModificationStatus, get_lsblk_info, find_lsblk_info, LsblkInfo, - _BtrfsSubvolumeInfo, get_all_lsblk_info, DiskEncryption, LvmVolumeGroup, LvmVolume, Size, LvmGroupInfo, - SectorSize, LvmVolumeInfo, LvmPVInfo, SubvolumeModification, BtrfsMountOption -) +from parted import Device, Disk, DiskException, FileSystem, Geometry, IOException, Partition, PartitionException, freshDisk, getAllDevices, getDevice, newDisk from ..exceptions import DiskError, UnknownFilesystemFormat -from ..general import SysCommand, SysCallError, JSON, SysCommandWorker +from ..general import JSON, SysCallError, SysCommand, SysCommandWorker from ..luks import Luks2 -from ..output import debug, error, info, warn, log +from ..output import debug, error, info, log, warn from ..utils.util import is_subpath +from .device_model import ( + BDevice, + BtrfsMountOption, + DeviceModification, + DiskEncryption, + FilesystemType, + LsblkInfo, + LvmGroupInfo, + LvmPVInfo, + LvmVolume, + LvmVolumeGroup, + LvmVolumeInfo, + ModificationStatus, + PartitionModification, + PartitionTable, + SectorSize, + Size, + SubvolumeModification, + Unit, + _BtrfsSubvolumeInfo, + _DeviceInfo, + _PartitionInfo, + find_lsblk_info, + get_all_lsblk_info, + get_lsblk_info, +) if TYPE_CHECKING: _: Any diff --git a/archinstall/lib/disk/disk_menu.py b/archinstall/lib/disk/disk_menu.py index 4d1dec5f..78c8ff58 100644 --- a/archinstall/lib/disk/disk_menu.py +++ b/archinstall/lib/disk/disk_menu.py @@ -1,18 +1,14 @@ -from typing import Any, TYPE_CHECKING +from typing import TYPE_CHECKING, Any -from . import DiskLayoutConfiguration, DiskLayoutType -from .device_model import LvmConfiguration -from ..disk import ( - DeviceModification -) +from archinstall.tui import MenuItem, MenuItemGroup + +from ..disk import DeviceModification from ..interactions import select_disk_config from ..interactions.disk_conf import select_lvm_config -from ..output import FormattedOutput from ..menu import AbstractSubMenu - -from archinstall.tui import ( - MenuItemGroup, MenuItem -) +from ..output import FormattedOutput +from . import DiskLayoutConfiguration, DiskLayoutType +from .device_model import LvmConfiguration if TYPE_CHECKING: _: Any diff --git a/archinstall/lib/disk/encryption_menu.py b/archinstall/lib/disk/encryption_menu.py index d8fde6ae..c611ed50 100644 --- a/archinstall/lib/disk/encryption_menu.py +++ b/archinstall/lib/disk/encryption_menu.py @@ -1,25 +1,15 @@ from pathlib import Path -from typing import Any, TYPE_CHECKING +from typing import TYPE_CHECKING, Any -from . import LvmConfiguration, LvmVolume -from ..disk import ( - DeviceModification, - DiskLayoutConfiguration, - PartitionModification, - DiskEncryption, - EncryptionType -) +from archinstall.lib.menu.menu_helper import MenuHelper +from archinstall.tui import Alignment, FrameProperties, MenuItem, MenuItemGroup, ResultType, SelectMenu + +from ..disk import DeviceModification, DiskEncryption, DiskLayoutConfiguration, EncryptionType, PartitionModification from ..menu import AbstractSubMenu -from .fido import Fido2Device, Fido2 from ..output import FormattedOutput from ..utils.util import get_password - -from archinstall.tui import ( - MenuItemGroup, MenuItem, SelectMenu, - FrameProperties, Alignment, ResultType -) -from archinstall.lib.menu.menu_helper import MenuHelper - +from . import LvmConfiguration, LvmVolume +from .fido import Fido2, Fido2Device if TYPE_CHECKING: _: Any diff --git a/archinstall/lib/disk/fido.py b/archinstall/lib/disk/fido.py index 276c8d85..dd053adb 100644 --- a/archinstall/lib/disk/fido.py +++ b/archinstall/lib/disk/fido.py @@ -3,10 +3,10 @@ from __future__ import annotations import getpass from pathlib import Path -from .device_model import Fido2Device +from ..exceptions import SysCallError from ..general import SysCommand, SysCommandWorker, clear_vt100_escape_codes from ..output import error, info -from ..exceptions import SysCallError +from .device_model import Fido2Device class Fido2: diff --git a/archinstall/lib/disk/filesystem.py b/archinstall/lib/disk/filesystem.py index 7562799f..3ef92cd1 100644 --- a/archinstall/lib/disk/filesystem.py +++ b/archinstall/lib/disk/filesystem.py @@ -2,24 +2,31 @@ from __future__ import annotations import time from pathlib import Path -from typing import Any, TYPE_CHECKING +from typing import TYPE_CHECKING, Any + +from archinstall.tui import Tui -from ..interactions.general_conf import ask_abort -from .device_handler import device_handler -from .device_model import ( - DiskLayoutConfiguration, DiskLayoutType, PartitionTable, - FilesystemType, DiskEncryption, LvmVolumeGroup, - Size, Unit, SectorSize, PartitionModification, EncryptionType, - LvmVolume, LvmConfiguration -) from ..hardware import SysInfo +from ..interactions.general_conf import ask_abort from ..luks import Luks2 from ..output import debug, info -from archinstall.tui import ( - Tui +from .device_handler import device_handler +from .device_model import ( + DiskEncryption, + DiskLayoutConfiguration, + DiskLayoutType, + EncryptionType, + FilesystemType, + LvmConfiguration, + LvmVolume, + LvmVolumeGroup, + PartitionModification, + PartitionTable, + SectorSize, + Size, + Unit, ) - if TYPE_CHECKING: _: Any diff --git a/archinstall/lib/disk/partitioning_menu.py b/archinstall/lib/disk/partitioning_menu.py index b37543c7..77e22bf4 100644 --- a/archinstall/lib/disk/partitioning_menu.py +++ b/archinstall/lib/disk/partitioning_menu.py @@ -1,26 +1,30 @@ from __future__ import annotations import re -from pathlib import Path -from typing import Any, TYPE_CHECKING from dataclasses import dataclass +from pathlib import Path +from typing import TYPE_CHECKING, Any + +from archinstall.tui import Alignment, EditMenu, FrameProperties, MenuItem, MenuItemGroup, Orientation, ResultType, SelectMenu -from ..utils.util import prompt_dir -from .device_model import ( - PartitionModification, FilesystemType, BDevice, - Size, Unit, PartitionType, PartitionFlag, - ModificationStatus, DeviceGeometry, SectorSize, BtrfsMountOption -) from ..hardware import SysInfo from ..menu import ListManager from ..output import FormattedOutput -from .subvolume_menu import SubvolumeMenu - -from archinstall.tui import ( - MenuItemGroup, MenuItem, SelectMenu, - FrameProperties, Alignment, EditMenu, - Orientation, ResultType +from ..utils.util import prompt_dir +from .device_model import ( + BDevice, + BtrfsMountOption, + DeviceGeometry, + FilesystemType, + ModificationStatus, + PartitionFlag, + PartitionModification, + PartitionType, + SectorSize, + Size, + Unit, ) +from .subvolume_menu import SubvolumeMenu if TYPE_CHECKING: _: Any diff --git a/archinstall/lib/disk/subvolume_menu.py b/archinstall/lib/disk/subvolume_menu.py index 32578215..f5b3034f 100644 --- a/archinstall/lib/disk/subvolume_menu.py +++ b/archinstall/lib/disk/subvolume_menu.py @@ -1,13 +1,11 @@ from pathlib import Path -from typing import Any, TYPE_CHECKING +from typing import TYPE_CHECKING, Any + +from archinstall.tui import Alignment, EditMenu, ResultType -from .device_model import SubvolumeModification from ..menu import ListManager from ..utils.util import prompt_dir - -from archinstall.tui import ( - Alignment, EditMenu, ResultType -) +from .device_model import SubvolumeModification if TYPE_CHECKING: _: Any