diff options
| -rw-r--r-- | src/cfetch.c | 17 | ||||
| -rw-r--r-- | src/logo/logo.c | 11 | ||||
| -rw-r--r-- | src/modules/memory/memory.c | 4 | ||||
| -rw-r--r-- | src/modules/memory/memory.h | 2 | ||||
| -rw-r--r-- | src/modules/os/os.c | 8 |
5 files changed, 36 insertions, 6 deletions
diff --git a/src/cfetch.c b/src/cfetch.c index 8108ab6..ac5c6a6 100644 --- a/src/cfetch.c +++ b/src/cfetch.c @@ -11,11 +11,28 @@ #include "modules/memory/memory.h" #include "modules/cpu/cpu.h" #include "logo/logo.h" +#include "modules/utils/utils.h" + +#include <stdio.h> +#include <sys/ioctl.h> +#include <stdlib.h> +#include <unistd.h> int main(void) { os(); memory(); cpu(); print_logo(); + + struct winsize w; + ioctl(STDOUT_FILENO, TIOCGWINSZ, &w); + + printf("lines %d\n", w.ws_row); + printf("columns %d\n", w.ws_col); + + /* char *s = concat("derp", "herp"); + printf("%s\n", s); + free(s); */ + return 0; } diff --git a/src/logo/logo.c b/src/logo/logo.c index 749b999..98cda8d 100644 --- a/src/logo/logo.c +++ b/src/logo/logo.c @@ -5,6 +5,17 @@ #define MAX_LOGOS 2 +typedef struct distro_mapping_t { + const char *distro_pattern; + const char *ascii_file; +} distro_mapping_t; + +static const distro_mapping_t distro_mappings[] = { + {"cccp", "cccp.ascii"}, + {"cccp_shield", "cccp_shield.ascii"}, + {NULL, NULL} +}; + const char **logo(int index) { static const char *logo0[] = { diff --git a/src/modules/memory/memory.c b/src/modules/memory/memory.c index 211cf44..62eeafe 100644 --- a/src/modules/memory/memory.c +++ b/src/modules/memory/memory.c @@ -1,12 +1,12 @@ #include <stdio.h> #include "memory.h" -int memory(void) { +char *memory(void) { FILE *file = fopen("/proc/meminfo", "r"); if (!file) { perror("Error fopen meminfo"); - return 1; + return NULL; } char line[256]; diff --git a/src/modules/memory/memory.h b/src/modules/memory/memory.h index f963702..5c35178 100644 --- a/src/modules/memory/memory.h +++ b/src/modules/memory/memory.h @@ -1,6 +1,6 @@ #ifndef MEMORY_H #define MEMORY_H -int memory(void); +char *memory(void); #endif // MEMORY_H diff --git a/src/modules/os/os.c b/src/modules/os/os.c index cdf6e6e..6059c03 100644 --- a/src/modules/os/os.c +++ b/src/modules/os/os.c @@ -1,4 +1,5 @@ #include <stdio.h> +#include <string.h> #include <sys/utsname.h> #include "os.h" @@ -7,10 +8,11 @@ int os(void) { struct utsname u; if (uname(&u) == 0) { - printf("OS: %s %s ", u.sysname, u.release); - printf("%s %s\n", u.version, u.machine); + size_t length = printf("OS: %s %s %s %s\n", u.sysname, u.release, u.version, u.machine); + printf("line length: %ld\n", length); } else { - perror("uname"); + perror("Error while accessing uname"); + return 1; } #endif return 0; |
