Merge branch 'main' of https://github.com/TheDarkBug/uwufetch
This commit is contained in:
commit
0c7183c5ec
3 changed files with 50 additions and 20 deletions
9
Makefile
9
Makefile
|
@ -1,7 +1,7 @@
|
||||||
NAME = uwufetch
|
NAME = uwufetch
|
||||||
FILES = uwufetch.c
|
FILES = uwufetch.c
|
||||||
CFLAGS = -O3
|
CFLAGS = -O3
|
||||||
CFLAGS_DEBUG = -Wall -Wextra
|
CFLAGS_DEBUG = -Wall -Wextra -g -pthread
|
||||||
ifeq ($(shell uname), Linux)
|
ifeq ($(shell uname), Linux)
|
||||||
PREFIX = /usr/bin
|
PREFIX = /usr/bin
|
||||||
LIBDIR = /usr/lib
|
LIBDIR = /usr/lib
|
||||||
|
@ -11,9 +11,16 @@ else ifeq ($(shell uname), Darwin)
|
||||||
LIBDIR = /usr/local/lib
|
LIBDIR = /usr/local/lib
|
||||||
MANDIR = /usr/local/share/man/man1
|
MANDIR = /usr/local/share/man/man1
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CC = cc
|
CC = cc
|
||||||
MAN_COMPILER = pandoc
|
MAN_COMPILER = pandoc
|
||||||
|
|
||||||
|
ifeq ($(shell uname), FreeBSD)
|
||||||
|
CFLAGS += -D__FREEBSD__
|
||||||
|
CFLAGS_DEBUG += -D__FREEBSD__
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
build: $(FILES)
|
build: $(FILES)
|
||||||
$(CC) $(CFLAGS) -o $(NAME) $(FILES)
|
$(CC) $(CFLAGS) -o $(NAME) $(FILES)
|
||||||
|
|
||||||
|
|
|
@ -67,7 +67,7 @@ I am not a copyright expert, and maybe I am doing all wrong things, please corre
|
||||||
|
|
||||||
## Endeavour OS
|
## Endeavour OS
|
||||||
|
|
||||||
<img title="Endowo Os" src="https://raw.githubusercontent.com/TheDarkBug/uwufetch/main/res/endeavour.png" alt="image" width="100">
|
<img title="Endowo Os" src="https://raw.githubusercontent.com/TheDarkBug/uwufetch/main/res/endeavouros.png" alt="image" width="100">
|
||||||
|
|
||||||
### Base artwork:
|
### Base artwork:
|
||||||
|
|
||||||
|
@ -218,7 +218,7 @@ I am not a copyright expert, and maybe I am doing all wrong things, please corre
|
||||||
|
|
||||||
## OpenSuse
|
## OpenSuse
|
||||||
|
|
||||||
<img title="OwOsuse" src='https://raw.githubusercontent.com/TheDarkBug/uwufetch/main/res/"opensuse-leap".png' alt="image" width="100">
|
<img title="OwOsuse" src='https://raw.githubusercontent.com/TheDarkBug/uwufetch/main/res/opensuse-leap.png' alt="image" width="100">
|
||||||
|
|
||||||
### Base artwork:
|
### Base artwork:
|
||||||
|
|
||||||
|
@ -332,7 +332,7 @@ I am not a copyright expert, and maybe I am doing all wrong things, please corre
|
||||||
|
|
||||||
## VoidLinux
|
## VoidLinux
|
||||||
|
|
||||||
<img title="Owoid" src='https://raw.githubusercontent.com/TheDarkBug/uwufetch/main/res/"void".png' alt="image" width="100">
|
<img title="Owoid" src='https://raw.githubusercontent.com/TheDarkBug/uwufetch/main/res/void.png' alt="image" width="100">
|
||||||
|
|
||||||
### Base artwork:
|
### Base artwork:
|
||||||
|
|
||||||
|
|
55
uwufetch.c
55
uwufetch.c
|
@ -23,8 +23,10 @@
|
||||||
#include <sys/sysctl.h>
|
#include <sys/sysctl.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#else
|
#else
|
||||||
|
#ifndef __FREEBSD__
|
||||||
#include <sys/sysinfo.h>
|
#include <sys/sysinfo.h>
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
#include <sys/utsname.h>
|
#include <sys/utsname.h>
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
|
|
||||||
|
@ -65,8 +67,10 @@ struct package_manager
|
||||||
};
|
};
|
||||||
struct utsname sys_var;
|
struct utsname sys_var;
|
||||||
#ifndef __APPLE__
|
#ifndef __APPLE__
|
||||||
|
#ifdef __linux__
|
||||||
struct sysinfo sys;
|
struct sysinfo sys;
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
struct winsize win;
|
struct winsize win;
|
||||||
|
|
||||||
int iscygwin = 0;
|
int iscygwin = 0;
|
||||||
|
@ -153,7 +157,7 @@ int main(int argc, char *argv[])
|
||||||
parse_config();
|
parse_config();
|
||||||
if ((argc == 1 && ascii_image_flag == 0) || (argc > 1 && ascii_image_flag == 0))
|
if ((argc == 1 && ascii_image_flag == 0) || (argc > 1 && ascii_image_flag == 0))
|
||||||
{
|
{
|
||||||
printf("\n"); // print a new line
|
printf("\n"); // print a new line
|
||||||
printf("\033[1A"); // go up one line if possible
|
printf("\033[1A"); // go up one line if possible
|
||||||
print_ascii();
|
print_ascii();
|
||||||
}
|
}
|
||||||
|
@ -342,20 +346,22 @@ void print_info()
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
uptime = uptime_mac();
|
uptime = uptime_mac();
|
||||||
#else
|
#else
|
||||||
|
#ifndef __FREEBSD__
|
||||||
uptime = sys.uptime;
|
uptime = sys.uptime;
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
switch (uptime)
|
switch (uptime)
|
||||||
{
|
{
|
||||||
case 0 ... 3599:
|
case 0 ... 3599:
|
||||||
printf("\033[18C%s%sUWUPTIME %s%lim\n",
|
printf("\033[18C%s%sUWUPTIME %s%lim\n",
|
||||||
NORMAL, BOLD, NORMAL, uptime / 60 % 60);
|
NORMAL, BOLD, NORMAL, uptime / 60 % 60);
|
||||||
break;
|
break;
|
||||||
case 3600 ... 86399:
|
case 3600 ... 86399:
|
||||||
printf("\033[18C%s%sUWUPTIME %s%lih, %lim\n",
|
printf("\033[18C%s%sUWUPTIME %s%lih, %lim\n",
|
||||||
NORMAL, BOLD, NORMAL, uptime / 3600, uptime / 60 % 60);
|
NORMAL, BOLD, NORMAL, uptime / 3600, uptime / 60 % 60);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
printf("\033[18C%s%sUWUPTIME %s%lid, %lih, %lim\n",
|
printf("\033[18C%s%sUWUPTIME %s%lid, %lih, %lim\n",
|
||||||
NORMAL, BOLD, NORMAL, uptime / 86400, uptime / 3600 % 24, uptime / 60 % 60);
|
NORMAL, BOLD, NORMAL, uptime / 86400, uptime / 3600 % 24, uptime / 60 % 60);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -374,7 +380,11 @@ void get_info()
|
||||||
|
|
||||||
// os version, cpu and board info
|
// os version, cpu and board info
|
||||||
FILE *os_release = fopen("/etc/os-release", "r");
|
FILE *os_release = fopen("/etc/os-release", "r");
|
||||||
|
#ifndef __FREEBSD__
|
||||||
FILE *cpuinfo = fopen("/proc/cpuinfo", "r");
|
FILE *cpuinfo = fopen("/proc/cpuinfo", "r");
|
||||||
|
#else
|
||||||
|
FILE *cpuinfo = popen("sysctl -a | egrep -i 'hw.model'", "r");
|
||||||
|
#endif
|
||||||
FILE *host_model_info = fopen("/sys/devices/virtual/dmi/id/product_version", "r");
|
FILE *host_model_info = fopen("/sys/devices/virtual/dmi/id/product_version", "r");
|
||||||
#ifdef __CYGWIN__
|
#ifdef __CYGWIN__
|
||||||
iscygwin = 1;
|
iscygwin = 1;
|
||||||
|
@ -397,7 +407,11 @@ void get_info()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
while (fgets(line, sizeof(line), cpuinfo))
|
while (fgets(line, sizeof(line), cpuinfo))
|
||||||
|
#ifdef __FREEBSD__
|
||||||
|
if (sscanf(line, "hw.model: %[^\n]", cpu_model))
|
||||||
|
#else
|
||||||
if (sscanf(line, "model name : %[^\n]", cpu_model))
|
if (sscanf(line, "model name : %[^\n]", cpu_model))
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
sprintf(user, "%s", getenv("USER"));
|
sprintf(user, "%s", getenv("USER"));
|
||||||
if (iscygwin == 0)
|
if (iscygwin == 0)
|
||||||
|
@ -422,9 +436,11 @@ void get_info()
|
||||||
while (fgets(line, sizeof(line), host_model_info))
|
while (fgets(line, sizeof(line), host_model_info))
|
||||||
if (sscanf(line, "%[^\n]", host_model))
|
if (sscanf(line, "%[^\n]", host_model))
|
||||||
break;
|
break;
|
||||||
|
#ifndef __FREEBSD__
|
||||||
while (fgets(line, sizeof(line), cpuinfo))
|
while (fgets(line, sizeof(line), cpuinfo))
|
||||||
if (sscanf(line, "Hardware : %[^\n]", cpu_model))
|
if (sscanf(line, "Hardware : %[^\n]", cpu_model))
|
||||||
break;
|
break;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
else if (library) // macOS
|
else if (library) // macOS
|
||||||
{
|
{
|
||||||
|
@ -439,7 +455,9 @@ void get_info()
|
||||||
else
|
else
|
||||||
sprintf(version_name, "unknown");
|
sprintf(version_name, "unknown");
|
||||||
}
|
}
|
||||||
|
#ifndef __FREEBSD__
|
||||||
fclose(cpuinfo);
|
fclose(cpuinfo);
|
||||||
|
#endif
|
||||||
gethostname(host, 256);
|
gethostname(host, 256);
|
||||||
sscanf(getenv("SHELL"), "%s", shell);
|
sscanf(getenv("SHELL"), "%s", shell);
|
||||||
if (strlen(shell) > 16)
|
if (strlen(shell) > 16)
|
||||||
|
@ -451,7 +469,9 @@ void get_info()
|
||||||
// system resources
|
// system resources
|
||||||
uname(&sys_var);
|
uname(&sys_var);
|
||||||
#ifndef __APPLE__
|
#ifndef __APPLE__
|
||||||
|
#ifndef __FREEBSD__
|
||||||
sysinfo(&sys); // somehow this function has to be called again in print_info()
|
sysinfo(&sys); // somehow this function has to be called again in print_info()
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
truncate_name(sys_var.release);
|
truncate_name(sys_var.release);
|
||||||
|
@ -897,21 +917,23 @@ void usage(char *arg)
|
||||||
|
|
||||||
void uwu_kernel()
|
void uwu_kernel()
|
||||||
{
|
{
|
||||||
#define KERNEL_TO_UWU(str, original, uwufied) \
|
#define KERNEL_TO_UWU(str, original, uwufied) \
|
||||||
if (strcmp(str, original) == 0) \
|
if (strcmp(str, original) == 0) \
|
||||||
sprintf(str, "%s", uwufied)
|
sprintf(str, "%s", uwufied)
|
||||||
|
|
||||||
char *temp_kernel = kernel;
|
char *temp_kernel = kernel;
|
||||||
char *token;
|
char *token;
|
||||||
char splitted[16][128] = {};
|
char splitted[16][128] = {};
|
||||||
|
|
||||||
int count = 0;
|
int count = 0;
|
||||||
while((token = strsep(&temp_kernel, " "))) {
|
while ((token = strsep(&temp_kernel, " ")))
|
||||||
|
{
|
||||||
strcpy(splitted[count], token);
|
strcpy(splitted[count], token);
|
||||||
count++;
|
count++;
|
||||||
}
|
}
|
||||||
strcpy(kernel, "");
|
strcpy(kernel, "");
|
||||||
for(int i = 0;i < 16;i++) {
|
for (int i = 0; i < 16; i++)
|
||||||
|
{
|
||||||
|
|
||||||
// kernel name
|
// kernel name
|
||||||
KERNEL_TO_UWU(splitted[i], "Linux", "Linuwu");
|
KERNEL_TO_UWU(splitted[i], "Linux", "Linuwu");
|
||||||
|
@ -950,10 +972,11 @@ void uwu_kernel()
|
||||||
// Windows
|
// Windows
|
||||||
KERNEL_TO_UWU(splitted[i], "windows", "WinyandOwOws");
|
KERNEL_TO_UWU(splitted[i], "windows", "WinyandOwOws");
|
||||||
|
|
||||||
if(i != 0) strcat(kernel, " ");
|
if (i != 0)
|
||||||
|
strcat(kernel, " ");
|
||||||
strcat(kernel, splitted[i]);
|
strcat(kernel, splitted[i]);
|
||||||
}
|
}
|
||||||
#undef KERNEL_TO_UWU
|
#undef KERNEL_TO_UWU
|
||||||
}
|
}
|
||||||
|
|
||||||
void uwu_name()
|
void uwu_name()
|
||||||
|
|
Loading…
Reference in a new issue