Сведения о дистрибутиве после обновления

После недавних обновлений системы, screenfetch перестал читать информацию в фалах lsb_release и os-release в которых до этого я изменял имя дистрибутива. Так от куда же тогда берет настоящее название дистрибутива программа screenfetch?
After git clone [email protected]:KittyKatt/screenFetch.git

desktop|screenFetch$ wc -l screenfetch-dev
4346 screenfetch-dev
desktop|screenFetch$ grep -in '/etc/' screenfetch-dev
356:					if grep -q 'antergos' /etc/os-release; then
360:					if grep -q -i 'logos' /etc/os-release; then
367:					distro_more="$(head -n1 /etc/fedora-release)"
378:					if [[ -f /etc/crunchbang-lsb-release || -f /etc/lsb-release-crunchbang ]]; then
380:						distro_release=$(awk -F'=' '/^DISTRIB_RELEASE=/ {print $2}' /etc/lsb-release-crunchbang)
381:						distro_codename=$(awk -F'=' '/^DISTRIB_DESCRIPTION=/ {print $2}' /etc/lsb-release-crunchbang)
382:					elif [[ -f /etc/os-release ]]; then
383:						if [[ "$(cat /etc/os-release)" =~ "Raspbian" ]]; then
385:							distro_release=$(awk -F'=' '/^PRETTY_NAME=/ {print $2}' /etc/os-release)
463:					if [[ -f /etc/os-release ]]; then
464:						if grep -q 'SailfishOS' /etc/os-release; then
466:							distro_codename="$(grep 'VERSION=' /etc/os-release | cut -d '(' -f2 | cut -d ')' -f1)"
467:							distro_release="$(awk -F'=' '/^VERSION=/ {print $2}' /etc/os-release)"
507:					if [[ -f /etc/os-release ]]; then
508:						distro_codename="$(grep 'VERSION=' /etc/os-release | cut -d '(' -f2 | cut -d ')' -f1)"
509:						distro_release="$(awk -F'=' '/^VERSION=/ {print $2}' /etc/os-release)"
561:				if [ -f /etc/os-release ]; then
562:					distrib_id=$(</etc/os-release);
595:					if [ -f /etc/lsb-release ]; then
596:						LSB_RELEASE=$(</etc/lsb-release)
622:					if [ -f /etc/arch-release ]; then distro="Arch Linux"
623:					elif [ -f /etc/chakra-release ]; then distro="Chakra"
624:					elif [ -f /etc/crunchbang-lsb-release ]; then distro="CrunchBang"
625:					elif [ -f /etc/debian_version ]; then
626:						if [ -f /etc/issue ] && grep -q "gNewSense" /etc/issue ; then
631:						if grep -q "Kali" /etc/debian_version ; then
634:					elif [ -f /etc/dragora-version ]; then distro="Dragora" && distro_more="$(cut -d, -f1 /etc/dragora-version)"
635:					elif [ -f /etc/evolveos-release ]; then distro="Evolve OS"
636:					elif [ -f /etc/fedora-release ]; then
637:						if grep -q "Korora" /etc/fedora-release; then
639:						elif grep -q "BLAG" /etc/fedora-release; then
641:							distro_more="$(head -n1 /etc/fedora-release)"
645:					elif [ -f /etc/frugalware-release ]; then distro="Frugalware"
646:					elif [ -f /etc/gentoo-release ]; then
647:						if grep -q "Funtoo" /etc/gentoo-release ; then
652:					elif [ -f /etc/mageia-release ]; then distro="Mageia"
653:					elif [ -f /etc/mandrake-release ]; then
654:						if grep -q "PCLinuxOS" /etc/mandrake-release ; then
659:					elif [ -f /etc/mandriva-release ]; then
660:						if grep -q "PCLinuxOS" /etc/mandriva-release ; then
665:					elif [ -f /etc/NIXOS ]; then distro="NixOS"
666:					elif [ -f /etc/SuSE-release ]; then distro="openSUSE"
667:					elif [ -f /etc/pclinuxos-release ]; then distro="PCLinuxOS"
668:					elif [ -f /etc/redhat-release ]; then
669:						if grep -q "CentOS" /etc/redhat-release; then
671:						elif grep -q "PCLinuxOS" /etc/redhat-release; then
676:					elif [ -f /etc/slackware-version ]; then distro="Slackware"
680:					elif [ -f /etc/sabayon-edition ]; then distro="Sabayon"; fi
713:				if [[ -f /etc/issue ]]; then
732:					}' /etc/issue)
737:				if [[ -f /etc/system-release ]]; then
738:					if grep -q "Scientific Linux" /etc/system-release; then
741:				elif [[ -f /etc/lsb-release ]]; then
742:					if grep -q "CHROMEOS_RELEASE_NAME" /etc/lsb-release; then
743:						distro="$(awk -F'=' '/^CHROMEOS_RELEASE_NAME=/ {print $2}' /etc/lsb-release)"
744:						distro_more="$(awk -F'=' '/^CHROMEOS_RELEASE_VERSION=/ {print $2}' /etc/lsb-release)"
1553:					if [[ -f /etc/deepin-version ]]; then
1554:						DEver="$(awk -F '=' '/Version/ {print $2}' /etc/deepin-version)"
2055:				# /etc/gtk-2.0/gtkrc compatability
2056:				if [[ -f /etc/gtk-2.0/gtkrc && ! -f $HOME/.gtkrc-2.0 && ! -f $HOME/.gtkrc.mine ]]; then
2057:					if grep -q gtk-theme-name /etc/gtk-2.0/gtkrc; then
2058:						gtk2Theme=$(awk -F'"' '/^gtk-theme-name/ {print $2}' /etc/gtk-2.0/gtkrc)
2060:					if grep -q gtk-fallback-theme-name /etc/gtk-2.0/gtkrc  && ! [ "x$gtk2Theme" = "x" ]; then
2061:						gtk2Theme=$(awk -F'"' '/^gtk-fallback-theme-name/ {print $2}' /etc/gtk-2.0/gtkrc)
2064:					if grep -q icon-theme /etc/gtk-2.0/gtkrc; then
2065:						gtkIcons=$(awk -F'"' '/^icon-theme/ {print $2}' /etc/gtk-2.0/gtkrc)
2067:					if  grep -q gtk-fallback-icon-theme /etc/gtk-2.0/gtkrc  && ! [ "x$gtkIcons" = "x" ]; then
2068:						gtkIcons=$(awk -F'"' '/^gtk-fallback-icon-theme/ {print $2}' /etc/gtk-2.0/gtkrc)
2071:					if grep -q font /etc/gtk-2.0/gtkrc; then
2072:						gtkFont=$(awk -F'"' '/^gtk-font-name/ {print $2}' /etc/gtk-2.0/gtkrc)
and

desktop|screenFetch$ grep -in 'uname' screenfetch-dev
535:			if [ $(uname -o 2>/dev/null) ]; then
536:				case "$(uname -o)" in
546:						distro_more="$(uname -v | tr ' ' '\n' | grep 'hrev')"
848:	kernel=( $(uname -srm) )
988:		if [ "$(uname -m | grep 'i*86')" ]; then

Как видно, программа использует (в примении к Arch) - /etc/os-release , /etc/issue , uname -o
Всего-то строк.
https://github.com/KittyKatt/screenFetch/blob/master/screenfetch-dev
			if [[ "${distro}" == "Unknown" ]]; then
				if [[ "${OSTYPE}" == "linux-gnu" || "${OSTYPE}" == "linux" || "${OSTYPE}" == "gnu" ]]; then
					if [ -f /etc/arch-release ]; then distro="Arch Linux"
					elif [ -f /etc/chakra-release ]; then distro="Chakra"
					elif [ -f /etc/crunchbang-lsb-release ]; then distro="CrunchBang"
					elif [ -f /etc/debian_version ]; then
						if [ -f /etc/issue ] && grep -q "gNewSense" /etc/issue ; then
							distro="gNewSense"
						else
							distro="Debian"
						fi
						if grep -q "Kali" /etc/debian_version ; then
							distro="Kali Linux"
						fi
					elif [ -f /etc/dragora-version ]; then distro="Dragora" && distro_more="$(cut -d, -f1 /etc/dragora-version)"
					elif [ -f /etc/evolveos-release ]; then distro="Evolve OS"
					elif [ -f /etc/fedora-release ]; then
						if grep -q "Korora" /etc/fedora-release; then
							distro="Korora"
						elif grep -q "BLAG" /etc/fedora-release; then
							distro="BLAG"
							distro_more="$(head -n1 /etc/fedora-release)"
						else
							distro="Fedora"
						fi
					elif [ -f /etc/frugalware-release ]; then distro="Frugalware"
					elif [ -f /etc/gentoo-release ]; then
						if grep -q "Funtoo" /etc/gentoo-release ; then
							distro="Funtoo"
						else
							distro="Gentoo"
						fi
					elif [ -f /etc/mageia-release ]; then distro="Mageia"
					elif [ -f /etc/mandrake-release ]; then
						if grep -q "PCLinuxOS" /etc/mandrake-release ; then
							distro="PCLinuxOS"
						else
							distro="Mandrake"
						fi
					elif [ -f /etc/mandriva-release ]; then
						if grep -q "PCLinuxOS" /etc/mandriva-release ; then
							distro="PCLinuxOS"
						else
							distro="Mandriva"
						fi
					elif [ -f /etc/NIXOS ]; then distro="NixOS"
					elif [ -f /etc/SuSE-release ]; then distro="openSUSE"
					elif [ -f /etc/pclinuxos-release ]; then distro="PCLinuxOS"
					elif [ -f /etc/redhat-release ]; then
						if grep -q "CentOS" /etc/redhat-release; then
							distro="CentOS"
						elif grep -q "PCLinuxOS" /etc/redhat-release; then
							distro="PCLinuxOS"
						else
							distro="Red Hat Enterprise Linux"
						fi
					elif [ -f /etc/slackware-version ]; then distro="Slackware"
					elif [ -f /usr/share/doc/tc/release.txt ]; then
						distro="TinyCore"
						distro_more="$(cat /usr/share/doc/tc/release.txt)"
					elif [ -f /etc/sabayon-edition ]; then distro="Sabayon";
..............
Так и каков от сюда вывод если у меня /etc/os-release /etc/issue изменено имя дитрибутива?
Вывод простой - запустить в отладке скрипт и посмотреть :)
Вас направили в правильном направлении.
Или вы считаете его ошибочным?
corner
Вывод простой - запустить в отладке скрипт и посмотреть :)

Не совсем ясно как это сделать..
Это просто скрипт BASH.

file screenfetch-dev
screenfetch-dev: Bourne-Again shell script, UTF-8 Unicode text executable, with very long lines

BASH debug
У меня такой же вывод как и у вас. скрипт показывает что у меня арч потому что это указано в /etc/os-release , /etc/issue , uname -o, но screenfetch говорит что это не арч
ForumLiker
скрипт показывает что у меня арч
ForumLiker
но screenfetch говорит что это не арч
Это к невропатологу, или учителю информатики:-)
ForumLiker
Так от куда же тогда берет настоящее название дистрибутива программа screenfetch?
1. Их несколько - имеется и в Community и в AUR
2. Откуда берется информация - как уже писали выше, расписано в бинарнике, например, первые 3 вывода (из Community)
OS: …............ awk -F'=' '/^PRETTY_NAME=/ {print $2}' /etc/os-release
Kernel:.......... uname -srm
Packages: … pacman -Qq | wc -l
Советую также почитать насчет os-release , единственного унифицированного источника информации и его описания
UPD.....имхо, все эти screenfetch баловство …....
PS..... обрати внимание в 1-ой ссылке на информацию по lsb_release .....
Ошибки не исчезают с опытом - они просто умнеют
 
Зарегистрироваться или войдите чтобы оставить сообщение.