memLayout() added ECC flag, bios() added language, features (linux)
This commit is contained in:
Vendored
+2
@@ -38,6 +38,8 @@ export namespace Systeminformation {
|
||||
version: string;
|
||||
releaseDate: string;
|
||||
revision: string;
|
||||
language?: string;
|
||||
features?: string[];
|
||||
}
|
||||
|
||||
interface BaseboardData {
|
||||
|
||||
+15
-2
@@ -452,9 +452,8 @@ function bios(callback) {
|
||||
if (_linux || _freebsd || _openbsd || _netbsd) {
|
||||
if (process.arch === 'arm') {
|
||||
cmd = 'cat /proc/cpuinfo | grep Serial';
|
||||
|
||||
} else {
|
||||
cmd = 'export LC_ALL=C; dmidecode --type 0 2>/dev/null; unset LC_ALL';
|
||||
cmd = 'export LC_ALL=C; dmidecode -t bios 2>/dev/null; unset LC_ALL';
|
||||
}
|
||||
exec(cmd, function (error, stdout) {
|
||||
let lines = stdout.toString().split('\n');
|
||||
@@ -463,6 +462,20 @@ function bios(callback) {
|
||||
let datetime = util.getValue(lines, 'Release Date');
|
||||
result.releaseDate = util.parseDateTime(datetime).date;
|
||||
result.revision = util.getValue(lines, 'BIOS Revision');
|
||||
let language = util.getValue(lines, 'Currently Installed Language').split('|')[0];
|
||||
if (language) {
|
||||
result.language = language;
|
||||
}
|
||||
if (lines.length && stdout.toString().indexOf('Characteristics:') >= 0) {
|
||||
const features = [];
|
||||
lines.forEach(line => {
|
||||
if (line.indexOf(' is supported') >= 0) {
|
||||
const feature = line.split(' is supported')[0].trim();
|
||||
features.push(feature);
|
||||
}
|
||||
});
|
||||
result.features = features;
|
||||
}
|
||||
// Non-Root values
|
||||
const cmd = `echo -n "bios_date: "; cat /sys/devices/virtual/dmi/id/bios_date 2>/dev/null; echo;
|
||||
echo -n "bios_vendor: "; cat /sys/devices/virtual/dmi/id/bios_vendor 2>/dev/null; echo;
|
||||
|
||||
Reference in New Issue
Block a user