about summary refs log tree commit diff
path: root/xuname
blob: f05013f906ca659d38ab2316ad4354bfea7196a4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh
# xuname - display system info relevant for debugging Void

OS=Void
KVER=$(uname -r)
MACH=$(xbps-uhelper arch)
OUTDATED=$(xbps-install -Mun)
HOLD=$(xbps-query -H)
VM=$(dmesg 2>/dev/null | awk '/Hypervisor detected/{print $NF}')
[ -z "$VM" ] && grep -q hypervisor /proc/cpuinfo && VM=VM
CPU=$(awk '/^vendor_id/{print $NF;exit}' /proc/cpuinfo)
[ -z "$CPU" ] && CPU=$(awk '/^platform/{print $NF;exit}' /proc/cpuinfo)
REPO=$(xbps-query --regex -p repository -s '.' | cut -d/ -f2- | sort -u | awk '
	/^\/repo-default.voidlinux.org\/current\/multilib/ {m=m"m"}
	/^\/repo-default.voidlinux.org\/current\/debug/ {d=d"d"}
	/^\/repo-default.voidlinux.org\/current\/.*\/nonfree/ {n=n"n"}
	/^\/repo-default.voidlinux.org\/current/ {r=r"r"}
	/xdowngrade-/ {D=D"D"}
	!/alpha.de.voidlinux.org/ && !/xdowngrade-/ {F=F"F"}
	END { print r m d n D F }
')

printf '%s %s %s %s %s%s %s\n' \
	"$OS" "$KVER" "$MACH" "${CPU:-Unknown}${VM:+/$VM}" "${OUTDATED:+not}uptodate" "${HOLD:+ hold}" "$REPO"