From 43a673c3314c857341552d000d00876293e18f31 Mon Sep 17 00:00:00 2001 From: Sebastian Hildebrandt Date: Sat, 9 Jul 2022 18:05:19 +0200 Subject: [PATCH] fix os max mamory (win), typings, graphics parse nvidia-smi --- lib/graphics.js | 8 ++++++-- lib/index.d.ts | 4 ++-- lib/osinfo.js | 1 + lib/system.js | 6 ++++-- 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/lib/graphics.js b/lib/graphics.js index c904e86..0c32cab 100644 --- a/lib/graphics.js +++ b/lib/graphics.js @@ -429,7 +429,7 @@ function graphics(callback) { } const gpus = stdout.split('\n').filter(Boolean); - const results = gpus.map(gpu => { + let results = gpus.map(gpu => { const splittedData = gpu.split(', ').map(value => value.includes('N/A') ? undefined : value); if (splittedData.length === 16) { return { @@ -450,9 +450,13 @@ function graphics(callback) { clockCore: safeParseNumber(splittedData[14]), clockMemory: safeParseNumber(splittedData[15]), }; + } else { + return {}; } }); - + results = results.filter((item) => { + return ('pciBus' in item); + }); return results; } diff --git a/lib/index.d.ts b/lib/index.d.ts index b0cc802..52456b7 100644 --- a/lib/index.d.ts +++ b/lib/index.d.ts @@ -7,8 +7,8 @@ export namespace Systeminformation { // 1. General interface TimeData { - current: string; - uptime: string; + current: number; + uptime: number; timezone: string; timezoneName: string; } diff --git a/lib/osinfo.js b/lib/osinfo.js index ff66c3c..54b7872 100644 --- a/lib/osinfo.js +++ b/lib/osinfo.js @@ -307,6 +307,7 @@ function osInfo(callback) { result.codename = (result.release.indexOf('10.15') > -1 ? 'macOS Catalina' : result.codename); result.codename = (result.release.startsWith('11.') ? 'macOS Big Sur' : result.codename); result.codename = (result.release.startsWith('12.') ? 'macOS Monterey' : result.codename); + result.codename = (result.release.startsWith('13.') ? 'macOS Ventura' : result.codename); result.uefi = true; result.codepage = util.getCodepage(); if (callback) { diff --git a/lib/system.js b/lib/system.js index 7d1c3f8..57a0061 100644 --- a/lib/system.js +++ b/lib/system.js @@ -662,8 +662,10 @@ function baseboard(callback) { if (_windows) { try { const workload = []; + const win10plus = parseInt(os.release()) >= 10; + const maxCapacityAttribute = win10plus ? 'MaxCapacityEx' : 'MaxCapacity'; workload.push(util.powerShell('Get-WmiObject Win32_baseboard | select Model,Manufacturer,Product,Version,SerialNumber,PartNumber,SKU | fl')); - workload.push(util.powerShell('Get-WmiObject Win32_physicalmemoryarray | select MaxCapacity, MemoryDevices | fl')); + workload.push(util.powerShell(`Get-WmiObject Win32_physicalmemoryarray | select ${maxCapacityAttribute}, MemoryDevices | fl`)); util.promiseAll( workload ).then(data => { @@ -683,7 +685,7 @@ function baseboard(callback) { // memphysical lines = data.results[1] ? data.results[1].toString().split('\r\n') : ['']; - result.memMax = util.toInt(util.getValue(lines, 'MaxCapacity', ':')) || null; + result.memMax = util.toInt(util.getValue(lines, maxCapacityAttribute, ':')) * (win10plus ? 1024 : 1) || null; result.memSlots = util.toInt(util.getValue(lines, 'MemoryDevices', ':')) || null; if (callback) { callback(result); }