From 782039c0ed9eb8b644f70460e59a8c82a2bbe3d2 Mon Sep 17 00:00:00 2001 From: TheDarkBug Date: Sat, 6 Mar 2021 21:17:29 +0100 Subject: [PATCH] Split code in functions, changed printing system. edited makefile to copy images in .config/uwufetch/ --- Makefile | 3 + README.md | 6 +- res/arch.png | Bin 0 -> 94938 bytes uwufetch.c | 181 ++++++++++++++++++++++++++++++--------------------- 4 files changed, 110 insertions(+), 80 deletions(-) create mode 100644 res/arch.png diff --git a/Makefile b/Makefile index b900ac2..98400a1 100644 --- a/Makefile +++ b/Makefile @@ -9,6 +9,9 @@ build: uwufetch.c install: sudo cp $(NAME) $(INSTALL_DIR)$(NAME) + mkdir ~/.config/uwufetch/ + cp res/* ~/.config/uwufetch/ uninstall: sudo rm $(INSTALL_DIR)$(NAME) + rm -rf ~/.config/uwufetch diff --git a/README.md b/README.md index 6c7f15e..2d3a9c2 100644 --- a/README.md +++ b/README.md @@ -4,20 +4,18 @@ A meme system info tool for Linux, based on nyan/UwU trend on r/linuxmasterrace. ## Currently supported distros -NyArch Linuwu, Nyartix Linuwu, Fedowa, Myanjaro. +Nyarch Linuwu, Nyartix Linuwu, Debinyan, Fedowa, Myanjaro. ## Building and installation To install you can type this commands in the terminal: - ```shell git clone https://github.com/TheDarkBug/uwufetch.git cd uwufetch make ``` -To uninstall (this will also remove the repository folder): - +To uninstall: ```shell cd uwufetch make uninstall diff --git a/res/arch.png b/res/arch.png new file mode 100644 index 0000000000000000000000000000000000000000..ab540a89ba55c5109dc4b0c8b0aec9f2b845fbe5 GIT binary patch literal 94938 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 z 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 imR$==q(AdDZ|FvU`k9zMG_1gzAE|G0m3Z0V(f #include #include + // COLORS #define NORMAL "\x1b[0m" #define BOLD "\x1b[1m" @@ -17,85 +18,26 @@ #define CYAN "\x1b[36m" #define WHITE "\x1b[37m" -char user[32], host[253], shell[64], version_name[64]; +struct rusage r_usage; +struct utsname sys_var; +struct sysinfo sys; +int ram_max, pkgs; +char user[32], host[253], shell[64], version_name[64], cpu_model[256]; + int pkgman(); +void get_info(); +void print_ascii(); +void print_info(); +void print_image(); -int main() { +int main(int argc, char *argv[]) { - struct rusage r_usage; - struct utsname sys_var; - struct sysinfo sys; - // get user name, host name and shell - snprintf(user, 32, "%s", getenv("USER")); - gethostname(host, 253); - snprintf(shell, 16, "%s", getenv("SHELL")); - memmove(&shell[0], &shell[5], 16); - - // get os version - FILE *fos_rel = popen("cut -d '=' -f2 <<< $(cat /etc/os-release | grep ID=) 2> /dev/null", "r"); - fscanf(fos_rel,"%[^\n]", version_name); - fclose(fos_rel); - - if (uname(&sys_var) == -1) printf("Ah sh*t, an error\n"); - if (sysinfo(&sys) == -1) printf("Ah sh*t, an error\n"); - - // get cpu info - char cpu_model[256]; - FILE *fcpu = popen("lscpu | grep 'Model name:'", "r"); - fscanf(fcpu, "%[^\n]", cpu_model); - fclose(fcpu); - memmove(&cpu_model[0], &cpu_model[33], 128); - - // get ram info - int ram_max = sys.totalram * sys.mem_unit / 1048576; - getrusage(RUSAGE_SELF,&r_usage); - - int pkgs = pkgman(); - // print collected info - if (strcmp(version_name, "arch") == 0) { - printf("%s %s@%s\n", BOLD, user, host); - printf("%s /\\ %s%sOWOS %sNyArch Linuwu\n", BLUE, NORMAL, BOLD, NORMAL); - printf("%s / \\ %s%sKERNEL %s%s %s\n", BLUE, NORMAL, BOLD, NORMAL, sys_var.release, sys_var.machine); - printf("%s /\\ \\ %s%sCPUWU %s%s\n", BLUE, NORMAL, BOLD, NORMAL, cpu_model); - printf("%s / > w <\\ %s%sWAM %s%ldM/%iM\n", BLUE, NORMAL, BOLD, NORMAL, r_usage.ru_maxrss, ram_max); - printf("%s / __ \\ %s%sSHELL %s%s\n", BLUE, NORMAL, BOLD, NORMAL, shell); - printf("%s / __| |__-\\ %s%sPKGS %s%s%d\n", BLUE, NORMAL, BOLD, NORMAL, NORMAL, pkgs); - printf("%s /_-'' ''-_\\ %s%sUWUPTIME %s%lid, %lih, %lim\n", BLUE, NORMAL, BOLD, NORMAL, sys.uptime/60/60/24, sys.uptime/60/60%24, sys.uptime/60%60); - printf(" %s%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\n", BOLD, BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, NORMAL); - } - else if (strcmp(version_name, "artix") == 0) { - printf("%s %s@%s\n", BOLD, user, host); - printf("%s /\\ %s%sOS %sNyArtix Linuwu\n", BLUE, NORMAL, BOLD, NORMAL); - printf("%s / \\ %s%sKERNEL %s%s %s\n", BLUE, NORMAL, BOLD, NORMAL, sys_var.release, sys_var.machine); - printf("%s /`'.,\\ %s%sCPUWU %s%s\n", BLUE, NORMAL, BOLD, NORMAL, cpu_model); - printf("%s /\u2022 w \u2022 \\ %s%sWAM %s%ldM/%iM\n", BLUE, NORMAL, BOLD, NORMAL, r_usage.ru_maxrss, ram_max); - printf("%s / ,`\\ %s%sSHELL %s%s\n", BLUE, NORMAL, BOLD, NORMAL, shell); - printf("%s / ,.'`. \\ %s%sPKGS %s%s%d\n", BLUE, NORMAL, BOLD, NORMAL, NORMAL, pkgs); - printf("%s /.,'` `'.\\ %s%sUWUPTIME %s%lid, %lih, %lim\n", BLUE, NORMAL, BOLD, NORMAL, sys.uptime/60/60/24, sys.uptime/60/60%24, sys.uptime/60%60); - printf(" %s%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\n", BOLD, BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, NORMAL); - } - else if (strcmp(version_name, "fedora") == 0) { - printf("%s _____%s%s %s@%s\n", BLUE, NORMAL, BOLD, user, host); - printf("%s / __)%s\\ %s%sOS %sFedowa\n", BLUE, CYAN, NORMAL, BOLD, NORMAL); - printf("%s > %s| / %s<%s\\ \\ %s%sKERNEL %s%s %s\n", WHITE, BLUE, WHITE, CYAN, NORMAL, BOLD, NORMAL, sys_var.release, sys_var.machine); - printf("%s __%s_| %sw%s|_%s_/ / %s%sCPUWU %s%s\n", CYAN, BLUE, WHITE, BLUE, CYAN, NORMAL, BOLD, NORMAL, cpu_model); - printf("%s / %s(_ _)%s_/ %s%sWAM %s%ldM/%iM\n", CYAN, BLUE, CYAN, NORMAL, BOLD, NORMAL, r_usage.ru_maxrss, ram_max); - printf("%s / / %s| | %s%sSHELL %s%s\n", CYAN, BLUE, NORMAL, BOLD, NORMAL, shell); - printf("%s \\ \\%s__/ | %s%sPKGS %s%s%d\n", CYAN, BLUE, NORMAL, BOLD, NORMAL, NORMAL, pkgs); - printf("%s \\%s(_____/ %s%sUWUPTIME %s%lid, %lih, %lim\n", CYAN, BLUE, NORMAL, BOLD, NORMAL, sys.uptime/60/60/24, sys.uptime/60/60%24, sys.uptime/60%60); - printf(" %s%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\n", BOLD, BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, NORMAL); - } - else if (strcmp(version_name, "manjaro") == 0) { - printf("%s \u25b3 \u25b3 \u25e0\u25e0\u25e0\u25e0 %s@%s\n", BOLD, user, host); - printf("%s \e[0;42m \e[0m \e[0;42m \e[0m %s%sOWOS %sMyanjaro Linuwu\n", BLUE, NORMAL, BOLD, NORMAL); - printf("%s \e[0;42m \e[0m\e[0;42m\e[1;30m > w < \e[0m%s\e[0;42m \e[0m \e[0;42m \e[0m %s%sKERNEL %s%s %s\n", BLUE, BLUE, NORMAL, BOLD, NORMAL, sys_var.release, sys_var.machine); - printf("%s \e[0;42m \e[0m \e[0;42m \e[0m %s%sCPUWU %s%s\n", BLUE, NORMAL, BOLD, NORMAL, cpu_model); - printf("%s \e[0;42m \e[0m \e[0;42m \e[0m \e[0;42m \e[0m %s%sWAM %s%ldM/%iM\n", BLUE, NORMAL, BOLD, NORMAL, r_usage.ru_maxrss, ram_max); - printf("%s \e[0;42m \e[0m \e[0;42m \e[0m \e[0;42m \e[0m %s%sSHELL %s%s\n", BLUE, NORMAL, BOLD, NORMAL, shell); - printf("%s \e[0;42m \e[0m \e[0;42m \e[0m \e[0;42m \e[0m %s%sPKGS %s%s%d\n", BLUE, NORMAL, BOLD, NORMAL, NORMAL, pkgs); - printf("%s \e[0;42m \e[0m \e[0;42m \e[0m \e[0;42m \e[0m %s%sUWUPTIME %s%lid, %lih, %lim\n", BLUE, NORMAL, BOLD, NORMAL, sys.uptime/60/60/24, sys.uptime/60/60%24, sys.uptime/60%60); - printf(" %s%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\n", BOLD, BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, NORMAL); - } + get_info(); + //sprintf(version_name, "%s", "manjaro"); // a debug thing + //char c = getopt(argc, argv, "adhi"); // things for the future + print_ascii(); + //system("viu -t -w 18 -h 8 $HOME/.config/uwufetch/arch.png"); // other things for the future + print_info(user, host, version_name, sys_var.release, sys_var.machine, cpu_model, &r_usage.ru_maxrss, &ram_max, shell, &sys.uptime); } int pkgman() { // this is just a function that returns the total of installed packages @@ -131,4 +73,91 @@ int pkgman() { // this is just a function that returns the total of installed pa if (xbps > 0) total += xbps; return total; +} + +void print_info() { // print collected info + printf("\033[2;18H %s%s%s@%s\n", NORMAL, BOLD, user, host); + printf("\033[3;18H %s%sOWOS %s%s\n", NORMAL, BOLD, NORMAL, version_name); + printf("\033[4;18H %s%sKERNEL %s%s %s\n", NORMAL, BOLD, NORMAL, sys_var.release, sys_var.machine); + printf("\033[5;18H %s%sCPUWU %s%s\n", NORMAL, BOLD, NORMAL, cpu_model); + printf("\033[6;18H %s%sWAM %s%ldM/%iM\n", NORMAL, BOLD, NORMAL, r_usage.ru_maxrss, ram_max); + printf("\033[7;18H %s%sSHELL %s%s\n", NORMAL, BOLD, NORMAL, shell); + printf("\033[8;18H %s%sPKGS %s%s%d\n", NORMAL, BOLD, NORMAL, NORMAL, pkgs); + printf("\033[9;18H %s%sUWUPTIME %s%lid, %lih, %lim\n", NORMAL, BOLD, NORMAL, sys.uptime/60/60/24, sys.uptime/60/60%24, sys.uptime/60%60); + printf("\033[10;18H %s%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\u2587\u2587%s\n", BOLD, BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, NORMAL); +} + +void get_info() { // get all necessary info + + // user name, host name and shell + snprintf(user, 32, "%s", getenv("USER")); + gethostname(host, 253); + snprintf(shell, 16, "%s", getenv("SHELL")); + memmove(&shell[0], &shell[5], 16); + + // os version + FILE *fos_rel = popen("cut -d '=' -f2 <<< $(cat /etc/os-release | grep ID=) 2> /dev/null", "r"); + fscanf(fos_rel,"%[^\n]", version_name); + fclose(fos_rel); + + if (uname(&sys_var) == -1) printf("There was some kind of error while getting the username\n"); + if (sysinfo(&sys) == -1) printf("There was some kind of error while getting system info\n"); + + // cpu and ram + FILE *fcpu = popen("sed 's/ //g' <<< $(cut -d ':' -f2 <<< $(lscpu | grep 'Model name:')) 2> /dev/null", "r"); + fscanf(fcpu, "%[^\n]", cpu_model); + fclose(fcpu); + ram_max = sys.totalram * sys.mem_unit / 1048576; + getrusage(RUSAGE_SELF, &r_usage); + pkgs = pkgman(); +} + +void print_ascii() { + if (strcmp(version_name, "arch") == 0) { + sprintf(version_name, "%s", "Nyarch Linuwu"); + printf( "\033[3;9H%s/\\\n" + " / \\\n" + " /\\ \\\n" + " / > w <\\\n" + " / __ \\\n" + " / __| |__-\\\n" + " /_-'' ''-_\\\n", BLUE); + } else if (strcmp(version_name, "artix") == 0) { + sprintf(version_name, "%s", "Nyartix Linuwu"); + printf( "\033[3;9H%s/\\\n" + " / \\\n" + " /`'.,\\\n" + " /\u2022 w \u2022 \\\n" + " / ,`\\\n" + " / ,.'`. \\\n" + " /.,'` `'.\\\n", BLUE); + } else if (strcmp(version_name, "debian") == 0) { + sprintf(version_name, "%s", "Debinyan"); + printf( "\033[3;7H%s______\n" + " / ___ \\\n" + " | / OwO |\n" + " | \\____-\n" + " -_\n" + " --_\n", RED); + } else if (strcmp(version_name, "fedora") == 0) { + sprintf(version_name, "%s", "Fedowora"); + printf( "\033[2;9H%s_____\n" + " / __)%s\\\n" + " %s> %s| / %s<%s\\ \\\n" + " __%s_| %sw%s|_%s_/ /\n" + " / %s(_ _)%s_/\n" + " / / %s| |\n" + " %s\\ \\%s__/ |\n" + " %s\\%s(_____/\n", BLUE, CYAN, WHITE, BLUE, WHITE, CYAN, BLUE, CYAN, BLUE, CYAN, BLUE, CYAN, BLUE, CYAN, BLUE, CYAN, BLUE); + } else if (strcmp(version_name, "manjaro") == 0) { + sprintf(version_name, "%s", "Myanjaro"); + printf( " \u25b3 \u25b3 \u25e0\u25e0\u25e0\u25e0\n" + " \e[0;42m \e[0m \e[0;42m \e[0m\n" + " \e[0;42m \e[0m\e[0;42m\e[1;30m > w < \e[0m\e[0;42m \e[0m \e[0;42m \e[0m\n" + " \e[0;42m \e[0m \e[0;42m \e[0m\n" + " \e[0;42m \e[0m \e[0;42m \e[0m \e[0;42m \e[0m\n" + " \e[0;42m \e[0m \e[0;42m \e[0m \e[0;42m \e[0m\n" + " \e[0;42m \e[0m \e[0;42m \e[0m \e[0;42m \e[0m\n" + " \e[0;42m \e[0m \e[0;42m \e[0m \e[0;42m \e[0m\n"); + } } \ No newline at end of file