diff --git a/ufetch-alpine b/ufetch-alpine index 735ac3c..2ab0c4d 100755 --- a/ufetch-alpine +++ b/ufetch-alpine @@ -10,10 +10,21 @@ os='Alpine Linux' kernel="$(uname -sr)" uptime="$(uptime | awk -F, '{sub(".*up ",x,$1);print $1}' | sed -e 's/^[ \t]*//')" packages="$(apk info | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-antergos b/ufetch-antergos index f9467a9..3ee06a7 100755 --- a/ufetch-antergos +++ b/ufetch-antergos @@ -10,10 +10,21 @@ os='Antergos' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(pacman -Q | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-arch b/ufetch-arch index 175f644..eb29af3 100755 --- a/ufetch-arch +++ b/ufetch-arch @@ -10,10 +10,21 @@ os='Arch Linux' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(pacman -Q | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-archbang b/ufetch-archbang index b9b531e..1c6f460 100755 --- a/ufetch-archbang +++ b/ufetch-archbang @@ -10,10 +10,21 @@ os='ArchBang' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(pacman -Q | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-arco b/ufetch-arco index 8e0da8f..4d5a17f 100755 --- a/ufetch-arco +++ b/ufetch-arco @@ -10,10 +10,21 @@ os='ArcoLinux' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(pacman -Q | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-artix b/ufetch-artix index 565c843..d968cff 100755 --- a/ufetch-artix +++ b/ufetch-artix @@ -10,10 +10,21 @@ os='Artix Linux' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(pacman -Q | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-aux b/ufetch-aux index 22cbdaa..57f1eef 100755 --- a/ufetch-aux +++ b/ufetch-aux @@ -10,7 +10,7 @@ os=`uname -sr` kernel=`uname -v` uptime=`uptime | awk '{print $3" "$4}' | tr -d ,` packages='unknown' -shell=`basename "$SHELL"` +shell=`basename "${SHELL}"` ## UI DETECTION diff --git a/ufetch-centos b/ufetch-centos index 53bc0ab..47c35ed 100755 --- a/ufetch-centos +++ b/ufetch-centos @@ -10,10 +10,21 @@ os="$(cat /etc/centos-release | sed 's/release //')" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(yum list installed | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-crux b/ufetch-crux index 8c5d629..6783ccb 100755 --- a/ufetch-crux +++ b/ufetch-crux @@ -10,10 +10,21 @@ os="$(crux)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(pkginfo -i | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-debian b/ufetch-debian index 786984b..7b6393e 100755 --- a/ufetch-debian +++ b/ufetch-debian @@ -10,10 +10,21 @@ os="Debian $(cat /etc/debian_version)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dpkg -l | grep -c ^i)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,23 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -elif [ -h /etc/alternatives/x-session-manager ]; then - ui="$(update-alternatives --query x-session-manager | awk -F'/' '/Value/{print $4}')" - uitype='DE' -elif [ -h /etc/alternatives/x-window-manager ]; then - ui="$(update-alternatives --query x-window-manager | awk -F'/' '/Value/{print $4}')" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-devuan b/ufetch-devuan index 65d5edd..9e5b998 100755 --- a/ufetch-devuan +++ b/ufetch-devuan @@ -10,10 +10,21 @@ os="Devuan $(cat /etc/debian_version)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dpkg -l | grep -c ^i)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,23 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -elif [ -h /etc/alternatives/x-session-manager ]; then - ui="$(update-alternatives --query x-session-manager | awk -F'/' '/Value/{print $4}')" - uitype='DE' -elif [ -h /etc/alternatives/x-window-manager ]; then - ui="$(update-alternatives --query x-window-manager | awk -F'/' '/Value/{print $4}')" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-elementary b/ufetch-elementary index c534927..eedaa76 100755 --- a/ufetch-elementary +++ b/ufetch-elementary @@ -10,10 +10,21 @@ os="$(lsb_release -ds)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dpkg -l | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-fedora b/ufetch-fedora index 24877ec..e7993e1 100755 --- a/ufetch-fedora +++ b/ufetch-fedora @@ -10,10 +10,21 @@ os="$(cat /etc/fedora-release)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dnf list installed | sed '1d' | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-freebsd b/ufetch-freebsd index 33a544c..19701d9 100755 --- a/ufetch-freebsd +++ b/ufetch-freebsd @@ -10,10 +10,21 @@ os="$(uname -sr)" kernel="$(uname -iK)" uptime="$(uptime | awk -F, '{sub(".*up ",x,$1);print $1}' | sed -e 's/^[ \t]*//')" packages="$(pkg info | wc -l | sed -e 's/^[ \t]*//')" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-gentoo b/ufetch-gentoo index d477f8a..baf7a84 100755 --- a/ufetch-gentoo +++ b/ufetch-gentoo @@ -10,10 +10,21 @@ os='Gentoo Linux' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(ls -d /var/db/pkg/*/* | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-gnewsense b/ufetch-gnewsense index 4dd87cd..52c78e4 100755 --- a/ufetch-gnewsense +++ b/ufetch-gnewsense @@ -10,10 +10,21 @@ os='gNewSense' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dpkg -l | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-guix b/ufetch-guix index c4ab79b..06abb0e 100755 --- a/ufetch-guix +++ b/ufetch-guix @@ -10,10 +10,21 @@ os='Guix System' kernel="$(uname -sr)" uptime="$(uptime | sed 's/.*up \([^,]*\).*/\1/')" packages="$(guix package --list-installed | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-hyperbola b/ufetch-hyperbola index 8471d50..a94b303 100755 --- a/ufetch-hyperbola +++ b/ufetch-hyperbola @@ -10,10 +10,21 @@ os='Hyperbola GNU/Linux-libre' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(pacman -Q | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-instantos b/ufetch-instantos index fe926ac..9e43e52 100755 --- a/ufetch-instantos +++ b/ufetch-instantos @@ -10,10 +10,21 @@ os='instantOS' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(pacman -Q | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-linux b/ufetch-linux index 1879750..dab7533 100755 --- a/ufetch-linux +++ b/ufetch-linux @@ -10,10 +10,21 @@ os='Linux' # I'd just like to interject for a moment... kernel="$(uname -sr)" uptime="$(uptime | awk -F, '{sub(".*up ",x,$1);print $1}' | sed -e 's/^[ \t]*//')" packages='unknown' -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-linuxlite b/ufetch-linuxlite index 0e4e7d5..366bb99 100755 --- a/ufetch-linuxlite +++ b/ufetch-linuxlite @@ -10,10 +10,21 @@ os="$(lsb_release -ds)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dpkg -l | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-macos b/ufetch-macos index f9acf66..d430191 100755 --- a/ufetch-macos +++ b/ufetch-macos @@ -9,7 +9,7 @@ host="$(hostname -s)" os="$(sw_vers -productName) $(sw_vers -productVersion)" kernel="$(uname -sr)" uptime="$(uptime | awk -F, '{sub(".*up ",x,$1);print $1}' | sed -e 's/^[ \t]*//')" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## PACKAGE MANAGER DETECTION @@ -25,7 +25,7 @@ else packages='unknown' fi -packages="$(echo ${packages} | sed -e 's/^[ /t]*//')" +packages="$(echo "${packages}" | sed -e 's/^[ /t]*//')" ## UI DETECTION @@ -39,7 +39,8 @@ else ui='Aqua' uitype='UI' fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-mageia b/ufetch-mageia index a36919c..6f6f355 100755 --- a/ufetch-mageia +++ b/ufetch-mageia @@ -10,10 +10,21 @@ os="$(lsb_release -ds)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(yum list installed | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-manjaro b/ufetch-manjaro index 4bf8055..790dec8 100755 --- a/ufetch-manjaro +++ b/ufetch-manjaro @@ -10,10 +10,21 @@ os='Manjaro' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(pacman -Q | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-mint b/ufetch-mint index bbfd4cb..c966960 100755 --- a/ufetch-mint +++ b/ufetch-mint @@ -10,10 +10,21 @@ os="$(lsb_release -ds)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dpkg -l | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-mx b/ufetch-mx index 1b22b4e..bcd492f 100755 --- a/ufetch-mx +++ b/ufetch-mx @@ -10,10 +10,21 @@ os="$(lsb_release -ds)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dpkg -l | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-netbsd b/ufetch-netbsd index c45580c..3f9d728 100755 --- a/ufetch-netbsd +++ b/ufetch-netbsd @@ -10,10 +10,21 @@ os="$(uname -sr)" kernel="$(uname -r)" uptime="$(uptime | awk -F, '{sub(".*up ",x,$1);print $1}' | sed -e 's/^[ \t]*//')" packages="$(pkg_info | wc -l | sed -e 's/^[ \t]*//')" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-nixos b/ufetch-nixos index 60902f9..bb06a03 100755 --- a/ufetch-nixos +++ b/ufetch-nixos @@ -10,10 +10,21 @@ os="$(nixos-version)" kernel="$(uname -sr)" uptime="$(uptime | awk -F, '{sub(".*up ",x,$1);print $1}' | sed -e 's/^[ \t]*//')" packages="$(ls -d -1 /nix/store/*/ | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-openbsd b/ufetch-openbsd index b7c8975..fd3d8df 100755 --- a/ufetch-openbsd +++ b/ufetch-openbsd @@ -10,10 +10,21 @@ os="$(uname -sr)" kernel="$(uname -v)" uptime="$(uptime | awk -F, '{sub(".*up ",x,$1);print $1}' | sed -e 's/^[ \t]*//')" packages="$(ls -d /var/db/pkg/* | wc -l | sed -e 's/^[ \t]*//')" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-parabola b/ufetch-parabola index 39ab174..0e663c4 100755 --- a/ufetch-parabola +++ b/ufetch-parabola @@ -10,10 +10,21 @@ os='Parabola GNU/Linux' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(pacman -Q | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-popos b/ufetch-popos index ac33c1a..bd61bee 100755 --- a/ufetch-popos +++ b/ufetch-popos @@ -10,10 +10,21 @@ os="$(lsb_release -ds)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dpkg -l | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS @@ -63,7 +71,7 @@ c0="${reset}${cyan}" # first color ## OUTPUT cat < /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-raspbian b/ufetch-raspbian index 52119dd..ee5df16 100755 --- a/ufetch-raspbian +++ b/ufetch-raspbian @@ -10,10 +10,21 @@ os='Raspbian' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dpkg -l | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-slackware b/ufetch-slackware index f340a2b..8a537db 100755 --- a/ufetch-slackware +++ b/ufetch-slackware @@ -10,10 +10,21 @@ os="$(cat /etc/slackware-version)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(ls /var/log/packages | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-suse b/ufetch-suse index 6efcd00..e7d4518 100755 --- a/ufetch-suse +++ b/ufetch-suse @@ -10,10 +10,21 @@ os="$(lsb_release -ds)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(rpm -qa --last | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-ubuntu b/ufetch-ubuntu index 27025d8..199d654 100755 --- a/ufetch-ubuntu +++ b/ufetch-ubuntu @@ -10,10 +10,21 @@ os="$(lsb_release -ds)" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dpkg -l | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-void b/ufetch-void index 8df81fd..ededfa6 100755 --- a/ufetch-void +++ b/ufetch-void @@ -10,10 +10,21 @@ os='Void Linux' kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(xbps-query -l | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS diff --git a/ufetch-voyager b/ufetch-voyager index ce07e78..5bfef7f 100755 --- a/ufetch-voyager +++ b/ufetch-voyager @@ -10,10 +10,21 @@ os="Voyager Live $(lsb_release -r | awk '{print $2}')" kernel="$(uname -sr)" uptime="$(uptime -p | sed 's/up //')" packages="$(dpkg -l | wc -l)" -shell="$(basename "$SHELL")" +shell="$(basename "${SHELL}")" ## UI DETECTION +parse_rcs() { + for f in "${@}"; do + wm="$(tail -n 1 "${f}" 2> /dev/null | cut -d ' ' -f 2)" + [ -n "${wm}" ] && echo "${wm}" && return + done +} + +rcwm="$(parse_rcs "${HOME}/.xinitrc" "${HOME}/.xsession")" + +ui='unknown' +uitype='UI' if [ -n "${DE}" ]; then ui="${DE}" uitype='DE' @@ -26,17 +37,14 @@ elif [ -n "${XDG_CURRENT_DESKTOP}" ]; then elif [ -n "${DESKTOP_SESSION}" ]; then ui="${DESKTOP_SESSION}" uitype='DE' -elif [ -f "${HOME}/.xinitrc" ]; then - ui="$(tail -n 1 "${HOME}/.xinitrc" | cut -d ' ' -f 2)" +elif [ -n "${rcwm}" ]; then + ui="${rcwm}" uitype='WM' -elif [ -f "${HOME}/.xsession" ]; then - ui="$(tail -n 1 "${HOME}/.xsession" | cut -d ' ' -f 2)" - uitype='WM' -else - ui='unknown' - uitype='UI' +elif [ -n "${XDG_SESSION_TYPE}" ]; then + ui="${XDG_SESSION_TYPE}" fi -ui="$(basename ${ui})" + +ui="$(basename "${ui}")" ## DEFINE COLORS