message: Validate OS and CPU on startup
diff: @@ -11,6 +11,8 @@ const fs = require('fs-extra')
  const validatePreconditions = async ({ exitOnFailure = true } = {}) => {
  let success = true
  success = checkIfRunningOnSupportedNodeVersion(process.version) && success
  + success = checkIfRunningOnSupportedOS(process.platform) && success
  + success = checkIfRunningOnSupportedCPU(process.arch) && success
  success = checkIfRequiredFileExists('../../frontend/dist/frontend/index.html') && success
  success = checkIfRequiredFileExists('../../frontend/dist/frontend/main.js') && success
  success = checkIfRequiredFileExists('../../frontend/dist/frontend/polyfills.js') && success
  @@ -36,6 +38,26 @@ const checkIfRunningOnSupportedNodeVersion = (runningVersion) => {
  return true
  }
  +const checkIfRunningOnSupportedOS = (runningOS) => {
  + const supportedOS = pjson.os
  + if (supportedOS[runningOS] > -1) {
  + logger.warn(`Detected OS ${colors.bold(runningOS)} is not in the list of supported platforms ${supportedOS} (${colors.red('NOT OK')})`)
  + return false
  + }
  + logger.info(`Detected OS ${colors.bold(runningOS)} (${colors.green('OK')})`)
  + return true
  +}
  +
  +const checkIfRunningOnSupportedCPU = (runningArch) => {
  + const supportedArch = pjson.cpu
  + if (supportedArch[runningArch] > -1) {
  + logger.warn(`Detected CPU ${colors.bold(runningArch)} is not in the list of supported architectures ${supportedArch} (${colors.red('NOT OK')})`)
  + return false
  + }
  + logger.info(`Detected CPU ${colors.bold(runningArch)} (${colors.green('OK')})`)
  + return true
  +}
  +
  const checkIfPortIsAvailable = (port) => {
  return new Promise((resolve, reject) => {
  portscanner.checkPortStatus(port, function (error, status) {
  