diff --git a/src/system.js b/src/system.js index d0b0ba17f..1e79ecc21 100644 --- a/src/system.js +++ b/src/system.js @@ -289,14 +289,16 @@ async function getInfo() { const uptime = safe.fs.readFileSync('/proc/uptime', 'utf8'); const uptimeSecs = parseInt(uptime.split(' ')[0], 10); - const sysVendor = safe.fs.readFileSync('/sys/devices/virtual/dmi/id/sys_vendor', 'utf8'); - const productName = safe.fs.readFileSync('/sys/devices/virtual/dmi/id/product_name', 'utf8'); + // these files may not exist if kernel does not have access to dmi data + const sysVendor = safe.fs.readFileSync('/sys/devices/virtual/dmi/id/sys_vendor', 'utf8') || ''; + const productName = safe.fs.readFileSync('/sys/devices/virtual/dmi/id/product_name', 'utf8') || ''; + const productFamily = safe.fs.readFileSync('/sys/devices/virtual/dmi/id/product_family', 'utf8') || ''; const activationTime = (await eventlog.getActivationEvent())?.creationTime || null; return { sysVendor: sysVendor.trim(), - productName: productName.trim(), + productName: productName.trim() || productFamily.trim(), uptimeSecs, rebootRequired, activationTime