Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
neofetch
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Ximper Linux
neofetch
Commits
342942e7
Commit
342942e7
authored
Nov 05, 2016
by
Dylan Araps
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Merge #419
parent
f637bbfe
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
0 additions
and
461 deletions
+0
-461
419.patch
419.patch
+0
-461
No files found.
419.patch
deleted
100644 → 0
View file @
f637bbfe
From 5e43cd756cfdac1d3805e5e34513ff5554b16540 Mon Sep 17 00:00:00 2001
From: Muhammad Herdiansyah <herdiansyah@openmailbox.org>
Date: Sat, 8 Oct 2016 21:17:56 +0700
Subject: [PATCH 1/5] Added initial support for Haiku
---
ascii/distro/haiku | 19 ++++++++
neofetch | 140 +++++++++++++++++++++++++++++++++++++++--------------
2 files changed, 124 insertions(+), 35 deletions(-)
create mode 100644 ascii/distro/haiku
diff --git a/ascii/distro/haiku b/ascii/distro/haiku
new file mode 100644
index 0000000..d0926c5
--- /dev/null
+++ b/ascii/distro/haiku
@@ -0,0 +1,19 @@
+"\
+${c2} :dc'
+ 'l:;'${c1},${c2}'ck. .;dc:.
+ co ${c1}..${c2}k. .;; ':o.
+ co ${c1}..${c2}k. ol ${c1}.${c2}0.
+ co ${c1}..${c2}k. oc ${c1}..${c2}0.
+ co ${c1}..${c2}k. oc ${c1}..${c2}0.
+.Ol,. co ${c1}...''${c2}Oc;kkodxOdddOoc,.
+ ';lxxlxOdxkxk0kd${c1}oooll${c2}dl${c1}ccc:${c2}clxd;
+ ..${c1}oOolllllccccccc:::::${c2}od;
+ cx:ooc${c1}:::::::;${c2}cooolcX.
+ cd${c1}.${c2}''cloxdoollc' ${c1}...${c2}0.
+ cd${c1}......${c2}k;${c1}.${c2}xl${c1}.... .${c2}0.
+ .::c${c1};..${c2}cx;${c1}.${c2}xo${c1}..... .${c2}0.
+ '::c'${c1}...${c2}do${c1}..... .${c2}K,
+ cd,.${c1}....:${c2}O,${c1}
+ ':clod:'${c1}
+ ${c1}
+"
diff --git a/neofetch b/neofetch
index 14ceea3..f2cb8f8 100755
--- a/neofetch
+++ b/neofetch
@@ -30,6 +30,7 @@ getos() {
*"BSD" | "DragonFly" | "Bitrig") os="BSD" ;;
"CYGWIN"*) os="Windows" ;;
"SunOS") os="Solaris" ;;
+ "Haiku") os="Haiku" ;;
*) printf "%s\n" "Unknown OS detected: $(uname)"; exit 1 ;;
esac
}
@@ -253,6 +254,10 @@ getdistro() {
esac
distro="${distro/\(*}"
;;
+
+ "Haiku")
+ distro="$(uname -sv | awk '{print $1 " " $2}')"
+ ;;
esac
# Get architecture
@@ -303,51 +308,62 @@ getkernel() {
# Uptime {{{
getuptime() {
- # Get uptime in seconds
+
+ # Since Haiku's uptime cannot be fetched in seconds, a case outside
+ # the usual case is needed
case "$os" in
- "Linux" | "Windows")
- seconds="$(< /proc/uptime)"
- seconds="${seconds/.*}"
+ "Haiku")
+ uptime="$(uptime -u)"
+ uptime="${uptime/up }"
;;
+ *)
+ # Get uptime in seconds
+ case "$os" in
+ "Linux" | "Windows")
+ seconds="$(< /proc/uptime)"
+ seconds="${seconds/.*}"
+ ;;
- "Mac OS X" | "iPhone OS" | "BSD")
- boot="$(sysctl -n kern.boottime)"
- boot="${boot/'{ sec = '}"
- boot="${boot/,*}"
+ "Mac OS X" | "iPhone OS" | "BSD")
+ boot="$(sysctl -n kern.boottime)"
+ boot="${boot/'{ sec = '}"
+ boot="${boot/,*}"
- # Get current date in seconds
- now="$(date +%s)"
- seconds="$((now - boot))"
- ;;
+ # Get current date in seconds
+ now="$(date +%s)"
+ seconds="$((now - boot))"
+ ;;
- "Solaris")
- seconds="$(kstat -p unix:0:system_misc:snaptime | awk '{print $2}')"
- seconds="${seconds/.*}"
- ;;
- esac
+ "Solaris")
+ seconds="$(kstat -p unix:0:system_misc:snaptime | awk '{print $2}')"
+ seconds="${seconds/.*}"
+ ;;
+ esac
- days="$((seconds / 60 / 60 / 24)) days"
- hours="$((seconds / 60 / 60 % 24)) hours"
- minutes="$((seconds / 60 % 60)) minutes"
+ days="$((seconds / 60 / 60 / 24)) days"
+ hours="$((seconds / 60 / 60 % 24)) hours"
+ minutes="$((seconds / 60 % 60)) minutes"
- case "$days" in
- "0 days") unset days ;;
- "1 days") days="${days/s}" ;;
- esac
+ case "$days" in
+ "0 days") unset days ;;
+ "1 days") days="${days/s}" ;;
+ esac
- case "$hours" in
- "0 hours") unset hours ;;
- "1 hours") hours="${hours/s}" ;;
- esac
+ case "$hours" in
+ "0 hours") unset hours ;;
+ "1 hours") hours="${hours/s}" ;;
+ esac
- case "$minutes" in
- "0 minutes") unset minutes ;;
- "1 minutes") minutes="${minutes/s}" ;;
- esac
+ case "$minutes" in
+ "0 minutes") unset minutes ;;
+ "1 minutes") minutes="${minutes/s}" ;;
+ esac
- uptime="${days:+$days, }${hours:+$hours, }${minutes}"
- uptime="${uptime%', '}"
- uptime="${uptime:-${seconds} seconds}"
+ uptime="${days:+$days, }${hours:+$hours, }${minutes}"
+ uptime="${uptime%', '}"
+ uptime="${uptime:-${seconds} seconds}"
+ ;;
+ esac
# Make the output of uptime smaller.
case "$uptime_shorthand" in
@@ -461,6 +477,10 @@ getpackages() {
[ -d "/cygdrive/c/ProgramData/chocolatey/lib" ] && \
packages="$((packages+=$(ls -1 /cygdrive/c/ProgramData/chocolatey/lib | wc -l)))"
;;
+
+ "Haiku")
+ packages="$(ls -1 /boot/system/package-links | wc -l)"
+ ;;
esac
[ "$packages" == "0" ] && unset packages
@@ -845,6 +865,24 @@ getcpu() {
cpu="$cpu @ ${speed}GHz"
;;
+
+ "Haiku")
+ cpu="$(sysinfo -cpu | awk -F '\\"' '/CPU #0/ {print $2}')"
+ cpu="${cpu/@*}"
+ speed="$(sysinfo -cpu | awk '/running at/ {print $NF; exit}')"
+ speed="${speed/MHz}"
+ speed="$((speed / 100))"
+ cores="$(sysinfo -cpu | grep -c 'CPU #')"
+
+ # Fix for speed under 1ghz
+ if [ -z ] "${speed:1}"; then
+ speed="0.${speed}"
+ else
+ speed="${speed:0:1}.${speed:1}"
+ fi
+
+ cpu="$cpu @ ${speed}GHz"
+ ;;
esac
# Remove uneeded patterns from cpu output
@@ -1025,6 +1063,10 @@ getgpu() {
gpu="$(wmic path Win32_VideoController get caption /value)"
gpu="${gpu/Caption'='}"
;;
+
+ "Haiku")
+ gpu="$(listdev | grep -A2 -e 'device Display controller' | awk -F':' '/device beef/ {print $2}')"
+ ;;
esac
if [ "$gpu_brand" == "off" ]; then
@@ -1085,6 +1127,12 @@ getmemory() {
memfree="$(($(sar -r 1 1 | tail -1 | awk 'BEGIN {FS=" "} {print $2}') / 1024))"
memused="$((memtotal - memfree))"
;;
+
+ "Haiku")
+ memtotal=$(($(sysinfo -mem | head -n1 | cut -d'/' -f3 | tr -d ' ' | tr -d ')') / 1024 / 1024))
+ memused="$(sysinfo -mem | awk -F '\\/|)' '{print $2; exit}')"
+ memused="$((${memused/max} / 1024 / 1024))"
+ ;;
esac
memory="${memused}MB / ${memtotal}MB"
@@ -1268,6 +1316,14 @@ getresolution() {
[ "$width" ] && \
resolution="${width}x${height}"
;;
+
+ "Haiku")
+ resolution="$(screenmode | awk -F ' |, ' '{printf $2 "x" $3 " @ " $6 $7}')"
+
+ case "$refresh_rate" in
+ "off") resolution="${resolution/ @*}" ;;
+ esac
+ ;;
esac
resolution="${resolution%,*}"
@@ -1715,6 +1771,11 @@ getlocalip() {
"Windows")
localip="$(ipconfig | awk -F ': ' '/IPv4 Address/ {printf $2}')"
;;
+
+ "Haiku")
+ localip="$(ifconfig | awk -F ': ' '/Bcast/ {print $2}')"
+ localip="${localip/', Bcast'}"
+ ;;
esac
}
@@ -1795,6 +1856,11 @@ getbirthday() {
birthday="$(ls -alct --full-time /var/sadm/system/logs/install_log | awk '{printf $6 " " $7}')"
date_cmd="$(date -d"$birthday" "$birthday_format")"
;;
+
+ "Haiku")
+ birthday="$(ls -alctd --full-time /boot | awk '{printf $6 " " $7}')"
+ date_cmd="$(date -d"$birthday" "$birthday_format")"
+ ;;
esac
# Strip seconds from time output
@@ -2556,6 +2622,10 @@ colors() {
setcolors 1 2 4 3
;;
+ "Haiku"*)
+ setcolors 2 0
+ ;;
+
"Raspbian"* | *)
setcolors 2 1
;;
From 085c45285ae3357939649ea051e00b04006362aa Mon Sep 17 00:00:00 2001
From: Dylan Araps <dylan.araps@gmail.com>
Date: Sat, 5 Nov 2016 08:46:29 +1100
Subject: [PATCH 2/5] Haiku: Added battery support
---
neofetch | 85 +++++++++++++++++++++++++++++++++++-----------------------------
1 file changed, 46 insertions(+), 39 deletions(-)
diff --git a/neofetch b/neofetch
index f2cb8f8..c09d315 100755
--- a/neofetch
+++ b/neofetch
@@ -316,53 +316,54 @@ getuptime() {
uptime="$(uptime -u)"
uptime="${uptime/up }"
;;
- *)
- # Get uptime in seconds
- case "$os" in
- "Linux" | "Windows")
- seconds="$(< /proc/uptime)"
- seconds="${seconds/.*}"
- ;;
- "Mac OS X" | "iPhone OS" | "BSD")
- boot="$(sysctl -n kern.boottime)"
- boot="${boot/'{ sec = '}"
- boot="${boot/,*}"
+ *)
+ # Get uptime in seconds
+ case "$os" in
+ "Linux" | "Windows")
+ seconds="$(< /proc/uptime)"
+ seconds="${seconds/.*}"
+ ;;
- # Get current date in seconds
- now="$(date +%s)"
- seconds="$((now - boot))"
- ;;
+ "Mac OS X" | "iPhone OS" | "BSD")
+ boot="$(sysctl -n kern.boottime)"
+ boot="${boot/'{ sec = '}"
+ boot="${boot/,*}"
- "Solaris")
- seconds="$(kstat -p unix:0:system_misc:snaptime | awk '{print $2}')"
- seconds="${seconds/.*}"
- ;;
- esac
+ # Get current date in seconds
+ now="$(date +%s)"
+ seconds="$((now - boot))"
+ ;;
+
+ "Solaris")
+ seconds="$(kstat -p unix:0:system_misc:snaptime | awk '{print $2}')"
+ seconds="${seconds/.*}"
+ ;;
+ esac
- days="$((seconds / 60 / 60 / 24)) days"
- hours="$((seconds / 60 / 60 % 24)) hours"
- minutes="$((seconds / 60 % 60)) minutes"
+ days="$((seconds / 60 / 60 / 24)) days"
+ hours="$((seconds / 60 / 60 % 24)) hours"
+ minutes="$((seconds / 60 % 60)) minutes"
- case "$days" in
- "0 days") unset days ;;
- "1 days") days="${days/s}" ;;
- esac
+ case "$days" in
+ "0 days") unset days ;;
+ "1 days") days="${days/s}" ;;
+ esac
- case "$hours" in
- "0 hours") unset hours ;;
- "1 hours") hours="${hours/s}" ;;
- esac
+ case "$hours" in
+ "0 hours") unset hours ;;
+ "1 hours") hours="${hours/s}" ;;
+ esac
- case "$minutes" in
- "0 minutes") unset minutes ;;
- "1 minutes") minutes="${minutes/s}" ;;
- esac
+ case "$minutes" in
+ "0 minutes") unset minutes ;;
+ "1 minutes") minutes="${minutes/s}" ;;
+ esac
- uptime="${days:+$days, }${hours:+$hours, }${minutes}"
- uptime="${uptime%', '}"
- uptime="${uptime:-${seconds} seconds}"
- ;;
+ uptime="${days:+$days, }${hours:+$hours, }${minutes}"
+ uptime="${uptime%', '}"
+ uptime="${uptime:-${seconds} seconds}"
+ ;;
esac
# Make the output of uptime smaller.
@@ -1736,6 +1737,12 @@ getbattery() {
[ "$battery" ] && \
battery+="%"
;;
+
+ "Haiku")
+ 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)"
+ battery="$((battery0full / battery0now * 100))%"
+ ;;
esac
case "$battery_state" in
From 1f77ae079eef3e82fcb778f13f63a6253f9b1019 Mon Sep 17 00:00:00 2001
From: Dylan Araps <dylan.araps@gmail.com>
Date: Sat, 5 Nov 2016 08:51:59 +1100
Subject: [PATCH 3/5] Haiku: Fix battery usage
---
neofetch | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/neofetch b/neofetch
index c09d315..bf92c8a 100755
--- a/neofetch
+++ b/neofetch
@@ -1739,8 +1739,8 @@ getbattery() {
;;
"Haiku")
- 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)"
+ battery0full="$(awk -F '[^0-9]*' 'NR==5 {print $4}' /dev/power/acpi_battery/0)"
+ battery0now="$(awk -F '[^0-9]*' 'NR==2 {print $4}' /dev/power/acpi_battery/0)"
battery="$((battery0full / battery0now * 100))%"
;;
esac
From 20f9ecabeac96b6cfda864990b9387979157ef21 Mon Sep 17 00:00:00 2001
From: Dylan Araps <dylan.araps@gmail.com>
Date: Sat, 5 Nov 2016 08:55:06 +1100
Subject: [PATCH 4/5] Haiku: Fix battery again
---
neofetch | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/neofetch b/neofetch
index bf92c8a..c09d315 100755
--- a/neofetch
+++ b/neofetch
@@ -1739,8 +1739,8 @@ getbattery() {
;;
"Haiku")
- battery0full="$(awk -F '[^0-9]*' 'NR==5 {print $4}' /dev/power/acpi_battery/0)"
- battery0now="$(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)"
battery="$((battery0full / battery0now * 100))%"
;;
esac
From f49b2826bac5c29f3b81da7ef49195e917556c0f Mon Sep 17 00:00:00 2001
From: Dylan Araps <dylan.araps@gmail.com>
Date: Sat, 5 Nov 2016 08:56:48 +1100
Subject: [PATCH 5/5] Disk: Disable disk in Haiku
---
neofetch | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/neofetch b/neofetch
index c09d315..ac46a84 100755
--- a/neofetch
+++ b/neofetch
@@ -1619,7 +1619,7 @@ getdisk() {
esac
;;
- "Mac OS X" | "BSD")
+ "Mac OS X" | "BSD" | "Haiku")
case "$distro" in
"FreeBSD"* | *"OS X"* | "Mac"* )
df_flags="-l -H /"
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment