#!/usr/bin/env python3 import re import os.path def _hardware(): h = "unknown" for line in open("/proc/cpuinfo","r").readlines(): if re.match("Hardware.*:.*Tegra", line): h = "Tegra" if re.match("Model.*:.*Raspberry", line): h = "RaspberryPi" if re.match("Hardware.*:.*sun50iw1p1", line): h = "Pine64" if re.match("Hardware\s+:\sFreescale\si.MX6\sQuad\/DualLite", line): h = "RiotBoard" if h == "unknown" and os.path.isfile("/etc/armbian-release"): for line in open("/etc/armbian-release","r").readlines(): if re.match("BOARD=espressobin", line): h = "Espressobin" return h def main(): grains = {} grains['hardware'] = _hardware() return grains