aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAnser <rostgans@tutamail.com>2026-07-31 09:16:23 +0200
committerAnser <rostgans@tutamail.com>2026-07-31 14:27:57 +0200
commit9ad584b5762433f7c99d7cc7b65ad21ebe4ff932 (patch)
tree7f3299370afc4f0d1794918e279d9715ab0b009f /src
parent1a474dce46260fb043bd8ce74e221379e36af1a4 (diff)
TO BE SQUISHED:safe of current working stand, to get the logos vom ascii directory
Diffstat (limited to 'src')
-rw-r--r--src/cfetch.c17
-rw-r--r--src/logo/logo.c11
-rw-r--r--src/modules/memory/memory.c4
-rw-r--r--src/modules/memory/memory.h2
-rw-r--r--src/modules/os/os.c8
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;