浏览代码

[PR] dylanaraps/neofetch#2038 from GustavoSilvera - Improving MacOS M1 CPU/GPU prints

Upstream PR: https://github.com/dylanaraps/neofetch/pull/2038
Thanks to @GustavoSilvera

Co-authored-by: Gustavo Silvera <grs5382@gmail.com>
Azalea (on HyDEV-Daisy) 3 年之前
父节点
当前提交
54dbc35c2d
共有 1 个文件被更改,包括 18 次插入6 次删除
  1. 18 6
      neofetch

+ 18 - 6
neofetch

@@ -2544,8 +2544,14 @@ get_cpu() {
     # Add CPU cores to the output.
     [[ "$cpu_cores" != "off" && "$cores" ]] && \
         case $os in
-            "Mac OS X"|"macOS") cpu="${cpu/@/(${cores}) @}" ;;
-            *)                  cpu="$cpu ($cores)" ;;
+            "Mac OS X"|"macOS")
+                if [[ $(uname -m) == 'arm64' ]]; then
+                    cpu="$cpu ($cores)"
+                else
+                    cpu="${cpu/@/(${cores}) @}"
+                fi
+            ;;
+            *) cpu="$cpu ($cores)" ;;
         esac
 
     # Add CPU speed to the output.
@@ -2664,10 +2670,16 @@ get_gpu() {
                 source "${cache_dir}/neofetch/gpu"
 
             else
-                gpu="$(system_profiler SPDisplaysDataType |\
-                       awk -F': ' '/^\ *Chipset Model:/ {printf $2 ", "}')"
-                gpu="${gpu//\/ \$}"
-                gpu="${gpu%,*}"
+                if [[ $(uname -m) == 'arm64' ]]; then
+                    chipset=$(system_profiler SPDisplaysDataType | awk '/Chipset Model/ { printf "%s %s %s", $3, $4, $5 }')
+                    cores=$(system_profiler SPDisplaysDataType | awk '/Total Number of Cores/ { printf "%d", $5 }')
+                    gpu="${chipset} (${cores})"
+                else
+                    gpu="$(system_profiler SPDisplaysDataType |\
+                        awk -F': ' '/^\ *Chipset Model:/ {printf $2 ", "}')"
+                    gpu="${gpu//\/ \$}"
+                    gpu="${gpu%,*}"
+                fi
 
                 cache "gpu" "$gpu"
             fi