[PR] dylanaraps/neofetch#2409 from makuhlmann - Added support for Interix (Windows Subsystem for UNIX)
Upstream PR: https://github.com/dylanaraps/neofetch/pull/2409 Thanks to @makuhlmann Co-authored-by: makuhlmann <19255462+makuhlmann@users.noreply.github.com>
This commit is contained in:
commit
05bdef915a
1 changed files with 106 additions and 2 deletions
108
neofetch
108
neofetch
|
@ -1028,6 +1028,7 @@ get_os() {
|
||||||
AIX) os=AIX ;;
|
AIX) os=AIX ;;
|
||||||
IRIX*) os=IRIX ;;
|
IRIX*) os=IRIX ;;
|
||||||
FreeMiNT) os=FreeMiNT ;;
|
FreeMiNT) os=FreeMiNT ;;
|
||||||
|
Interix) os=Interix ;;
|
||||||
|
|
||||||
Linux|GNU*)
|
Linux|GNU*)
|
||||||
os=Linux
|
os=Linux
|
||||||
|
@ -1465,6 +1466,10 @@ get_distro() {
|
||||||
FreeMiNT)
|
FreeMiNT)
|
||||||
distro=FreeMiNT
|
distro=FreeMiNT
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
Interix)
|
||||||
|
distro="Interix ${kernel_version}"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
distro=${distro//Enterprise Server}
|
distro=${distro//Enterprise Server}
|
||||||
|
@ -1772,6 +1777,12 @@ get_model() {
|
||||||
model=$(sysctl -n hw.model)
|
model=$(sysctl -n hw.model)
|
||||||
model=${model/ (_MCH *)}
|
model=${model/ (_MCH *)}
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
Interix)
|
||||||
|
model="$(/dev/fs/C/Windows/System32/wbem/WMIC.exe computersystem get manufacturer,model)"
|
||||||
|
model="${model/Manufacturer}"
|
||||||
|
model="${model/Model}"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# Remove dummy OEM info.
|
# Remove dummy OEM info.
|
||||||
|
@ -1847,6 +1858,13 @@ get_kernel() {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# In Interix the Kernel version is commonly comprised of the host OS build number,
|
||||||
|
# OS architecture and Interix build number
|
||||||
|
[[ $os == Interix ]] && {
|
||||||
|
kernel="$(uname -r) $(uname -m) $(uname -v)"
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
case $kernel_shorthand in
|
case $kernel_shorthand in
|
||||||
on) kernel=$kernel_version ;;
|
on) kernel=$kernel_version ;;
|
||||||
off) kernel="$kernel_name $kernel_version" ;;
|
off) kernel="$kernel_name $kernel_version" ;;
|
||||||
|
@ -1903,6 +1921,19 @@ get_uptime() {
|
||||||
s=$((${d:-0}*86400 + ${h:-0}*3600 + ${t%%:*}*60 + ${t#*:}))
|
s=$((${d:-0}*86400 + ${h:-0}*3600 + ${t%%:*}*60 + ${t#*:}))
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
Interix)
|
||||||
|
t="$(LC_ALL=POSIX ps -o etime= -p 0)"
|
||||||
|
t="${t%%.*}"
|
||||||
|
|
||||||
|
[[ $t == *-* ]] && { d=${t%%-*}; t=${t#*-}; }
|
||||||
|
[[ $t == *:*:* ]] && { h=${t%%:*}; t=${t#*:}; }
|
||||||
|
|
||||||
|
h="${h#0}"
|
||||||
|
t="${t#0}"
|
||||||
|
|
||||||
|
s="$((${d:-0}*86400 + ${h:-0}*3600 + ${t%%:*}*60 + ${t#*:}))"
|
||||||
|
;;
|
||||||
|
|
||||||
Haiku)
|
Haiku)
|
||||||
s=$(($(system_time) / 1000000))
|
s=$(($(system_time) / 1000000))
|
||||||
;;
|
;;
|
||||||
|
@ -2001,7 +2032,7 @@ get_packages() {
|
||||||
|
|
||||||
# OS-specific package managers.
|
# OS-specific package managers.
|
||||||
case $os in
|
case $os in
|
||||||
Linux|BSD|"iPhone OS"|Solaris|illumos)
|
Linux|BSD|"iPhone OS"|Solaris|illumos|Interix)
|
||||||
# Package Manager Programs.
|
# Package Manager Programs.
|
||||||
has kiss && tot kiss l
|
has kiss && tot kiss l
|
||||||
has cpt-list && tot cpt-list
|
has cpt-list && tot cpt-list
|
||||||
|
@ -3142,6 +3173,17 @@ END
|
||||||
cpu="$(awk -F':' '/CPU:/ {printf $2}' /kern/cpuinfo)"
|
cpu="$(awk -F':' '/CPU:/ {printf $2}' /kern/cpuinfo)"
|
||||||
speed="$(awk -F '[:.M]' '/Clocking:/ {printf $2}' /kern/cpuinfo)"
|
speed="$(awk -F '[:.M]' '/Clocking:/ {printf $2}' /kern/cpuinfo)"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"Interix")
|
||||||
|
cpu="$(/dev/fs/C/Windows/System32/wbem/WMIC.exe cpu get Name)"
|
||||||
|
cpu="${cpu/Name}"
|
||||||
|
|
||||||
|
speed="$(/dev/fs/C/Windows/System32/wbem/WMIC.exe cpu get CurrentClockSpeed)"
|
||||||
|
speed="${speed/CurrentClockSpeed}"
|
||||||
|
|
||||||
|
cores="$(/dev/fs/C/Windows/System32/wbem/WMIC.exe cpu get NumberOfCores)"
|
||||||
|
cores="${cores/NumberOfCores}"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# Remove un-needed patterns from cpu output.
|
# Remove un-needed patterns from cpu output.
|
||||||
|
@ -3387,6 +3429,22 @@ get_gpu() {
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"Interix")
|
||||||
|
/dev/fs/C/Windows/System32/wbem/WMIC.exe path Win32_VideoController get caption | while read -r line; do
|
||||||
|
line=$(trim "$line")
|
||||||
|
|
||||||
|
case $line in
|
||||||
|
*Caption*|'')
|
||||||
|
continue
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
prin "${subtitle:+${subtitle}${gpu_name}}" "$line"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
|
||||||
"Haiku")
|
"Haiku")
|
||||||
gpu="$(listdev | grep -A2 -F 'device Display controller' |\
|
gpu="$(listdev | grep -A2 -F 'device Display controller' |\
|
||||||
awk -F':' '/device beef/ {print $2}')"
|
awk -F':' '/device beef/ {print $2}')"
|
||||||
|
@ -3531,6 +3589,20 @@ get_memory() {
|
||||||
mem_used="$((mem_total - mem_free))"
|
mem_used="$((mem_total - mem_free))"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"Interix")
|
||||||
|
mem_total="$(/dev/fs/C/Windows/System32/wbem/WMIC.exe computersystem get TotalPhysicalMemory)"
|
||||||
|
mem_total="${mem_total//[[:space:]]}"
|
||||||
|
mem_total="${mem_total/TotalPhysicalMemory}"
|
||||||
|
mem_total="$((mem_total / 1024 / 1024))"
|
||||||
|
|
||||||
|
mem_free="$(/dev/fs/C/Windows/System32/wbem/WMIC.exe os get FreePhysicalMemory)"
|
||||||
|
mem_free="${mem_free//[[:space:]]}"
|
||||||
|
mem_free="${mem_free/FreePhysicalMemory}"
|
||||||
|
mem_free="$((mem_free / 1024))"
|
||||||
|
|
||||||
|
mem_used="$((mem_total - mem_free))"
|
||||||
|
;;
|
||||||
|
|
||||||
esac
|
esac
|
||||||
|
|
||||||
[[ "$memory_percent" == "on" ]] && ((mem_perc=mem_used * 100 / mem_total))
|
[[ "$memory_percent" == "on" ]] && ((mem_perc=mem_used * 100 / mem_total))
|
||||||
|
@ -4961,6 +5033,15 @@ get_battery() {
|
||||||
[[ "$state" == *TRUE* ]] && battery_state="charging"
|
[[ "$state" == *TRUE* ]] && battery_state="charging"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"Interix")
|
||||||
|
battery="$(/dev/fs/C/Windows/System32/wbem/WMIC.exe Path Win32_Battery get EstimatedChargeRemaining)"
|
||||||
|
battery="${battery/EstimatedChargeRemaining}"
|
||||||
|
battery="$(trim "$battery")%"
|
||||||
|
state="$(/dev/fs/C/Windows/System32/wbem/WMIC.exe /NameSpace:'\\root\WMI' Path BatteryStatus get Charging)"
|
||||||
|
state="${state/Charging}"
|
||||||
|
[[ "$state" == *TRUE* ]] && battery_state="charging"
|
||||||
|
;;
|
||||||
|
|
||||||
"Haiku")
|
"Haiku")
|
||||||
battery0full="$(awk -F '[^0-9]*' 'NR==2 {print $4}' /dev/power/acpi_battery/0)"
|
battery0full="$(awk -F '[^0-9]*' 'NR==2 {print $4}' /dev/power/acpi_battery/0)"
|
||||||
battery0now="$(awk -F '[^0-9]*' 'NR==5 {print $4}' /dev/power/acpi_battery/0)"
|
battery0now="$(awk -F '[^0-9]*' 'NR==5 {print $4}' /dev/power/acpi_battery/0)"
|
||||||
|
@ -5021,7 +5102,7 @@ get_local_ip() {
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"Windows")
|
"Windows" | "Interix")
|
||||||
local_ip="$(ipconfig | awk -F ': ' '/IPv4 Address/ {printf $2 ", "}')"
|
local_ip="$(ipconfig | awk -F ': ' '/IPv4 Address/ {printf $2 ", "}')"
|
||||||
local_ip="${local_ip%\,*}"
|
local_ip="${local_ip%\,*}"
|
||||||
;;
|
;;
|
||||||
|
@ -10195,6 +10276,29 @@ ${c1} |
|
||||||
EOF
|
EOF
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"Interix"*)
|
||||||
|
set_colors 1 7 4 0 3
|
||||||
|
read -rd '' ascii_data <<'EOF'
|
||||||
|
${c1} .${c3}.
|
||||||
|
${c1} 75${c3}G!
|
||||||
|
${c1} ^?PG${c3}&&J.
|
||||||
|
${c1} :!5GPP${c3}&&&B!
|
||||||
|
${c1} :YPPPPP${c3}&&&&&Y:
|
||||||
|
${c1} !5PPPPPP${c3}&&&&&&B!
|
||||||
|
${c1} :?PPPPPPPP${c3}&&&&&&&&Y~
|
||||||
|
${c1} !5PPPPPPPPP${c3}###&&&&&&B7
|
||||||
|
${c1} :?PPPP5555555${c3}B####&&&&&&5:
|
||||||
|
${c1} ~5PPPP555YJ${c5}7!~7?${c3}5B###&&&&&B?.
|
||||||
|
${c1} .:JPPPP5555Y${c5}?^....:^?${c3}G####&&&&&5:
|
||||||
|
${c1} 75PPP555555Y${c5}7:....:^!${c3}5#####&&&&&B7.
|
||||||
|
${c1} :JPPPP${c2}555555YY?${c5}~::::^~${c2}7YPGBB###${c3}&&&&&5^
|
||||||
|
${c1}75${c2}GGPPPPPP555555YJ?77??YYYYYY55PPGGB#${c3}&B?
|
||||||
|
${c2}~!!7JY5PGGBBBBBBBBGGGGGGGBGGGGGP5YJ?7~~~
|
||||||
|
.::^~7?JYPGBB#BGPYJ?7!7^:.
|
||||||
|
..:^...
|
||||||
|
EOF
|
||||||
|
;;
|
||||||
|
|
||||||
"januslinux"*|"janus"*|"Ataraxia Linux"*|"Ataraxia"*)
|
"januslinux"*|"janus"*|"Ataraxia Linux"*|"Ataraxia"*)
|
||||||
set_colors 4 5 6 2
|
set_colors 4 5 6 2
|
||||||
read -rd '' ascii_data <<'EOF'
|
read -rd '' ascii_data <<'EOF'
|
||||||
|
|
Loading…
Reference in a new issue