pyhw 0.11.8__tar.gz → 0.11.9__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. {pyhw-0.11.8/src/pyhw.egg-info → pyhw-0.11.9}/PKG-INFO +1 -1
  2. {pyhw-0.11.8 → pyhw-0.11.9}/pyproject.toml +1 -1
  3. pyhw-0.11.9/src/pyhw/__init__.py +1 -0
  4. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/host/linux.py +1 -1
  5. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/shell/shellInfo.py +3 -0
  6. pyhw-0.11.9/src/pyhw/backend/shell/windows.py +49 -0
  7. pyhw-0.11.9/src/pyhw/library/lib/iokitHostLib.dylib +0 -0
  8. {pyhw-0.11.8 → pyhw-0.11.9/src/pyhw.egg-info}/PKG-INFO +1 -1
  9. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw.egg-info/SOURCES.txt +1 -0
  10. pyhw-0.11.8/src/pyhw/__init__.py +0 -1
  11. pyhw-0.11.8/src/pyhw/backend/shell/windows.py +0 -29
  12. {pyhw-0.11.8 → pyhw-0.11.9}/LICENSE +0 -0
  13. {pyhw-0.11.8 → pyhw-0.11.9}/README.md +0 -0
  14. {pyhw-0.11.8 → pyhw-0.11.9}/setup.cfg +0 -0
  15. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/__main__.py +0 -0
  16. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/__init__.py +0 -0
  17. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/backendBase.py +0 -0
  18. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/cpu/__init__.py +0 -0
  19. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/cpu/bsd.py +0 -0
  20. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/cpu/cpuBase.py +0 -0
  21. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/cpu/cpuInfo.py +0 -0
  22. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/cpu/linux.py +0 -0
  23. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/cpu/macos.py +0 -0
  24. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/cpu/windows.py +0 -0
  25. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/gpu/__init__.py +0 -0
  26. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/gpu/bsd.py +0 -0
  27. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/gpu/gpuBase.py +0 -0
  28. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/gpu/gpuInfo.py +0 -0
  29. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/gpu/linux.py +0 -0
  30. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/gpu/macos.py +0 -0
  31. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/gpu/windows.py +0 -0
  32. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/host/__init__.py +0 -0
  33. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/host/bsd.py +0 -0
  34. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/host/hostBase.py +0 -0
  35. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/host/hostInfo.py +0 -0
  36. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/host/macos.py +0 -0
  37. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/host/windows.py +0 -0
  38. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/kernel/__init__.py +0 -0
  39. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/kernel/kernelBase.py +0 -0
  40. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/kernel/kernelInfo.py +0 -0
  41. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/kernel/unix.py +0 -0
  42. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/kernel/windows.py +0 -0
  43. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/memory/__init__.py +0 -0
  44. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/memory/bsd.py +0 -0
  45. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/memory/linux.py +0 -0
  46. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/memory/macos.py +0 -0
  47. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/memory/memoryBase.py +0 -0
  48. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/memory/memoryInfo.py +0 -0
  49. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/memory/windows.py +0 -0
  50. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/metal/t.py +0 -0
  51. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/nic/__init__.py +0 -0
  52. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/nic/bsd.py +0 -0
  53. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/nic/linux.py +0 -0
  54. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/nic/macos.py +0 -0
  55. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/nic/nicBase.py +0 -0
  56. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/nic/nicInfo.py +0 -0
  57. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/nic/windows.py +0 -0
  58. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/npu/__init__.py +0 -0
  59. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/npu/bsd.py +0 -0
  60. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/npu/linux.py +0 -0
  61. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/npu/macos.py +0 -0
  62. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/npu/npuBase.py +0 -0
  63. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/npu/npuInfo.py +0 -0
  64. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/npu/windows.py +0 -0
  65. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/os/__init__.py +0 -0
  66. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/os/bsd.py +0 -0
  67. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/os/linux.py +0 -0
  68. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/os/macos.py +0 -0
  69. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/os/osBase.py +0 -0
  70. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/os/osInfo.py +0 -0
  71. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/os/windows.py +0 -0
  72. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/shell/__init__.py +0 -0
  73. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/shell/shellBase.py +0 -0
  74. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/shell/unix.py +0 -0
  75. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/title/__init__.py +0 -0
  76. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/title/titleBase.py +0 -0
  77. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/title/titleInfo.py +0 -0
  78. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/title/unix.py +0 -0
  79. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/title/windows.py +0 -0
  80. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/uptime/__init__.py +0 -0
  81. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/uptime/bsd.py +0 -0
  82. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/uptime/linux.py +0 -0
  83. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/uptime/macos.py +0 -0
  84. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/uptime/uptimeBase.py +0 -0
  85. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/uptime/uptimeInfo.py +0 -0
  86. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/backend/uptime/windows.py +0 -0
  87. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/__init__.py +0 -0
  88. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/color/__init__.py +0 -0
  89. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/color/colorConfig.py +0 -0
  90. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/color/colorSet.py +0 -0
  91. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/color/colorUtil.py +0 -0
  92. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/frontendBase.py +0 -0
  93. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/__init__.py +0 -0
  94. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/alpine.pyhw +0 -0
  95. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/arch.pyhw +0 -0
  96. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/armbian.pyhw +0 -0
  97. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/centos.pyhw +0 -0
  98. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/debian.pyhw +0 -0
  99. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/fedora.pyhw +0 -0
  100. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/fedora_small.pyhw +0 -0
  101. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/freebsd.pyhw +0 -0
  102. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/kali.pyhw +0 -0
  103. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/linux.pyhw +0 -0
  104. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/linuxmint.pyhw +0 -0
  105. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/macOS.pyhw +0 -0
  106. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/opensuse-leap.pyhw +0 -0
  107. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/opensuse-tumbleweed.pyhw +0 -0
  108. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/raspbian.pyhw +0 -0
  109. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/rhel.pyhw +0 -0
  110. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/ubuntu.pyhw +0 -0
  111. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/ubuntu_small.pyhw +0 -0
  112. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/windows_10.pyhw +0 -0
  113. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/windows_11.pyhw +0 -0
  114. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/windows_2025.pyhw +0 -0
  115. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/ascii/windows_old.pyhw +0 -0
  116. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/frontend/logo/logoBase.py +0 -0
  117. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/library/lib/iokitGPULib.dylib +0 -0
  118. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/pyhwException/__init__.py +0 -0
  119. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/pyhwException/pyhwException.py +0 -0
  120. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/pyhwUtil/__init__.py +0 -0
  121. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/pyhwUtil/cliUtil.py +0 -0
  122. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/pyhwUtil/pyhwUtil.py +0 -0
  123. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw/pyhwUtil/sysctlUtil.py +0 -0
  124. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw.egg-info/dependency_links.txt +0 -0
  125. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw.egg-info/entry_points.txt +0 -0
  126. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw.egg-info/requires.txt +0 -0
  127. {pyhw-0.11.8 → pyhw-0.11.9}/src/pyhw.egg-info/top_level.txt +0 -0
  128. {pyhw-0.11.8 → pyhw-0.11.9}/test/test_cliUtil.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pyhw
3
- Version: 0.11.8
3
+ Version: 0.11.9
4
4
  Summary: PyHw, a neofetch-like command line tool for fetching system information but written mostly in python.
5
5
  Author: Xiao Ran
6
6
  Maintainer-email: Xiao Ran <xiaoran.007@icloud.com>
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "pyhw"
7
- version = "0.11.8"
7
+ version = "0.11.9"
8
8
  description = "PyHw, a neofetch-like command line tool for fetching system information but written mostly in python."
9
9
  keywords = ["neofetch", "system information", "command line tool", "python", "hardware information", "fastfetch", "fetching"]
10
10
  authors = [
@@ -0,0 +1 @@
1
+ __version__ = '0.11.9'
@@ -32,7 +32,7 @@ class HostDetectLinux:
32
32
  self._hostInfo.name = product_name
33
33
  with open("/sys/devices/virtual/dmi/id/product_version", "r") as f:
34
34
  version = f.read().strip()
35
- if version.startswith("To be filled by O.E.M."):
35
+ if version.startswith("To be filled by O.E.M.") or product_name.startswith("Default string"):
36
36
  self._hostInfo.version = ""
37
37
  else:
38
38
  self._hostInfo.version = version
@@ -4,6 +4,9 @@ from dataclasses import dataclass
4
4
  @dataclass
5
5
  class ShellInfo:
6
6
  def __init__(self):
7
+ """
8
+ ShellInfo class. Attribute info is required.
9
+ """
7
10
  self.shell = ""
8
11
  self.version = ""
9
12
  self.path = ""
@@ -0,0 +1,49 @@
1
+ """
2
+ In dev.
3
+ """
4
+ from ...pyhwException import BackendException
5
+ from .shellInfo import ShellInfo
6
+ import json
7
+ import subprocess
8
+ import os
9
+
10
+
11
+ class ShellDetectWindows:
12
+ def __init__(self):
13
+ self.__shellInfo = ShellInfo()
14
+
15
+ def getShellInfo(self):
16
+ if not self.__getShellBash():
17
+ self.__getShellPowerShell()
18
+ self.__shellInfo.info = self.__shellInfo.shell + " " + self.__shellInfo.version
19
+ return self.__shellInfo
20
+
21
+ def __getShellBash(self) -> bool:
22
+ try:
23
+ shell_env = os.getenv("SHELL", "")
24
+ if "bash" in shell_env:
25
+ self.__shellInfo.shell = "bash"
26
+ self.__shellInfo.path = shell_env
27
+ result = subprocess.run(["bash", "-c", "echo $BASH_VERSION"], capture_output=True, text=True)
28
+ self.__shellInfo.version = result.stdout.strip().split("(")[0]
29
+ self.__shellInfo.info = self.__shellInfo.shell + " " + self.__shellInfo.version
30
+ return True
31
+ else:
32
+ return False
33
+ except:
34
+ return False
35
+
36
+ def __getShellPowerShell(self):
37
+ COMMAND = "$PSVersionTable.PSVersion | ConvertTo-JSON"
38
+
39
+ try:
40
+ result = subprocess.run(["powershell", "-NoProfile", "-Command", COMMAND], capture_output=True, text=True)
41
+ except subprocess.SubprocessError:
42
+ raise BackendException("Error running PowerShell command.")
43
+
44
+ res = json.loads(result.stdout)
45
+ major = res["Major"]
46
+ minor = res["Minor"]
47
+
48
+ self.__shellInfo.shell = "PowerShell"
49
+ self.__shellInfo.version = f"{major}.{minor}"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pyhw
3
- Version: 0.11.8
3
+ Version: 0.11.9
4
4
  Summary: PyHw, a neofetch-like command line tool for fetching system information but written mostly in python.
5
5
  Author: Xiao Ran
6
6
  Maintainer-email: Xiao Ran <xiaoran.007@icloud.com>
@@ -114,6 +114,7 @@ src/pyhw/frontend/logo/ascii/windows_11.pyhw
114
114
  src/pyhw/frontend/logo/ascii/windows_2025.pyhw
115
115
  src/pyhw/frontend/logo/ascii/windows_old.pyhw
116
116
  src/pyhw/library/lib/iokitGPULib.dylib
117
+ src/pyhw/library/lib/iokitHostLib.dylib
117
118
  src/pyhw/pyhwException/__init__.py
118
119
  src/pyhw/pyhwException/pyhwException.py
119
120
  src/pyhw/pyhwUtil/__init__.py
@@ -1 +0,0 @@
1
- __version__ = '0.11.8'
@@ -1,29 +0,0 @@
1
- """
2
- In dev.
3
- """
4
- from ...pyhwException import BackendException
5
- from .shellInfo import ShellInfo
6
- import json
7
- import subprocess
8
-
9
-
10
- class ShellDetectWindows:
11
- def __init__(self):
12
- self.__shellInfo = ShellInfo()
13
-
14
- def getShellInfo(self):
15
- COMMAND = "$PSVersionTable.PSVersion | ConvertTo-JSON"
16
-
17
- try:
18
- result = subprocess.run(["powershell", "-NoProfile", "-Command", COMMAND], capture_output=True, text=True)
19
- except subprocess.SubprocessError:
20
- raise BackendException("Error running PowerShell command.")
21
-
22
- res = json.loads(result.stdout)
23
- major = res["Major"]
24
- minor = res["Minor"]
25
-
26
- self.__shellInfo.shell = "PowerShell"
27
- self.__shellInfo.version = f"{major}.{minor}"
28
- self.__shellInfo.info = f"PowerShell {major}.{minor}"
29
- return self.__shellInfo
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes