-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcoolfetch
More file actions
executable file
·141 lines (117 loc) · 4.4 KB
/
coolfetch
File metadata and controls
executable file
·141 lines (117 loc) · 4.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
#!/bin/sh
# Colors
RESET=$(printf '\033[0m')
BOLD=$(printf '\033[1m')
UNDERLINE=$(printf '\033[4m')
BLUE=$(printf '\033[34m')
GREEN=$(printf '\033[32m')
MAGENTA=$(printf '\033[35m')
# Regular colors
BLACK=$(printf '\033[0;30m')
RED=$(printf '\033[0;31m')
GREEN=$(printf '\033[0;32m')
YELLOW=$(printf '\033[0;33m')
BLUE=$(printf '\033[0;34m')
MAGENTA=$(printf '\033[0;35m')
CYAN=$(printf '\033[0;36m')
WHITE=$(printf '\033[0;37m')
# Bold colors
BBLACK=$(printf '\033[1;30m')
BRED=$(printf '\033[1;31m')
BGREEN=$(printf '\033[1;32m')
BYELLOW=$(printf '\033[1;33m')
BBLUE=$(printf '\033[1;34m')
BMAGENTA=$(printf '\033[1;35m')
BCYAN=$(printf '\033[1;36m')
BWHITE=$(printf '\033[1;37m')
# Background colors
BG_BLACK=$(printf '\033[40m')
BG_RED=$(printf '\033[41m')
BG_GREEN=$(printf '\033[42m')
BG_YELLOW=$(printf '\033[43m')
BG_BLUE=$(printf '\033[44m')
BG_MAGENTA=$(printf '\033[45m')
BG_CYAN=$(printf '\033[46m')
BG_WHITE=$(printf '\033[47m')
# High intensity text
IBLACK=$(printf '\033[0;90m')
IRED=$(printf '\033[0;91m')
IGREEN=$(printf '\033[0;92m')
IYELLOW=$(printf '\033[0;93m')
IBLUE=$(printf '\033[0;94m')
IMAGENTA=$(printf '\033[0;95m')
ICYAN=$(printf '\033[0;96m')
IWHITE=$(printf '\033[0;97m')
# High intensity bold text
BIBLACK=$(printf '\033[1;90m')
BIRED=$(printf '\033[1;91m')
BIGREEN=$(printf '\033[1;92m')
BIYELLOW=$(printf '\033[1;93m')
BIBLUE=$(printf '\033[1;94m')
BIMAGENTA=$(printf '\033[1;95m')
BICYAN=$(printf '\033[1;96m')
BIWHITE=$(printf '\033[1;97m')
# High intensity backgrounds
BG_IBLACK=$(printf '\033[0;100m')
BG_IRED=$(printf '\033[0;101m')
BG_IGREEN=$(printf '\033[0;102m')
BG_IYELLOW=$(printf '\033[0;103m')
BG_IBLUE=$(printf '\033[0;104m')
BG_IMAGENTA=$(printf '\033[0;105m')
BG_ICYAN=$(printf '\033[0;106m')
BG_IWHITE=$(printf '\033[0;107m')
# Reset style
RESET=$(printf '\033[0m')
BOLD=$(printf '\033[1m')
UNDERLINE=$(printf '\033[4m')
# Source OS release info
[ -f /etc/os-release ] && . /etc/os-release
#current wm
CURRENT_WM="${XDG_CURRENT_DESKTOP:-Unknown}"
KERNEL=$(uname -r)
UPTIME=$(uptime -p | awk '{print $2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20}')
MEM=$(free -mh | awk '/^Mem/ {print $3 " / " $2}')
kitty +kitten icat --place 30x30@78x0 ~/.config/CoolFetch/pictures/anime-275.png
# Path to your ASCII art file
ASCII_FILE="$HOME/.config/CoolFetch/ascii/blue.ascii"
# Read ASCII and system info into temporary files
awk '{print}' "$ASCII_FILE" > /tmp/ascii_lines
# Emojis
OS_EMOJI="🖥️"
KERNEL_EMOJI="🐧"
BUILD_ID_EMOJI="🛠️"
WM_EMOJI="💻"
HOME_URL_EMOJI="🌐"
UPTIME_EMOJI="⏳"
RAM_EMOJI="🐏"
# Define system info lines
cat <<EOF > /tmp/info_lines
${BOLD}${BLUE}############################${RESET}
${BOLD}${BLUE}############################${RESET}
${BOLD}${BLUE}######## ########${RESET}
${BOLD}${BLUE}######## COOL FETCH ########${RESET}
${BOLD}${BLUE}######## ########${RESET}
${BOLD}${BLUE}############################${RESET}
${BOLD}${BLUE}############################${RESET}
${BOLD}${BLUE}${OS_EMOJI}OS: ${RESET}${PRETTY_NAME}
${BOLD}${RED}${KERNEL_EMOJI}Kernel: ${RESET}${KERNEL} ${BOLD}${RED}|----------------|${RESET}
${BOLD}${GREEN}${BUILD_ID_EMOJI}Type: ${RESET}${BUILD_ID} ${BOLD}${RED}|-I USE ARCH BTW-|${RESET}
${BOLD}${YELLOW}${WM_EMOJI}WM: ${RESET}${CURRENT_WM} ${BOLD}${RED}|----------------|${RESET}
${BOLD}${BLACK}${RAM_EMOJI}Ram: ${RESET}${MEM}
${BOLD}${CYAN}${UPTIME_EMOJI}Uptime: ${RESET}${UPTIME}
${BOLD}${MAGENTA}${HOME_URL_EMOJI}Home URL: ${RESET}${HOME_URL}
EOF
# Get max number of lines
ascii_lines=$(wc -l < /tmp/ascii_lines)
info_lines=$(wc -l < /tmp/info_lines)
max_lines=$((ascii_lines > info_lines ? ascii_lines : info_lines))
# Print them side by side
for i in $(seq 1 "$max_lines"); do
left=$(sed -n "${i}p" /tmp/ascii_lines)
right=$(sed -n "${i}p" /tmp/info_lines)
printf "%-40s %s\n" "$left" "$right"
done
# Clean up
rm -f /tmp/ascii_lines /tmp/info_lines
kitty +kitten icat --place 30x30@205x40 ~/.config/CoolFetch/pictures/anime-255-1.png
kitty +kitten icat --place 30x30@40x20 ~/.config/CoolFetch/pictures/anime-241.png