diff options
-rw-r--r-- | src/cpu.c | 6 | ||||
-rw-r--r-- | src/gpu.c | 6 | ||||
-rw-r--r-- | src/host.c | 2 |
3 files changed, 10 insertions, 4 deletions
@@ -16,9 +16,9 @@ const char *display_cpu() { "sed 's/(TM)//' | sed 's/CPU //' | sed 's/Processor//' && " "echo \" (\" && sysctl -n hw.ncpu && echo \" core)\""); #elif defined(__sun) - return run_command_s("psrinfo -pv | tail -1 | sed 's/(r)//g' | " - "sed 's/ CPU//' | sed 's/^ *//' && " - "echo \" (\" && psrinfo -p && echo \" core)\""); + return run_command_s("psrinfo -pv | tail -1 | " + "sed 's/(r)//g; s/ CPU//; s/^ *//; s/ $//' | awk '{$1=$1};1' && " + "echo \" (\" && psrinfo -p && echo \" core)\""); #elif defined(__linux__) return run_command_s("cat /proc/cpuinfo | awk -F '\\\\s*: | @' " "'/model name|Hardware|Processor|^cpu model|chip type|^cpu type/ { " @@ -49,6 +49,12 @@ const char *display_gpu() { "grep -F \"device\" | sed 's/^.* device//' | " "sed \"s/^.* '//\" | sed \"s/'//\" | tail -1 | " "sed 's/ Core Processor Integrated Graphics Controller//'"); +#elif defined(__sun) + return run_command_s("prtconf -v | grep -A 30 \"value='display'\" | " + "grep -A 1 vendor-name | tail -1 | sed 's/^.*value=//' | sed \"s/'//g\" | " + "sed 's/ Corporation//' && echo \" \" && prtconf -v | " + "grep -A 30 \"value='display'\" | grep -A 1 device-name | tail -1 | " + "sed 's/^.*value=//' | sed \"s/'//g\""); #elif defined(__linux__) return run_command_s("lspci | grep VGA | sed 's/^.*: //' | " "sed 's/Corporation //' | sed 's/ (.*$//' | " @@ -95,7 +95,7 @@ void display_host_model() { free((void *)cmd); #elif defined(__sun) const char *cmd = run_host_command("smbios | grep \"Product\" | " - "sed 's/ Product: //' | head -1"); + "sed 's/ Product: //' | awk '{$1=$1};1' | head -1"); if (!cmd) return; printf("%s", cmd); free((void *)cmd); |