Ports: Add neofetch

This commit is contained in:
Linus Groh 2020-04-27 19:09:43 +01:00 committed by Andreas Kling
parent 092e275633
commit 92671be906
Notes: sideshowbarker 2024-07-19 07:14:06 +09:00
3 changed files with 289 additions and 0 deletions

6
Ports/neofetch/package.sh Executable file
View file

@ -0,0 +1,6 @@
#!/bin/bash ../.port_include.sh
port=neofetch
version=7.0.0
useconfigure=false
depends=bash
files="https://github.com/dylanaraps/neofetch/archive/${version}.tar.gz neofetch-${version}.tar.gz"

View file

@ -0,0 +1,275 @@
--- neofetch-7.0.0/neofetch 2020-04-27 15:12:00.884771680 +0100
+++ neofetch-7.0.0/neofetch 2020-04-27 20:10:22.265079042 +0100
@@ -775,7 +775,7 @@
# PostMarketOS, Proxmox, Puppy, PureOS, Qubes, Radix, Raspbian,
# Reborn_OS, Redstar, Redcore, Redhat, Refracted_Devuan, Regata,
# Rosa, sabotage, Sabayon, Sailfish, SalentOS, Scientific, Septor,
-# SharkLinux, Siduction, Slackware, SliTaz, SmartOS, Solus,
+# SerenityOS, SharkLinux, Siduction, Slackware, SliTaz, SmartOS, Solus,
# Source_Mage, Sparky, Star, SteamOS, SunOS, openSUSE_Leap,
# openSUSE_Tumbleweed, openSUSE, SwagArch, Tails, Trisquel,
# Ubuntu-Budgie, Ubuntu-GNOME, Ubuntu-MATE, Ubuntu-Studio, Ubuntu,
@@ -923,6 +923,8 @@
: Windows
;;
+ SerenityOS): SerenityOS ;;
+
*)
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
@@ -1142,6 +1144,10 @@
FreeMiNT)
distro=FreeMiNT
;;
+
+ SerenityOS)
+ distro=SerenityOS
+ ;;
esac
distro=${distro//Enterprise Server}
@@ -1306,7 +1312,7 @@
get_kernel() {
# Since these OS are integrated systems, it's better to skip this function altogether
- [[ $os =~ (AIX|IRIX) ]] && return
+ # [[ $os =~ (AIX|IRIX) ]] && return
# Haiku uses 'uname -v' and not - 'uname -r'.
[[ $os == Haiku ]] && {
@@ -1327,17 +1333,17 @@
esac
# Hide kernel info if it's identical to the distro info.
- [[ $os =~ (BSD|MINIX) && $distro == *"$kernel_name"* ]] &&
- case $distro_shorthand in
- on|tiny) kernel=$kernel_version ;;
- *) unset kernel ;;
- esac
+ # [[ $os =~ (BSD|MINIX) && $distro == *"$kernel_name"* ]] &&
+ # case $distro_shorthand in
+ # on|tiny) kernel=$kernel_version ;;
+ # *) unset kernel ;;
+ # esac
}
get_uptime() {
# Get uptime in seconds.
case $os in
- Linux|Windows|MINIX)
+ Linux|Windows|MINIX|SerenityOS)
if [[ -r /proc/uptime ]]; then
s=$(< /proc/uptime)
s=${s/.*}
@@ -1396,7 +1402,10 @@
uptime=${d:+$d, }${h:+$h, }$m
uptime=${uptime%', '}
- uptime=${uptime:-$seconds secs}
+ # s/$seconds/$s
+ # Note: this was fixed upstream already but not released yet
+ # https://github.com/dylanaraps/neofetch/commit/e960c5168654211a8429e8089ba160e3cc89dc37
+ uptime=${uptime:-$s secs}
# Make the output of uptime smaller.
case $uptime_shorthand in
@@ -1577,6 +1586,8 @@
off) shell="${SHELL##*/} " ;;
esac
+ [[ $os == SerenityOS ]] && shell="SerenityOS Shell"
+
[[ $shell_version != on ]] && return
case ${shell_name:=${SHELL##*/}} in
@@ -2030,13 +2041,13 @@
speed_dir="/sys/devices/system/cpu/cpu0/cpufreq"
# Select the right temperature file.
- for temp_dir in /sys/class/hwmon/*; do
- [[ "$(< "${temp_dir}/name")" =~ (coretemp|fam15h_power|k10temp) ]] && {
- temp_dirs=("$temp_dir"/temp*_input)
- temp_dir=${temp_dirs[0]}
- break
- }
- done
+ # for temp_dir in /sys/class/hwmon/*; do
+ # [[ "$(< "${temp_dir}/name")" =~ (coretemp|fam15h_power|k10temp) ]] && {
+ # temp_dirs=("$temp_dir"/temp*_input)
+ # temp_dir=${temp_dirs[0]}
+ # break
+ # }
+ # done
# Get CPU speed.
if [[ -d "$speed_dir" ]]; then
@@ -2201,6 +2212,17 @@
cpu="$(awk -F':' '/CPU:/ {printf $2}' /kern/cpuinfo)"
speed="$(awk -F '[:.M]' '/Clocking:/ {printf $2}' /kern/cpuinfo)"
;;
+
+ "SerenityOS")
+ while IFS=":" read -r a b; do
+ case $a in
+ "brandstr") cpu="${b//\"}" ;;
+ esac
+ done < /proc/cpuinfo
+ # `cpu` will contain "@ [speed]GHz" and to be super correct we
+ # have to cut that off and store it in `speed` only for neofetch
+ # to append it again later - but that's fine for now this way.
+ ;;
esac
# Remove un-needed patterns from cpu output.
@@ -2585,6 +2607,16 @@
mem_used="$((mem_used / 1024))"
;;
+ "SerenityOS")
+ while IFS=":" read -d "," -r a b; do
+ case $a in
+ "\"user_physical_allocated\"") mem_used="$((b * 4096 / 1024 / 1024))" ;;
+ "\"user_physical_available\"") mem_free="$((b * 4096 / 1024 / 1024))" ;;
+ esac
+ done < /proc/memstat
+ mem_total="$((mem_used + mem_free))"
+ ;;
+
esac
[[ "$memory_percent" == "on" ]] && ((mem_perc=mem_used * 100 / mem_total))
@@ -3027,6 +3059,17 @@
theme="${theme/ '[Plasma]'}"
fi
fi
+
+ if [[ "$os" == "SerenityOS" ]]; then
+ theme="Default"
+ # This will stop working if there's another "Name" key!
+ # We somehow need to check if the current section is "[Theme]".
+ while IFS="=" read -r a b; do
+ case $a in
+ $serenity) theme="${b}" ;;
+ esac
+ done < /etc/WindowServer/WindowServer.ini
+ fi
}
get_theme() {
@@ -3035,6 +3078,7 @@
gconf="gtk_theme"
xfconf="/Net/ThemeName"
kde="Name"
+ serenity="Name"
get_style
}
@@ -3045,6 +3089,7 @@
gconf="icon_theme"
xfconf="/Net/IconThemeName"
kde="Theme"
+ serenity=
get_style
icons="$theme"
@@ -3074,6 +3119,8 @@
*) term="${TERM_PROGRAM/\.app}" ;;
esac
+ [[ $os == SerenityOS ]] && term="SerenityOS Terminal"
+
# Most likely TosWin2 on FreeMiNT - quick check
[[ "$TERM" == "tw52" || "$TERM" == "tw100" ]] && term="TosWin2"
[[ "$SSH_CONNECTION" ]] && term="$SSH_TTY"
@@ -3637,10 +3684,10 @@
}
get_public_ip() {
- if type -p dig >/dev/null; then
- public_ip="$(dig +time=1 +tries=1 +short myip.opendns.com @resolver1.opendns.com)"
- [[ "$public_ip" =~ ^\; ]] && unset public_ip
- fi
+ # if type -p dig >/dev/null; then
+ # public_ip="$(dig +time=1 +tries=1 +short myip.opendns.com @resolver1.opendns.com)"
+ # [[ "$public_ip" =~ ^\; ]] && unset public_ip
+ # fi
if [[ -z "$public_ip" ]] && type -p drill >/dev/null; then
public_ip="$(drill myip.opendns.com @resolver1.opendns.com | \
@@ -3785,13 +3832,13 @@
}
print_ascii() {
- if [[ -f "$image_source" && ! "$image_source" =~ (png|jpg|jpeg|jpe|svg|gif) ]]; then
- ascii_data="$(< "$image_source")"
- elif [[ "$image_source" == "ascii" || $image_source == auto ]]; then
- :
- else
- ascii_data="$image_source"
- fi
+ # if [[ -f "$image_source" && ! "$image_source" =~ (png|jpg|jpeg|jpe|svg|gif) ]]; then
+ # ascii_data="$(< "$image_source")"
+ # elif [[ "$image_source" == "ascii" || $image_source == auto ]]; then
+ # :
+ # else
+ # ascii_data="$image_source"
+ # fi
# Set locale to get correct padding.
LC_ALL="$sys_locale"
@@ -4549,8 +4596,8 @@
padding=${xrdb/*internalBorder:}
padding=${padding/$'\n'*}
- [[ $padding =~ ^[0-9]+$ ]] ||
- padding=
+ # [[ $padding =~ ^[0-9]+$ ]] ||
+ # padding=
;;
esac
}
@@ -4834,7 +4881,7 @@
PostMarketOS, Proxmox, Puppy, PureOS, Qubes, Radix, Raspbian,
Reborn_OS, Redstar, Redcore, Redhat, Refracted_Devuan, Regata,
Rosa, sabotage, Sabayon, Sailfish, SalentOS, Scientific, Septor,
- SharkLinux, Siduction, Slackware, SliTaz, SmartOS, Solus,
+ SerenityOS, SharkLinux, Siduction, Slackware, SliTaz, SmartOS, Solus,
Source_Mage, Sparky, Star, SteamOS, SunOS, openSUSE_Leap,
openSUSE_Tumbleweed, openSUSE, SwagArch, Tails, Trisquel,
Ubuntu-Budgie, Ubuntu-GNOME, Ubuntu-MATE, Ubuntu-Studio, Ubuntu,
@@ -9097,6 +9144,34 @@
EOF
;;
+ "SerenityOS"*)
+ set_colors 3 1 7 8 15
+ read -rd '' ascii_data <<'EOF'
+${c4} _ __
+ / o \ ,^ _ `\
+ \./ ] | /* /
+${c5} - *~ .#_ ${c4}`--`
+${c5} ,` ' "w
+${c5} ]` / ]${c4}Kp
+${c5} B 'M %m ]${c4}KK
+ K${c5}p \ #${c4}KKH
+ KK${c5}N,,,w,__,#${c4}KKK
+ `KKK${c2}\KKKKK${c4}KKK${c3}KK${c4}${c2}KNw${c4}
+ #R${c3}K${c4}K${c3}\KK${c4}gKKKH${c3}L5${c4}${c2}KK${c4}K
+ ]K${c3}|a${c4}#KKKKKBKNp${c3}LI${c4}${c2}K${c4}KN
+ .K${c3}K${c4}KDKBKBBKKKKKKN${c3}]${c4}${c2}KK${c4}
+${c2} ]K${c3}IMK${c4}KBKKKKKKKK${c3}RMI${c4}${c2}KKH${c4}
+${c2} ]K${c3}I${c4}#KkBBBBBBKKKKN${c3}I${c4}${c2}KK${c4}
+${c2} ]K${c3}[K${c4}KKBKKKKKKKKM${c3}*]${c4}KK
+ `KN${c3}|1${c4}KKKKKKKBKM${c3}`L${c4}KKM
+ `KN${c3},|]${c4}KKKKK${c3}/|L;${c4}${c2}#${c4}KK
+ `--KKK KK${c2}KKKKK${c4}
+ aaNKKKaKK ${c2}`${c4}
+ KKKKKKKKM
+ ````
+EOF
+ ;;
+
"SharkLinux"*)
set_colors 4 7
read -rd '' ascii_data <<'EOF'

View file

@ -0,0 +1,8 @@
--- neofetch-7.0.0/neofetch 2020-04-27 15:12:00.884771680 +0100
+++ neofetch-7.0.0/neofetch 2020-04-27 18:57:54.263417418 +0100
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/bin/bash
# vim: noai:ts=4:sw=4:expandtab
# shellcheck source=/dev/null
# shellcheck disable=2009