diff --git a/bin/omarchy-drive-info b/bin/omarchy-drive-info index d46d1fd5..4943975d 100755 --- a/bin/omarchy-drive-info +++ b/bin/omarchy-drive-info @@ -11,7 +11,7 @@ fi # Find the root drive in case we are looking at partitions root_drive=$(lsblk -no PKNAME "$drive" 2>/dev/null | tail -n1) -if [[ -n "$root_drive" ]]; then +if [[ -n $root_drive ]]; then root_drive="/dev/$root_drive" else root_drive="$drive" @@ -19,16 +19,31 @@ fi # Get basic disk information size=$(lsblk -dno SIZE "$drive" 2>/dev/null) -model=$(lsblk -dno MODEL "$root_drive" 2>/dev/null) +vendor=$(lsblk -dno VENDOR "$root_drive" 2>/dev/null | sed 's/ *$//') +model=$(lsblk -dno MODEL "$root_drive" 2>/dev/null | sed 's/ *$//') + +# Combine vendor and model, avoiding duplication +label="" +if [[ -n $vendor && -n $model ]]; then + if [[ $model == *$vendor* ]]; then + label="$model" + else + label="$vendor $model" + fi +elif [[ -n $model ]]; then + label="$model" +elif [[ -n $vendor ]]; then + label="$vendor" +fi # Format display string display="$drive" -[[ -n "$size" ]] && display="$display ($size)" -[[ -n "$model" ]] && display="$display - $model" +[[ -n $size ]] && display="$display ($size)" +[[ -n $label ]] && display="$display - $label" # Append compact partition summary part_summary=$(lsblk -nro TYPE,NAME,FSTYPE,MOUNTPOINT "$root_drive" 2>/dev/null | \ awk '$1=="part" { printf "%s%s%s", s, ($3==""?"unknown":$3), ($4==""?"":"("$4")"); s=", " }') -[[ -n "$part_summary" ]] && display+=" [$part_summary]" +[[ -n $part_summary ]] && display+=" [$part_summary]" echo "$display"