pyhw 0.6.1__py3-none-any.whl → 0.6.3__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
pyhw/backend/gpu/macos.py CHANGED
@@ -36,7 +36,7 @@ class GPUDetectMacOS:
36
36
  def __getGPUIntel(self):
37
37
  if self.__getGPUIOKit():
38
38
  pass
39
- else:
39
+ else: # fallback to the default implementation
40
40
  gpus = list()
41
41
  try:
42
42
  gpu_info_dict = json.loads(subprocess.check_output(["system_profiler", "SPDisplaysDataType", "-json"]))
@@ -68,14 +68,14 @@ class GPUDetectMacOS:
68
68
  info_list = gpu.split(", ")
69
69
  model = info_list[0]
70
70
  vendor_id = info_list[1]
71
- vram = int(info_list[2]) / 1024
71
+ vram = round(int(info_list[2]) / 1024, None)
72
72
  if self.__handleVendorID(vendor_id) == "Intel": # Integrated GPU
73
73
  self.__gpuInfo.gpus.append(f'{model} [CPU Integrated]')
74
74
  elif self.__handleVendorID(vendor_id) == "AMD": # dGPU
75
75
  self.__gpuInfo.gpus.append(f'{model} {vram} GB [Discrete]')
76
76
  return True
77
77
  except Exception as e:
78
- print(f"An error occurred while getting GPU info using IOKit: {e}")
78
+ # print(f"An error occurred while getting GPU info using IOKit: {e}")
79
79
  return False
80
80
 
81
81
  @staticmethod
@@ -172,6 +172,8 @@ class HostDetectMacOS:
172
172
 
173
173
  elif hw_model.startswith("Mac"):
174
174
  version = hw_model[len("Mac"):]
175
+ if self.__hwModelCheck(version, "16,10"):
176
+ return "Mac mini (M4, 2024)"
175
177
  if self.__hwModelCheck(version, "15,13"):
176
178
  return "MacBook Air (15-inch, M3, 2024)"
177
179
  if self.__hwModelCheck(version, "15,2"):
@@ -262,7 +264,7 @@ class HostDetectMacOS:
262
264
  if self.__hwModelCheck(version, "9,1"):
263
265
  return "iMac (24/20-inch, Early 2009)"
264
266
 
265
- return "Unknown Mac Model"
267
+ return hw_model
266
268
 
267
269
  @staticmethod
268
270
  def __hwModelCheck(version: str, target: str):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pyhw
3
- Version: 0.6.1
3
+ Version: 0.6.3
4
4
  Summary: PyHw, a neofetch-like command line tool for fetching system information but written mostly in python.
5
5
  Author-email: Xiao Ran <xiaoran.007@icloud.com>
6
6
  License: BSD-3-Clause
@@ -13,7 +13,7 @@ Classifier: Operating System :: OS Independent
13
13
  Requires-Python: >=3.9
14
14
  Description-Content-Type: text/markdown
15
15
  License-File: LICENSE
16
- Requires-Dist: pypci-ng>=0.0.3
16
+ Requires-Dist: pypci-ng>=0.0.8
17
17
 
18
18
  # PyHw
19
19
  [![Downloads](https://static.pepy.tech/badge/pyhw)](https://pepy.tech/project/pyhw)
@@ -82,6 +82,11 @@ This is due to the fact that system python is not supposed to be managed by pip.
82
82
 
83
83
 
84
84
  ## Build from source
85
+ Currently, build process relay on swiftc and macOS IOKit framework. To build package from source, you need a mac machine with macOS 11 and newer.
86
+
87
+ ### Dependencies
88
+ This package was originally implemented in pure python and only depends on the python standard library. However, in subsequent development, the code for the pci part was separated into a separate package **pypci-ng**, which can be obtained using pip (or check out [this](https://github.com/xiaoran007/pypci) GitHub repository).
89
+
85
90
  ### Build tools
86
91
  Make sure the following Python build tools are already installed.
87
92
  * setuptools
@@ -97,3 +102,8 @@ After the build process, the source package and the binary whl package can be fo
97
102
  ```shell
98
103
  pip install dist/*.whl --force-reinstall
99
104
  ```
105
+ Or simply type:
106
+ ```shell
107
+ make build
108
+ make install
109
+ ```
@@ -12,12 +12,12 @@ pyhw/backend/gpu/__init__.py,sha256=EpMjPvUaXt0LTNMvGmB8WgXbUB9keCxuOhu8NT3Re6o,
12
12
  pyhw/backend/gpu/gpuBase.py,sha256=Ge0DX2P8_EB7ovM7glmPUnVsPJL3OUHV2t_1T5mimR0,409
13
13
  pyhw/backend/gpu/gpuInfo.py,sha256=d_z_z5DiZAg85wP0VOBQEU0QHdaK3qFqA2Tp9Eq8-Zs,133
14
14
  pyhw/backend/gpu/linux.py,sha256=E-evoL-spQbHB8JvbZXSq5ypc2SeePVUPnhEQrSPQpg,1619
15
- pyhw/backend/gpu/macos.py,sha256=063wsyXZnukdXDCpyr4HtBQO394QZGO6JxnjiQvnVjs,3793
15
+ pyhw/backend/gpu/macos.py,sha256=SmTqqTrIMRW-GVPmDs8xAiOX7HsCjrGh9qkxLQCdvO8,3850
16
16
  pyhw/backend/host/__init__.py,sha256=Efaj7-Oya7H8HdpZHQCLrwn-mcfPb-d6yfh4dzsE_7I,58
17
17
  pyhw/backend/host/hostBase.py,sha256=POyDW3f5JSWtEKyCfrVSBEddSwoywe_OBgUExCEuje8,563
18
18
  pyhw/backend/host/hostInfo.py,sha256=Xvz0LugPiCSWMkcDsp4p2rrojYFZauL6Q-gCZ6NLz5k,184
19
19
  pyhw/backend/host/linux.py,sha256=dr82gDA4SQgyTTI3Kq5V3V6qEDH4DXoJo0wyqeXYdHk,2005
20
- pyhw/backend/host/macos.py,sha256=u-Orwcq0FCcr2eR9mOKUc85LGkyuiO6rZ-ggIwob92k,14593
20
+ pyhw/backend/host/macos.py,sha256=355xfJeSsx67ZUyas114_kT_kQrl2EzLIoEhsFGRrc4,14681
21
21
  pyhw/backend/host/windows.py,sha256=rjDJaIs-5zspzFsNCMCh6m2yZXEXI0vccqeBpmAdEBk,53
22
22
  pyhw/backend/kernel/__init__.py,sha256=fGjwjpOhwA_PnsWbwoq102hwhTay2ufYKaTqxjSV2-I,65
23
23
  pyhw/backend/kernel/kernelBase.py,sha256=CMvBszl4_aP48YWnFI03I2GtngYStkcY4uDU3ub8C3E,555
@@ -77,16 +77,15 @@ pyhw/frontend/logo/ascii/macOS.pyhw,sha256=HBGROtBb7wrNtRqAQ9ND7zxK0l17BRsmpgc2d
77
77
  pyhw/frontend/logo/ascii/raspbian.pyhw,sha256=jEl6WMKF-FGx359ipQ1kzweUJS-NuauYQCFaYime4PQ,159
78
78
  pyhw/frontend/logo/ascii/ubuntu.pyhw,sha256=l-Q0PfutxXYMwTojqeiM88063x4V0RBkZUHmi6YdsNc,833
79
79
  pyhw/frontend/logo/ascii/ubuntu_small.pyhw,sha256=Xf8LSZdZUu9aEG3efhb1FUlUEuJ-3UztcIOJISpKhPw,229
80
- pyhw/library/iokitGPULib/te.py,sha256=UbRUT82ckEFWP_r1-52wGFhaVO9bGSsON_NTBeTawCw,294
81
80
  pyhw/library/lib/iokitGPULib.dylib,sha256=DcJ0GZY79gTFckLFYtZgeKn1T0NFvdO_k_ccCa7od5Y,154808
82
81
  pyhw/pyhwException/__init__.py,sha256=8JsFvtF13g0Y5t4z9fRndDXtfCzuBM59jDf6PhWSFSk,220
83
82
  pyhw/pyhwException/pyhwException.py,sha256=wxuzFQa9g7XB1q9TUKO_55lw7wMEJMpzG8w1GVTFVa0,197
84
83
  pyhw/pyhwUtil/__init__.py,sha256=PzeP9fXsIhvr3sUpJ4DxW9_H25DEIasBFfXd_NztfR4,226
85
84
  pyhw/pyhwUtil/pyhwUtil.py,sha256=CKXJrt6KGhZCV1J7MjsQ21c_jPmC1I3wZBPCKJfdqbM,2478
86
85
  pyhw/pyhwUtil/sysctlUtil.py,sha256=S-rUvqi7ZrMyMouIhxlyHEQ4agM7sCT1Y7uzs3Hu5-o,841
87
- pyhw-0.6.1.dist-info/LICENSE,sha256=hJs6RBqSVCexbTsalkMLNFI5t06kekQEsSVaOt_-yLs,1497
88
- pyhw-0.6.1.dist-info/METADATA,sha256=NfQ7v_YPoKtQib8tsNQs568BPR_ogVIkoVGMTZU6V5A,4196
89
- pyhw-0.6.1.dist-info/WHEEL,sha256=OVMc5UfuAQiSplgO0_WdW7vXVGAt9Hdd6qtN4HotdyA,91
90
- pyhw-0.6.1.dist-info/entry_points.txt,sha256=q-AB8im_QahpmNrmy4aPTJRGi0LlbNlnI3kF7s6pKss,44
91
- pyhw-0.6.1.dist-info/top_level.txt,sha256=7Inxvxt1TngEricKZEex9_WJZS3DbKYFUXDz4v5WHYU,5
92
- pyhw-0.6.1.dist-info/RECORD,,
86
+ pyhw-0.6.3.dist-info/LICENSE,sha256=hJs6RBqSVCexbTsalkMLNFI5t06kekQEsSVaOt_-yLs,1497
87
+ pyhw-0.6.3.dist-info/METADATA,sha256=vNchs4HWtGv59C2MVV2jb9IszEn3fEh7LVOtXicMNT0,4742
88
+ pyhw-0.6.3.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
89
+ pyhw-0.6.3.dist-info/entry_points.txt,sha256=q-AB8im_QahpmNrmy4aPTJRGi0LlbNlnI3kF7s6pKss,44
90
+ pyhw-0.6.3.dist-info/top_level.txt,sha256=7Inxvxt1TngEricKZEex9_WJZS3DbKYFUXDz4v5WHYU,5
91
+ pyhw-0.6.3.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.2.0)
2
+ Generator: setuptools (75.3.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,12 +0,0 @@
1
- import ctypes
2
-
3
- # Load the dynamic library
4
- lib = ctypes.CDLL('./iokitGPULib.dylib')
5
-
6
- # Define the function return type as c_char_p (pointer to C char)
7
- lib.getGPUInfo.restype = ctypes.c_char_p
8
-
9
- # Call the function and get the result
10
- gpu_info = lib.getGPUInfo()
11
- print("Detected GPUs:", gpu_info)
12
-
File without changes