Add constant for path /sys/class/net (#4667)
This commit is contained in:
parent
615c3341dc
commit
c1dcce8c2c
|
|
@ -1,5 +1,4 @@
|
|||
from dataclasses import dataclass
|
||||
from pathlib import Path
|
||||
from typing import assert_never, override
|
||||
|
||||
from archinstall.lib.command import SysCommand
|
||||
|
|
@ -7,6 +6,7 @@ from archinstall.lib.exceptions import SysCallError
|
|||
from archinstall.lib.log import debug
|
||||
from archinstall.lib.models.network import WifiConfiguredNetwork, WifiNetwork
|
||||
from archinstall.lib.network.wpa_supplicant import WpaSupplicantConfig
|
||||
from archinstall.lib.networking import SYS_NET
|
||||
from archinstall.lib.translationhandler import tr
|
||||
from archinstall.tui.components import ConfirmationScreen, InputScreen, InstanceRunnable, LoadingScreen, NotifyScreen, TableSelectionScreen, tui
|
||||
from archinstall.tui.menu_item import MenuItem, MenuItemGroup
|
||||
|
|
@ -86,11 +86,8 @@ class WifiHandler(InstanceRunnable[bool]):
|
|||
return False
|
||||
|
||||
def _find_wifi_interface(self) -> str | None:
|
||||
net_path = Path('/sys/class/net')
|
||||
|
||||
for iface in net_path.iterdir():
|
||||
maybe_wireless_path = net_path / iface / 'wireless'
|
||||
if maybe_wireless_path.is_dir():
|
||||
for iface in SYS_NET.iterdir():
|
||||
if (iface / 'wireless').is_dir():
|
||||
return iface.name
|
||||
|
||||
return None
|
||||
|
|
|
|||
|
|
@ -6,8 +6,9 @@ import socket
|
|||
import ssl
|
||||
import struct
|
||||
import time
|
||||
from pathlib import Path
|
||||
from types import FrameType, TracebackType
|
||||
from typing import Self
|
||||
from typing import Final, Self
|
||||
from urllib.error import URLError
|
||||
from urllib.parse import urlencode
|
||||
from urllib.request import urlopen
|
||||
|
|
@ -16,6 +17,8 @@ from archinstall.lib.exceptions import DownloadTimeout, SysCallError
|
|||
from archinstall.lib.log import debug, error, info
|
||||
from archinstall.lib.pacman.pacman import Pacman
|
||||
|
||||
SYS_NET: Final = Path('/sys/class/net')
|
||||
|
||||
|
||||
class DownloadTimer:
|
||||
"""
|
||||
|
|
@ -105,13 +108,14 @@ def enrich_iface_types(interfaces: list[str]) -> dict[str, str]:
|
|||
result = {}
|
||||
|
||||
for iface in interfaces:
|
||||
if os.path.isdir(f'/sys/class/net/{iface}/bridge/'):
|
||||
path = SYS_NET / iface
|
||||
if (path / 'bridge').is_dir():
|
||||
result[iface] = 'BRIDGE'
|
||||
elif os.path.isfile(f'/sys/class/net/{iface}/tun_flags'):
|
||||
elif (path / 'tun_flags').is_file():
|
||||
# ethtool -i {iface}
|
||||
result[iface] = 'TUN/TAP'
|
||||
elif os.path.isdir(f'/sys/class/net/{iface}/device'):
|
||||
if os.path.isdir(f'/sys/class/net/{iface}/wireless/'):
|
||||
elif (path / 'device').is_dir():
|
||||
if (path / 'wireless').is_dir():
|
||||
result[iface] = 'WIRELESS'
|
||||
else:
|
||||
result[iface] = 'PHYSICAL'
|
||||
|
|
|
|||
Loading…
Reference in New Issue