Replace fetchy.c
This commit is contained in:
parent
404048c989
commit
083d601f11
107
fetchy.c
107
fetchy.c
|
@ -14,46 +14,38 @@ void get_gpu(char gpu[]);
|
||||||
static char *get_kernel(void);
|
static char *get_kernel(void);
|
||||||
static char *get_uptime(void);
|
static char *get_uptime(void);
|
||||||
static int get_packages(char sys);
|
static int get_packages(char sys);
|
||||||
void get_RAM(float *total, float *used, char bar[]);
|
static char *get_RAM();
|
||||||
|
void read_line(char x);
|
||||||
|
|
||||||
|
|
||||||
char *os_name = NULL, *uptime = NULL, *kern_name = NULL;
|
char *os_name = NULL, *uptime = NULL, *kern_name = NULL, *ram_info = NULL;
|
||||||
|
|
||||||
|
|
||||||
int main(int argc, char *argv[]){
|
int main(int argc, char *argv[]){
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
char cpu[70], gpu[70], sys;
|
char cpu[70], gpu[70], sys;
|
||||||
char bar[] = "[----------]";
|
char *os = malloc(BUF_SIZE);
|
||||||
float total = 0, used = 0;
|
|
||||||
|
|
||||||
|
|
||||||
//These get info
|
|
||||||
|
|
||||||
get_gpu(gpu);
|
get_gpu(gpu);
|
||||||
get_cpu(cpu);
|
get_cpu(cpu);
|
||||||
get_RAM(&total, &used, bar);
|
|
||||||
|
|
||||||
|
os = get_sys(&sys);
|
||||||
|
|
||||||
|
if ( sys == 'a' ) {
|
||||||
if ( !strcmp(argv[1], "-arch") ) {
|
|
||||||
|
|
||||||
printf("\n");
|
printf("\n");
|
||||||
printf("\x1b[1m . \x1b[36mOS\x1b[0m -> %s\n", get_sys(&sys));
|
printf("\x1b[1m . \x1b[36mOS\x1b[0m -> %s\n", os);
|
||||||
printf("\x1b[1m / \\ \x1b[36mKRNL\x1b[0m -> %s\n", get_kernel());
|
printf("\x1b[1m / \\ \x1b[36mKRNL\x1b[0m -> %s\n", get_kernel());
|
||||||
printf("\x1b[1m / \\ \x1b[36mUPT\x1b[0m -> %s\n", get_uptime());
|
printf("\x1b[1m / \\ \x1b[36mUPT\x1b[0m -> %s\n", get_uptime());
|
||||||
printf("\x1b[1m /^. \\ \x1b[36mPKGS\x1b[0m -> %d\n", get_packages(sys));
|
printf("\x1b[1m /^. \\ \x1b[36mPKGS\x1b[0m -> %d\n", get_packages(sys));
|
||||||
printf("\x1b[1m / .-. \\ \x1b[36m\x1b[0m \n");
|
printf("\x1b[1m / .-. \\ \x1b[36m\x1b[0m \n");
|
||||||
printf("\x1b[1m / ( ) _\\ \x1b[36mCPU\x1b[0m -> %s\n", cpu);
|
printf("\x1b[1m / ( ) _\\ \x1b[36mCPU\x1b[0m -> %s\n", cpu);
|
||||||
printf("\x1b[1m / _.~ ~._^\\ \x1b[36mGPU\x1b[0m -> %s\n", gpu);
|
printf("\x1b[1m / _.~ ~._^\\ \x1b[36mGPU\x1b[0m -> %s\n", gpu);
|
||||||
printf("\x1b[1m /.^ ^.\\ \x1b[36mRAM\x1b[0m -> %.2f GB of %.2f GB, %s -> %.2f %%\n", used / 1000000, total / 1000000, bar, (used/total) * 100);
|
printf("\x1b[1m /.^ ^.\\ \x1b[36mRAM\x1b[0m -> %s\n", get_RAM());
|
||||||
printf("\n\n");
|
printf("\n\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if ( !strcmp(argv[1], "-ubuntu") ) {
|
if ( sys == 'u' ) {
|
||||||
|
|
||||||
printf("\n");
|
printf("\n");
|
||||||
printf("\x1b[1m .-. \x1b[36mOS\x1b[0m -> %s\n", get_sys(&sys));
|
printf("\x1b[1m .-. \x1b[36mOS\x1b[0m -> %s\n", get_sys(&sys));
|
||||||
|
@ -63,7 +55,7 @@ int main(int argc, char *argv[]){
|
||||||
printf("\x1b[1m .-. , `___: \x1b[36m\x1b[0m \n");
|
printf("\x1b[1m .-. , `___: \x1b[36m\x1b[0m \n");
|
||||||
printf("\x1b[1m (:::) : ___ \x1b[36mCPU\x1b[0m -> %s\n", cpu);
|
printf("\x1b[1m (:::) : ___ \x1b[36mCPU\x1b[0m -> %s\n", cpu);
|
||||||
printf("\x1b[1m `-` ` , : \x1b[36mGPU\x1b[0m -> %s\n", gpu);
|
printf("\x1b[1m `-` ` , : \x1b[36mGPU\x1b[0m -> %s\n", gpu);
|
||||||
printf("\x1b[1m \\ / ,..-` , \x1b[36mRAM\x1b[0m -> %.2f GB of %.2f GB, %s -> %.2f %%\n", used / 1000000, total / 1000000, bar, (used/total) * 100);
|
printf("\x1b[1m \\ / ,..-` , \x1b[36mRAM\x1b[0m -> %s\n", get_RAM());
|
||||||
printf("\x1b[1m `./ / .-.` \x1b[36m\x1b[0m \n");
|
printf("\x1b[1m `./ / .-.` \x1b[36m\x1b[0m \n");
|
||||||
printf("\x1b[1m `-..-( ) \x1b[36m\x1b[0m \n");
|
printf("\x1b[1m `-..-( ) \x1b[36m\x1b[0m \n");
|
||||||
printf("\x1b[1m `-` \x1b[36m\x1b[0m \n");
|
printf("\x1b[1m `-` \x1b[36m\x1b[0m \n");
|
||||||
|
@ -74,11 +66,21 @@ int main(int argc, char *argv[]){
|
||||||
|
|
||||||
free(os_name);
|
free(os_name);
|
||||||
free(uptime);
|
free(uptime);
|
||||||
|
free(ram_info);
|
||||||
free(kern_name);
|
free(kern_name);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void read_line(char x) {
|
||||||
|
int c;
|
||||||
|
while (( c = getchar()) != x && c != EOF) { }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void truncate_spaces(char *str) {
|
void truncate_spaces(char *str) {
|
||||||
int src = 0, dst = 0;
|
int src = 0, dst = 0;
|
||||||
while(*(str + dst) == ' ') dst++;
|
while(*(str + dst) == ' ') dst++;
|
||||||
|
@ -103,15 +105,14 @@ static char *get_sys(char *sys){
|
||||||
|
|
||||||
fscanf(sysName, "%s ", name);
|
fscanf(sysName, "%s ", name);
|
||||||
fclose(sysName);
|
fclose(sysName);
|
||||||
snprintf(os_name, BUF_SIZE, "%s Linux", name );
|
truncate_spaces(name);
|
||||||
|
|
||||||
|
snprintf(os_name, BUF_SIZE, "%s Linux", name);
|
||||||
|
|
||||||
if ( !strcmp( name, "Arch"))
|
if ( !strcmp( name, "Arch")) *sys = 'a';
|
||||||
*sys = 'a';
|
if ( !strcmp( name, "Ubuntu")) *sys = 'u';
|
||||||
if ( !strcmp( name, "Ubuntu"))
|
|
||||||
*sys = 'u';
|
|
||||||
|
|
||||||
free(name);
|
free(name);
|
||||||
truncate_spaces(os_name);
|
|
||||||
return os_name;
|
return os_name;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -132,7 +133,7 @@ void get_gpu(char gpu[]){
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static char *get_kernel(){
|
static char *get_kernel(void){
|
||||||
kern_name = malloc(BUF_SIZE);
|
kern_name = malloc(BUF_SIZE);
|
||||||
char *kernel = malloc(BUF_SIZE);
|
char *kernel = malloc(BUF_SIZE);
|
||||||
FILE *kInfo = fopen("/proc/version", "r");
|
FILE *kInfo = fopen("/proc/version", "r");
|
||||||
|
@ -194,45 +195,43 @@ static int get_packages(char sys){
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void get_RAM(float *total, float *used, char bar[]){
|
static char *get_RAM(){
|
||||||
int usedPercent;
|
int bar_percent;
|
||||||
|
float total, free_mem, used;
|
||||||
|
float real_percent;
|
||||||
|
ram_info = malloc(BUF_SIZE * 3);
|
||||||
|
char *line = malloc(BUF_SIZE * 3);
|
||||||
|
char bar[] = "[----------]";
|
||||||
|
|
||||||
FILE *RAM = popen("free | grep Mem", "r");
|
FILE *RAM = fopen("/proc/meminfo", "r");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
fgets(line, BUF_SIZE * 3, RAM);
|
||||||
|
truncate_spaces(line);
|
||||||
|
sscanf(line, " MemTotal: %f", &total);
|
||||||
|
|
||||||
|
fgets(line, BUF_SIZE * 3, RAM);
|
||||||
|
truncate_spaces(line);
|
||||||
|
sscanf(line, " MemFree: %f", &free_mem);
|
||||||
|
|
||||||
fscanf(RAM, "Mem: %f %f ", total, used);
|
|
||||||
fclose(RAM);
|
fclose(RAM);
|
||||||
|
|
||||||
usedPercent = round(((*used) / (*total)) * 10);
|
used = total - free_mem;
|
||||||
|
real_percent = (used / total) * 100;
|
||||||
|
bar_percent = round(real_percent / 10);
|
||||||
|
|
||||||
for( int i = 1; i <= usedPercent; i++){
|
for( int i = 1; i <= bar_percent; i++){
|
||||||
bar[i] = '*';
|
bar[i] = '*';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
snprintf(ram_info, BUF_SIZE * 3, "%.2f GB of %.2f GB, %s -> %.2f %%", used / 1000000, total / 1000000, bar, real_percent);
|
||||||
|
|
||||||
|
free(line);
|
||||||
|
return ram_info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
char *LOGO[] = {
|
|
||||||
" ▄ ",
|
|
||||||
" ▟█▙ ",
|
|
||||||
" ▟███▙ ",
|
|
||||||
" ▟█████▙ ",
|
|
||||||
" ▟███████▙ ",
|
|
||||||
" ▂▔▀▜██████▙ ",
|
|
||||||
" ▟██▅▂▝▜█████▙ ",
|
|
||||||
" ▟█████████████▙ ",
|
|
||||||
" ▟███████████████▙ ",
|
|
||||||
" ▟█████████████████▙ ",
|
|
||||||
" ▟███████████████████▙ ",
|
|
||||||
" ▟█████████▛▀▀▜████████▙ ",
|
|
||||||
" ▟████████▛ ▜███████▙ ",
|
|
||||||
" ▟█████████ ████████▙ ",
|
|
||||||
" ▟██████████ █████▆▅▄▃▂ ",
|
|
||||||
" ▟██████████▛ ▜█████████▙ ",
|
|
||||||
" ▟██████▀▀▀ ▀▀██████▙ ",
|
|
||||||
" ▟███▀▘ ▝▀███▙ ",
|
|
||||||
" ▟▛▀ ▀▜▙ "
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
|
|
Loading…
Reference in a new issue