From 11cc5f5e79c5bd97e16016d91d2a794e10df714c Mon Sep 17 00:00:00 2001 From: Faye Lorenz Date: Wed, 4 Mar 2026 17:48:18 -0600 Subject: [PATCH] Add generic linux logo --- espifetch | 7 +++---- logo_scripts/debian.py | 12 ++++++------ logo_scripts/linux.py | 40 ++++++++++++++++++++++++++++++++++++++++ logos/__init__.py | 0 logos/debian.py | 13 +++++++++++++ logos/debian.txt | 6 ------ logos/linux.py | 16 ++++++++++++++++ 7 files changed, 78 insertions(+), 16 deletions(-) create mode 100644 logo_scripts/linux.py create mode 100644 logos/__init__.py create mode 100644 logos/debian.py delete mode 100644 logos/debian.txt create mode 100644 logos/linux.py diff --git a/espifetch b/espifetch index 3c23772..90025e5 100755 --- a/espifetch +++ b/espifetch @@ -1,10 +1,9 @@ #!/usr/bin/env python3 import distro -from logo_scripts import debian -from pathlib import Path +from logo_scripts import debian, linux if distro.id() == "debian": - debian.print_debian(Path(__file__).parent) + debian.print_debian() else: - print("Distro not supported.") + linux.print_linux() diff --git a/logo_scripts/debian.py b/logo_scripts/debian.py index 05d6f38..17da655 100644 --- a/logo_scripts/debian.py +++ b/logo_scripts/debian.py @@ -2,23 +2,23 @@ from colored import Fore, Style import cpuinfo import distro import getpass +from logos import debian import os import socket import subprocess -logo_color = Fore.red color1 = Fore.red color2 = Fore.green color3 = Fore.yellow color4 = Fore.blue color5 = Fore.magenta -def print_debian(main_dir): +def print_debian(): current_line = 1 - logo = open(main_dir / "logos" / "debian.txt", "r").read().split("\n") + logo = debian.logo for line in logo: - colored_line = str(logo_color) + line + Style.reset + colored_line = line + Style.reset match current_line: case 1: colored_line = colored_line + " " + color1 + "User: " + Style.reset + getpass.getuser() @@ -32,9 +32,9 @@ def print_debian(main_dir): colored_line = colored_line + " " + color5 + "Kernel: " + Style.reset + subprocess.run(['uname', '-sr'], capture_output=True, text=True, check=True).stdout[:-1] case 6: colored_line = colored_line + " " + color1 + "Terminal: " + Style.reset + os.environ["TERM"] - case 7: - colored_line = colored_line + " " + color2 + "Shell: " + Style.reset + os.environ["SHELL"] print(colored_line, '') current_line += 1 + colored_line = " " + str(color2) + "Shell: " + Style.reset + os.environ["SHELL"] + print(colored_line) colored_line = " " + str(color3) + "CPU: " + Style.reset + cpuinfo.get_cpu_info()["brand_raw"] print(colored_line) diff --git a/logo_scripts/linux.py b/logo_scripts/linux.py new file mode 100644 index 0000000..daa94ad --- /dev/null +++ b/logo_scripts/linux.py @@ -0,0 +1,40 @@ +from colored import Fore, Style +import cpuinfo +import distro +import getpass +from logos import linux +import os +import socket +import subprocess + + +color1 = Fore.red +color2 = Fore.green +color3 = Fore.yellow +color4 = Fore.blue +color5 = Fore.magenta + +def print_linux(): + current_line = 1 + logo = linux.logo + for line in logo: + colored_line = line + Style.reset + match current_line: + case 1: + colored_line = colored_line + " " + color1 + "User: " + Style.reset + getpass.getuser() + case 2: + colored_line = colored_line + " " + color2 + "Hostname: " + Style.reset + socket.gethostname() + case 3: + colored_line = colored_line + " " + color3 + "Uptime: " + Style.reset + subprocess.run(['uptime', '-p'], capture_output=True, text=True, check=True).stdout[:-1] + case 4: + colored_line = colored_line + " " + color4 + "Distro: " + Style.reset + distro.name(pretty=True) + case 5: + colored_line = colored_line + " " + color5 + "Kernel: " + Style.reset + subprocess.run(['uname', '-sr'], capture_output=True, text=True, check=True).stdout[:-1] + case 6: + colored_line = colored_line + " " + color1 + "Terminal: " + Style.reset + os.environ["TERM"] + case 7: + colored_line = colored_line + " " + str(color2) + "Shell: " + Style.reset + os.environ["SHELL"] + print(colored_line, '') + current_line += 1 + colored_line = " " + str(color3) + "CPU: " + Style.reset + cpuinfo.get_cpu_info()["brand_raw"] + print(colored_line) diff --git a/logos/__init__.py b/logos/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/logos/debian.py b/logos/debian.py new file mode 100644 index 0000000..f7a2c8f --- /dev/null +++ b/logos/debian.py @@ -0,0 +1,13 @@ +from colored import Fore, Style + +logo_color0 = str(Fore.red) +reset = str(Style.reset) + +logo = [ + logo_color0 + " _____" + reset, + logo_color0 + " / __ \\" + reset, + logo_color0 + "| / |" + reset, + logo_color0 + "| \\___-" + reset, + logo_color0 + "-_" + reset, + logo_color0 + " --_" + reset, +] diff --git a/logos/debian.txt b/logos/debian.txt deleted file mode 100644 index 318c569..0000000 --- a/logos/debian.txt +++ /dev/null @@ -1,6 +0,0 @@ - _____ - / __ \ -| / | -| \___- --_ - --_ diff --git a/logos/linux.py b/logos/linux.py new file mode 100644 index 0000000..3153b2b --- /dev/null +++ b/logos/linux.py @@ -0,0 +1,16 @@ +from colored import Fore, Style + +logo_color0 = str(Fore.RGB(128, 128, 128)) +logo_color1 = str(Fore.white) +logo_color2 = str(Fore.RGB(255, 165, 0)) +reset = str(Style.reset) + +logo = [ + logo_color0 + " ___" + reset, + logo_color0 + " (" + logo_color1 + ".." + logo_color0 + " \\" + reset, + logo_color0 + " (" + logo_color2 + "<>" + logo_color0 + " |" + reset, + logo_color0 + " /" + logo_color1 + "/ \\" + logo_color0 + " \\" + reset, + logo_color0 + " ( " + logo_color1 + "| |" + logo_color0 + " /|" + reset, + logo_color2 + "_" + logo_color0 + "/\\ " + logo_color1 + "__)" + logo_color0 + "/" + logo_color2 + "_" + logo_color0 + ")" + reset, + logo_color2 + "\\/" + logo_color0 + "-____" + logo_color2 + "\\/" + reset, +]