Browse Source

diagnostics: switch to shasum, filter sysinfo using lines

shasum seems more widely available than md5/md5sum, and we don't have to worry about dealing with the different signatures and output formats of md5 and md5sum then.

sysinfo outputs localized message labels, so we can't just grep for "OS Type". But OS is the first thing it outputs, so we can probably just grab those lines by line number. Switched to doing that.
Andrew Janke 8 years ago
parent
commit
46ddd88fe0
1 changed files with 7 additions and 4 deletions
  1. 7 4
      lib/diagnostics.zsh

+ 7 - 4
lib/diagnostics.zsh

@@ -117,13 +117,16 @@ function _omz_diag_dump_one_big_text() {
 
   # Installed programs
   programs=(sh zsh ksh bash sed cat grep ls find git posh)
+  local progfile="" extra_str="" sha_str=""
   for program in $programs; do
-    local md5_str="" md5="" link_str="" extra_str=""
+    extra_str="" sha_str=""
     progfile=$(builtin which $program)
     if [[ $? == 0 ]]; then
       if [[ -e $progfile ]]; then
-        if builtin whence md5 &>/dev/null; then
-          extra_str+=" $(md5 -q $progfile)"
+        if builtin whence shasum &>/dev/null; then
+          sha_str=($(command shasum $progfile))
+          sha_str=$sha_str[1]
+          extra_str+=" SHA $sha_str"
         fi
         if [[ -h "$progfile" ]]; then
           extra_str+=" ( -> ${progfile:A} )"
@@ -314,7 +317,7 @@ function _omz_diag_dump_os_specific_version() {
       builtin echo "OS Version: $osname $osver build $(sw_vers -buildVersion)"
       ;;
     cygwin)
-      command systeminfo | command grep "^OS Name\|^OS Version"
+      command systeminfo | command head -4 | command tail -2
       ;;
   esac