void concatenate_and_print(char sys, char *os, char *cpu_name, char *gpu){ char *uptime = NULL, *kern_name = NULL, *ram_info = NULL, *package_count = NULL; switch(sys){ case 'a': printf("\n"); printf("\x1b[1m . %s\n", os); printf("\x1b[1m / \\ %s\n", get_kernel(kern_name)); printf("\x1b[1m / \\ %s\n", get_uptime(uptime)); printf("\x1b[1m /^. \\ %s\n", get_packages(package_count, sys)); printf("\x1b[1m / .-. \\ %s\n", cpu_name); printf("\x1b[1m / ( ) _\\ %s\n", gpu); printf("\x1b[1m / _.~ ~._^\\ %s\n", get_RAM(ram_info)); printf("\x1b[1m /.^ ^.\\ \n"); printf("\n\n"); break; case 'x': printf("\n"); printf("\x1b[1m /\\ %s\n", os); printf("\x1b[1m / \\ %s\n", get_kernel(kern_name)); printf("\x1b[1m /`'.,\\ %s\n", get_uptime(uptime)); printf("\x1b[1m / ', %s\n", get_packages(package_count, sys)); printf("\x1b[1m / ,`\\ %s\n", cpu_name); printf("\x1b[1m / ,.'`. \\ %s\n", gpu); printf("\x1b[1m /.,'` `'.\\ %s\n", get_RAM(ram_info)); printf("\n\n"); break; case 'd': printf("\n"); printf("\x1b[1m _____ %s\n", os); printf("\x1b[1m / __ \\ %s\n", get_kernel(kern_name)); printf("\x1b[1m | / | %s\n", get_uptime(uptime)); printf("\x1b[1m | \\___- %s\n", get_packages(package_count, sys)); printf("\x1b[1m -_ %s\n", cpu_name); printf("\x1b[1m --_ %s\n", gpu); printf("\x1b[1m %s\n", get_RAM(ram_info)); printf("\n\n"); break; case 'u': printf("\n"); printf("\x1b[1m _ %s\n", os); printf("\x1b[1m ---(_) %s\n", get_kernel(kern_name)); printf("\x1b[1m _/ --- \\ %s\n", get_uptime(uptime)); printf("\x1b[1m (_) | | %s\n", get_packages(package_count, sys)); printf("\x1b[1m \\ --- / %s\n", cpu_name); printf("\x1b[1m ---(_) %s\n", gpu); printf("\x1b[1m %s\n", get_RAM(ram_info)); printf("\n\n"); break; case 'r': printf("\n"); printf("\x1b[1m /\\ %s\n", os); printf("\x1b[1m / \\ %s\n", get_kernel(kern_name)); printf("\x1b[1m / /\\ \\ %s\n", get_uptime(uptime)); printf("\x1b[1m / / \\ \\ %s\n", get_packages(package_count, sys)); printf("\x1b[1m / / \\ \\ %s\n", cpu_name); printf("\x1b[1m / / _____\\ \\ %s\n", gpu); printf("\x1b[1m /_/ \\`----.\\_\\ %s\n", get_RAM(ram_info)); printf("\n\n"); break; case 'm': printf("\n"); printf("\x1b[1m ||||||||| |||| %s\n", os); printf("\x1b[1m ||||||||| |||| %s\n", get_kernel(kern_name)); printf("\x1b[1m |||| |||| %s\n", get_uptime(uptime)); printf("\x1b[1m |||| |||| |||| %s\n", get_packages(package_count, sys)); printf("\x1b[1m |||| |||| |||| %s\n", cpu_name); printf("\x1b[1m |||| |||| |||| %s\n", gpu); printf("\x1b[1m |||| |||| |||| %s\n", get_RAM(ram_info)); printf("\n\n"); break; case 'v': rintf("\n"); printf("\x1b[1m | | | | (_)(_) | | %s\n", os); printf("\x1b[1m | | | | ___ _ ___ _____ __| | __ _ %s\n", get_kernel(kern_name)); printf("\x1b[1m | | | |/ _ \| || \ \ / / _ \ / _` |/ _` |%s\n", get_uptime(uptime)); printf("\x1b[1m \ \_/ / (_) | || |\ V / (_) | (_| | (_| |%s\n", get_packages(package_count, sys)); printf("\x1b[1m \___/ \___/| || | \_/ \___/ \__,_|\__,_|%s\n", cpu_name); printf("\x1b[1m _/ |/ | %s\n", gpu); printf("\x1b[1m |__/__/ %s\n", get_RAM(ram_info)); printf("\n\n"); break; case 'o' rintf("\n"); printf("\x1b[1m %s\n", os); printf("\x1b[1m ______ _____ ________ ___%s\n", get_kernel(kern_name)); printf("\x1b[1m | _ \ _ | _ | \/ |%s\n", get_uptime(uptime)); printf("\x1b[1m | | | | | | | | | | . . |%s\n", get_packages(package_count, sys)); printf("\x1b[1m | | | | | | | | | | |\/| |%s\n", cpu_name); printf("\x1b[1m | |/ /\ \_/ | \_/ / | | |%s\n", gpu); printf("\x1b[1m |___/ \___/ \___/\_| |_/%s\n", get_RAM(ram_info)); printf("\n\n"); break; default: printf("\n\n ERROR : Unsupported system\n\n"); exit(EXIT_FAILURE); } free(uptime); free(ram_info); free(kern_name); free(package_count); }