Merge pull request #889 from ArmstrongJ/freemint
Support for FreeMiNT on Atari computers and clones/VMs
This commit is contained in:
commit
d2f0255327
|
@ -0,0 +1,15 @@
|
||||||
|
${c1} ##
|
||||||
|
## #########
|
||||||
|
#### ##
|
||||||
|
#### #### ##
|
||||||
|
#### #### ## ##
|
||||||
|
#### #### ## ##
|
||||||
|
#### #### ## ## ##
|
||||||
|
#### ######
|
||||||
|
###### ## ## ####
|
||||||
|
#### ################
|
||||||
|
#### ## ####
|
||||||
|
## #### ######
|
||||||
|
## ## #### ####
|
||||||
|
## ## ## ## ## ####
|
||||||
|
#### ## ## ##
|
80
neofetch
80
neofetch
|
@ -44,6 +44,7 @@ get_os() {
|
||||||
"MINIX") os="MINIX" ;;
|
"MINIX") os="MINIX" ;;
|
||||||
"AIX") os="AIX" ;;
|
"AIX") os="AIX" ;;
|
||||||
"IRIX64") os="IRIX" ;;
|
"IRIX64") os="IRIX" ;;
|
||||||
|
"FreeMiNT") os="FreeMiNT" ;;
|
||||||
*)
|
*)
|
||||||
printf "%s\n" "Unknown OS detected: '$kernel_name', aborting..." >&2
|
printf "%s\n" "Unknown OS detected: '$kernel_name', aborting..." >&2
|
||||||
printf "%s\n" "Open an issue on GitHub to add support for your OS." >&2
|
printf "%s\n" "Open an issue on GitHub to add support for your OS." >&2
|
||||||
|
@ -230,6 +231,10 @@ get_distro() {
|
||||||
"IRIX")
|
"IRIX")
|
||||||
distro="IRIX ${kernel_version}"
|
distro="IRIX ${kernel_version}"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"FreeMiNT")
|
||||||
|
distro="FreeMiNT"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
distro="${distro//Enterprise Server}"
|
distro="${distro//Enterprise Server}"
|
||||||
|
@ -238,7 +243,7 @@ get_distro() {
|
||||||
|
|
||||||
# Get OS architecture.
|
# Get OS architecture.
|
||||||
case "$os" in
|
case "$os" in
|
||||||
"Solaris" | "AIX" | "Haiku" | "IRIX") machine_arch="$(uname -p)" ;;
|
"Solaris" | "AIX" | "Haiku" | "IRIX" | "FreeMiNT") machine_arch="$(uname -p)" ;;
|
||||||
*) machine_arch="$(uname -m)" ;;
|
*) machine_arch="$(uname -m)" ;;
|
||||||
|
|
||||||
esac
|
esac
|
||||||
|
@ -340,6 +345,10 @@ get_model() {
|
||||||
"AIX")
|
"AIX")
|
||||||
model="$(/usr/bin/uname -M)"
|
model="$(/usr/bin/uname -M)"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"FreeMiNT")
|
||||||
|
model="$(sysctl -n hw.model)"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# Remove dummy OEM info.
|
# Remove dummy OEM info.
|
||||||
|
@ -403,7 +412,7 @@ get_uptime() {
|
||||||
seconds="${seconds/.*}"
|
seconds="${seconds/.*}"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"Mac OS X" | "iPhone OS" | "BSD")
|
"Mac OS X" | "iPhone OS" | "BSD" | "FreeMiNT")
|
||||||
boot="$(sysctl -n kern.boottime)"
|
boot="$(sysctl -n kern.boottime)"
|
||||||
boot="${boot/'{ sec = '}"
|
boot="${boot/'{ sec = '}"
|
||||||
boot="${boot/,*}"
|
boot="${boot/,*}"
|
||||||
|
@ -604,6 +613,11 @@ get_packages() {
|
||||||
"IRIX")
|
"IRIX")
|
||||||
packages="$(($(versions -b | wc -l)-3))"
|
packages="$(($(versions -b | wc -l)-3))"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"FreeMiNT")
|
||||||
|
type -p rpm >/dev/null && \
|
||||||
|
packages="$((packages+=$(rpm -qa | wc -l)))"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
((packages == 0)) && unset packages
|
((packages == 0)) && unset packages
|
||||||
|
@ -653,6 +667,21 @@ get_de() {
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"FreeMiNT")
|
||||||
|
get_wm
|
||||||
|
|
||||||
|
for files in /proc/*; do
|
||||||
|
case "$files" in
|
||||||
|
*thing*) de="Thing" ;;
|
||||||
|
*jinnee*) de="Jinnee" ;;
|
||||||
|
*tera*) de="Teradesk" ;;
|
||||||
|
*neod*) de="NeoDesk" ;;
|
||||||
|
*zdesk*) de="zDesk" ;;
|
||||||
|
*mdesk*) de="mDesk" ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
((wm_run != 1)) && get_wm
|
((wm_run != 1)) && get_wm
|
||||||
|
|
||||||
|
@ -727,7 +756,7 @@ get_wm() {
|
||||||
-e "westford" \
|
-e "westford" \
|
||||||
-e "weston")"
|
-e "weston")"
|
||||||
|
|
||||||
elif [[ "$DISPLAY" && "$os" != "Mac OS X" ]]; then
|
elif [[ "$DISPLAY" && "$os" != "Mac OS X" && "$os" != "FreeMiNT" ]]; then
|
||||||
id="$(xprop -root -notype _NET_SUPPORTING_WM_CHECK)"
|
id="$(xprop -root -notype _NET_SUPPORTING_WM_CHECK)"
|
||||||
id="${id##* }"
|
id="${id##* }"
|
||||||
wm="$(xprop -id "$id" -notype -len 100 -f _NET_WM_NAME 8t)"
|
wm="$(xprop -id "$id" -notype -len 100 -f _NET_WM_NAME 8t)"
|
||||||
|
@ -763,6 +792,18 @@ get_wm() {
|
||||||
[[ "$wm" == "blackbox" ]] && wm="bbLean (Blackbox)"
|
[[ "$wm" == "blackbox" ]] && wm="bbLean (Blackbox)"
|
||||||
wm="${wm:+$wm, }Explorer"
|
wm="${wm:+$wm, }Explorer"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"FreeMiNT")
|
||||||
|
wm="Atari AES"
|
||||||
|
for files in /proc/*; do
|
||||||
|
case "$files" in
|
||||||
|
*xaaes*) wm="XaAES" ;;
|
||||||
|
*myaes*) wm="MyAES" ;;
|
||||||
|
*naes*) wm="N.AES" ;;
|
||||||
|
geneva) wm="Geneva" ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -1104,6 +1145,11 @@ get_cpu() {
|
||||||
# Get CPU cores.
|
# Get CPU cores.
|
||||||
cores="$(sysconf NPROC_ONLN)"
|
cores="$(sysconf NPROC_ONLN)"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"FreeMiNT")
|
||||||
|
cpu="$(awk -F':' '/CPU:/ {printf $2}' /kern/cpuinfo)"
|
||||||
|
speed="$(awk -F '[:.M]' '/Clocking:/ {printf $2}' /kern/cpuinfo)"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# Remove un-needed patterns from cpu output.
|
# Remove un-needed patterns from cpu output.
|
||||||
|
@ -1188,7 +1234,8 @@ get_cpu_usage() {
|
||||||
"Haiku") cores="$(sysinfo -cpu | grep -c -F 'CPU #')" ;;
|
"Haiku") cores="$(sysinfo -cpu | grep -c -F 'CPU #')" ;;
|
||||||
"iPhone OS") cores="${cpu/*\(}"; cores="${cores/\)*}" ;;
|
"iPhone OS") cores="${cpu/*\(}"; cores="${cores/\)*}" ;;
|
||||||
"AIX") cores="$(lparstat -i | awk -F':' '/Online Virtual CPUs/ {printf $2}')" ;;
|
"AIX") cores="$(lparstat -i | awk -F':' '/Online Virtual CPUs/ {printf $2}')" ;;
|
||||||
"IRIX") cores="$(sysconf NPROC_ONLN)"
|
"IRIX") cores="$(sysconf NPROC_ONLN)" ;;
|
||||||
|
"FreeMiNT") cores="$(sysctl -n hw.ncpu)"
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -1445,6 +1492,16 @@ get_memory() {
|
||||||
mem_free="$((mem_stat[5] / 1024))"
|
mem_free="$((mem_stat[5] / 1024))"
|
||||||
mem_used="$((mem_total - mem_free))"
|
mem_used="$((mem_total - mem_free))"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"FreeMiNT")
|
||||||
|
mem="$(awk -F ':|kB' '/MemTotal:|MemFree:/ {printf $2, " "}' /kern/meminfo)"
|
||||||
|
mem_free="${mem/* }"
|
||||||
|
mem_total="${mem/ *}"
|
||||||
|
mem_used="$((mem_total - mem_free))"
|
||||||
|
mem_total="$((mem_total / 1024))"
|
||||||
|
mem_used="$((mem_used / 1024))"
|
||||||
|
;;
|
||||||
|
|
||||||
esac
|
esac
|
||||||
memory="${mem_used}${mem_label:-MiB} / ${mem_total}${mem_label:-MiB}"
|
memory="${mem_used}${mem_label:-MiB} / ${mem_total}${mem_label:-MiB}"
|
||||||
|
|
||||||
|
@ -1833,6 +1890,10 @@ get_term() {
|
||||||
*) term="${TERM_PROGRAM/\.app}" ;;
|
*) term="${TERM_PROGRAM/\.app}" ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
# Most likely TosWin2 on FreeMiNT - quick check
|
||||||
|
[[ "$TERM" == "tw52" || "$TERM" == "tw100" ]] && \
|
||||||
|
term="TosWin2"
|
||||||
|
|
||||||
# Check $PPID for terminal emulator.
|
# Check $PPID for terminal emulator.
|
||||||
while [[ -z "$term" ]]; do
|
while [[ -z "$term" ]]; do
|
||||||
if [[ "$SSH_CONNECTION" ]]; then
|
if [[ "$SSH_CONNECTION" ]]; then
|
||||||
|
@ -2384,6 +2445,11 @@ get_cols() {
|
||||||
|
|
||||||
unset -v blocks blocks2 cols
|
unset -v blocks blocks2 cols
|
||||||
|
|
||||||
|
# TosWin2 on FreeMiNT is terrible at this,
|
||||||
|
# so we'll reset colors arbitrarily.
|
||||||
|
[[ "$term" == "TosWin2" ]] && \
|
||||||
|
printf "%b\n" "\\e[30;47m"
|
||||||
|
|
||||||
# Tell info() that we printed manually.
|
# Tell info() that we printed manually.
|
||||||
prin=1
|
prin=1
|
||||||
}
|
}
|
||||||
|
@ -3368,6 +3434,12 @@ get_distro_colors() {
|
||||||
ascii_file="freebsd"
|
ascii_file="freebsd"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
"FreeMiNT"*)
|
||||||
|
# Don't explicitly set colors since
|
||||||
|
# TosWin2 doesn't reset well.
|
||||||
|
ascii_file="gem"
|
||||||
|
;;
|
||||||
|
|
||||||
"Frugalware"*)
|
"Frugalware"*)
|
||||||
set_colors 4 7 1
|
set_colors 4 7 1
|
||||||
ascii_file="frugalware"
|
ascii_file="frugalware"
|
||||||
|
|
Reference in New Issue