summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main.c17
-rw-r--r--src/logo/freebsd.h9
-rw-r--r--src/logo/netbsd.h10
-rw-r--r--src/logo/openbsd.h11
-rw-r--r--src/logo/void.h10
5 files changed, 55 insertions, 2 deletions
diff --git a/main.c b/main.c
index 01ccfc8..6e67c17 100644
--- a/main.c
+++ b/main.c
@@ -18,8 +18,12 @@
const char *sofname = "farfetch";
const char *version = "0.0.1";
-int main() {
+int main(int argc, char *argv[]) {
int lc = 0;
+ int issmall = 0;
+ if (argc == 2 && strncmp(argv[1], "-s", strlen("-s")) == 0) {
+ issmall = 1;
+ }
#if defined(__OpenBSD__)
#include "src/logo/openbsd.h"
#elif defined(__NetBSD__)
@@ -44,6 +48,15 @@ int main() {
};
#endif
+ size_t ls = sizeof(LOGO) / sizeof(LOGO[0]);
+ if (issmall) {
+ size_t ne = sizeof(LOGO_SMALL) / sizeof(LOGO_SMALL[0]);
+ for (size_t i = 0; i < ne; i++) {
+ LOGO[i] = LOGO_SMALL[i];
+ }
+ ls = ne;
+ }
+
printf("%s ", LOGO[lc]);
printf(COLOR);
display_user_name();
@@ -114,7 +127,7 @@ int main() {
printf("\n");
lc++;
- for (size_t i = lc; i < sizeof(LOGO) / sizeof(LOGO[0]); i++) {
+ for (size_t i = lc; i < ls; i++) {
printf("%s\n", LOGO[i]);
}
diff --git a/src/logo/freebsd.h b/src/logo/freebsd.h
index 5c983f3..12db9d3 100644
--- a/src/logo/freebsd.h
+++ b/src/logo/freebsd.h
@@ -25,3 +25,12 @@ RED " " RESET,
RED " " RESET,
RED " " RESET
};
+
+char *LOGO_SMALL[] = {
+RED "/\\,-'''''-,/\\ " RESET,
+RED "\\_) (_/ " RESET,
+RED "| | " RESET,
+RED "| | " RESET,
+RED " ; ; " RESET,
+RED " '-_____-' " RESET
+};
diff --git a/src/logo/netbsd.h b/src/logo/netbsd.h
index 85539b4..06ce65f 100644
--- a/src/logo/netbsd.h
+++ b/src/logo/netbsd.h
@@ -25,3 +25,13 @@ WHITE " :Ms " RESET,
WHITE " :Ms " RESET,
WHITE " " RESET
};
+
+char *LOGO_SMALL[] = {
+"\\\\" MAGENTA "\\`-______,----__ " RESET,
+" \\\\ " MAGENTA "__,---\\`_ " RESET,
+" \\\\ " MAGENTA "\\`.____ " RESET,
+" \\\\" MAGENTA "-______,----\\`- " RESET,
+" \\\\ " RESET,
+" \\\\ " RESET,
+" \\\\ " RESET
+};
diff --git a/src/logo/openbsd.h b/src/logo/openbsd.h
index ae0474a..8a58da2 100644
--- a/src/logo/openbsd.h
+++ b/src/logo/openbsd.h
@@ -32,3 +32,14 @@ YELLOW " / .-.\\ " RESET,
YELLOW " \\ ( `\\ " RESET,
YELLOW " `.\\ " RESET
};
+
+char *LOGO_SMALL[] = {
+YELLOW " _____ " RESET,
+YELLOW " \\- -/ " RESET,
+YELLOW " \\_/ \\ " RESET,
+YELLOW " | " RESET "O O" YELLOW" | " RESET,
+YELLOW " |_ < ) 3 ) " RESET,
+YELLOW " / \\ / " RESET,
+YELLOW " /-_____-\\ " RESET,
+YELLOW " " RESET
+};
diff --git a/src/logo/void.h b/src/logo/void.h
index 4765277..ff5f82a 100644
--- a/src/logo/void.h
+++ b/src/logo/void.h
@@ -28,3 +28,13 @@ GREEN " -~|{*l}*|~ " RESET,
GREEN " " RESET,
GREEN " " RESET
};
+
+char *LOGO_SMALL[] = {
+GREEN " _______ " RESET,
+GREEN " _ \\______ - " RESET,
+GREEN "| \\ ___ \\ | " RESET,
+GREEN "| | / \\ | | " RESET,
+GREEN "| | \\___/ | | " RESET,
+GREEN "| \\______ \\_| " RESET,
+GREEN " -_______\\ " RESET
+};