diff --git a/neofetch b/neofetch index 2f421ae1..a2dd2d3d 100755 --- a/neofetch +++ b/neofetch @@ -4140,3487 +4140,2189 @@ uppercase() { # COLORS -get_distro_colors() { - # This function sets the text colors according - # to your OS/Distro's logo colors. - # - # $ascii_distro is the same as $distro. - case "$ascii_distro" in - "AIX"*) - set_colors 2 7 - read -rd '' ascii_data <<'EOF' -${c1} `:+ssssossossss+-` - .oys///oyhddddhyo///sy+. - /yo:+hNNNNNNNNNNNNNNNNh+:oy/ - :h/:yNNNNNNNNNNNNNNNNNNNNNNy-+h: - `ys.yNNNNNNNNNNNNNNNNNNNNNNNNNNy.ys - `h+-mNNNNNNNNNNNNNNNNNNNNNNNNNNNNm-oh - h+-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN.oy -/d`mNNNNNNN/::mNNNd::m+:/dNNNo::dNNNd`m: -h//NNNNNNN: . .NNNh mNo od. -dNNNNN:+y -N.sNNNNNN+ -N/ -NNh mNNd. sNNNNNNNo-m -N.sNNNNNs +oo /Nh mNNs` ` /mNNNNNNo-m -h//NNNNh ossss` +h md- .hm/ `sNNNNN:+y -:d`mNNN+/yNNNNNd//y//h//oNNNNy//sNNNd`m- - yo-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNm.ss - `h+-mNNNNNNNNNNNNNNNNNNNNNNNNNNNNm-oy - sy.yNNNNNNNNNNNNNNNNNNNNNNNNNNs.yo - :h+-yNNNNNNNNNNNNNNNNNNNNNNs-oh- - :ys:/yNNNNNNNNNNNNNNNmy/:sy: - .+ys///osyhhhhys+///sy+. - -/osssossossso/- -EOF - ;; +set_colors() { + c1="$(color "$1")${ascii_bold}" + c2="$(color "$2")${ascii_bold}" + c3="$(color "$3")${ascii_bold}" + c4="$(color "$4")${ascii_bold}" + c5="$(color "$5")${ascii_bold}" + c6="$(color "$6")${ascii_bold}" - "alpine_small") - set_colors 4 7 - read -rd '' ascii_data <<'EOF' -${c1} /\\ /\\ - /${c2}/ ${c1}\\ \\ - /${c2}/ ${c1}\\ \\ -/${c2}// ${c1}\\ \\ -${c2}// ${c1}\\ \\ - \\ -EOF - ;; + [[ "$color_text" != "off" ]] && set_text_colors "$@" +} - "Alpine"*) - set_colors 4 5 7 6 - read -rd '' ascii_data <<'EOF' -${c1} .hddddddddddddddddddddddh. - :dddddddddddddddddddddddddd: - /dddddddddddddddddddddddddddd/ - +dddddddddddddddddddddddddddddd+ - `sdddddddddddddddddddddddddddddddds` - `ydddddddddddd++hdddddddddddddddddddy` -.hddddddddddd+` `+ddddh:-sdddddddddddh. -hdddddddddd+` `+y: .sddddddddddh -ddddddddh+` `//` `.` -sddddddddd -ddddddh+` `/hddh/` `:s- -sddddddd -ddddh+` `/+/dddddh/` `+s- -sddddd -ddd+` `/o` :dddddddh/` `oy- .yddd -hdddyo+ohddyosdddddddddho+oydddy++ohdddh -.hddddddddddddddddddddddddddddddddddddh. - `yddddddddddddddddddddddddddddddddddy` - `sdddddddddddddddddddddddddddddddds` - +dddddddddddddddddddddddddddddd+ - /dddddddddddddddddddddddddddd/ - :dddddddddddddddddddddddddd: - .hddddddddddddddddddddddh. -EOF - ;; +set_text_colors() { + if [[ "${colors[0]}" == "distro" ]]; then + title_color="$(color "$1")" + at_color="$reset" + underline_color="$reset" + subtitle_color="$(color "$2")" + colon_color="$reset" + info_color="$reset" - "Amazon"*) - set_colors 3 7 - read -rd '' ascii_data <<'EOF' -${c1} `-/oydNNdyo:.` - `.:+shmMMMMMMMMMMMMMMmhs+:.` - -+hNNMMMMMMMMMMMMMMMMMMMMMMNNho- -.`` -/+shmNNMMMMMMNNmhs+/- ``. -dNmhs+:. `.:/oo/:.` .:+shmNd -dMMMMMMMNdhs+:.. ..:+shdNMMMMMMMd -dMMMMMMMMMMMMMMNds odNMMMMMMMMMMMMMMd -dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd -dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd -dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd -dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd -dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd -dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd -dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd -dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd -dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd -.:+ydNMMMMMMMMMMMh yMMMMMMMMMMMNdy+:. - `.:+shNMMMMMh yMMMMMNhs+:`` - `-+shy shs+:` -EOF - ;; + # If the ascii art uses 8 as a color, make the text the fg. + ((${1:-1} == 8)) && title_color="$reset" + ((${2:-7} == 8)) && subtitle_color="$reset" - "Anarchy"*) - set_colors 7 4 - read -rd '' ascii_data <<'EOF' - ${c2}..${c1} - ${c2}..${c1} - ${c2}:..${c1} - ${c2}:+++.${c1} - .:::++${c2}++++${c1}+::. - .:+######${c2}++++${c1}######+:. - .+#########${c2}+++++${c1}##########:. - .+##########${c2}+++++++${c1}##${c2}+${c1}#########+. - +###########${c2}+++++++++${c1}############: - +##########${c2}++++++${c1}#${c2}++++${c1}#${c2}+${c1}###########+ - +###########${c2}+++++${c1}###${c2}++++${c1}#${c2}+${c1}###########+ - :##########${c2}+${c1}#${c2}++++${c1}####${c2}++++${c1}#${c2}+${c1}############: - ###########${c2}+++++${c1}#####${c2}+++++${c1}#${c2}+${c1}###${c2}++${c1}######+ -.##########${c2}++++++${c1}#####${c2}++++++++++++${c1}#######. -.##########${c2}+++++++++++++++++++${c1}###########. - #####${c2}++++++++++++++${c1}###${c2}++++++++${c1}#########+ - :###${c2}++++++++++${c1}#########${c2}+++++++${c1}#########: - +######${c2}+++++${c1}##########${c2}++++++++${c1}#######+ - +####${c2}+++++${c1}###########${c2}+++++++++${c1}#####+ - :##${c2}++++++${c1}############${c2}++++++++++${c1}##: - .${c2}++++++${c1}#############${c2}++++++++++${c1}+. - :${c2}++++${c1}###############${c2}+++++++${c1}:: - .${c2}++. .:+${c1}##############${c2}+++++++${c1}.. - ${c2}.:.${c1} ..::++++++::..:${c2}++++${c1}+. - ${c2}.${c1} ${c2}.:+++${c1}. - ${c2}.:${c1}: - ${c2}..${c1} - ${c2}..${c1} -EOF - ;; + # If the second color is white use the first for the subtitle. + ((${2:-7} == 7)) && subtitle_color="$(color "$1")" + ((${1:-1} == 7)) && title_color="$reset" + else + title_color="$(color "${colors[0]}")" + at_color="$(color "${colors[1]}")" + underline_color="$(color "${colors[2]}")" + subtitle_color="$(color "${colors[3]}")" + colon_color="$(color "${colors[4]}")" + info_color="$(color "${colors[5]}")" + fi - "Android"*) - set_colors 2 7 - read -rd '' ascii_data <<'EOF' -${c1} -o o- - +hydNNNNdyh+ - +mMMMMMMMMMMMMm+ - `dMM${c2}m:${c1}NMMMMMMN${c2}:m${c1}MMd` - hMMMMMMMMMMMMMMMMMMh - .. yyyyyyyyyyyyyyyyyyyy .. -.mMMm`MMMMMMMMMMMMMMMMMMMM`mMMm. -:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM: -:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM: -:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM: -:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM: --MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM- - +yy+ MMMMMMMMMMMMMMMMMMMM +yy+ - mMMMMMMMMMMMMMMMMMMm - `/++MMMMh++hMMMM++/` - MMMMo oMMMM - MMMMo oMMMM - oNMm- -mMNs -EOF - ;; + # Bar colors. + if [[ "$bar_color_elapsed" == "distro" ]]; then + bar_color_elapsed="$(color fg)" + else + bar_color_elapsed="$(color "$bar_color_elapsed")" + fi - "Antergos"*) - set_colors 4 6 - read -rd '' ascii_data <<'EOF' -${c2} `.-/::/-`` - .-/osssssssso/. - :osyysssssssyyys+- - `.+yyyysssssssssyyyyy+. - `/syyyyyssssssssssyyyyys-` - `/yhyyyyysss${c1}++${c2}ssosyyyyhhy/` - .ohhhyyyys${c1}o++/+o${c2}so${c1}+${c2}syy${c1}+${c2}shhhho. - .shhhhys${c1}oo++//+${c2}sss${c1}+++${c2}yyy${c1}+s${c2}hhhhs. - -yhhhhs${c1}+++++++o${c2}ssso${c1}+++${c2}yyy${c1}s+o${c2}hhddy: - -yddhhy${c1}o+++++o${c2}syyss${c1}++++${c2}yyy${c1}yooy${c2}hdddy- - .yddddhs${c1}o++o${c2}syyyyys${c1}+++++${c2}yyhh${c1}sos${c2}hddddy` -`odddddhyosyhyyyyyy${c1}++++++${c2}yhhhyosddddddo -.dmdddddhhhhhhhyyyo${c1}+++++${c2}shhhhhohddddmmh. -ddmmdddddhhhhhhhso${c1}++++++${c2}yhhhhhhdddddmmdy -dmmmdddddddhhhyso${c1}++++++${c2}shhhhhddddddmmmmh --dmmmdddddddhhys${c1}o++++o${c2}shhhhdddddddmmmmd- -.smmmmddddddddhhhhhhhhhdddddddddmmmms. - `+ydmmmdddddddddddddddddddmmmmdy/. - `.:+ooyyddddddddddddyyso+:.` -EOF - ;; + case "$bar_color_total $1" in + "distro "[736]) bar_color_total="$(color "$1")" ;; + "distro "[0-9]) bar_color_total="$(color "$2")" ;; + *) bar_color_total="$(color "$bar_color_total")" ;; + esac +} - "antiX"*) - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' -${c1} - \ - , - ~ ^ ~ - \ / - , ' \ ' , / - , \ '/ - , \ / , - ,___, \/ , - / | _ _ _|_ o /\ , -|, | / |/ | | | / \ , - \,_/\_/ | |_/|_/|_/_/ \, - , / ,\ - , / , ' \ - ' - , _ _ _ , ' -EOF - ;; +color() { + case "$1" in + [0-6]) printf "%b" "${reset}\e[3${1}m" ;; + 7 | "fg") printf "%b" "\e[37m${reset}" ;; + *) printf "%b" "\e[38;5;${1}m" ;; + esac +} - "AOSC"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c2} .:+syhhhhys+:. - .ohNMMMMMMMMMMMMMMNho. - `+mMMMMMMMMMMmdmNMMMMMMMMm+` - +NMMMMMMMMMMMM/ `./smMMMMMN+ - .mMMMMMMMMMMMMMMo -yMMMMMm. - :NMMMMMMMMMMMMMMMs .hMMMMN: - .NMMMMhmMMMMMMMMMMm+/- oMMMMN. - dMMMMs ./ymMMMMMMMMMMNy. sMMMMd --MMMMN` oMMMMMMMMMMMN: `NMMMM- -/MMMMh NMMMMMMMMMMMMm hMMMM/ -/MMMMh NMMMMMMMMMMMMm hMMMM/ --MMMMN` :MMMMMMMMMMMMy. `NMMMM- - dMMMMs .yNMMMMMMMMMMMNy/. sMMMMd - .NMMMMo -/+sMMMMMMMMMMMmMMMMN. - :NMMMMh. .MMMMMMMMMMMMMMMN: - .mMMMMMy- NMMMMMMMMMMMMMm. - +NMMMMMms/.` mMMMMMMMMMMMN+ - `+mMMMMMMMMNmddMMMMMMMMMMm+` - .ohNMMMMMMMMMMMMMMNho. - .:+syhhhhys+:. -EOF - ;; +# OTHER - "Apricity"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c2} ./o- - ``...`` `:. -/: - `-+ymNMMMMMNmho-` :sdNNm/ - `+dMMMMMMMMMMMMMMMmo` sh:.:::- - /mMMMMMMMMMMMMMMMMMMMm/`sNd/ - oMMMMMMMMMMMMMMMMMMMMMMMs -` -:MMMMMMMMMMMMMMMMMMMMMMMMM/ -NMMMMMMMMMMMMMMMMMMMMMMMMMd -MMMMMMMmdmMMMMMMMMMMMMMMMMd -MMMMMMy` .mMMMMMMMMMMMmho:` -MMMMMMNo/sMMMMMMMNdy+-.`-/ -MMMMMMMMMMMMNdy+:.`.:ohmm: -MMMMMMMmhs+-.`.:+ymNMMMy. -MMMMMM/`.-/ohmNMMMMMMy- -MMMMMMNmNNMMMMMMMMmo. -MMMMMMMMMMMMMMMms:` -MMMMMMMMMMNds/. -dhhyys+/-` -EOF - ;; +stdout() { + image_backend="off" + unset subtitle_color + unset colon_color + unset info_color + unset underline_color + unset bold + unset title_color + unset at_color + unset text_padding + unset zws + unset reset + unset color_blocks + unset get_line_break +} - "arch_small") - set_colors 6 7 1 - read -rd '' ascii_data <<'EOF' -${c1} /\ - /^^\ - /\ \ - /${c2} __ \ - / ( ) \ - / __| |__\\\ -/// \\\\\ -EOF - ;; +err() { + err+="$(color 1)[!]\e[0m $1\n" +} - "arch_old") - set_colors 6 7 1 - read -rd '' ascii_data <<'EOF' -${c1} __ - _=(SDGJT=_ - _GTDJHGGFCVS) - ,GTDJGGDTDFBGX0 -${c1} JDJDIJHRORVFSBSVL${c2}-=+=,_ -${c1} IJFDUFHJNXIXCDXDSV,${c2} "DEBL -${c1} [LKDSDJTDU=OUSCSBFLD.${c2} '?ZWX, -${c1} ,LMDSDSWH' `DCBOSI${c2} DRDS], -${c1} SDDFDFH' !YEWD,${c2} )HDROD -${c1} !KMDOCG &GSU|${c2}\_GFHRGO\' -${c1} HKLSGP'${c2} __${c1}\TKM0${c2}\GHRBV)' -${c1}JSNRVW'${c2} __+MNAEC${c1}\IOI,${c2}\BN' -${c1}HELK['${c2} __,=OFFXCBGHC${c1}\FD) -${c1}?KGHE ${c2}\_-#DASDFLSV='${c1} 'EF -'EHTI !H - `0F' '! -EOF - ;; +get_full_path() { + # This function finds the absolute path from a relative one. + # For example "Pictures/Wallpapers" --> "/home/dylan/Pictures/Wallpapers" - "ArchBox"*) - set_colors 2 7 1 - read -rd '' ascii_data <<'EOF' -${c1} ...:+oh/:::.. - ..-/oshhhhhh` `::::-. - .:/ohhhhhhhhhhhh` `-::::. - .+shhhhhhhhhhhhhhhhh` `.::-. - /`-:+shhhhhhhhhhhhhh` .-/+shh - / .:/ohhhhhhhhh` .:/ohhhhhhhh - / `-:+shhh` ..:+shhhhhhhhhhhh - / .:ohhhhhhhhhhhhhhhhhhh - / `hhhhhhhhhhhhhhhhhhhh - / `hhhhhhhhhhhhhhhhhhhh - / `hhhhhhhhhhhhhhhhhhhh - / `hhhhhhhhhhhhhhhhhhhh - / .+o+ `hhhhhhhhhhhhhhhhhhhh - / -hhhhh `hhhhhhhhhhhhhhhhhhhh - / ohhhhho `hhhhhhhhhhhhhhhhhhhh - /:::+`hhhhoos` `hhhhhhhhhhhhhhhhhs+` - `--/:` /: `hhhhhhhhhhhho/- - -/:. `hhhhhhs+:-` - ::::/ho/-` -EOF - ;; + # If the file exists in the current directory, stop here. + [[ -f "${PWD}/${1/*\/}" ]] && { printf "%s\n" "${PWD}/${1/*\/}"; return; } - "ARCHlabs"*) - set_colors 6 6 7 1 - read -rd '' ascii_data <<'EOF' -${c1} 'c' - 'kKk, - .dKKKx. - .oKXKXKd. - .l0XXXXKKo. - c0KXXXXKX0l. - :0XKKOxxOKX0l. - :OXKOc. .c0XX0l. - :OK0o. ${c4}...${c1}'dKKX0l. - :OX0c ${c4};xOx'${c1}'dKXX0l. - :0KKo.${c4}.o0XXKd'.${c1}lKXX0l. - c0XKd.${c4}.oKXXXXKd..${c1}oKKX0l. - .c0XKk;${c4}.l0K0OO0XKd..${c1}oKXXKo. - .l0XXXk:${c4},dKx,.'l0XKo.${c1}.kXXXKo. - .o0XXXX0d,${c4}:x; .oKKx'${c1}.dXKXXKd. - .oKXXXXKK0c.${c4};. :00c'${c1}cOXXXXXKd. - .dKXXXXXXXXk,${c4}. cKx'${c1}'xKXXXXXXKx' - 'xKXXXXK0kdl:. ${c4}.ok; ${c1}.cdk0KKXXXKx' - 'xKK0koc,.. ${c4}'c, ${c1} ..,cok0KKk, - ,xko:'. ${c4}.. ${c1} .':okx; - .,'. .',. -EOF - ;; + if ! cd "${1%/*}"; then + err "Error: Directory '${1%/*}' doesn't exist or is inaccessible" + err " Check that the directory exists or try another directory." + exit 1 + fi - *"XFerience"*) - set_colors 6 6 7 1 - read -rd '' ascii_data <<'EOF' -${c1} ``--:::::::-.` - .-/+++ooooooooo+++:-` - `-/+oooooooooooooooooo++:. - -/+oooooo/+ooooooooo+/ooo++:` - `/+oo++oo. .+oooooo+.-: +:-o+- - `/+o/. -o. :oooooo+ ```:.+oo+- -`:+oo- -/` :oooooo+ .`-`+oooo/. -.+ooo+. .` `://///+-+..oooooo+:` --+ooo:` ``.-+oooooo+/` --+oo/` :+oooo/. -.+oo: ..-/. . -+oo+/` -`/++- -:::++::/. -+oo+- - ./o: `:///+- `./ooo+:` - .++- `` /-` -:/+oooo+:` - .:+/:`` `-:ooooooo++- - ./+o+//:...../+oooooooo++:` - `:/++ooooooooooooo++/-` - `.-//++++++//:-.` - `````` -EOF - ;; + local full_dir="${1##*/}" - "ArchMerge"*) - set_colors 6 6 7 1 - read -rd '' ascii_data <<'EOF' -${c1} y: - sMN- - +MMMm` - /MMMMMd` - :NMMMMMMy - -NMMMMMMMMs - .NMMMMMMMMMM+ - .mMMMMMMMMMMMM+ - oNMMMMMMMMMMMMM+ - `+:-+NMMMMMMMMMMMM+ - .sNMNhNMMMMMMMMMMMM/ - `hho/sNMMMMMMMMMMMMMMM/ - `.`omMMmMMMMMMMMMMMMMMMM+ - .mMNdshMMMMd+::oNMMMMMMMMMo - .mMMMMMMMMM+ `yMMMMMMMMMs - .NMMMMMMMMM/ yMMMMMMMMMy - -NMMMMMMMMMh `mNMMMMMMMMd` - /NMMMNds+:.` `-/oymMMMm. - +Mmy/. `:smN: -/+. -o. -EOF - ;; + # Iterate down a (possible) chain of symlinks. + while [[ -L "$full_dir" ]]; do + full_dir="$(readlink "$full_dir")" + cd "${full_dir%/*}" || exit + full_dir="${full_dir##*/}" + done - "Arch"*) - set_colors 6 6 7 1 - read -rd '' ascii_data <<'EOF' -${c1} -` - .o+` - `ooo/ - `+oooo: - `+oooooo: - -+oooooo+: - `/:-:++oooo+: - `/++++/+++++++: - `/++++++++++++++: - `/+++o${c2}oooooooo${c1}oooo/` -${c2} ${c1}./${c2}ooosssso++osssssso${c1}+` -${c2} .oossssso-````/ossssss+` - -osssssso. :ssssssso. - :osssssss/ osssso+++. - /ossssssss/ +ssssooo/- - `/ossssso+/:- -:/+osssso+- - `+sso+:-` `.-/+oso: - `++:. `-/+/ - .` `/ -EOF - ;; + # Final directory. + full_dir="$(pwd -P)/${1/*\/}" - "Artix"*) - set_colors 6 4 2 7 - read -rd '' ascii_data <<'EOF' -${c1} d${c2}c. -${c1} x${c2}dc. -${c1} '.${c4}.${c1} d${c2}dlc. -${c1} c${c2}0d:${c1}o${c2}xllc; -${c1} :${c2}0ddlolc,lc, -${c1} :${c1}ko${c4}.${c1}:${c2}0ddollc..dlc. -${c1} ;${c1}K${c2}kxoOddollc' cllc. -${c1} ,${c1}K${c2}kkkxdddllc, ${c4}.${c2}lll: -${c1} ,${c1}X${c2}kkkddddlll;${c3}...';${c1}d${c2}llll${c3}dxk: -${c1} ,${c1}X${c2}kkkddddllll${c3}oxxxddo${c2}lll${c3}oooo, -${c3} xxk${c1}0${c2}kkkdddd${c1}o${c2}lll${c1}o${c3}ooooooolooooc;${c1}. -${c3} ddd${c2}kkk${c1}d${c2}ddd${c1}ol${c2}lc:${c3}:;,'.${c3}... .${c2}lll; -${c1} .${c3}xd${c1}x${c2}kk${c1}xd${c2}dl${c1}'cl:${c4}. ${c2}.llc, -${c1} .${c1}0${c2}kkkxddl${c4}. ${c2};'${c4}. ${c2};llc. -${c1} .${c1}K${c2}Okdcddl${c4}. ${c2}cllc${c4}. -${c1} 0${c2}Okd''dc. .cll; -${c1} k${c2}Okd' .llc, -${c1} d${c2}Od, 'lc. -${c1} :,${c4}. ${c2}... -EOF - ;; + [[ -e "$full_dir" ]] && printf "%s\n" "$full_dir" +} - "Arya"*) - set_colors 2 1 - read -rd '' ascii_data <<'EOF' -${c1} `oyyy/${c2}-yyyyyy+ -${c1} -syyyy/${c2}-yyyyyy+ -${c1} .syyyyy/${c2}-yyyyyy+ -${c1} :yyyyyy/${c2}-yyyyyy+ -${c1} `/ :yyyyyy/${c2}-yyyyyy+ -${c1} .+s :yyyyyy/${c2}-yyyyyy+ -${c1} .oys :yyyyyy/${c2}-yyyyyy+ -${c1} -oyys :yyyyyy/${c2}-yyyyyy+ -${c1} :syyys :yyyyyy/${c2}-yyyyyy+ -${c1} /syyyys :yyyyyy/${c2}-yyyyyy+ -${c1} +yyyyyys :yyyyyy/${c2}-yyyyyy+ -${c1} .oyyyyyyo. :yyyyyy/${c2}-yyyyyy+ --------- -${c1} .syyyyyy+` :yyyyyy/${c2}-yyyyy+-+syyyyyyyy -${c1} -syyyyyy/ :yyyyyy/${c2}-yyys:.syyyyyyyyyy -${c1}:syyyyyy/ :yyyyyy/${c2}-yyo.:syyyyyyyyyyy -EOF - ;; +get_user_config() { + # Check $config_file. + if [[ -f "$config_file" ]]; then + source "$config_file" + err "Config: Sourced user config. (${config_file})" + old_options + return + fi + mkdir -p "${XDG_CONFIG_HOME}/neofetch/" - "Bitrig"*) - set_colors 2 7 - read -rd '' ascii_data <<'EOF' -${c1} `hMMMMN+ - -MMo-dMd` - oMN- oMN` - yMd /NM: - .mMmyyhMMs - :NMMMhsmMh - +MNhNNoyMm- - hMd.-hMNMN: - mMmsssmMMMo - .MMdyyhNMMMd - oMN.`/dMddMN` - yMm/hNm+./MM/ -.dMMMmo.``.NMo -:NMMMNmmmmmMMh -/MN/-------oNN: -hMd. .dMh -sm/ /ms -EOF - ;; + # Check ${XDG_CONFIG_HOME}/neofetch and create the + # dir/files if they don't exist. + if [[ -f "${XDG_CONFIG_HOME}/neofetch/config" ]]; then + config_file="${XDG_CONFIG_HOME}/neofetch/config" - "BLAG"*) - set_colors 5 7 - read -rd '' ascii_data <<'EOF' -${c1} d - ,MK: - xMMMX: - .NMMMMMX; - lMMMMMMMM0clodkO0KXWW: - KMMMMMMMMMMMMMMMMMMX' - .;d0NMMMMMMMMMMMMMMMMMMK. - .;dONMMMMMMMMMMMMMMMMMMMMMMx -'dKMMMMMMMMMMMMMMMMMMMMMMMMl - .:xKWMMMMMMMMMMMMMMMMMMM0. - .:xNMMMMMMMMMMMMMMMMMK. - lMMMMMMMMMMMMMMMMMMK. - ,MMMMMMMMWkOXWMMMMMM0 - .NMMMMMNd. `':ldko - OMMMK: - oWk, - ;: -EOF - ;; + elif [[ -f "${XDG_CONFIG_HOME}/neofetch/config.conf" ]]; then + config_file="${XDG_CONFIG_HOME}/neofetch/config.conf" - "BlankOn"*) - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' -${c2} `./ohdNMMMMNmho+.` ${c1} .+oo:` -${c2} -smMMMMMMMMMMMMMMMMmy-` ${c1}`yyyyy+ -${c2} `:dMMMMMMMMMMMMMMMMMMMMMMd/` ${c1}`yyyyys -${c2} .hMMMMMMMNmhso/++symNMMMMMMMh- ${c1}`yyyyys -${c2} -mMMMMMMms-` -omMMMMMMN-${c1}.yyyyys -${c2}.mMMMMMMy. .yMMMMMMm:${c1}yyyyys -${c2}sMMMMMMy `sMMMMMMh${c1}yyyyys -${c2}NMMMMMN: .NMMMMMN${c1}yyyyys -${c2}MMMMMMm. NMMMMMN${c1}yyyyys -${c2}hMMMMMM+ /MMMMMMN${c1}yyyyys -${c2}:NMMMMMN: :mMMMMMM+${c1}yyyyys -${c2} oMMMMMMNs- .sNMMMMMMs.${c1}yyyyys -${c2} +MMMMMMMNho:.` `.:ohNMMMMMMNo ${c1}`yyyyys -${c2} -hMMMMMMMMNNNmmNNNMMMMMMMMh- ${c1}`yyyyys -${c2} :yNMMMMMMMMMMMMMMMMMMNy:` ${c1}`yyyyys -${c2} .:sdNMMMMMMMMMMNds/. ${c1}`yyyyyo -${c2} `.:/++++/:.` ${c1}:oys+. -EOF - ;; + else + config_file="${XDG_CONFIG_HOME}/neofetch/config.conf" - "BSD") - set_colors 1 7 4 3 6 - read -rd '' ascii_data <<'EOF' -${c1} , , - /( )` - \ \___ / | - /- _ `-/ ' - (${c2}/\/ \ ${c1}\ /\ - ${c2}/ / | ` ${c1}\ - ${c3}O O ${c2}) ${c1}/ | - ${c2}`-^--'${c1}`< ' - (_.) _ ) / - `.___/` / - `-----' / -${c4}<----. __ / __ \ -${c4}<----|====${c1}O)))${c4}==${c1}) \) /${c4}====| -<----' ${c1}`--' `.__,' \ - | | - \ / /\ - ${c5}______${c1}( (_ / \______/ - ${c5},' ,-----' | - `--{__________) -EOF - ;; + # The config file doesn't exist, create it. + printf "%s\n" "$config" > "$config_file" + fi - "BunsenLabs"*) - set_colors fg 7 - read -rd '' ascii_data <<'EOF' -${c1} `++ - -yMMs - `yMMMMN` - -NMMMMMMm. - :MMMMMMMMMN- - .NMMMMMMMMMMM/ - yMMMMMMMMMMMMM/ -`MMMMMMNMMMMMMMN. --MMMMN+ /mMMMMMMy --MMMm` `dMMMMMM -`MMN. .NMMMMM. - hMy yMMMMM` - -Mo +MMMMN - /o +MMMMs - +MMMN` - hMMM: - `NMM/ - +MN: - mh. - -/ -EOF - ;; + source "$config_file" + err "Config: Sourced user config. (${config_file})" + old_options +} - "Calculate"*) - set_colors 7 3 - read -rd '' ascii_data <<'EOF' -${c1} ...... - ,,+++++++,. - .,,,....,,,${c2}+**+,,.${c1} - ............,${c2}++++,,,${c1} - ............... - ......,,,........ - .....+*#####+,,,*+. - .....,*###############,..,,,,,,.. - ......,*#################*..,,,,,..,,,.. - .,,....*####################+***+,,,,...,++, - .,,..,..*#####################*, - ,+,.+*..*#######################. - ,+,,+*+..,########################* -.,++++++. ..+##**###################+ -..... ..+##***#################*. - .,.*#*****##############*. - ..,,*********#####****+. - ${c2}.,++*****+++${c1}*****************${c2}+++++,.${c1} - ${c2},++++++**+++++${c1}***********${c2}+++++++++,${c1} - ${c2}.,,,,++++,.. .,,,,,.....,+++,.,,${c1} -EOF - ;; +bar() { + # Get the values. + elapsed="$(($1 * bar_length / $2))" - "CentOS"*) - set_colors 3 2 4 5 7 - read -rd '' ascii_data <<'EOF' -${c1} .. - .PLTJ. - <><><><> - ${c2}KKSSV' 4KKK ${c1}LJ${c4} KKKL.'VSSKK - ${c2}KKV' 4KKKKK ${c1}LJ${c4} KKKKAL 'VKK - ${c2}V' ' 'VKKKK ${c1}LJ${c4} KKKKV' ' 'V - ${c2}.4MA.' 'VKK ${c1}LJ${c4} KKV' '.4Mb. -${c4} . ${c2}KKKKKA.' 'V ${c1}LJ${c4} V' '.4KKKKK ${c3}. -${c4} .4D ${c2}KKKKKKKA.'' ${c1}LJ${c4} ''.4KKKKKKK ${c3}FA. -${c4} -${c4} 'VD ${c3}KKKKKKKK'.. ${c2}LJ ${c1}..'KKKKKKKK ${c3}FV -${c4} ' ${c3}VKKKKK'. .4 ${c2}LJ ${c1}K. .'KKKKKV ${c3}' - ${c3} 'VK'. .4KK ${c2}LJ ${c1}KKA. .'KV' - ${c3}A. . .4KKKK ${c2}LJ ${c1}KKKKA. . .4 - ${c3}KKA. 'KKKKK ${c2}LJ ${c1}KKKKK' .4KK - ${c3}KKSSA. VKKK ${c2}LJ ${c1}KKKV .4SSKK -${c2} <><><><> - 'MKKM' - '' -EOF - ;; + # Create the bar with spaces. + printf -v prog "%${elapsed}s" + printf -v total "%$((bar_length - elapsed))s" - "Chakra"*) - set_colors 4 5 7 6 - read -rd '' ascii_data <<'EOF' -${c1} _ _ _ "kkkkkkkk. - ,kkkkkkkk., 'kkkkkkkkk, - ,kkkkkkkkkkkk., 'kkkkkkkkk. - ,kkkkkkkkkkkkkkkk,'kkkkkkkk, - ,kkkkkkkkkkkkkkkkkkk'kkkkkkk. - "''"''',;::,,"''kkk''kkkkk; __ - ,kkkkkkkkkk, "k''kkkkk' ,kkkk - ,kkkkkkk' ., ' .: 'kkkk',kkkkkk - ,kkkkkkkk'.k' , ,kkkk;kkkkkkkkk - ,kkkkkkkk';kk 'k "'k',kkkkkkkkkkkk -.kkkkkkkkk.kkkk.'kkkkkkkkkkkkkkkkkk' -;kkkkkkkk''kkkkkk;'kkkkkkkkkkkkk'' -'kkkkkkk; 'kkkkkkkk.,""''"''"" - ''kkkk; 'kkkkkkkkkk., - ';' 'kkkkkkkkkkkk., - ';kkkkkkkkkk' - ';kkkkkk' - "''" -EOF - ;; + # Set the colors and swap the spaces for $bar_char_. + bar+="${bar_color_elapsed}${prog// /${bar_char_elapsed}}" + bar+="${bar_color_total}${total// /${bar_char_total}}" - "ChaletOS"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} `.//+osso+/:`` - `/sdNNmhyssssydmNNdo:` - :hNmy+-` .-+hNNs- - /mMh/` `+:` `+dMd: - .hMd- -sNNMNo. /yyy /mMs` - -NM+ `/dMd/--omNh::dMM `yMd` - .NN+ .sNNs:/dMNy:/hNmo/s yMd` - hMs `/hNd+-smMMMMMMd+:omNy- `dMo -:NM. .omMy:/hNMMMMMMMMMMNy:/hMd+` :Md` -/Md` `sm+.omMMMMMMMMMMMMMMMMd/-sm+ .MN: -/Md` MMMMMMMMMMMMMMMMMMMN .MN: -:NN. MMMMMMm....--NMMMMMN -Mm. -`dMo MMMMMMd mMMMMMN hMs - -MN: MMMMMMd mMMMMMN oMm` - :NM: MMMMMMd mMMMMMN +Mm- - -mMy. mmmmmmh dmmmmmh -hMh. - oNNs- :yMm/ - .+mMdo:` `:smMd/` - -ohNNmhsoo++osshmNNh+. - `./+syyhhyys+:`` -EOF - ;; + # Borders. + [[ "$bar_border" == "on" ]] && \ + bar="$(color fg)[${bar}$(color fg)]" - "Chapeau"*) - set_colors 2 7 - read -rd '' ascii_data <<'EOF' -${c1} .-/-. - ////////. - ////////${c2}y+${c1}//. - ////////${c2}mMN${c1}/////. - ////////${c2}mMN+${c1}////////. - ////////////////////////. - /////////+${c2}shhddhyo${c1}+////////. - ////////${c2}ymMNmdhhdmNNdo${c1}///////. -///////+${c2}mMms${c1}////////${c2}hNMh${c1}///////. -///////${c2}NMm+${c1}//////////${c2}sMMh${c1}/////// -//////${c2}oMMNmmmmmmmmmmmmMMm${c1}/////// -//////${c2}+MMmssssssssssssss+${c1}/////// -`//////${c2}yMMy${c1}//////////////////// - `//////${c2}smMNhso++oydNm${c1}//////// - `///////${c2}ohmNMMMNNdy+${c1}/////// - `//////////${c2}++${c1}////////// - `////////////////. - -////////- -EOF - ;; + printf "%b" "${bar}${info_color}" +} - "Chrom"*) - set_colors 2 1 3 4 7 - read -rd '' ascii_data <<'EOF' -${c2} .,:loool:,. - .,coooooooooooooc,. - .,lllllllllllllllllllll,. - ;ccccccccccccccccccccccccc; -${c1} '${c2}ccccccccccccccccccccccccccccc. -${c1} ,oo${c2}c::::::::okO${c5}000${c3}0OOkkkkkkkkkkk: -${c1}.ooool${c2};;;;:x${c5}K0${c4}kxxxxxk${c5}0X${c3}K0000000000. -${c1}:oooool${c2};,;O${c5}K${c4}ddddddddddd${c5}KX${c3}000000000d -${c1}lllllool${c2};l${c5}N${c4}dllllllllllld${c5}N${c3}K000000000 -${c1}lllllllll${c2}o${c5}M${c4}dccccccccccco${c5}W${c3}K000000000 -${c1};cllllllllX${c5}X${c4}c:::::::::c${c5}0X${c3}000000000d -${c1}.ccccllllllO${c5}Nk${c4}c;,,,;cx${c5}KK${c3}0000000000. -${c1} .cccccclllllxOO${c5}OOO${c1}Okx${c3}O0000000000; -${c1} .:ccccccccllllllllo${c3}O0000000OOO, -${c1} ,:ccccccccclllcd${c3}0000OOOOOOl. -${c1} '::ccccccccc${c3}dOOOOOOOkx:. -${c1} ..,::cccc${c3}xOOOkkko;. -${c1} ..,:${c3}dOkxl:. -EOF - ;; +cache() { + if [[ "$2" ]]; then + mkdir -p "${cache_dir}/neofetch" + printf "%s" "${1/*-}=\"$2\"" > "${cache_dir}/neofetch/${1/*-}" + fi +} - "Clover"*) - set_colors 2 6 - read -rd '' ascii_data <<'EOF' -${c1} `omo``omo` - `oNMMMNNMMMNo` - `oNMMMMMMMMMMMMNo` - oNMMMMMMMMMMMMMMMMNo - `sNMMMMMMMMMMMMMMNs` - `omo` `sNMMMMMMMMMMNs` `omo` - `oNMMMNo` `sNMMMMMMNs` `oNMMMNo` - `oNMMMMMMMNo` `oNMMNs` `oNMMMMMMMNo` -oNMMMMMMMMMMMNo` `sy` `oNMMMMMMMMMMMNo -`sNMMMMMMMMMMMMNo.${c2}oNNs${c1}.oNMMMMMMMMMMMMNs` -`oNMMMMMMMMMMMMNs.${c2}oNNs${c1}.oNMMMMMMMMMMMMNo` -oNMMMMMMMMMMMNs` `sy` `oNMMMMMMMMMMMNo - `oNMMMMMMMNs` `oNMMNo` `oNMMMMMMMNs` - `oNMMMNs` `sNMMMMMMNs` `oNMMMNs` - `oNs` `sNMMMMMMMMMMNs` `oNs` - `sNMMMMMMMMMMMMMMNs` - +NMMMMMMMMMMMMMMMMNo - `oNMMMMMMMMMMMMNo` - `oNMMMNNMMMNs` - `omo``oNs` -EOF - ;; +get_cache_dir() { + case "$os" in + "Mac OS X") cache_dir="/Library/Caches" ;; + *) cache_dir="/tmp" ;; + esac +} - "Container Linux by CoreOS"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} ..... - .';:cccccccc:;'. - ':ccccclc${c3}lllllllll${c1}cc:. - .;cccccccc${c3}lllllllllllllll${c1}c, - ;clllccccc${c3}llllllllllllllllll${c1}c, - .cllclccccc${c3}lllll${c2}lll${c3}llllllllllll${c1}c: - ccclclcccc${c3}cllll${c2}kWMMNKk${c3}llllllllll${c1}c: - :ccclclcccc${c3}llll${c2}oWMMMMMMWO${c3}lllllllll${c1}c, -.ccllllllccc${c3}clll${c2}OMMMMMMMMM0${c3}lllllllll${c1}c -.lllllclcccc${c3}llll${c2}KMMMMMMMMMMo${c3}llllllll${c1}c. -.lllllllcccc${c3}clll${c2}KMMMMMMMMN0${c3}lllllllll${c1}c. -.cclllllcccc${c3}lllld${c2}xkkxxdo${c3}llllllllllc${c1}lc - :cccllllllcccc${c3}lllccllllcclccc${c1}cccccc; - .ccclllllllcccccccc${c3}lll${c1}ccccclccccccc - .cllllllllllclcccclccclccllllcllc - :cllllllllccclcllllllllllllcc; - .cccccccccccccclcccccccccc:. - .;cccclccccccllllllccc,. - .';ccccclllccc:;.. - ..... -EOF - ;; +kde_config_dir() { + # If the user is using KDE get the KDE + # configuration directory. + if [[ "$kde_config_dir" ]]; then + return - "crux_small") - set_colors 4 5 7 6 - read -rd '' ascii_data <<'EOF' -${c1} ___ - (${c3}.· ${c1}| - (${c2}<> ${c1}| - / ${c3}__ ${c1}\\ - ( ${c3}/ \\ ${c1}/| -${c2}_${c1}/\\ ${c3}__)${c1}/${c2}_${c1}) -${c2}\/${c1}-____${c2}\/ -EOF - ;; + elif type -p kf5-config >/dev/null 2>&1; then + kde_config_dir="$(kf5-config --path config)" - "CRUX"*) - set_colors 4 5 7 6 - read -rd '' ascii_data <<'EOF' -${c1} odddd - oddxkkkxxdoo - ddcoddxxxdoool - xdclodod olol - xoc xdd olol - xdc ${c2}k00${c1}Okdlol - xxd${c2}kOKKKOkd${c1}ldd - xdco${c2}xOkdlo${c1}dldd - ddc:cl${c2}lll${c1}oooodo - odxxdd${c3}xkO000kx${c1}ooxdo - oxdd${c3}x0NMMMMMMWW0od${c1}kkxo - oooxd${c3}0WMMMMMMMMMW0o${c1}dxkx -docldkXW${c3}MMMMMMMWWN${c1}Odolco -xx${c2}dx${c1}kxxOKN${c3}WMMWN${c1}0xdoxo::c -${c2}xOkkO${c1}0oo${c3}odOW${c2}WW${c1}XkdodOxc:l -${c2}dkkkxkkk${c3}OKX${c2}NNNX0Oxx${c1}xc:cd -${c2} odxxdx${c3}xllod${c2}ddooxx${c1}dc:ldo -${c2} lodd${c1}dolccc${c2}ccox${c1}xoloo -EOF - ;; + elif type -p kde4-config >/dev/null 2>&1; then + kde_config_dir="$(kde4-config --path config)" - "debian_small") - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' - ${c1}_____ - / __ \\ -| / | -| \\___- --_ - --_ -EOF - ;; + elif type -p kde-config >/dev/null 2>&1; then + kde_config_dir="$(kde-config --path config)" - "Debian"*) - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' -${c2} _,met$$$$$gg. - ,g$$$$$$$$$$$$$$$P. - ,g$$P" """Y$$.". - ,$$P' `$$$. -',$$P ,ggs. `$$b: -`d$$' ,$P"' ${c1}.${c2} $$$ - $$P d$' ${c1},${c2} $$P - $$: $$. ${c1}-${c2} ,d$$' - $$; Y$b._ _,d$P' - Y$$. ${c1}`.${c2}`"Y$$$$P"' -${c2} `$$b ${c1}"-.__ -${c2} `Y$$ - `Y$$. - `$$b. - `Y$$b. - `"Y$b._ - `""" -EOF + elif [[ -d "${HOME}/.kde4" ]]; then + kde_config_dir="${HOME}/.kde4/share/config" + + elif [[ -d "${HOME}/.kde3" ]]; then + kde_config_dir="${HOME}/.kde3/share/config" + fi + + kde_config_dir="${kde_config_dir/$'/:'*}" +} + +get_term_padding() { + # Terminal info. + # + # Parse terminal config files to get + # info about padding. Due to how w3m-img + # works padding around the terminal throws + # off the cursor placement calculation in + # specific terminals. + # + # Note: This issue only seems to affect + # URxvt. + ((term_run != 1)) && get_term + + case "$term" in + "URxvt"*) + border="$(xrdb -query | awk -F ':' '/^(URxvt|\*).internalBorder/ {printf $2; exit}')" ;; + esac +} - "Deepin"*) - set_colors 2 7 - read -rd '' ascii_data <<'EOF' -${c1} ............ - .';;;;;. .,;,. - .,;;;;;;;. ';;;;;;;. - .;::::::::' .,::;;,''''',. - ,'.:::::::: .;;'. '; - ;' 'cccccc, ,' :: '.. .: - ,, :ccccc. ;: .c, '' :. ,; -.l. cllll' ., .lc :; .l' l. -.c :lllc ;cl: .l' .ll. :' -.l 'looc. . ,o: 'oo' c, -.o. .:ool::coc' .ooo' o. - :: ..... .;dddo ;c - l:... .';lddddo. ,o - lxxxxxdoolllodxxxxxxxxxc :l - ,dxxxxxxxxxxxxxxxxxxl. 'o, - ,dkkkkkkkkkkkkko;. .;o; - .;okkkkkdl;. .,cl:. - .,:cccccccc:,. -EOF +dynamic_prompt() { + case "$image_backend" in + "ascii") printf "\n" ;; + "off") return ;; + *) + get_term_padding + lines="$(((border + height + yoffset) / font_height))" + image_prompt="on" ;; + esac - "DesaOS") - set_colors 2 7 - read -rd '' ascii_data <<'EOF' -${c1}███████████████████████ -███████████████████████ -███████████████████████ -███████████████████████ -████████ ███████ -████████ ███████ -████████ ███████ -████████ ███████ -████████ ███████ -████████ ███████ -████████ ███████ -██████████████████████████████ -██████████████████████████████ -████████████████████████ -████████████████████████ -████████████████████████ -EOF - ;; + # If the info is higher than the ascii/image place the prompt + # based on the info height instead of the ascii/image height. + if ((lines < info_height)); then + [[ "$image_prompt" ]] && printf "\n" + return + else + [[ "$image_prompt" ]] && printf "%b\n" "$line_breaks" + lines="$((lines - info_height + 1))" + fi - "Devuan"*) - set_colors 5 7 - read -rd '' ascii_data <<'EOF' -${c1} ..,,;;;::;,.. - `':ddd;:,. - `'dPPd:,. - `:b$$b`. - 'P$$$d` - .$$$$$` - ;$$$$$P - .:P$$$$$$` - .,:b$$$$$$$;' - .,:dP$$$$$$$$b:' - .,:;db$$$$$$$$$$Pd'` - ,db$$$$$$$$$$$$$$b:'` -:$$$$$$$$$$$$b:'` - `$$$$$bd:''` - `'''` -EOF - ;; + # Set the prompt location. + if ((lines > 1)); then + case "$kernel_name" in + "OpenBSD") tput cud "$lines" ;; + *) printf "%b" "\e[${lines}B" ;; + esac + fi +} - "DracOS"*) - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' -${c1} `-:/- - -os: - -os/` - :sy+-` - `/yyyy+. - `+yyyyo- - `/yyyys: -`:osssoooo++- +yyyyyy/` - ./yyyyyyo yo`:syyyy+. - -oyyy+ +- :yyyyyo- - `:sy: `. `/yyyyys: - ./o/.` .oyyso+oo:` - :+oo+//::::///:-.` `.` -EOF - ;; +old_functions() { + # Deprecated functions. + # Neofetch 2.0 changed the names of a few variables. + # This function adds backwards compatibility for the + # old variable names. + if type printinfo >/dev/null 2>&1; then + print_info() { printinfo ; } + get_wmtheme() { get_wm_theme; wmtheme="$wm_theme"; } + get_termfont() { get_term_font; termfont="$term_font"; } + get_localip() { get_local_ip; localip="$local_ip"; } + get_publicip() { get_public_ip; publicip="$public_ip"; } + get_linebreak() { get_line_break; linebreak="$line_break"; } + fi - "dragonfly_old"*) - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' - ${c1} | - .-. - ${c3} ()${c1}I${c3}() - ${c1} "==.__:-:__.==" - "==.__/~|~\__.==" - "==._( Y )_.==" - ${c2}.-'~~""~=--...,__${c1}\/|\/${c2}__,...--=~""~~'-. -( ..=${c1}\\=${c1}/${c2}=.. ) - `'-. ,.-"`;${c1}/=\\${c2};"-.,_ .-'` - `~"-=-~` .-~` ${c1}|=|${c2} `~-. `~-=-"~` - .-~` /${c1}|=|${c2}\ `~-. - .~` / ${c1}|=|${c2} \ `~. - .-~` .' ${c1}|=|${c2} `. `~-. - (` _,.-="` ${c1} |=|${c2} `"=-.,_ `) - `~"~"` ${c1} |=|${c2} `"~"~` - ${c1} /=\\ - \\=/ - ^ -EOF - ;; + get_birthday() { get_install_date; birthday="$install_date"; } +} - "dragonfly_small"*) - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' -${c2}(\${c3}"${c2}/) -${c2}(/${c1}|${c2}\) -${c1} | - | -EOF - ;; +old_options() { + [[ -n "$osx_buildversion" ]] && \ + err "Config: \$osx_buildversion is deprecated, use \$distro_shorthand instead." + [[ -n "$osx_codename" ]] && \ + err "Config: \$osx_codename is deprecated, use \$distro_shorthand instead." + [[ "$cpu_cores" == "on" ]] && \ + err "Config: cpu_cores='on' is deprecated, use cpu_cores='logical|physical|off' instead." + [[ -n "$image" ]] && \ + { err "Config: \$image is deprecated, use \$image_source instead."; image_source="$image"; } - "DragonFly"*) - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' -${c2},--, ${c1}| ${c2},--, -${c2}| `-, ${c1},^, ${c2},-' | -${c2} `, `-, ${c3}(/ \) ${c2},-' ,' -${c2} `-, `-,${c1}/ \${c2},-' ,-' -${c2} `------${c1}( )${c2}------' -${c2} ,----------${c1}( )${c2}----------, -${c2} | _,-${c1}( )${c2}-,_ | -${c2} `-,__,-' ${c1}\ /${c2} `-,__,-' -${c1} | | - | | - | | - | | - | | - | | - `|' -EOF - ;; + # All progress_ variables were changed to bar_. + [[ -n "$progress_char" ]] && \ + err "Config: \$progress_char is deprecated, use \$bar_char_{elapsed,total} instead." + [[ -n "$progress_border" ]] && \ + { err "Config: \$progress_border is deprecated, use \$bar_border instead."; \ + bar_border="$progress_border"; } + [[ -n "$progress_length" ]] && \ + { err "Config: \$progress_length is deprecated, use \$bar_length instead."; \ + bar_length="$progress_length"; } + [[ -n "$progress_color_elapsed" ]] && \ + { err "Config: \$progress_color_elapsed is deprecated, use \$bar_color_elapsed instead."; \ + bar_color_elapsed="$progress_color_elapsed"; } + [[ -n "$progress_color_total" ]] && \ + { err "Config: \$progress_color_total is deprecated, use \$bar_color_total instead."; \ + bar_color_total="$progress_color_total"; } - "Elementary"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c2} eeeeeeeeeeeeeeeee - eeeeeeeeeeeeeeeeeeeeeee - eeeee eeeeeeeeeeee eeeee - eeee eeeee eee eeee - eeee eeee eee eeee -eee eee eee eee -eee eee eee eee -ee eee eeee eeee -ee eee eeeee eeeeee -ee eee eeeee eeeee ee -eee eeee eeeeee eeeee eee -eee eeeeeeeeee eeeeee eee - eeeeeeeeeeeeeeeeeeeeeeee eeeee - eeeeeeee eeeeeeeeeeee eeee - eeeee eeeee - eeeeeee eeeeeee - eeeeeeeeeeeeeeeee -EOF - ;; + # All cpufreq values were changed in 3.0. + [[ "$speed_type" == "current" ]] && \ + err "Config: speed_type='current' is deprecated, use speed_type='scaling_cur_freq' instead." + [[ "$speed_type" == "min" ]] && \ + err "Config: speed_type='min' is deprecated, use speed_type='scaling_min_freq' instead." + [[ "$speed_type" == "max" ]] && \ + err "Config: speed_type='max' is deprecated, use speed_type='scaling_max_freq' instead." + [[ "$speed_type" == "bios" ]] && \ + err "Config: speed_type='bios' is deprecated, use speed_type='bios_limit' instead." - "Endless"*) - set_colors 1 7 - read -rd '' ascii_data <<'EOF' -${c1} `:+yhmNMMMMNmhy+:` - -odMMNhso//////oshNMMdo- - /dMMh+. .+hMMd/ - /mMNo` `oNMm: - `yMMo` `oMMy` - `dMN- -NMd` - hMN. .NMh -/MM/ -os` /MM/ -dMm `smNmmhs/- `:sNMd+ `` mMd -MMy oMd--:+yMMMMMNo.:ohmMMMNy` yMM -MMy -NNyyhmMNh+oNMMMMMy:. dMo yMM -dMm `/++/-``/yNNh+/sdNMNddMm- mMd -/MM/ `dNy: `-::- /MM/ - hMN. .NMh - `dMN- -NMd` - `yMMo` `oMMy` - /mMNo` `oNMm/ - /dMMh+. .+hMMd/ - -odMMNhso//////oshNMMdo- - `:+yhmNMMMMNmhy+:` -EOF - ;; + # Ascii_logo_size was removed in 3.0. + [[ "$ascii_logo_size" ]] && \ + err "Config: ascii_logo_size is deprecated, use ascii_distro='{distro}_small' instead." - "Exherbo"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c2} , -OXo. -NXdX0: .cok0KXNNXXK0ko:. -KX '0XdKMMK;.xMMMk, .0MMMMMXx; ... -'NO..xWkMMx kMMM cMMMMMX,NMWOxOXd. - cNMk NK .oXM. OMMMMO. 0MMNo kW. - lMc o: ., .oKNk; ;NMMWlxW' - ;Mc .. .,,' .0M${c1}g;${c2}WMN'dWMMMMMMO - XX ,WMMMMW. cM${c1}cfli${c2}WMKlo. .kMk -.Mo .WM${c1}GD${c2}MW. XM${c1}WO0${c2}MMk oMl -,M: ,XMMWx::,''oOK0x; NM. -'Ml ,kNKOxxxxxkkO0XXKOd:. oMk - NK .0Nxc${c3}:::::::::::::::${c2}fkKNk, .MW - ,Mo .NXc${c3}::${c2}qXWXb${c3}::::::::::${c2}oo${c3}::${c2}lNK. .MW - ;Wo oMd${c3}:::${c2}oNMNP${c3}::::::::${c2}oWMMMx${c3}:${c2}c0M; lMO - 'NO;W0c${c3}:::::::::::::::${c2}dMMMMO${c3}::${c2}lMk .WM' - xWONXdc${c3}::::::::::::::${c2}oOOo${c3}::${c2}lXN. ,WMd - 'KWWNXXK0Okxxo,${c3}:::::::${c2},lkKNo xMMO - :XMNxl,';:lodxkOO000Oxc. .oWMMo - 'dXMMXkl;,. .,o0MMNo' - ':d0XWMMMMWNNNNMMMNOl' - ':okKXWNKkl' -EOF - ;; + # $start and $end were replaced with ${block_range[@]} in 3.0. + [[ "$start" && "$end" ]] && \ + { err "Config: \$start and \$end are deprecated, use block_range=(0 7) instead."; \ + block_range=("$start" "$end"); } - "Fedora"* | "RFRemix"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} /:-------------:\\ - :-------------------:: - :-----------${c2}/shhOHbmp${c1}---:\\ - /-----------${c2}omMMMNNNMMD ${c1}---: - :-----------${c2}sMMMMNMNMP${c1}. ---: - :-----------${c2}:MMMdP${c1}------- ---\\ -,------------${c2}:MMMd${c1}-------- ---: -:------------${c2}:MMMd${c1}------- .---: -:---- ${c2}oNMMMMMMMMMNho${c1} .----: -:-- .${c2}+shhhMMMmhhy++${c1} .------/ -:- -------${c2}:MMMd${c1}--------------: -:- --------${c2}/MMMd${c1}-------------; -:- ------${c2}/hMMMy${c1}------------: -:--${c2} :dMNdhhdNMMNo${c1}------------; -:---${c2}:sdNMMMMNds:${c1}------------: -:------${c2}:://:${c1}-------------:: -:---------------------:// -EOF + # Fahrenheit support was added to CPU so the options were changed. + [[ "$cpu_temp" == "on" ]] && \ + { err "Config: cpu_temp='on' is deprecated, use cpu_temp='C' or 'F' instead."; + cpu_temp="C"; } + + # Birthday was renamed to Install Date in 3.0 + [[ -n "$birthday_time" ]] && \ + { err "Config: \$birthday_time is deprecated, use \3install_time instead."; \ + install_time="$birthday_time"; } + + # Scrot dir was removed in 3.1.0. + [[ -n "$scrot_dir" ]] && scrot_dir= + + # cpu_shorthand was deprecated in 3.3.0 + [[ -n "$cpu_shorthand" ]] && \ + { err "Config: \$cpu_shorthand is deprecated, use \$cpu_brand, \$cpu_cores, and + \$cpu_speed instead."; } +} + +cache_uname() { + # Cache the output of uname so we don't + # have to spawn it multiple times. + IFS=" " read -ra uname <<< "$(uname -sr)" + + kernel_name="${uname[0]}" + kernel_version="${uname[1]}" +} + +convert_time() { + # Convert ls timestamp to 'Tue 06 Dec 2016 4:58 PM' format. + year="$1" + day="${3#0}" + + # Split time into hours/minutes. + hour="${4/:*}" + min="${4/${hour}}" + + # Get month. (Month code is used for day of week) + # Due to different versions of 'ls', the month can be 1, 01 or Jan. + case "$2" in + 1 | 01 | "Jan") month="Jan"; month_code=0 ;; + 2 | 02 | "Feb") month="Feb"; month_code=3 ;; + 3 | 03 | "Mar") month="Mar"; month_code=3 ;; + 4 | 04 | "Apr") month="Apr"; month_code=6 ;; + 5 | 05 | "May") month="May"; month_code=1 ;; + 6 | 06 | "Jun") month="Jun"; month_code=4 ;; + 7 | 07 | "Jul") month="Jul"; month_code=6 ;; + 8 | 08 | "Aug") month="Aug"; month_code=2 ;; + 9 | 09 | "Sep") month="Sep"; month_code=5 ;; + 10 | "Oct") month="Oct"; month_code=0 ;; + 11 | "Nov") month="Nov"; month_code=3 ;; + 12 | "Dec") month="Dec"; month_code=5 ;; + esac + + # Get leap year. + # Source: http://stackoverflow.com/questions/725098/leap-year-calculation + [[ "$((year % 4))" == 0 && "$((year % 100))" != 0 || "$((year % 400))" == 0 ]] && \ + [[ "$month" =~ (Jan|Feb) ]] && \ + leap_code=1 + + # Calculate day of week. + # Source: http://blog.artofmemory.com/how-to-calculate-the-day-of-the-week-4203.html + year_code="$((${year/??} + (${year/??} / 4) % 7))" + week_day="$(((year_code + month_code + 6 + day - leap_code) % 7))" + + case "$week_day" in + 0) week_day="Sun" ;; + 1) week_day="Mon" ;; + 2) week_day="Tue" ;; + 3) week_day="Wed" ;; + 4) week_day="Thu" ;; + 5) week_day="Fri" ;; + 6) week_day="Sat" ;; + esac + + # Convert 24 hour time to 12 hour time + AM/PM. + case "$install_time_format" in + "12h") + case "$hour" in + [0-9] | 0[0-9] | 1[0-1]) time="${hour/00/12}${min} AM" ;; + *) time="$((hour - 12))${min} PM" ;; + esac ;; + *) time="$4" ;; + esac - "freebsd_small") - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' -${c1} /\\ _____ /\\ - \\_) (_/ - / \ -| | -| | - \ / - --_____-- -EOF + # Toggle showing the time. + [[ "$install_time" == "off" ]] && unset time + + # Print the install date. + printf "%s" "$week_day $day $month $year $time" +} + +get_ppid() { + # Get parent process ID of PID. + case "$os" in + "Windows") + ppid="$(ps -p "${1:-$PPID}" | awk '{printf $2}')" + ppid="${ppid/'PPID'}" ;; - "FreeBSD"*) - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' - ${c2}``` ${c1}` - ${c2}` `.....---...${c1}....--.``` -/ - ${c2}+o .--` ${c1}/y:` +. - ${c2} yo`:. ${c1}:o `+- - ${c2}y/ ${c1}-/` -o/ - ${c2}.- ${c1}::/sy+:. - ${c2}/ ${c1}`-- / - ${c2}`: ${c1}:` - ${c2}`: ${c1}:` - ${c2}/ ${c1}/ - ${c2}.- ${c1}-. - ${c2}-- ${c1}-. - ${c2}`:` ${c1}`:` - .-- `--. - .---.....----. -EOF + "Linux") + ppid="$(grep -i -F "PPid:" "/proc/${1:-$PPID}/status")" + ppid="$(trim "${ppid/PPid:}")" ;; - "FreeMiNT"*) - # Don't explicitly set colors since - # TosWin2 doesn't reset well. - read -rd '' ascii_data <<'EOF' -${c1} ## - ## ######### - #### ## - #### #### ## -#### #### ## ## - #### #### ## ## - #### #### ## ## ## - #### ###### - ###### ## ## #### - #### ################ - #### ## #### - ## #### ###### - ## ## #### #### - ## ## ## ## ## #### - #### ## ## ## -EOF + *) + ppid="$(ps -p "${1:-$PPID}" -o ppid=)" ;; + esac - "Frugalware"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} `++/::-.` - /o+++++++++/::-.` - `o+++++++++++++++o++/::-.` - /+++++++++++++++++++++++oo++/:-.`` - .o+ooooooooooooooooooosssssssso++oo++/:-` - ++osoooooooooooosssssssssssssyyo+++++++o: - -o+ssoooooooooooosssssssssssssyyo+++++++s` - o++ssoooooo++++++++++++++sssyyyyo++++++o: - :o++ssoooooo${c2}/-------------${c1}+syyyyyo+++++oo - `o+++ssoooooo${c2}/-----${c1}+++++ooosyyyyyyo++++os: - /o+++ssoooooo${c2}/-----${c1}ooooooosyyyyyyyo+oooss - .o++++ssooooos${c2}/------------${c1}syyyyyyhsosssy- - ++++++ssooooss${c2}/-----${c1}+++++ooyyhhhhhdssssso - -s+++++syssssss${c2}/-----${c1}yyhhhhhhhhhhhddssssy. - sooooooyhyyyyyh${c2}/-----${c1}hhhhhhhhhhhddddyssy+ - :yooooooyhyyyhhhyyyyyyhhhhhhhhhhdddddyssy` - yoooooooyhyyhhhhhhhhhhhhhhhhhhhddddddysy/ --ysooooooydhhhhhhhhhhhddddddddddddddddssy - .-:/+osssyyyysyyyyyyyyyyyyyyyyyyyyyyssy: - ``.-/+oosysssssssssssssssssssssss - ``.:/+osyysssssssssssssh. - `-:/+osyyssssyo - .-:+++` -EOF + printf "%s" "$ppid" +} + +get_process_name() { + # Get PID name. + case "$os" in + "Windows") + name="$(ps -p "${1:-$PPID}" | awk '{printf $8}')" + name="${name/'COMMAND'}" + name="${name/*\/}" ;; - "Funtoo"*) - set_colors 5 7 - read -rd '' ascii_data <<'EOF' -${c2} _______ ____ - /MMMMMMM/ /MMMM| _____ _____ - __/M${c1}.MMM.${c2}M/_____________|M${c1}.M${c2}MM|/MMMMM\/MMMMM\\ -|MMMM${c1}MM'${c2}MMMMMMMMMMMMMMMMMMM${c1}MM${c2}MMMM${c1}.MMMM..MMMM.${c2}MM\\ -|MM${c1}MMMMMMM${c2}/m${c1}MMMMMMMMMMMMMMMMMMMMMM${c2}MMMM${c1}MM${c2}MMMM${c1}MM${c2}MM| -|MMMM${c1}MM${c2}MMM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MMMMM${c1}\MMM${c2}MMM${c1}MM${c2}MMMM${c1}MM${c2}MMMM${c1}MM${c2}MM| - |MM${c1}MM${c2}MMM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MMM${c2}MMMM${c1}'MMMM''MMMM'${c2}MM/ - |MM${c1}MM${c2}MMM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MMM${c2}MMM\MMMMM/\MMMMM/ - |MM${c1}MM${c2}MMM${c1}MM${c2}MMMMMM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MMMMM'${c2}M| - |MM${c1}MM${c2}MMM${c1}MMMMMMMMMMMMMMMMM MM'${c2}M/ - |MMMMMMMMMMMMMMMMMMMMMMMMMMMM/ -EOF + "Linux") + name="$(< "/proc/${1:-$PPID}/comm")" ;; - "GalliumOS"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1}sooooooooooooooooooooooooooooooooooooo+: -yyooooooooooooooooooooooooooooooooo+/::: -yyysoooooooooooooooooooooooooooo+/:::::: -yyyyyoooooooooooooooooooooooo+/::::::::: -yyyyyysoooooooooooooooooo++/:::::::::::: -yyyyyyysoooooooooooooo++/::::::::::::::: -yyyyyyyyysoooooo${c2}sydddys${c1}+/::::::::::::::: -yyyyyyyyyysooo${c2}smMMMMMMMNd${c1}+:::::::::::::: -yyyyyyyyyyyyo${c2}sMMMMMMMMMMMN${c1}/::::::::::::: -yyyyyyyyyyyyy${c2}dMMMMMMMMMMMM${c1}o//::::::::::: -yyyyyyyyyyyyy${c2}hMMMMMMMMMMMm${c1}--//:::::::::: -yyyyyyyyyyyyyy${c2}hmMMMMMMMNy${c1}:..-://:::::::: -yyyyyyyyyyyyyyy${c2}yyhhyys+:${c1}......://::::::: -yyyyyyyyyyyyyyys+:--...........-///::::: -yyyyyyyyyyyys+:--................://:::: -yyyyyyyyyo+:-.....................-//::: -yyyyyyo+:-..........................://: -yyyo+:-..............................-// -o/:-...................................: -EOF + *) + name="$(ps -p "${1:-$PPID}" -o comm=)" ;; + esac - "gentoo_small") - set_colors 5 7 - read -rd '' ascii_data <<'EOF' -${c1} _-----_ -( \\ -\ 0 \\ -${c2} \ ) - / _/ -( _- -\____- -EOF - ;; + printf "%s" "$name" +} - "Gentoo"*) - set_colors 5 7 - read -rd '' ascii_data <<'EOF' -${c1} -/oyddmdhs+:. - -o${c2}dNMMMMMMMMNNmhy+${c1}-` - -y${c2}NMMMMMMMMMMMNNNmmdhy${c1}+- - `o${c2}mMMMMMMMMMMMMNmdmmmmddhhy${c1}/` - om${c2}MMMMMMMMMMMN${c1}hhyyyo${c2}hmdddhhhd${c1}o` -.y${c2}dMMMMMMMMMMd${c1}hs++so/s${c2}mdddhhhhdm${c1}+` - oy${c2}hdmNMMMMMMMN${c1}dyooy${c2}dmddddhhhhyhN${c1}d. - :o${c2}yhhdNNMMMMMMMNNNmmdddhhhhhyym${c1}Mh - .:${c2}+sydNMMMMMNNNmmmdddhhhhhhmM${c1}my - /m${c2}MMMMMMNNNmmmdddhhhhhmMNh${c1}s: - `o${c2}NMMMMMMMNNNmmmddddhhdmMNhs${c1}+` - `s${c2}NMMMMMMMMNNNmmmdddddmNMmhs${c1}/. - /N${c2}MMMMMMMMNNNNmmmdddmNMNdso${c1}:` -+M${c2}MMMMMMNNNNNmmmmdmNMNdso${c1}/- -yM${c2}MNNNNNNNmmmmmNNMmhs+/${c1}-` -/h${c2}MMNNNNNNNNMNdhs++/${c1}-` -`/${c2}ohdmmddhys+++/:${c1}.` - `-//////:--. -EOF - ;; +decode_url() { + decode="${1//+/ }" + printf "%b" "${decode//%/\\x}" +} - "gNewSense"*) - set_colors 4 5 7 6 - read -rd '' ascii_data <<'EOF' -${c1} ..,,,,.. - .oocchhhhhhhhhhccoo. - .ochhlllllllc hhhhhh ollllllhhco. - ochlllllllllll hhhllllllhhh lllllllllllhco - .cllllllllllllll hlllllo +hllh llllllllllllllc. -ollllllllllhco'' hlllllo +hllh ``ochllllllllllo -hllllllllc' hllllllllllllh `cllllllllh -ollllllh +llllllllllll+ hllllllo - `cllllh. ohllllllho .hllllc' - ochllc. ++++ .cllhco - `+occooo+. .+ooocco+' - `+oo++++ ++++oo+' -EOF - ;; +# FINISH UP - "GNU") - set_colors fg 7 - read -rd '' ascii_data <<'EOF' -${c1} _-`````-, ,- '- . - .' .- - | | - -. `. - /.' / `. \ -:/ : _... ..._ `` : -:: : /._ .`:'_.._\. || : -:: `._ ./ ,` : \ . _.'' . -`:. / | -. \-. \\_ / - \:._ _/ .' .@) \@) ` `\ ,.' - _/,--' .- .\,-.`--`. - ,'/'' (( \ ` ) - /'/' \ `-' ( - '/'' `._,-----' - ''/' .,---' - ''/' ;: - ''/'' ''/ - ''/''/'' - '/'/' - `; -EOF - ;; +usage() { printf "%s" "\ +Usage: neofetch --option \"value\" --option \"value\" - "GoboLinux"*) - set_colors 5 4 6 2 - read -rd '' ascii_data <<'EOF' -${c1}_____ _ -/ ____| | | -| | __ ___ | |__ ___ -| | |_ |/ _ \| '_ \ / _ \ -| |__| | (_) | |_) | (_) | - \_____|\___/|_.__/ \___/ -EOF - ;; +Neofetch is a CLI system information tool written in BASH. Neofetch +displays information about your system next to an image, your OS logo, +or any ASCII file of your choice. - "Grombyang"*) - set_colors 4 2 1 - read -rd '' ascii_data <<'EOF' -${c1} eeeeeeeeeeee - eeeeeeeeeeeeeeeee - eeeeeeeeeeeeeeeeeeeeeee - eeeee ${c2}.o+ ${c1}eeee - eeee ${c2}`ooo/ ${c1}eeee - eeee ${c2}`+oooo: ${c1}eeee -eee ${c2}`+oooooo: ${c1}eee -eee ${c2}-+oooooo+: ${c1}eee -ee ${c2}`/:oooooooo+: ${c1}ee -ee ${c2}`/+ +++ +: ${c1}ee -ee ${c2}+o+\ ${c1}ee -eee ${c2}+o+\ ${c1}eee -eee ${c2}// \\ooo/ \\\ ${c1}eee - eee ${c2}//++++oooo++++\\\ ${c1}eee - eeee ${c2}::::++oooo+::::: ${c1}eeee - eeeee ${c3}Grombyang OS ${c1} eeee - eeeeeeeeeeeeeeeeeeeeeee - eeeeeeeeeeeeeeeee -EOF - ;; +NOTE: Every launch flag has a config option. - "GuixSD"*) - set_colors 3 7 6 1 8 - read -rd '' ascii_data <<'EOF' -${c1} .. `. - `--..```..` `..```..--` - .-:///-:::. `-:::///:-. - ````.:::` `:::.```` - -//:` -::- - ://: -::- - `///- .:::` - -+++-:::. - :+/:::- - `-....` -EOF - ;; +Options: - "Haiku"*) - set_colors 2 8 - read -rd '' ascii_data <<'EOF' -${c2} :dc' - 'l:;'${c1},${c2}'ck. .;dc:. - co ${c1}..${c2}k. .;; ':o. - co ${c1}..${c2}k. ol ${c1}.${c2}0. - co ${c1}..${c2}k. oc ${c1}..${c2}0. - co ${c1}..${c2}k. oc ${c1}..${c2}0. -.Ol,. co ${c1}...''${c2}Oc;kkodxOdddOoc,. - ';lxxlxOdxkxk0kd${c1}oooll${c2}dl${c1}ccc:${c2}clxd; - ..${c1}oOolllllccccccc:::::${c2}od; - cx:ooc${c1}:::::::;${c2}cooolcX. - cd${c1}.${c2}''cloxdoollc' ${c1}...${c2}0. - cd${c1}......${c2}k;${c1}.${c2}xl${c1}.... .${c2}0. - .::c${c1};..${c2}cx;${c1}.${c2}xo${c1}..... .${c2}0. - '::c'${c1}...${c2}do${c1}..... .${c2}K, - cd,.${c1}....:${c2}O,${c1} - ':clod:'${c1} - ${c1} -EOF - ;; +INFO: + --disable infoname Allows you to disable an info line from appearing + in the output. - "Hyperbola"*) - set_colors 8 - read -rd '' ascii_data <<'EOF' -${c1} WW - KX W - WO0W NX0O - NOO0NW WNXK0OOKW - W0OOOOOOOOOOOOKN - N0OOOOOOO0KXW - WNXXXNW - NXK00000KN - WNK0OOOOOOOOOO0W - NK0OOOOOOOOOOOOOO0W - X0OOOOOOO00KK00OOOOOK - X0OOOO0KNWW WX0OO0W - X0OO0XNW KOOW - N00KNW KOW - NKXN W0W -WW W -EOF - ;; + NOTE: You can supply multiple args. eg. 'neofetch --disable cpu gpu' - "Kali"*) - set_colors 4 8 - read -rd '' ascii_data <<'EOF' -${c1}.............. - ..,;:ccc,. - ......''';lxO. -.....''''..........,:ld; - .';;;:::;,,.x, - ..'''. 0Xxoc:,. ... - .... ,ONkc;,;cokOdc',. - . OMo ':${c2}dd${c1}o. - dMc :OO; - 0M. .:o. - ;Wd - ;XO, - ,d0Odlc;,.. - ..',;:cdOOd::,. - .:d;.':;. - 'd, .' - ;l .. - .o - c - .' - . -EOF - ;; + --os_arch on/off Hide/Show OS architecture. + --speed_type type Change the type of cpu speed to display. + Possible values: current, min, max, bios, + scaling_current, scaling_min, scaling_max - "KaOS"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} .. - ..... ..OSSAAAAAAA.. - .KKKKSS. .SSAAAAAAAAAAA. -.KKKKKSO. .SAAAAAAAAAA... -KKKKKKS. .OAAAAAAAA. -KKKKKKS. .OAAAAAA. -KKKKKKS. .SSAA.. -.KKKKKS..OAAAAAAAAAAAA........ - DKKKKO.=AA=========A===AASSSO.. - AKKKS.==========AASSSSAAAAAASS. - .=KKO..========ASS.....SSSSASSSS. - .KK. .ASS..O.. =SSSSAOSS: - .OK. .ASSSSSSSO...=A.SSA. - .K ..SSSASSSS.. ..SSA. - .SSS.AAKAKSSKA. - .SSS....S.. -EOF - ;; + NOTE: This only supports Linux with cpufreq. - "KDE"*) - set_colors 2 7 - read -rd '' ascii_data <<'EOF' -${c1} `..---+/---..` - `---.`` `` `.---.` - .--.` `` `-:-. - `:/: `.----//----.` :/- - .:. `---` `--.` .:` - .:` `--` .:- `:. - `/ `:. `.-::-.` -:` `/` - /. /. `:++++++++:` .: .: -`/ .: `+++++++++++/ /` `+` -/+` -- .++++++++++++` :. .+: -`/ .: `+++++++++++/ /` `+` - /` /. `:++++++++:` .: .: - ./ `:. `.:::-.` -:` `/` - .:` `--` .:- `:. - .:. `---` `--.` .:` - `:/: `.----//----.` :/- - .-:.` `` `-:-. - `---.`` `` `.---.` - `..---+/---..` -EOF - ;; + --speed_shorthand on/off Whether or not to show decimals in CPU speed. - "Kogaion"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} ;; ,; - ;;; ,;; - ,;;;; ;;;; - ,;;;;;;;; ;;;; - ;;;;;;;;;;; ;;;;; - ,;;;;;;;;;;;; ';;;;;, - ;;;;;;;;;;;;;;, ';;;;;;; - ;;;;;;;;;;;;;;;;;, ';;;;; -; ';;;;;;;;;;;;;;;;;;, ;;; -;;;, ';;;;;;;;;;;;;;;;;;;,;; -;;;;;, ';;;;;;;;;;;;;;;;;;, -;;;;;;;;, ';;;;;;;;;;;;;;;;, -;;;;;;;;;;;;, ';;;;;;;;;;;;;; -';;;;;;;;;;;;; ';;;;;;;;;;;;; - ';;;;;;;;;;;;;, ';;;;;;;;;;; - ';;;;;;;;;;;;; ;;;;;;;;;; - ';;;;;;;;;;;; ;;;;;;;; - ';;;;;;;; ;;;;;; - ';;;;; ;;;; - ';;; ;; -EOF - ;; + NOTE: This flag is not supported in systems with CPU speed less than + 1 GHz. - "Korora"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c2} ____________ - _add55555555554${c1}: - _w?'${c1}``````````'${c2})k${c1}: - _Z'${c1}`${c2} ]k${c1}: - m(${c1}`${c2} )k${c1}: - _.ss${c1}`${c2}m[${c1}`${c2}, ]e${c1}: - .uY"^`${c1}`${c2}Xc${c1}`${c2}?Ss. d(${c1}` - jF'${c1}`${c2} `@. ${c1}`${c2}Sc .jr${c1}` - jr${c1}`${c2} `?n_ ${c1}`${c2}$; _a2"${c1}` -.m${c1}:${c2} `~M${c1}`${c2}1k${c1}`${c2}5?!`${c1}` -:#${c1}:${c2} ${c1}`${c2})e${c1}``` -:m${c1}:${c2} ,#'${c1}` -:#${c1}:${c2} .s2'${c1}` -:m,________.aa7^${c1}` -:#baaaaaaas!J'${c1}` - ``````````` -EOF - ;; + --cpu_brand on/off Enable/Disable CPU brand in output. + --cpu_cores type Whether or not to display the number of CPU cores + Possible values: logical, physical, off - "KSLinux"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} K K U U RRRR ooo - K K U U R R o o - KKK U U RRRR o o - K K U U R R o o - K K UUU R R ooo + NOTE: 'physical' doesn't work on BSD. -${c2} SSS AAA W W AAA - S A A W W A A - SSS AAAAA W W W AAAAA - S A A WW WW A A - SSS A A W W A A -EOF - ;; + --cpu_speed on/off Hide/Show cpu speed. + --cpu_temp C/F/off Hide/Show cpu temperature. - "Kubuntu"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} `.:/ossyyyysso/:. - .:oyyyyyyyyyyyyyyyyyyo:` - -oyyyyyyyo${c2}dMMy${c1}yyyyyyysyyyyo- - -syyyyyyyyyy${c2}dMMy${c1}oyyyy${c2}dmMMy${c1}yyyys- - oyyys${c2}dMy${c1}syyyy${c2}dMMMMMMMMMMMMMy${c1}yyyyyyo - `oyyyy${c2}dMMMMy${c1}syysoooooo${c2}dMMMMy${c1}yyyyyyyyo` - oyyyyyy${c2}dMMMMy${c1}yyyyyyyyyyys${c2}dMMy${c1}sssssyyyo --yyyyyyyy${c2}dMy${c1}syyyyyyyyyyyyyys${c2}dMMMMMy${c1}syyy- -oyyyysoo${c2}dMy${c1}yyyyyyyyyyyyyyyyyy${c2}dMMMMy${c1}syyyo -yyys${c2}dMMMMMy${c1}yyyyyyyyyyyyyyyyyysosyyyyyyyy -yyys${c2}dMMMMMy${c1}yyyyyyyyyyyyyyyyyyyyyyyyyyyyy -oyyyyysos${c2}dy${c1}yyyyyyyyyyyyyyyyyy${c2}dMMMMy${c1}syyyo --yyyyyyyy${c2}dMy${c1}syyyyyyyyyyyyyys${c2}dMMMMMy${c1}syyy- - oyyyyyy${c2}dMMMy${c1}syyyyyyyyyyys${c2}dMMy${c1}oyyyoyyyo - `oyyyy${c2}dMMMy${c1}syyyoooooo${c2}dMMMMy${c1}oyyyyyyyyo - oyyysyyoyyyys${c2}dMMMMMMMMMMMy${c1}yyyyyyyo - -syyyyyyyyy${c2}dMMMy${c1}syyy${c2}dMMMy${c1}syyyys- - -oyyyyyyy${c2}dMMy${c1}yyyyyysosyyyyo- - ./oyyyyyyyyyyyyyyyyyyo/. - `.:/oosyyyysso/:.` -EOF - ;; + NOTE: This only works on Linux and BSD. - "LEDE"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' - ${c1} _________ - / /\ - / LE / \ - / DE / \ - /________/ LE \ - \ \ DE / - \ LE \ / - \ DE \ / - \________\/ -EOF - ;; + NOTE: For FreeBSD and NetBSD-based systems, you need to enable + coretemp kernel module. This only supports newer Intel processors. - "Linux") - set_colors fg 8 3 - read -rd '' ascii_data <<'EOF' -${c2} ##### -${c2} ####### -${c2} ##${c1}O${c2}#${c1}O${c2}## -${c2} #${c3}#####${c2}# -${c2} ##${c1}##${c3}###${c1}##${c2}## -${c2} #${c1}##########${c2}## -${c2} #${c1}############${c2}## -${c2} #${c1}############${c2}### -${c3} ##${c2}#${c1}###########${c2}##${c3}# -${c3}######${c2}#${c1}#######${c2}#${c3}###### -${c3}#######${c2}#${c1}#####${c2}#${c3}####### -${c3} #####${c2}#######${c3}##### -EOF - ;; + --distro_shorthand on/off Shorten the output of distro (tiny, on, off) - "LMDE"*) - set_colors 2 7 - read -rd '' ascii_data <<'EOF' - ${c2}`.-::---.. -${c1} .:++++ooooosssoo:. - .+o++::. `.:oos+. -${c1} :oo:.` -+oo${c2}: -${c1} ${c2}`${c1}+o/` .${c2}::::::${c1}-. .++-${c2}` -${c1}${c2}`${c1}/s/ .yyyyyyyyyyo: +o-${c2}` -${c1}${c2}`${c1}so .ss ohyo` :s-${c2}: -${c1}${c2}`${c1}s/ .ss h m myy/ /s`${c2}` -${c1}`s: `oo s m Myy+-o:` -`oo :+sdoohyoydyso/. - :o. .:////////++: -${c1} `/++ ${c2}-:::::- -${c1} ${c2}`${c1}++- -${c1} ${c2}`${c1}/+- -${c1} ${c2}.${c1}+/. -${c1} ${c2}.${c1}:+-. - `--.`` -EOF - ;; + NOTE: This option won't work in Windows (Cygwin) - "Lubuntu"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} `-/+oyyhhhhyyo+/-` - ./shhhhhhhhhhhhhhhhhhs/. - `:shhhhhhhhhhhhhhhhhhhhhhhhs:` - :yhhhhhhhhhhhhhhhs++yhhhhhhhhhy: - `ohhhhhhhhhhhhhs+:. .yhhhhhhhhhhhho` - `shhhhhhhhhhy+:` /yhhhhhhhhhhhhhs` - shhhhhhhhy+. .ohhhhhhhhhhhhhs -:hhhhhhy/. /hhhhhhhhhhhhh: -shhhy/. :hhhhhhhhhhhhs -hy+. ` `+yhs/` +hhhhhhhhhhhh --.:/oshy- ` :yhhhhhy/ shhhhhhhhhhh -shhhhhy-`/s. .shhhhhhhhho` .hhhhhhhhhhs -:hhhho`:ys` /yhhhhhhhhhhhs` +hhhhhhhhh: - shh/.sh+ `ohhhhhhhhhhhhhhs` .hhhhhhhhs - `o-+hh: :yhhhhhhhhhhhhhhhho ohhhhhhs` - +hy-`ohhhhhhhhhhhhhhhhhhh+ -hhhhho` - :.-yhhhhhhhhhhhhhhhhhhhhh: yhhy: - :shhhhhhhhhhhhhhhhhhhhhy`+s:` - .+shhhhhhhhhhhhhhhhhhs:` - `-/+oyyhhhhyys+/-` -EOF - ;; + --kernel_shorthand on/off Shorten the output of kernel - "Lunar"*) - set_colors 4 7 3 - read -rd '' ascii_data <<'EOF' -${c1}`-. `-. - -ohys/-` `:+shy/` - -omNNdyo/` :+shmNNy/` - ${c3} - - /mMmo - hMMMN` - .NMMs - ${c1} -:+oooo+//: ${c3}/MN${c1}. -///oooo+/-` - /:.` ${c3}/${c1} `.:/` -${c3} __ - | | _ _ ___ ___ ___ - | |__| | | | .'| _| - |_____|___|_|_|__,|_| -EOF - ;; + NOTE: This option won't work in BSDs (except PacBSD and PC-BSD) - "mac"*"_small") - set_colors 2 3 1 5 4 - read -rd '' ascii_data <<'EOF' -${c1} .:' - _ :'_ -${c2} .'`_`-'_``. -:________.-' -${c3}:_______: -:_______: -${c4} :_______`-; -${c5} `._.-._.' -EOF - ;; + --uptime_shorthand on/off Shorten the output of uptime (tiny, on, off) + --refresh_rate on/off Whether to display the refresh rate of each monitor + Unsupported on Windows + --gpu_brand on/off Enable/Disable GPU brand in output. (AMD/NVIDIA/Intel) + --gpu_type type Which GPU to display. (all, dedicated, integrated) - "mac" | "Darwin") - set_colors 2 3 1 1 5 4 - read -rd '' ascii_data <<'EOF' -${c1} 'c. - ,xNMM. - .OMMMMo - OMMM0, - .;loddo:' loolloddol;. - cKMMMMMMMMMMNWMMMMMMMMMM0: -${c2} .KMMMMMMMMMMMMMMMMMMMMMMMWd. - XMMMMMMMMMMMMMMMMMMMMMMMX. -${c3};MMMMMMMMMMMMMMMMMMMMMMMM: -:MMMMMMMMMMMMMMMMMMMMMMMM: -${c4}.MMMMMMMMMMMMMMMMMMMMMMMMX. - kMMMMMMMMMMMMMMMMMMMMMMMMWd. - ${c5}.XMMMMMMMMMMMMMMMMMMMMMMMMMMk - .XMMMMMMMMMMMMMMMMMMMMMMMMK. - ${c6}kMMMMMMMMMMMMMMMMMMMMMMd - ;KMMMMMMMWXXWMMMMMMMk. - .cooc,. .,coo:. -EOF - ;; + NOTE: This only supports Linux. - "Mageia"*) - set_colors 6 7 - read -rd '' ascii_data <<'EOF' -${c1} .°°. - °° .°°. - .°°°. °° - . . - °°° .°°°. - .°°°. '___' -${c2} .${c1}'___' ${c2} . - :dkxc;'. ..,cxkd; - .dkk. kkkkkkkkkk .kkd. -.dkk. ';cloolc;. .kkd -ckk. .kk; -xO: cOd -xO: lOd -lOO. .OO: -.k00. .00x - .k00; ;00O. - .lO0Kc;,,,,,,;c0KOc. - ;d00KKKKKK00d; - .,KKKK,. -EOF - ;; + --gtk_shorthand on/off Shorten output of gtk theme/icons + --gtk2 on/off Enable/Disable gtk2 theme/font/icons output + --gtk3 on/off Enable/Disable gtk3 theme/font/icons output + --shell_path on/off Enable/Disable showing \$SHELL path + --shell_version on/off Enable/Disable showing \$SHELL version + --disk_show value Which disks to display. + Possible values: '/', '/dev/sdXX', '/path/to/mount point' - "MagpieOS"*) - set_colors 2 1 3 5 - read -rd '' ascii_data <<'EOF' -${c1} ;00000 :000Ol - .x00kk00: O0kk00k; - l00: :00. o0k :O0k. - .k0k. x${c2}d$dddd${c1}k' .d00; - k0k. ${c2}.dddddl ${c1}o00, - o00. ${c2}':cc:. ${c1}d0O -.00l ,00. -l00. d0x -k0O .:k0o -O0k ;dO0000d. -k0O .O0O${c2}xxxxk${c1}00: -o00. k0O${c2}dddddd${c1}occ -'00l x0O${c2}dddddo${c3};..${c1} - x00. .x00${c2}kxxd${c3}:..${c1} - .O0x .:oxxx${c4}Okl.${c1} - .x0d ${c4},xx,${c1} - .:o. ${c4}.xd ckd${c1} - .. ${c4}dxl .xx; - :xxolldxd' - ;oxdl. -EOF - ;; + NOTE: Multiple values can be given. (--disk_show '/' '/dev/sdc1') - "Manjaro"*) - set_colors 2 7 - read -rd '' ascii_data <<'EOF' -${c1}██████████████████ ████████ -██████████████████ ████████ -██████████████████ ████████ -██████████████████ ████████ -████████ ████████ -████████ ████████ ████████ -████████ ████████ ████████ -████████ ████████ ████████ -████████ ████████ ████████ -████████ ████████ ████████ -████████ ████████ ████████ -████████ ████████ ████████ -████████ ████████ ████████ -████████ ████████ ████████ -EOF - ;; + --disk_subtitle type What information to append to the Disk subtitle. + Takes: name, mount, dir - "Maui"*) - set_colors 6 7 - read -rd '' ascii_data <<'EOF' -${c1} `.-://////:--` - .:/oooooooooooooooo+:. - `:+ooooooooooooooooooooooo:` - `:oooooooooooooooooooooooooooo/` - ..```-oooooo/-`` `:oooooo+:.` `-- - :. +oo+-` /ooo/` -/ - -o. `o+- +o/` -o: -`oo` ::` :o/ `+. .+o` /oo. -/o+ . -+oo- ` /oo/ `ooo/ -+o- /ooo+` .+ooo. :ooo+ -++ .+oooo: -oooo+ `oooo+ -:. .oooooo` :ooooo- :oooo: -` .oooooo: :ooooo+ `ooo+-` - .+oooooo` -oooooo: `o/- - +oooooo: .ooooooo. - /ooooooo` /ooooooo/ .. - `:oooooooo/:::/ooooooooo+:--:/:` - `:+oooooooooooooooooooooo+:` - .:+oooooooooooooooo+:. - `.-://////:-.` -EOF - ;; + 'name' shows the disk's name (sda1, sda2, etc) - "Mer"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} dMs - .-` - `y`-o+` - ``NMMy - .--`:++. - .hNNNNs - /MMMMMN - `ommmd/ +/ - ```` +/ - `:+sssso/-` - .-::. `-::-` `smNMNmdmNMNd/ .://-` -.ymNMNNdmNMMNm+` -dMMh:.....+dMMs `sNNMMNo -dMN+::NMMy::hMM+ mMMo `ohhy/ `dMM+ yMMy::- -MMm yMM- :MMs NMN` `:::::--sMMh dMM` -MMm yMM- -MMs mMM+ `ymmdsymMMMs dMM` -NNd sNN- -NNs -mMNs-.--..:dMMh` dNN ---- .--` `--. .smMMmdddmMNdo` .-- - ./ohddds+:` - +h- `.:-. - ./`.dMMMN+ - +MMMMMd - `+dmmy- - ``` .+` - .dMNo-y. - `hmm/ - .:` - dMs -EOF - ;; + 'mount' shows the disk's mount point (/, /mnt/Local Disk, etc) - "Minix"*) - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' -${c2} -sdhyo+:-` -/syymm: - sdyooymmNNy. `` .smNmmdysNd - odyoso+syNNmysoyhhdhsoomNmm+/osdm/ - :hhy+-/syNNmddhddddddmNMNo:sdNd: - `smNNdNmmNmddddddddddmmmmmmmy` - `ohhhhdddddmmNNdmddNmNNmdddddmdh- - odNNNmdyo/:/-/hNddNy-`..-+ydNNNmd: - `+mNho:` smmd/ sNNh :dmms` -+ymmo. --od/ -m${c1}mm${c2}mo -NN+ +m${c1}mm${c2}m- yms: -+sms -.` :so: .NN+ :os/ .-`mNh: -.-hyh+:////- -sNNd:` .--://ohNs- - `:hNNNNNNNMMd/sNMmhsdMMh/ymmNNNmmNNy/ - -+sNNNNMMNNNsmNMo: :NNmymNNNNMMMms: - //oydNMMMMydMMNysNMMmsMMMMMNyo/` - ../-yNMMy--/::/-.sMMmos+.` - -+oyhNsooo+omy/``` - `::ohdmds-` -EOF - ;; + 'dir' shows the basename of the disks's path. (/, Local Disk, etc) + + --ip_host url URL to query for public IP + --song_shorthand on/off Print the Artist/Title on separate lines + --music_player player-name Manually specify a player to use. + Available values are listed in the config file + --install_time on/off Enable/Disable showing the time in Install Date output. + --install_time_format 12h/24h + Set time format in Install Date to be 12 hour or 24 hour. + +TEXT FORMATTING: + --colors x x x x x x Changes the text colors in this order: + title, @, underline, subtitle, colon, info + --underline on/off Enable/Disable the underline. + --underline_char char Character to use when underlining title + --bold on/off Enable/Disable bold text + +COLOR BLOCKS: + --color_blocks on/off Enable/Disable the color blocks + --block_width num Width of color blocks in spaces + --block_height num Height of color blocks in lines + --block_range num num Range of colors to print as blocks + +BARS: + --bar_char 'elapsed char' 'total char' + Characters to use when drawing bars. + --bar_border on/off Whether or not to surround the bar with '[]' + --bar_length num Length in spaces to make the bars. + --bar_colors num num Colors to make the bar. + Set in this order: elapsed, total + --cpu_display mode Bar mode. + Possible values: bar, infobar, barinfo, off + --memory_display mode Bar mode. + Possible values: bar, infobar, barinfo, off + --battery_display mode Bar mode. + Possible values: bar, infobar, barinfo, off + --disk_display mode Bar mode. + Possible values: bar, infobar, barinfo, off + +IMAGE BACKEND: + --backend backend Which image backend to use. + Possible values: 'ascii', 'caca', 'catimg', 'jp2a', 'iterm2', 'off', + 'sixel', 'tycat', 'w3m' + --source source Which image or ascii file to use. + Possible values: 'auto', 'ascii', 'wallpaper', '/path/to/img', + '/path/to/ascii', '/path/to/dir/' + --ascii source Shortcut to use 'ascii' backend. + --caca source Shortcut to use 'caca' backend. + --catimg source Shortcut to use 'catimg' backend. + --iterm2 source Shortcut to use 'iterm2' backend. + --jp2a source Shortcut to use 'jp2a' backend. + --kitty source Shortcut to use 'kitty' backend. + --pixterm source Shortcut to use 'pixterm' backend. + --sixel source Shortcut to use 'sixel' backend. + --termpix source Shortcut to use 'termpix' backend. + --tycat source Shortcut to use 'tycat' backend. + --w3m source Shortcut to use 'w3m' backend. + --off Shortcut to use 'off' backend. + + NOTE: 'source; can be any of the following: 'auto', 'ascii', 'wallpaper', '/path/to/img', + '/path/to/ascii', '/path/to/dir/' + +ASCII: + --ascii_colors x x x x x x Colors to print the ascii art + --ascii_distro distro Which Distro's ascii art to print + + NOTE: Arch and Ubuntu have 'old' logo variants. + + NOTE: Use 'arch_old' or 'ubuntu_old' to use the old logos. + + NOTE: Ubuntu has flavor variants. + + NOTE: Change this to 'Lubuntu', 'Xubuntu', 'Ubuntu-GNOME', + 'Ubuntu-Studio' or 'Ubuntu-Budgie' to use the flavors. + + NOTE: Alpine, Arch, CRUX, Debian, Gentoo, FreeBSD, Mac, NixOS, + OpenBSD, and Void have a smaller logo variant. + + NOTE: Use '{distro name}_small' to use the small variants. + + --ascii_bold on/off Whether or not to bold the ascii logo. + -L, --logo Hide the info text and only show the ascii logo. + + Possible values: bar, infobar, barinfo, off + +IMAGE: + --loop Redraw the image constantly until Ctrl+C is used. This fixes issues + in some terminals emulators when using image mode. + --size 00px | --size 00% How to size the image. + Possible values: auto, 00px, 00%, none + --crop_mode mode Which crop mode to use + Takes the values: normal, fit, fill + --crop_offset value Change the crop offset for normal mode. + Possible values: northwest, north, northeast, + west, center, east, southwest, south, southeast + + --xoffset px How close the image will be to the left edge of the + window. This only works with w3m. + --yoffset px How close the image will be to the top edge of the + window. This only works with w3m. + --bg_color color Background color to display behind transparent image. + This only works with w3m. + --gap num Gap between image and text. + + NOTE: --gap can take a negative value which will move the text + closer to the left side. + + --clean Delete cached files and thumbnails. + +SCREENSHOT: + -s, --scrot /path/to/img Take a screenshot, if path is left empty the screen- + shot function will use \$scrot_dir and \$scrot_name. + -su, --upload /path/to/img Same as --scrot but uploads the scrot to a website. + --image_host imgur/teknik Website to upload scrots to. + --scrot_cmd cmd Screenshot program to launch + +OTHER: + --config /path/to/config Specify a path to a custom config file + --config none Launch the script without a config file + --stdout Turn off all colors and disables any ASCII/image backend. + --help Print this text and exit + --version Show neofetch version + -v Display error messages. + -vv Display a verbose log for error reporting. + +DEVELOPER: + --gen-man Generate a manpage for Neofetch in your PWD. (Requires GNU help2man) + + +Report bugs to https://github.com/dylanaraps/neofetch/issues + +" +exit 1 +} + +get_args() { + # Check the commandline flags early for '--config'. + [[ "$*" != *--config* ]] && get_user_config + + while [[ "$1" ]]; do + case "$1" in + # Info + "--os_arch") os_arch="$2" ;; + "--cpu_cores") cpu_cores="$2" ;; + "--cpu_speed") cpu_speed="$2" ;; + "--speed_type") speed_type="$2" ;; + "--speed_shorthand") speed_shorthand="$2" ;; + "--distro_shorthand") distro_shorthand="$2" ;; + "--kernel_shorthand") kernel_shorthand="$2" ;; + "--uptime_shorthand") uptime_shorthand="$2" ;; + "--cpu_brand") cpu_brand="$2" ;; + "--gpu_brand") gpu_brand="$2" ;; + "--gpu_type") gpu_type="$2" ;; + "--refresh_rate") refresh_rate="$2" ;; + "--gtk_shorthand") gtk_shorthand="$2" ;; + "--gtk2") gtk2="$2" ;; + "--gtk3") gtk3="$2" ;; + "--shell_path") shell_path="$2" ;; + "--shell_version") shell_version="$2" ;; + "--ip_host") public_ip_host="$2" ;; + "--song_shorthand") song_shorthand="$2" ;; + "--music_player") music_player="$2" ;; + "--install_time") install_time="$2" ;; + "--install_time_format") install_time_format="$2" ;; + "--cpu_temp") + cpu_temp="$2" + [[ "$cpu_temp" == "on" ]] && cpu_temp="C" + ;; + + "--disk_subtitle") disk_subtitle="$2" ;; + "--disk_show") + unset disk_show + for arg in "$@"; do + case "$arg" in + "--disk_show") ;; + "-"*) break ;; + *) disk_show+=("$arg") ;; + esac + done + ;; + + "--disable") + for func in "$@"; do + case "$func" in + "--disable") continue ;; + "-"*) break ;; + *) + ((bash_version >= 4)) && func="${func,,}" + unset -f "get_$func" + ;; + esac + done + ;; + + # Text Colors + "--colors") + unset colors + for arg in "$2" "$3" "$4" "$5" "$6" "$7"; do + case "$arg" in + "-"*) break ;; + *) colors+=("$arg") ;; + esac + done + colors+=(7 7 7 7 7 7) + ;; + + # Text Formatting + "--underline") underline_enabled="$2" ;; + "--underline_char") underline_char="$2" ;; + "--bold") bold="$2" ;; + + # Color Blocks + "--color_blocks") color_blocks="$2" ;; + "--block_range") block_range=("$2" "$3") ;; + "--block_width") block_width="$2" ;; + "--block_height") block_height="$2" ;; + + # Bars + "--bar_char") + bar_char_elapsed="$2" + bar_char_total="$3" + ;; - "Linux Mint"* | "LinuxMint"*) - set_colors 2 7 - read -rd '' ascii_data <<'EOF' -${c1}MMMMMMMMMMMMMMMMMMMMMMMMMmds+. -MMm----::-://////////////oymNMd+` -MMd ${c2}/++ ${c1}-sNMd: -MMNso/` ${c2}dMM `.::-. .-::.` ${c1}.hMN: -ddddMMh ${c2}dMM :hNMNMNhNMNMNh: ${c1}`NMm - NMm ${c2}dMM .NMN/-+MMM+-/NMN` ${c1}dMM - NMm ${c2}dMM -MMm `MMM dMM. ${c1}dMM - NMm ${c2}dMM -MMm `MMM dMM. ${c1}dMM - NMm ${c2}dMM .mmd `mmm yMM. ${c1}dMM - NMm ${c2}dMM` ..` ... ydm. ${c1}dMM - hMM- ${c2}+MMd/-------...-:sdds ${c1}dMM - -NMm- ${c2}:hNMNNNmdddddddddy/` ${c1}dMM - -dMNs-${c2}``-::::-------.`` ${c1}dMM - `/dMNmy+/:-------------:/yMMM - ./ydNMMMMMMMMMMMMMMMMMMMMM - .MMMMMMMMMMMMMMMMMMM -EOF - ;; + "--bar_border") bar_border="$2" ;; + "--bar_length") bar_length="$2" ;; + "--bar_colors") + bar_color_elapsed="$2" + bar_color_total="$3" + ;; - "MX"*) - set_colors 4 6 7 - read -rd '' ascii_data <<'EOF' -${c3}MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNMMMMMMMMM -MMMMMMMMMMNs..yMMMMMMMMMMMMMm: +NMMMMMMM -MMMMMMMMMN+ :mMMMMMMMMMNo` -dMMMMMMMM -MMMMMMMMMMMs. `oNMMMMMMh- `sNMMMMMMMMM -MMMMMMMMMMMMN/ -hMMMN+ :dMMMMMMMMMMM -MMMMMMMMMMMMMMh- +ms. .sMMMMMMMMMMMMM -MMMMMMMMMMMMMMMN+` ` +NMMMMMMMMMMMMMM -MMMMMMMMMMMMMMNMMd: .dMMMMMMMMMMMMMMM -MMMMMMMMMMMMm/-hMd- `sNMMMMMMMMMMMMM -MMMMMMMMMMNo` -` :h/ -dMMMMMMMMMMMM -MMMMMMMMMd: /NMMh- `+NMMMMMMMMMM -MMMMMMMNo` :mMMN+` `-hMMMMMMMM -MMMMMMh. `oNMMd: `/mMMMMMM -MMMMm/ -hMd- `sNMMMM -MMNs` - :dMMM -Mm: `oMM -MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM -EOF - ;; + "--cpu_display") cpu_display="$2" ;; + "--memory_display") memory_display="$2" ;; + "--battery_display") battery_display="$2" ;; + "--disk_display") disk_display="$2" ;; - "NetBSD"*) - set_colors 5 7 - read -rd '' ascii_data <<'EOF' -${c1} `-/oshdmNMNdhyo+:-` -${c2}y${c1}/s+:-`` `.-:+oydNMMMMNhs/-`` -${c2}-m+${c1}NMMMMMMMMMMMMMMMMMMMNdhmNMMMmdhs+/-` - ${c2}-m+${c1}NMMMMMMMMMMMMMMMMMMMMmy+:` - ${c2}-N/${c1}dMMMMMMMMMMMMMMMds:` - ${c2}-N/${c1}hMMMMMMMMMmho:` - ${c2}-N/${c1}-:/++/:.` -${c2} :M+ - :Mo - :Ms - :Ms - :Ms - :Ms - :Ms - :Ms - :Ms - :Ms -EOF - ;; + # Image backend + "--backend") image_backend="$2" ;; + "--source") image_source="$2" ;; + "--ascii" | "--caca" | "--catimg" | "--jp2a" | "--iterm2" | "--off" | "--pixterm" |\ + "--sixel" | "--termpix" | "--tycat" | "--w3m" | "--kitty") + image_backend="${1/--}" + case "$2" in + "-"* | "") ;; + *) image_source="$2" ;; + esac + ;; - "Netrunner"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} .:oydmMMMMMMmdyo:` - -smMMMMMMMMMMMMMMMMMMds- - +mMMMMMMMMMMMMMMMMMMMMMMMMd+ - /mMMMMMMMMMMMMMMMMMMMMMMMMMMMMm/ - `hMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMy` - .mMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMd` - dMMMMMMMMMMMMMMMMMMMMMMNdhmMMMMMMMMMMh -+MMMMMMMMMMMMMNmhyo+/-. -MMMMMMMMMMMM/ -mMMMMMMMMd+:.` `mMMMMMMMMMMMMd -MMMMMMMMMMMdy/. yMMMMMMMMMMMMMM -MMMMMMMMMMMMMMMNh+` +MMMMMMMMMMMMMMM -mMMMMMMMMMMMMMMMMMs -NMMMMMMMMMMMMMMd -+MMMMMMMMMMMMMMMMMN. `mMMMMMMMMMMMMMMM/ - dMMMMMMMMMMMMMMMMMy hMMMMMMMMMMMMMMMh - `dMMMMMMMMMMMMMMMMM-+MMMMMMMMMMMMMMMd` - `hMMMMMMMMMMMMMMMMmMMMMMMMMMMMMMMMy - /mMMMMMMMMMMMMMMMMMMMMMMMMMMMMm: - +dMMMMMMMMMMMMMMMMMMMMMMMMd/ - -odMMMMMMMMMMMMMMMMMMdo- - `:+ydmNMMMMNmhy+-` -EOF - ;; + # Image options + "--loop") image_loop="on" ;; + "--image_size" | "--size") image_size="$2" ;; + "--crop_mode") crop_mode="$2" ;; + "--crop_offset") crop_offset="$2" ;; + "--xoffset") xoffset="$2" ;; + "--yoffset") yoffset="$2" ;; + "--background_color" | "--bg_color") background_color="$2" ;; + "--gap") gap="$2" ;; + "--clean") + [[ -d "$thumbnail_dir" ]] && rm -rf "$thumbnail_dir" + rm -rf "/Library/Caches/neofetch/" + rm -rf "/tmp/neofetch/" + exit + ;; - "Nitrux"*) - set_colors 4 - read -rd '' ascii_data <<'EOF' -${c1}`:/. -`/yo -`/yo -`/yo .+:. -`/yo .sys+:.` -`/yo `-/sys+:.` -`/yo ./sss+:.` -`/yo .:oss+:-` -`/yo ./o///:-` -`/yo `.-:///////:` -`/yo `.://///++//-`` -`/yo `.-:////++++/-` -`/yo `-://///++o+/-` -`/yo `-/+o+++ooo+/-` -`/s+:+oooossso/.` -`//+sssssso:. -`+syyyy+:` -:+s+- -EOF - ;; + "--ascii_colors") + unset ascii_colors + for arg in "$2" "$3" "$4" "$5" "$6" "$7"; do + case "$arg" in + "-"*) break ;; + *) ascii_colors+=("$arg") + esac + done + ascii_colors+=(7 7 7 7 7 7) + ;; - "nixos_small") - set_colors 4 6 - read -rd '' ascii_data <<'EOF' - ${c1}\\\\ \\\\ // - ==\\\\__\\\\/ // - // \\\\// -==// //== - //\\\\___// -// /\\\\ \\\\== - // \\\\ \\\\ -EOF - ;; + "--ascii_distro") + image_backend="ascii" + ascii_distro="$2" + case "$2" in "-"* | "") ascii_distro="$distro" ;; esac + ;; - "NixOS"*) - set_colors 4 6 - read -rd '' ascii_data <<'EOF' -${c1} ::::. ${c2}'::::: ::::' -${c1} '::::: ${c2}':::::. ::::' -${c1} ::::: ${c2}'::::.::::: -${c1} .......:::::..... ${c2}:::::::: -${c1} ::::::::::::::::::. ${c2}:::::: ${c1}::::. - ::::::::::::::::::::: ${c2}:::::. ${c1}.::::' -${c2} ..... ::::' ${c1}:::::' -${c2} ::::: '::' ${c1}:::::' -${c2} ........::::: ' ${c1}:::::::::::. -${c2}::::::::::::: ${c1}::::::::::::: -${c2} ::::::::::: ${c1}.. ${c1}::::: -${c2} .::::: ${c1}.::: ${c1}::::: -${c2} .::::: ${c1}::::: ${c1}''''' ${c2}..... - ::::: ${c1}':::::. ${c2}......:::::::::::::' - ::: ${c1}::::::. ${c2}':::::::::::::::::' -${c1} .:::::::: ${c2}':::::::::: -${c1} .::::''::::. ${c2}'::::. -${c1} .::::' ::::. ${c2}'::::. -${c1} .:::: :::: ${c2}'::::. -EOF - ;; + "--ascii_bold") ascii_bold="$2" ;; + "--logo" | "-L") + image_backend="ascii" + print_info() { info line_break; } + ;; - "Nurunner"*) - set_colors 4 - read -rd '' ascii_data <<'EOF' -${c1} ,xc - ;00cxXl - ;K0, .xNo. - :KO' .lXx. - cXk. ;xl cXk. - cXk. ;k:.,xo. cXk. - .lXx. :x::0MNl,dd. :KO, - .xNx. cx;:KMMMMMNo'dx. ;KK; - .dNl. cd,cXMMMMMMMMMWd,ox' 'OK: -;WK. 'K,.KMMMMMMMMMMMMMWc.Kx lMO - 'OK: 'dl'xWMMMMMMMMMM0::x: 'OK: - .kNo .xo'xWMMMMMM0;:O: ;KK; - .dXd. .do,oNMMO;ck: ;00, - oNd. .dx,;'cO; ;K0, - oNx. okk; ;K0, - lXx. :KO' - cKk' cXk. - ;00:lXx. - ,kd. -EOF - ;; + # Screenshot + "--scrot" | "-s") + scrot_args "$@" + ;; + "--upload" | "-su") + scrot_upload="on" + scrot_args "$@" + ;; + + "--image_host") image_host="$2" ;; + "--scrot_cmd") scrot_cmd="$2" ;; + + # Other + "--config") + case "$2" in + "none" | "off" | "") ;; + *) + config_file="$(get_full_path "$2")" + get_user_config + ;; + esac + ;; + "--stdout") stdout="on" ;; + "-v") verbose="on" ;; + "-vv") set -x; verbose="on" ;; + "--help") usage ;; + "--version") + printf "%s\\n" "Neofetch $version" + exit 1 + ;; + "--gen-man") + help2man -n "A fast, highly customizable system info script" \ + -N ./neofetch -o neofetch.1 + exit 1 + ;; - "NuTyX"*) - set_colors 4 1 - read -rd '' ascii_data <<'EOF' -${c1} . - . - ... - ... - .... .........--. - ..-++-----....--++++++---. - .-++++++-. .-++++++++++++-----.. - .--... .++..-+++--.....-++++++++++--.. - . .-+-. .**- .... ..-+----.. - .+++. .*+. + -++-----. - .+++++- ++. .*+. .....-+++-----. - -+++-++. .+. .-+***++***++--++++. . - -+-. -- -. -*- ...... ..--. -.-. .+- . -+. -. .+- +. - -- -- - -+----. .- - -++-.+. . - .++. -- - +. ----. - . .+. .. - - . - . -EOF - ;; + "--travis") + print_info() { + info title + info underline - "OBRevenge"*) - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' -${c1} __ __ - _@@@@ @@@g_ - _@@@@@@ @@@@@@ - _@@@@@@M W@@@@@@_ - j@@@@P ^W@@@@ - @@@@L____ _____Q@@@@ -Q@@@@@@@@@@j@@@@@@@@@@ -@@@@@ T@j@ T@@@@@ -@@@@@ ___Q@J@ _@@@@@ -@@@@@fMMM@@j@jggg@@@@@@ -@@@@@ j@j@^MW@P @@@@ -Q@@@@@ggg@@f@ @@@@@@L -^@@@@WWMMP ^ Q@@@@ - @@@@@_ _@@@@l - W@@@@@g_____g@@@@@P - @@@@@@@@@@@@@@@@l - ^W@@@@@@@@@@@P - ^TMMMMTll -EOF - ;; + info "OS" distro + info "Host" model + info "Kernel" kernel + info "Uptime" uptime + info "Packages" packages + info "Shell" shell + info "Resolution" resolution + info "DE" de + info "WM" wm + info "WM Theme" wm_theme + info "Theme" theme + info "Icons" icons + info "Terminal" term + info "Terminal Font" term_font + info "CPU" cpu + info "GPU" gpu + info "GPU Driver" gpu_driver + info "Memory" memory - "openbsd_small") - set_colors 3 7 6 1 8 - read -rd '' ascii_data <<'EOF' -${c1} _____ - \\- -/ - \\_/ \\ - | ${c2}O O${c1} | - |_ < ) 3 ) - / \\ / - /-_____-\\ -EOF - ;; + info "CPU Usage" cpu_usage + info "Disk" disk + info "Battery" battery + info "Font" font + info "Song" song + info "Local IP" local_ip + info "Public IP" public_ip + info "Users" users + info "Install Date" install_date - "OpenBSD"*) - set_colors 3 7 6 1 8 - read -rd '' ascii_data <<'EOF' - ${c3} _ - (_) -${c1} | . -${c1} . |L /| . ${c3} _ -${c1} _ . |\ _| \--+._/| . ${c3}(_) -${c1} / ||\| Y J ) / |/| ./ - J |)'( | ` F`.'/ ${c3} _ -${c1} -<| F __ .-< ${c3}(_) -${c1} | / .-'${c3}. ${c1}`. /${c3}-. ${c1}L___ - J \\ < ${c3}\ ${c1} | | ${c5}O${c3}\\${c1}|.-' ${c3} _ -${c1} _J \\ .- \\${c3}/ ${c5}O ${c3}| ${c1}| \\ |${c1}F ${c3}(_) -${c1} '-F -<_. \\ .-' `-' L__ -__J _ _. >-' ${c1})${c4}._. ${c1}|-' -${c1} `-|.' /_. ${c4}\_| ${c1} F - /.- . _.< - /' /.' .' `\\ - /L /' |/ _.-'-\\ - /'J ___.---'\| - |\ .--' V | `. ` - |/`. `-. `._) - / .-.\\ - \\ ( `\\ - `.\ -EOF - ;; + info line_break + info cols + info line_break - "OpenIndiana"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c2} .sy/ - .yh+ + # Testing. + prin "prin" + prin "prin" "prin" - ${c1}-+syyyo+- ${c2} /+. - ${c1}+ddo/---/sdh/ ${c2} ym- - ${c1}`hm+ `sms${c2} ym-```````.-. - ${c1}sm+ sm/ ${c2} ym- +s - ${c1}hm. /mo ${c2} ym- /h - ${c1}omo ym: ${c2} ym- `os` - ${c1}smo` .ym+ ${c2} ym- .os- - `` ${c1}:ymy+///oyms- ${c2} ym- .+s+. - ..` ${c1}`:+oo+/-` ${c2} -//oyo- - -:` .:oys/. -+- `./oyys/. -h+` `.-:+oyyyo/-` -`/ossssysso+/-.` -EOF - ;; + # Testing no subtitles. + info uptime + info disk + } - "OpenMandriva"*) - set_colors 4 3 - read -rd '' ascii_data <<'EOF' -${c2} `` - `-. -${c1} ` ${c2}.--- -${c1} -/ ${c2}-::--` -${c1} `++ ${c2}`----...```-:::::. -${c1} `os. ${c2}.::::::::::::::-``` ` ` -${c1} +s+ ${c2}.::::::::::::::::---...--` -${c1}-ss: ${c2}`-::::::::::::::::-.``.`` -${c1}/ss- ${c2}.::::::::::::-.`` ` -${c1}+ss: ${c2}.::::::::::::- -${c1}/sso ${c2}.::::::-::::::- -${c1}.sss/ ${c2}-:::-.` .::::: -${c1} /sss+. ${c2}..`${c1} `--` ${c2}.::: -${c1} -ossso+/:://+/-` ${c2}.:` -${c1} -/+ooo+/-. ${c2}` -EOF - ;; + refresh_rate="on" + shell_version="on" + cpu_display="infobar" + memory_display="infobar" + disk_display="infobar" + cpu_temp="C" + ;; + esac - "OpenWrt"*) - set_colors 4 7 1 - read -rd '' ascii_data <<'EOF' -${c1} _______ -| |.-----.-----.-----. -| - || _ | -__| | -|_______|| __|_____|__|__| - |__| - ________ __ -| | | |.----.| |_ -| | | || _|| _| -|________||__| |____| -EOF - ;; + shift + done +} - "Open Source Media Center"* | "osmc") - set_colors 4 7 1 +get_distro_colors() { + # This function sets the text colors according + # to your OS/Distro's logo colors. + # + # $ascii_distro is the same as $distro. + case "$ascii_distro" in + "AIX"*) + set_colors 2 7 read -rd '' ascii_data <<'EOF' -${c1} -+shdmNNNNmdhs+- - .+hMNho/:..``..:/ohNMh+. - :hMdo. .odMh: - -dMy- -yMd- - sMd- -dMs - hMy +. .+ yMh - yMy dMs. .sMd yMy -:Mm dMNMs` `sMNMd `mM: -yM+ dM//mNs``sNm//Md +My -mM- dM: +NNNN+ :Md -Mm -mM- dM: `oNN+ :Md -Mm -yM+ dM/+NNo` :Md +My -:Mm` dMMNs` :Md `mM: - yMy dMs` -ms yMy - hMy +. yMh - sMd- -dMs - -dMy- -yMd- - :hMdo. .odMh: - .+hMNho/:..``..:/ohNMh+. - -+shdmNNNNmdhs+- +${c1} `:+ssssossossss+-` + .oys///oyhddddhyo///sy+. + /yo:+hNNNNNNNNNNNNNNNNh+:oy/ + :h/:yNNNNNNNNNNNNNNNNNNNNNNy-+h: + `ys.yNNNNNNNNNNNNNNNNNNNNNNNNNNy.ys + `h+-mNNNNNNNNNNNNNNNNNNNNNNNNNNNNm-oh + h+-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN.oy +/d`mNNNNNNN/::mNNNd::m+:/dNNNo::dNNNd`m: +h//NNNNNNN: . .NNNh mNo od. -dNNNNN:+y +N.sNNNNNN+ -N/ -NNh mNNd. sNNNNNNNo-m +N.sNNNNNs +oo /Nh mNNs` ` /mNNNNNNo-m +h//NNNNh ossss` +h md- .hm/ `sNNNNN:+y +:d`mNNN+/yNNNNNd//y//h//oNNNNy//sNNNd`m- + yo-NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNm.ss + `h+-mNNNNNNNNNNNNNNNNNNNNNNNNNNNNm-oy + sy.yNNNNNNNNNNNNNNNNNNNNNNNNNNs.yo + :h+-yNNNNNNNNNNNNNNNNNNNNNNs-oh- + :ys:/yNNNNNNNNNNNNNNNmy/:sy: + .+ys///osyhhhhys+///sy+. + -/osssossossso/- EOF ;; - "Oracle"*) - set_colors 1 7 3 + "alpine_small") + set_colors 4 7 read -rd '' ascii_data <<'EOF' -${c1} - `-/+++++++++++++++++/-.` - `/syyyyyyyyyyyyyyyyyyyyyyys/. - :yyyyo/-...............-/oyyyy/ - /yyys- .oyyy+ -.yyyy` `syyy- -:yyyo /yyy/ -.yyyy` `syyy- - /yyys. .oyyyo - /yyyyo:-...............-:oyyyy/` - `/syyyyyyyyyyyyyyyyyyyyyyys+. - `.:/+ooooooooooooooo+/:.` +${c1} /\\ /\\ + /${c2}/ ${c1}\\ \\ + /${c2}/ ${c1}\\ \\ +/${c2}// ${c1}\\ \\ +${c2}// ${c1}\\ \\ + \\ EOF ;; - "PacBSD"*) - set_colors 1 7 3 + "Alpine"*) + set_colors 4 5 7 6 read -rd '' ascii_data <<'EOF' -${c1} :+sMs. - `:ddNMd- -o--` - -sMMMMh: `+N+`` - yMMMMMs` .....-/-... `mNh/ - yMMMMMmh+-`:sdmmmmmmMmmmmddy+-``./ddNMMm - yNMMNMMMMNdyyNNMMMMMMMMMMMMMMMhyshNmMMMm - :yMMMMMMMMMNdooNMMMMMMMMMMMMMMMMNmy:mMMd - +MMMMMMMMMmy:sNMMMMMMMMMMMMMMMMMMMmshs- - :hNMMMMMMN+-+MMMMMMMMMMMMMMMMMMMMMMMs. - .omysmNNhy/+yNMMMMMMMMMMNMMMMMMMMMNdNNy- - /hMM:::::/hNMMMMMMMMMMMm/-yNMMMMMMN.mMNh` -.hMMMMdhdMMMMMMMMMMMMMMmo `sMMMMMMN mMMm- -:dMMMMMMMMMMMMMMMMMMMMMdo+ oMMMMMMN`smMNo` -/dMMMMMMMMMMMMMMMMMMMMMNd/` :yMMMMMN:-hMMM. -:dMMMMMMMMMMMMMMMMMMMMMNh` oMMMMMMNo/dMNN` -:hMMMMMMMMMMMMMMMMMMMMMMNs--sMMMMMMMNNmy++` - sNMMMMMMMMMMMMMMMMMMMMMMMmmNMMMMMMNho::o. - :yMMMMMMMMMMMMMNho+sydNNNNNNNmysso/` -// - /dMMMMMMMMMMMMMs- ````````..`` - .oMMMMMMMMMMMMNs` ./y:` - +dNMMNMMMMMMMmy` ``./ys. - `/hMMMMMMMMMMMNo-`` `.+yy+-` - `-/hmNMNMMMMMMmmddddhhy/-` - `-+oooyMMMdsoo+/:. +${c1} .hddddddddddddddddddddddh. + :dddddddddddddddddddddddddd: + /dddddddddddddddddddddddddddd/ + +dddddddddddddddddddddddddddddd+ + `sdddddddddddddddddddddddddddddddds` + `ydddddddddddd++hdddddddddddddddddddy` +.hddddddddddd+` `+ddddh:-sdddddddddddh. +hdddddddddd+` `+y: .sddddddddddh +ddddddddh+` `//` `.` -sddddddddd +ddddddh+` `/hddh/` `:s- -sddddddd +ddddh+` `/+/dddddh/` `+s- -sddddd +ddd+` `/o` :dddddddh/` `oy- .yddd +hdddyo+ohddyosdddddddddho+oydddy++ohdddh +.hddddddddddddddddddddddddddddddddddddh. + `yddddddddddddddddddddddddddddddddddy` + `sdddddddddddddddddddddddddddddddds` + +dddddddddddddddddddddddddddddd+ + /dddddddddddddddddddddddddddd/ + :dddddddddddddddddddddddddd: + .hddddddddddddddddddddddh. EOF ;; - "Parabola"*) - set_colors 5 7 + "Amazon"*) + set_colors 3 7 read -rd '' ascii_data <<'EOF' -${c1} `.-. `. - `.` `:++. `-+o+. - `` `:+/. `:+/. `-+oooo+ - ``-::-.:+/. `:+/. `-+oooooo+ - `.-:///- ..` .-. `-+oooooooo- - `..-..` `+ooooooooo: -`` :oooooooo/ - `ooooooo: - `oooooo: - -oooo+. - +ooo/` - -ooo- - `+o/. - /+- - //` - -. +${c1} `-/oydNNdyo:.` + `.:+shmMMMMMMMMMMMMMMmhs+:.` + -+hNNMMMMMMMMMMMMMMMMMMMMMMNNho- +.`` -/+shmNNMMMMMMNNmhs+/- ``. +dNmhs+:. `.:/oo/:.` .:+shmNd +dMMMMMMMNdhs+:.. ..:+shdNMMMMMMMd +dMMMMMMMMMMMMMMNds odNMMMMMMMMMMMMMMd +dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd +dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd +dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd +dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd +dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd +dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd +dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd +dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd +dMMMMMMMMMMMMMMMMh yMMMMMMMMMMMMMMMMd +.:+ydNMMMMMMMMMMMh yMMMMMMMMMMMNdy+:. + `.:+shNMMMMMh yMMMMMNhs+:`` + `-+shy shs+:` EOF ;; - "Pardus"*) - set_colors 3 7 6 1 8 + "Anarchy"*) + set_colors 7 4 read -rd '' ascii_data <<'EOF' -${c1} .smNdy+- `.:/osyyso+:.` -+ydmNs. -/Md- -/ymMdmNNdhso/::/oshdNNmdMmy/. :dM/ -mN. oMdyy- -y `-dMo .Nm -.mN+` sMy hN+ -: yMs `+Nm. - `yMMddMs.dy `+` sMddMMy` - +MMMo .` . oMMM+ - `NM/ `````.` `.````` +MN` - yM+ `.-:yhomy ymohy:-.` +My - yM: yo oy :My - +Ms .N` `N. +h sM+ - `MN - -::::::- : :o:+`NM` - yM/ sh -dMMMMd- ho +y+My - .dNhsohMh-//: /mm/ ://-yMyoshNd` - `-ommNMm+:/. oo ./:+mMNmmo:` - `/o+.-somNh- :yy: -hNmos-.+o/` - ./` .s/`s+sMdd+``+ddMs+s`/s. `/. - : -y. -hNmddmNy. .y- : - -+ `..` +- + ${c2}..${c1} + ${c2}..${c1} + ${c2}:..${c1} + ${c2}:+++.${c1} + .:::++${c2}++++${c1}+::. + .:+######${c2}++++${c1}######+:. + .+#########${c2}+++++${c1}##########:. + .+##########${c2}+++++++${c1}##${c2}+${c1}#########+. + +###########${c2}+++++++++${c1}############: + +##########${c2}++++++${c1}#${c2}++++${c1}#${c2}+${c1}###########+ + +###########${c2}+++++${c1}###${c2}++++${c1}#${c2}+${c1}###########+ + :##########${c2}+${c1}#${c2}++++${c1}####${c2}++++${c1}#${c2}+${c1}############: + ###########${c2}+++++${c1}#####${c2}+++++${c1}#${c2}+${c1}###${c2}++${c1}######+ +.##########${c2}++++++${c1}#####${c2}++++++++++++${c1}#######. +.##########${c2}+++++++++++++++++++${c1}###########. + #####${c2}++++++++++++++${c1}###${c2}++++++++${c1}#########+ + :###${c2}++++++++++${c1}#########${c2}+++++++${c1}#########: + +######${c2}+++++${c1}##########${c2}++++++++${c1}#######+ + +####${c2}+++++${c1}###########${c2}+++++++++${c1}#####+ + :##${c2}++++++${c1}############${c2}++++++++++${c1}##: + .${c2}++++++${c1}#############${c2}++++++++++${c1}+. + :${c2}++++${c1}###############${c2}+++++++${c1}:: + .${c2}++. .:+${c1}##############${c2}+++++++${c1}.. + ${c2}.:.${c1} ..::++++++::..:${c2}++++${c1}+. + ${c2}.${c1} ${c2}.:+++${c1}. + ${c2}.:${c1}: + ${c2}..${c1} + ${c2}..${c1} EOF ;; - "Parrot"*) - set_colors 6 7 + "Android"*) + set_colors 2 7 read -rd '' ascii_data <<'EOF' -${c1} `:oho/-` -`mMMMMMMMMMMMNmmdhy- - dMMMMMMMMMMMMMMMMMMs` - +MMsohNMMMMMMMMMMMMMm/ - .My .+dMMMMMMMMMMMMMh. - + :NMMMMMMMMMMMMNo - `yMMMMMMMMMMMMMm: - /NMMMMMMMMMMMMMy` - .hMMMMMMMMMMMMMN+ - ``-NMMMMMMMMMd- - /MMMMMMMMMMMs` - mMMMMMMMsyNMN/ - +MMMMMMMo :sNh. - `NMMMMMMm -o/ - oMMMMMMM. - `NMMMMMM+ - +MMd/NMh - mMm -mN` - /MM `h: - dM` . - :M- - d: - -+ - - +${c1} -o o- + +hydNNNNdyh+ + +mMMMMMMMMMMMMm+ + `dMM${c2}m:${c1}NMMMMMMN${c2}:m${c1}MMd` + hMMMMMMMMMMMMMMMMMMh + .. yyyyyyyyyyyyyyyyyyyy .. +.mMMm`MMMMMMMMMMMMMMMMMMMM`mMMm. +:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM: +:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM: +:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM: +:MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM: +-MMMM-MMMMMMMMMMMMMMMMMMMM-MMMM- + +yy+ MMMMMMMMMMMMMMMMMMMM +yy+ + mMMMMMMMMMMMMMMMMMMm + `/++MMMMh++hMMMM++/` + MMMMo oMMMM + MMMMo oMMMM + oNMm- -mMNs EOF ;; - "Parsix"*) - set_colors 3 1 7 8 + "Antergos"*) + set_colors 4 6 read -rd '' ascii_data <<'EOF' - ${c2}-/+/:. - ${c2}.syssssys. - ${c1}.--. ${c2}ssssssssso${c1} ..--. - :++++++: ${c2}+ssssssss+${c1} ./++/+++: - /+++++++++.${c2}.yssooooy`${c1}-+///////o- - /++++++++++.${c2}+soooos:${c1}:+////////+- - :+++++////o-${c2}oooooo-${c1}+/////////- - `-/++//++-${c4}.-----.-${c1}:+/////:- - ${c3}-://::--${c1}-:/:${c4}.--.````.--.${c1}:::-${c3}--::::::. -${c3}-/:::::::://:${c4}.:-` `-:${c3}`:/:::::::--/- -${c3}/::::::::::/-${c4}--. .-.${c3}-/://///::::/ -${c3}-/:::::::::/:${c4}`:-. .-:${c3}`:///////////- - `${c3}-::::--${c1}.-://.${c4}---....---${c1}`:+/:-${c3}--::::-` - ${c1}-/+///+o/-${c4}.----.${c1}.:oo+++o+. - ${c1}-+/////+++o:${c2}syyyyy.${c1}o+++++++++: - ${c1}.+////+++++-${c2}+sssssy+${c1}.++++++++++\ - ${c1}.+:/++++++.${c2}.yssssssy-${c1}`+++++++++: - ${c1}:/+++++- ${c2}+sssssssss ${c1}-++++++- - ${c1}`--` ${c2}+sssssssso ${c1}`--` - ${c2}+sssssy+` - ${c2}`.::-` +${c2} `.-/::/-`` + .-/osssssssso/. + :osyysssssssyyys+- + `.+yyyysssssssssyyyyy+. + `/syyyyyssssssssssyyyyys-` + `/yhyyyyysss${c1}++${c2}ssosyyyyhhy/` + .ohhhyyyys${c1}o++/+o${c2}so${c1}+${c2}syy${c1}+${c2}shhhho. + .shhhhys${c1}oo++//+${c2}sss${c1}+++${c2}yyy${c1}+s${c2}hhhhs. + -yhhhhs${c1}+++++++o${c2}ssso${c1}+++${c2}yyy${c1}s+o${c2}hhddy: + -yddhhy${c1}o+++++o${c2}syyss${c1}++++${c2}yyy${c1}yooy${c2}hdddy- + .yddddhs${c1}o++o${c2}syyyyys${c1}+++++${c2}yyhh${c1}sos${c2}hddddy` +`odddddhyosyhyyyyyy${c1}++++++${c2}yhhhyosddddddo +.dmdddddhhhhhhhyyyo${c1}+++++${c2}shhhhhohddddmmh. +ddmmdddddhhhhhhhso${c1}++++++${c2}yhhhhhhdddddmmdy +dmmmdddddddhhhyso${c1}++++++${c2}shhhhhddddddmmmmh +-dmmmdddddddhhys${c1}o++++o${c2}shhhhdddddddmmmmd- +.smmmmddddddddhhhhhhhhhdddddddddmmmms. + `+ydmmmdddddddddddddddddddmmmmdy/. + `.:+ooyyddddddddddddyyso+:.` +EOF + ;; + + "antiX"*) + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c1} + \ + , - ~ ^ ~ - \ / + , ' \ ' , / + , \ '/ + , \ / , + ,___, \/ , + / | _ _ _|_ o /\ , +|, | / |/ | | | / \ , + \,_/\_/ | |_/|_/|_/_/ \, + , / ,\ + , / , ' \ + ' - , _ _ _ , ' EOF ;; - "PCBSD"* | "TrueOS"*) - set_colors 1 7 3 + "AOSC"*) + set_colors 4 7 1 read -rd '' ascii_data <<'EOF' -${c1} .. - s. - +y - yN - -MN `. - :NMs `m - .yMMm` `No - `-/+++sdMMMNs+-`+Ms - `:oo+-` .yMMMMy` `-+oNMh - -oo- +NMMMM/ oMMh- - .s+` ` oMMMMM/ - oMMMhy. - +s`- :: :MMMMMd -o `mMMMy`s+ - y+ h .Ny+oNMMMMMN/ sh+NMMMMo +y - s+ .ds -NMMMMMMMMMMNdhdNMMMMMMh` +s --h .NM` `hMMMMMMMMMMMMMMNMMNy: h- -y- hMN` hMMmMMMMMMMMMNsdMNs. -y -m` mMMy` oMMNoNMMMMMMo` sMMMo `m -m` :NMMMdyydMMMMo+MdMMMs sMMMd` `m -h- `+ymMMMMMMMM--M+hMMN/ +MMMMy -h -:y `.sMMMMM/ oMM+.yMMNddNMMMMMm y: - y: `s dMMN- .MMMM/ :MMMMMMMMMMh :y - `h: `mdmMMM/ yMMMMs sMMMMMMMMN- :h` - so -NMMMN /mmd+ `dMMMMMMMm- os - :y: `yMMM` `+NMMMMMMNo`:y: - /s+`.omy /NMMMMMNh/.+s: - .+oo:-. /mdhs+::oo+. - -/o+++++++++++/- +${c2} .:+syhhhhys+:. + .ohNMMMMMMMMMMMMMMNho. + `+mMMMMMMMMMMmdmNMMMMMMMMm+` + +NMMMMMMMMMMMM/ `./smMMMMMN+ + .mMMMMMMMMMMMMMMo -yMMMMMm. + :NMMMMMMMMMMMMMMMs .hMMMMN: + .NMMMMhmMMMMMMMMMMm+/- oMMMMN. + dMMMMs ./ymMMMMMMMMMMNy. sMMMMd +-MMMMN` oMMMMMMMMMMMN: `NMMMM- +/MMMMh NMMMMMMMMMMMMm hMMMM/ +/MMMMh NMMMMMMMMMMMMm hMMMM/ +-MMMMN` :MMMMMMMMMMMMy. `NMMMM- + dMMMMs .yNMMMMMMMMMMMNy/. sMMMMd + .NMMMMo -/+sMMMMMMMMMMMmMMMMN. + :NMMMMh. .MMMMMMMMMMMMMMMN: + .mMMMMMy- NMMMMMMMMMMMMMm. + +NMMMMMms/.` mMMMMMMMMMMMN+ + `+mMMMMMMMMNmddMMMMMMMMMMm+` + .ohNMMMMMMMMMMMMMMNho. + .:+syhhhhys+:. EOF ;; - "PCLinuxOS"*) + "Apricity"*) set_colors 4 7 1 read -rd '' ascii_data <<'EOF' - ${c1}mhhhyyyyhhhdN - dyssyhhhhhhhhhhhssyhN - Nysyhhyo/:-.....-/oyhhhssd - Nsshhy+. `/shhysm - dohhy/ -shhsy - dohhs` /hhys -N+hho ${c2}+ssssss+- .+syhys+ ${c1}/hhsy -ohhh` ${c2}ymmo++hmm+`smmy/::+y` ${c1}shh+ -+hho ${c2}ymm- /mmy+mms ${c1}:hhod -/hh+ ${c2}ymmhhdmmh.smm/ ${c1}.hhsh -+hhs ${c2}ymm+::-` /mmy` ` ${c1}/hh+m -yyhh- ${c2}ymm- /dmdyosyd` ${c1}`yhh+ - ohhy` ${c2}://` -/+++/- ${c1}ohhom - N+hhy- `shhoh - sshho. `+hhyom - dsyhhs/. `:ohhhoy - dysyhhhso///://+syhhhssh - dhyssyhhhhhhyssyyhN - mddhdhdmN +${c2} ./o- + ``...`` `:. -/: + `-+ymNMMMMMNmho-` :sdNNm/ + `+dMMMMMMMMMMMMMMMmo` sh:.:::- + /mMMMMMMMMMMMMMMMMMMMm/`sNd/ + oMMMMMMMMMMMMMMMMMMMMMMMs -` +:MMMMMMMMMMMMMMMMMMMMMMMMM/ +NMMMMMMMMMMMMMMMMMMMMMMMMMd +MMMMMMMmdmMMMMMMMMMMMMMMMMd +MMMMMMy` .mMMMMMMMMMMMmho:` +MMMMMMNo/sMMMMMMMNdy+-.`-/ +MMMMMMMMMMMMNdy+:.`.:ohmm: +MMMMMMMmhs+-.`.:+ymNMMMy. +MMMMMM/`.-/ohmNMMMMMMy- +MMMMMMNmNNMMMMMMMMmo. +MMMMMMMMMMMMMMMms:` +MMMMMMMMMMNds/. +dhhyys+/-` EOF ;; - "Peppermint"*) - set_colors 1 7 3 + "arch_small") + set_colors 6 7 1 read -rd '' ascii_data <<'EOF' -${c1} 8ZZZZZZ${c2}MMMMM -${c1} .ZZZZZZZZZ${c2}MMMMMMM. -${c2} MM${c1}ZZZZZZZZZ${c2}MMMMMMM${c1}ZZZZ -${c2} MMMMM${c1}ZZZZZZZZ${c2}MMMMM${c1}ZZZZZZZM -${c2} MMMMMMM${c1}ZZZZZZZ${c2}MMMM${c1}ZZZZZZZZZ. -${c2} MMMMMMMMM${c1}ZZZZZZ${c2}MMM${c1}ZZZZZZZZZZZI -${c2}MMMMMMMMMMM${c1}ZZZZZZ${c2}MM${c1}ZZZZZZZZZZ${c2}MMM -${c1}.ZZZ${c2}MMMMMMMMMM${c1}IZZ${c2}MM${c1}ZZZZZ${c2}MMMMMMMMM -${c1}ZZZZZZZ${c2}MMMMMMMM${c1}ZZ${c2}M${c1}ZZZZ${c2}MMMMMMMMMMM -${c1}ZZZZZZZZZZZZZZZZ${c2}M${c1}Z${c2}MMMMMMMMMMMMMMM -${c1}.ZZZZZZZZZZZZZ${c2}MMM${c1}Z${c2}M${c1}ZZZZZZZZZZ${c2}MMMM -${c1}.ZZZZZZZZZZZ${c2}MMM${c1}7ZZ${c2}MM${c1}ZZZZZZZZZZ7${c2}M -${c1} ZZZZZZZZZ${c2}MMMM${c1}ZZZZ${c2}MMMM${c1}ZZZZZZZ77 -${c2} MMMMMMMMMMMM${c1}ZZZZZ${c2}MMMM${c1}ZZZZZ77 -${c2} MMMMMMMMMM${c1}7ZZZZZZ${c2}MMMMM${c1}ZZ77 -${c2} .MMMMMMM${c1}ZZZZZZZZ${c2}MMMMM${c1}Z7Z -${c2} MMMMM${c1}ZZZZZZZZZ${c2}MMMMMMM -${c1} NZZZZZZZZZZZ${c2}MMMMM -${c1} ZZZZZZZZZ${c2}MM) +${c1} /\ + /^^\ + /\ \ + /${c2} __ \ + / ( ) \ + / __| |__\\\ +/// \\\\\ EOF ;; - "Pop!_OS"*) - set_colors 6 7 + "arch_old") + set_colors 6 7 1 read -rd '' ascii_data <<'EOF' -${c1} ///////////// - ///////////////////// - ///////${c2}*767${c1}//////////////// - //////${c2}7676767676*${c1}////////////// - /////${c2}76767${c1}//${c2}7676767${c1}////////////// - /////${c2}767676${c1}///${c2}*76767${c1}/////////////// - ///////${c2}767676${c1}///${c2}76767${c1}.///${c2}7676*${c1}/////// -/////////${c2}767676${c1}//${c2}76767${c1}///${c2}767676${c1}//////// -//////////${c2}76767676767${c1}////${c2}76767${c1}///////// -///////////${c2}76767676${c1}//////${c2}7676${c1}////////// -////////////,${c2}7676${c1},///////${c2}767${c1}/////////// -/////////////*${c2}7676${c1}///////${c2}76${c1}//////////// -///////////////${c2}7676${c1}//////////////////// - ///////////////${c2}7676${c1}///${c2}767${c1}//////////// - //////////////////////${c2}'${c1}//////////// - //////${c2}.7676767676767676767,${c1}////// - /////${c2}767676767676767676767${c1}///// - /////////////////////////// - ///////////////////// - ///////////// +${c1} __ + _=(SDGJT=_ + _GTDJHGGFCVS) + ,GTDJGGDTDFBGX0 +${c1} JDJDIJHRORVFSBSVL${c2}-=+=,_ +${c1} IJFDUFHJNXIXCDXDSV,${c2} "DEBL +${c1} [LKDSDJTDU=OUSCSBFLD.${c2} '?ZWX, +${c1} ,LMDSDSWH' `DCBOSI${c2} DRDS], +${c1} SDDFDFH' !YEWD,${c2} )HDROD +${c1} !KMDOCG &GSU|${c2}\_GFHRGO\' +${c1} HKLSGP'${c2} __${c1}\TKM0${c2}\GHRBV)' +${c1}JSNRVW'${c2} __+MNAEC${c1}\IOI,${c2}\BN' +${c1}HELK['${c2} __,=OFFXCBGHC${c1}\FD) +${c1}?KGHE ${c2}\_-#DASDFLSV='${c1} 'EF +'EHTI !H + `0F' '! EOF ;; - "Porteus"*) - set_colors 6 7 + "ArchBox"*) + set_colors 2 7 1 read -rd '' ascii_data <<'EOF' -${c1} `.-:::-.` - -+ydmNNNNNNNmdy+- - .+dNmdhs+//////+shdmdo. - .smmy+-` ./sdy: - `omdo. `.-/+osssso+/-` `+dy. - `yms. `:shmNmdhsoo++osyyo-``oh. - hm/ .odNmds/.` ``.....:::-+s -/m: `+dNmy:` `./oyhhhhyyooo++so -ys `yNmy- .+hmmho:-.` ``` -s: yNm+` .smNd+. -`` /Nm: +dNd+` - yN+ `smNy. - dm oNNy` - hy -mNm. - +y oNNo - `y` sNN: - `: +NN: - ` .mNo - /mm` - /my` - .sy` - .+: - ` +${c1} ...:+oh/:::.. + ..-/oshhhhhh` `::::-. + .:/ohhhhhhhhhhhh` `-::::. + .+shhhhhhhhhhhhhhhhh` `.::-. + /`-:+shhhhhhhhhhhhhh` .-/+shh + / .:/ohhhhhhhhh` .:/ohhhhhhhh + / `-:+shhh` ..:+shhhhhhhhhhhh + / .:ohhhhhhhhhhhhhhhhhhh + / `hhhhhhhhhhhhhhhhhhhh + / `hhhhhhhhhhhhhhhhhhhh + / `hhhhhhhhhhhhhhhhhhhh + / `hhhhhhhhhhhhhhhhhhhh + / .+o+ `hhhhhhhhhhhhhhhhhhhh + / -hhhhh `hhhhhhhhhhhhhhhhhhhh + / ohhhhho `hhhhhhhhhhhhhhhhhhhh + /:::+`hhhhoos` `hhhhhhhhhhhhhhhhhs+` + `--/:` /: `hhhhhhhhhhhho/- + -/:. `hhhhhhs+:-` + ::::/ho/-` EOF ;; - "PostMarketOS"*) - set_colors 2 7 + "ARCHlabs"*) + set_colors 6 6 7 1 read -rd '' ascii_data <<'EOF' -${c1} ss - `hMMh` - .dMMMMd. - -NMMMMMMN- - /MMMMMMMMMN/ - hMMMMMMMMMMMo - y+`mMMmdNMMMMMMy - `dMM-.-:- .mMMMMMMh` - .mMMMMMMd` `dMMMMMMm. - :NMMMMMMy yMMMMMMN: - /MMMMMMMo oMMMmdmN/ - oMMMMMMM/ /MN.-/:-. - `yMMMMMMN- -:.NMMMMy` - `dMMMMMMM- -/////////////dMMMMMMd` - -mMMMMMMMMN+`sMMMMMMMMMMMMMMMMMMMMm- - :NMMMMMMMMMMM/ yMMMMMMMMMMMMMMMMMMMMN: -+MMMMMMMMMMMh.:mMMMMMMMMMMMMMMMMMMMMMMM+ +${c1} 'c' + 'kKk, + .dKKKx. + .oKXKXKd. + .l0XXXXKKo. + c0KXXXXKX0l. + :0XKKOxxOKX0l. + :OXKOc. .c0XX0l. + :OK0o. ${c4}...${c1}'dKKX0l. + :OX0c ${c4};xOx'${c1}'dKXX0l. + :0KKo.${c4}.o0XXKd'.${c1}lKXX0l. + c0XKd.${c4}.oKXXXXKd..${c1}oKKX0l. + .c0XKk;${c4}.l0K0OO0XKd..${c1}oKXXKo. + .l0XXXk:${c4},dKx,.'l0XKo.${c1}.kXXXKo. + .o0XXXX0d,${c4}:x; .oKKx'${c1}.dXKXXKd. + .oKXXXXKK0c.${c4};. :00c'${c1}cOXXXXXKd. + .dKXXXXXXXXk,${c4}. cKx'${c1}'xKXXXXXXKx' + 'xKXXXXK0kdl:. ${c4}.ok; ${c1}.cdk0KKXXXKx' + 'xKK0koc,.. ${c4}'c, ${c1} ..,cok0KKk, + ,xko:'. ${c4}.. ${c1} .':okx; + .,'. .',. EOF ;; - "Puppy"* | "Quirky Werewolf"* | "Precise Puppy"*) - set_colors 4 7 + *"XFerience"*) + set_colors 6 6 7 1 read -rd '' ascii_data <<'EOF' -${c1} `-/osyyyysosyhhhhhyys+- - -ohmNNmh+/hMMMMMMMMNNNNd+dMMMMNM+ - yMMMMNNmmddo/NMMMNNNNNNNNNo+NNNNNy -.NNNNNNmmmddds:MMNNNNNNNNNNNh:mNNN/ --NNNdyyyhdmmmd`dNNNNNmmmmNNmdd/os/ -.Nm+shddyooo+/smNNNNmmmmNh. :mmd. - NNNNy:` ./hmmmmmmmNNNN: hNMh - NMN- -++- +NNNNNNNNNNm+..-sMMMM- -.MMo oNNNNo hNNNNNNNNmhdNNNMMMMM+ -.MMs /NNNN/ dNmhs+:-` yMMMMMMMM+ - mMM+ .. `sNN+. hMMMMhhMMM- - +MMMmo:...:sNMMMMMms:` hMMMMm.hMMy - yMMMMMMMMMMMNdMMMMMM::/+o+//dMMd` - sMMMMMMMMMMN+:oyyo:sMMMNNMMMNy` - :mMMMMMMMMMMMmddNMMMMMMMMmh/ - /dMMMMMMMMMMMMMMMMMMNdy/` - .+hNMMMMMMMMMNmdhs/. - .:/+ooo+/:-. +${c1} ``--:::::::-.` + .-/+++ooooooooo+++:-` + `-/+oooooooooooooooooo++:. + -/+oooooo/+ooooooooo+/ooo++:` + `/+oo++oo. .+oooooo+.-: +:-o+- + `/+o/. -o. :oooooo+ ```:.+oo+- +`:+oo- -/` :oooooo+ .`-`+oooo/. +.+ooo+. .` `://///+-+..oooooo+:` +-+ooo:` ``.-+oooooo+/` +-+oo/` :+oooo/. +.+oo: ..-/. . -+oo+/` +`/++- -:::++::/. -+oo+- + ./o: `:///+- `./ooo+:` + .++- `` /-` -:/+oooo+:` + .:+/:`` `-:ooooooo++- + ./+o+//:...../+oooooooo++:` + `:/++ooooooooooooo++/-` + `.-//++++++//:-.` + `````` EOF ;; - "Qubes"*) - set_colors 4 5 7 6 + "ArchMerge"*) + set_colors 6 6 7 1 read -rd '' ascii_data <<'EOF' -${c1} `..--..` - `.----------.` - `..----------------..` - `.------------------------.`` - `..-------------....-------------..` -.::----------..`` ``..----------:+: -:////:----..` `..---:/ossso -:///////:` `/osssssso -:///////: /ssssssso -:///////: /ssssssso -:///////: /ssssssso -:///////: /ssssssso -:///////: /ssssssso -:////////-` .:sssssssso -:///////////-.` `-/osssssssssso -`//////////////:-```.:+ssssssssssssso- - .-://////////////sssssssssssssso/-` - `.:///////////sssssssssssssso:. - .-:///////ssssssssssssssssss/` - `.:////ssss+/+ssssssssssss. - `--//- `-/osssso/. +${c1} y: + sMN- + +MMMm` + /MMMMMd` + :NMMMMMMy + -NMMMMMMMMs + .NMMMMMMMMMM+ + .mMMMMMMMMMMMM+ + oNMMMMMMMMMMMMM+ + `+:-+NMMMMMMMMMMMM+ + .sNMNhNMMMMMMMMMMMM/ + `hho/sNMMMMMMMMMMMMMMM/ + `.`omMMmMMMMMMMMMMMMMMMM+ + .mMNdshMMMMd+::oNMMMMMMMMMo + .mMMMMMMMMM+ `yMMMMMMMMMs + .NMMMMMMMMM/ yMMMMMMMMMy + -NMMMMMMMMMh `mNMMMMMMMMd` + /NMMMNds+:.` `-/oymMMMm. + +Mmy/. `:smN: +/+. -o. EOF ;; - "Raspbian"*) - set_colors 2 1 + "Arch"*) + set_colors 6 6 7 1 read -rd '' ascii_data <<'EOF' -${c1} `.::///+:/-. --///+//-:`` - `+oooooooooooo: `+oooooooooooo: - /oooo++//ooooo: ooooo+//+ooooo. - `+ooooooo:-:oo- +o+::/ooooooo: - `:oooooooo+`` `.oooooooo+- - `:++ooo/. :+ooo+/.` - ${c2}...` `.----.` ``.. - .::::-``:::::::::.`-:::-` - -:::-` .:::::::-` `-:::- - `::. `.--.` `` `.---.``.::` - .::::::::` -::::::::` ` - .::` .:::::::::- `::::::::::``::. --:::` ::::::::::. ::::::::::.`:::- -:::: -::::::::. `-:::::::: :::: --::- .-:::-.``....``.-::-. -::- - .. `` .::::::::. `..`.. - -:::-` -::::::::::` .:::::` - :::::::` -::::::::::` :::::::. - .::::::: -::::::::. :::::::: - `-:::::` ..--.` ::::::. - `...` `...--..` `...` - .:::::::::: - `.-::::-` +${c1} -` + .o+` + `ooo/ + `+oooo: + `+oooooo: + -+oooooo+: + `/:-:++oooo+: + `/++++/+++++++: + `/++++++++++++++: + `/+++o${c2}oooooooo${c1}oooo/` +${c2} ${c1}./${c2}ooosssso++osssssso${c1}+` +${c2} .oossssso-````/ossssss+` + -osssssso. :ssssssso. + :osssssss/ osssso+++. + /ossssssss/ +ssssooo/- + `/ossssso+/:- -:/+osssso+- + `+sso+:-` `.-/+oso: + `++:. `-/+/ + .` `/ EOF ;; - "Red Star"* | "Redstar"*) - set_colors 1 7 3 + "Artix"*) + set_colors 6 4 2 7 read -rd '' ascii_data <<'EOF' -${c1} .. - .oK0l - :0KKKKd. - .xKO0KKKKd - ,Od' .d0000l - .c;. .'''... ..'. -.,:cloddxxxkkkkOOOOkkkkkkkkxxxxxxxxxkkkx: -;kOOOOOOOkxOkc'...',;;;;,,,'',;;:cllc:,. - .okkkkd,.lko .......',;:cllc:;,,'''''. - .cdo. :xd' cd:. ..';'',,,'',,;;;,'. - . .ddl.;doooc'..;oc;'..';::;,'. - coo;.oooolllllllcccc:'. . - .ool''lllllccccccc:::::;. - ;lll. .':cccc:::::::;;;;' - :lcc:'',..';::::;;;;;;;,,. - :cccc::::;...';;;;;,,,,,,. - ,::::::;;;,'. ..',,,,'''. - ........ ...... +${c1} d${c2}c. +${c1} x${c2}dc. +${c1} '.${c4}.${c1} d${c2}dlc. +${c1} c${c2}0d:${c1}o${c2}xllc; +${c1} :${c2}0ddlolc,lc, +${c1} :${c1}ko${c4}.${c1}:${c2}0ddollc..dlc. +${c1} ;${c1}K${c2}kxoOddollc' cllc. +${c1} ,${c1}K${c2}kkkxdddllc, ${c4}.${c2}lll: +${c1} ,${c1}X${c2}kkkddddlll;${c3}...';${c1}d${c2}llll${c3}dxk: +${c1} ,${c1}X${c2}kkkddddllll${c3}oxxxddo${c2}lll${c3}oooo, +${c3} xxk${c1}0${c2}kkkdddd${c1}o${c2}lll${c1}o${c3}ooooooolooooc;${c1}. +${c3} ddd${c2}kkk${c1}d${c2}ddd${c1}ol${c2}lc:${c3}:;,'.${c3}... .${c2}lll; +${c1} .${c3}xd${c1}x${c2}kk${c1}xd${c2}dl${c1}'cl:${c4}. ${c2}.llc, +${c1} .${c1}0${c2}kkkxddl${c4}. ${c2};'${c4}. ${c2};llc. +${c1} .${c1}K${c2}Okdcddl${c4}. ${c2}cllc${c4}. +${c1} 0${c2}Okd''dc. .cll; +${c1} k${c2}Okd' .llc, +${c1} d${c2}Od, 'lc. +${c1} :,${c4}. ${c2}... EOF ;; - "Redhat"* | "Red Hat"* | "rhel"*) - set_colors 1 7 3 + "Arya"*) + set_colors 2 1 read -rd '' ascii_data <<'EOF' -${c1} `.-..........` - `////////::.`-/. - -: ....-////////. - //:-::///////////` - `--::: `-://////////////: - //////- ``.-:///////// .` - `://////:-.` :///////::///:` - .-/////////:---/////////////: - .-://////////////////////. -${c2} yMN+`.-${c1}::///////////////-` -${c2} .-`:NMMNMs` `..-------..` - MN+/mMMMMMhoooyysshsss -MMM MMMMMMMMMMMMMMyyddMMM+ - MMMM MMMMMMMMMMMMMNdyNMMh` hyhMMM - MMMMMMMMMMMMMMMMyoNNNMMM+. MMMMMMMM - MMNMMMNNMMMMMNM+ mhsMNyyyyMNMMMMsMM +${c1} `oyyy/${c2}-yyyyyy+ +${c1} -syyyy/${c2}-yyyyyy+ +${c1} .syyyyy/${c2}-yyyyyy+ +${c1} :yyyyyy/${c2}-yyyyyy+ +${c1} `/ :yyyyyy/${c2}-yyyyyy+ +${c1} .+s :yyyyyy/${c2}-yyyyyy+ +${c1} .oys :yyyyyy/${c2}-yyyyyy+ +${c1} -oyys :yyyyyy/${c2}-yyyyyy+ +${c1} :syyys :yyyyyy/${c2}-yyyyyy+ +${c1} /syyyys :yyyyyy/${c2}-yyyyyy+ +${c1} +yyyyyys :yyyyyy/${c2}-yyyyyy+ +${c1} .oyyyyyyo. :yyyyyy/${c2}-yyyyyy+ --------- +${c1} .syyyyyy+` :yyyyyy/${c2}-yyyyy+-+syyyyyyyy +${c1} -syyyyyy/ :yyyyyy/${c2}-yyys:.syyyyyyyyyy +${c1}:syyyyyy/ :yyyyyy/${c2}-yyo.:syyyyyyyyyyy EOF ;; - "Refracted Devuan"*) - set_colors 8 7 + "Bitrig"*) + set_colors 2 7 read -rd '' ascii_data <<'EOF' -${c2} A - VW - VVW\\ - .yWWW\\ - ,;,,u,;yy;;v;uyyyyyyy ,WWWWW^ - *WWWWWWWWWWWWWWWW/ $VWWWWw , - ^*%WWWWWWVWWX $WWWW** ,yy - , "**WWW/' **' ,yy/WWW*` - &WWWWwy `*` <,ywWW%VWWW* - yWWWWWWWWWW* ., "**WW%W - ,&WWWWWM*"` ,y/ &WWWww ^* - XWWX*^ ,yWWWW09 .WWWWWWWWwy, - *` &WWWWWM WWWWWWWWWWWWWww, - (WWWWW` /#####WWW*********** - ^WWWW - VWW - Wh. - V/ +${c1} `hMMMMN+ + -MMo-dMd` + oMN- oMN` + yMd /NM: + .mMmyyhMMs + :NMMMhsmMh + +MNhNNoyMm- + hMd.-hMNMN: + mMmsssmMMMo + .MMdyyhNMMMd + oMN.`/dMddMN` + yMm/hNm+./MM/ +.dMMMmo.``.NMo +:NMMMNmmmmmMMh +/MN/-------oNN: +hMd. .dMh +sm/ /ms +EOF + ;; + + "BLAG"*) + set_colors 5 7 + read -rd '' ascii_data <<'EOF' +${c1} d + ,MK: + xMMMX: + .NMMMMMX; + lMMMMMMMM0clodkO0KXWW: + KMMMMMMMMMMMMMMMMMMX' + .;d0NMMMMMMMMMMMMMMMMMMK. + .;dONMMMMMMMMMMMMMMMMMMMMMMx +'dKMMMMMMMMMMMMMMMMMMMMMMMMl + .:xKWMMMMMMMMMMMMMMMMMMM0. + .:xNMMMMMMMMMMMMMMMMMK. + lMMMMMMMMMMMMMMMMMMK. + ,MMMMMMMMWkOXWMMMMMM0 + .NMMMMMNd. `':ldko + OMMMK: + oWk, + ;: EOF ;; - "Rosa"*) - set_colors 4 7 1 + "BlankOn"*) + set_colors 1 7 3 read -rd '' ascii_data <<'EOF' -${c1} ROSAROSAROSAROSAR - ROSA AROS - ROS SAROSAROSAROSAR AROS - RO ROSAROSAROSAROSAROSAR RO - ARO AROSAROSAROSARO AROS ROS - ARO ROSAROS OSAR ROSA ROS - RO AROSA ROSAROSAROSA ROSAR RO -RO ROSAR ROSAROSAROSAR R ROSARO RO -RO ROSA AROSAROSAROSA AR ROSARO AR -RO AROS ROSAROSAROSA ROS AROSARO AR -RO AROS ROSAROSARO ROSARO ROSARO AR -RO ROS AROSAROS ROSAROSA AROSAR AR -RO ROSA ROS ROSAROSAR ROSARO RO - RO ROS AROSAROSAROSA ROSARO AR - ARO ROSA ROSAROSAROS AROSAR ARO - ARO OROSA R ROSAROS ROS - RO AROSAROS AROSAROSAR RO - AROS AROSAROSAROSARO AROS - ROSA SARO - ROSAROSAROSAROSAR +${c2} `./ohdNMMMMNmho+.` ${c1} .+oo:` +${c2} -smMMMMMMMMMMMMMMMMmy-` ${c1}`yyyyy+ +${c2} `:dMMMMMMMMMMMMMMMMMMMMMMd/` ${c1}`yyyyys +${c2} .hMMMMMMMNmhso/++symNMMMMMMMh- ${c1}`yyyyys +${c2} -mMMMMMMms-` -omMMMMMMN-${c1}.yyyyys +${c2}.mMMMMMMy. .yMMMMMMm:${c1}yyyyys +${c2}sMMMMMMy `sMMMMMMh${c1}yyyyys +${c2}NMMMMMN: .NMMMMMN${c1}yyyyys +${c2}MMMMMMm. NMMMMMN${c1}yyyyys +${c2}hMMMMMM+ /MMMMMMN${c1}yyyyys +${c2}:NMMMMMN: :mMMMMMM+${c1}yyyyys +${c2} oMMMMMMNs- .sNMMMMMMs.${c1}yyyyys +${c2} +MMMMMMMNho:.` `.:ohNMMMMMMNo ${c1}`yyyyys +${c2} -hMMMMMMMMNNNmmNNNMMMMMMMMh- ${c1}`yyyyys +${c2} :yNMMMMMMMMMMMMMMMMMMNy:` ${c1}`yyyyys +${c2} .:sdNMMMMMMMMMMNds/. ${c1}`yyyyyo +${c2} `.:/++++/:.` ${c1}:oys+. EOF ;; - "sabotage"*) - set_colors 4 7 1 + "BSD") + set_colors 1 7 4 3 6 read -rd '' ascii_data <<'EOF' -${c2} .|'''.| | '||''|. ..|''|| - ||.. ' ||| || || .|' || - ''|||. | || ||'''|. || || -. '|| .''''|. || || '|. || -|'....|' .|. .||. .||...|' ''|...|' - -|''||''| | ..|'''.| '||''''| - || ||| .|' ' || . - || | || || .... ||''| - || .''''|. '|. || || - .||. .|. .||. ''|...'| .||.....| +${c1} , , + /( )` + \ \___ / | + /- _ `-/ ' + (${c2}/\/ \ ${c1}\ /\ + ${c2}/ / | ` ${c1}\ + ${c3}O O ${c2}) ${c1}/ | + ${c2}`-^--'${c1}`< ' + (_.) _ ) / + `.___/` / + `-----' / +${c4}<----. __ / __ \ +${c4}<----|====${c1}O)))${c4}==${c1}) \) /${c4}====| +<----' ${c1}`--' `.__,' \ + | | + \ / /\ + ${c5}______${c1}( (_ / \______/ + ${c5},' ,-----' | + `--{__________) EOF ;; - "Sabayon"*) - set_colors 4 7 1 + "BunsenLabs"*) + set_colors fg 7 read -rd '' ascii_data <<'EOF' -${c1} ........... - .. .. - .. .. - .. ${c2}o ${c1}.. - .. ${c2}:W' ${c1}.. - .. ${c2}.d. ${c1}.. -:. ${c2}.KNO ${c1}.: -:. ${c2}cNNN. ${c1}.: -: ${c2}dXXX, ${c1}: -: ${c2}. dXXX, .cd, ${c1}: -: ${c2}'kc .. dKKK. ,ll;:' ${c1}: -: ${c2}.xkkxc;..dkkkc',cxkkl ${c1}: -:. ${c2}.,cdddddddddddddo:. ${c1}.: - .. ${c2}:lllllll: ${c1}.. - .. ${c2}',,,,, ${c1}.. - .. .. - .. .. - ............... +${c1} `++ + -yMMs + `yMMMMN` + -NMMMMMMm. + :MMMMMMMMMN- + .NMMMMMMMMMMM/ + yMMMMMMMMMMMMM/ +`MMMMMMNMMMMMMMN. +-MMMMN+ /mMMMMMMy +-MMMm` `dMMMMMM +`MMN. .NMMMMM. + hMy yMMMMM` + -Mo +MMMMN + /o +MMMMs + +MMMN` + hMMM: + `NMM/ + +MN: + mh. + -/ EOF ;; - "SailfishOS"*) - set_colors 4 5 7 6 + "Calculate"*) + set_colors 7 3 read -rd '' ascii_data <<'EOF' -${c1} .+eWWW - .+ee+++eee e. - .ee++eeeeeeee +e. - .e++ee++eeeeeee+eee+e+ - ee.e+.ee+eee++eeeeee+ - W.+e.e+.e++ee+eee - W.+e.W.ee.W++ee' - +e.W W.e+.W.W+ - W.e.+e.W W W. - e e e +e.W.W - .W W W. - W.+e.W. - W++e.ee+. - ++ +ee++eeeee++. - ' '+++e 'ee. - ee - ee - e +${c1} ...... + ,,+++++++,. + .,,,....,,,${c2}+**+,,.${c1} + ............,${c2}++++,,,${c1} + ............... + ......,,,........ + .....+*#####+,,,*+. + .....,*###############,..,,,,,,.. + ......,*#################*..,,,,,..,,,.. + .,,....*####################+***+,,,,...,++, + .,,..,..*#####################*, + ,+,.+*..*#######################. + ,+,,+*+..,########################* +.,++++++. ..+##**###################+ +..... ..+##***#################*. + .,.*#*****##############*. + ..,,*********#####****+. + ${c2}.,++*****+++${c1}*****************${c2}+++++,.${c1} + ${c2},++++++**+++++${c1}***********${c2}+++++++++,${c1} + ${c2}.,,,,++++,.. .,,,,,.....,+++,.,,${c1} EOF ;; - "SalentOS"*) - set_colors 2 1 3 7 + "CentOS"*) + set_colors 3 2 4 5 7 read -rd '' ascii_data <<'EOF' -${c1} ``..`` - .-:+oshdNMMMMMMNdhyo+:-.` - -oydmMMMMMMMMMMMMMMMMMMMMMMMMMMNdhs/ -${c4} +hdddm${c1}NMMMMMMMMMMMMMMMMMMMMMMMMN${c4}mdddh+` -${c2}`MMMMMN${c4}mdddddm${c1}MMMMMMMMMMMM${c4}mdddddm${c3}NMMMMM- -${c2} mMMMMMMMMMMMN${c4}ddddhyyhhddd${c3}NMMMMMMMMMMMM` -${c2} dMMMMMMMMMMMMMMMMM${c4}oo${c3}MMMMMMMMMMMMMMMMMN` -${c2} yMMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMMd -${c2} +MMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMMy -${c2} :MMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMMo -${c2} .MMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMM/ -${c2} `NMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMM- -${c2} mMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMN` -${c2} hMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMm -${c2} /MMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMy -${c2} .+hMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMms: -${c2} `:smMMMMMMMMM${c4}hh${c3}MMMMMMMMMNh+. -${c2} .+hMMMMMM${c4}hh${c3}MMMMMMdo: -${c2} `:smMM${c4}yy${c3}MMNy/` - ${c2}.- ${c4}`${c3}:. +${c1} .. + .PLTJ. + <><><><> + ${c2}KKSSV' 4KKK ${c1}LJ${c4} KKKL.'VSSKK + ${c2}KKV' 4KKKKK ${c1}LJ${c4} KKKKAL 'VKK + ${c2}V' ' 'VKKKK ${c1}LJ${c4} KKKKV' ' 'V + ${c2}.4MA.' 'VKK ${c1}LJ${c4} KKV' '.4Mb. +${c4} . ${c2}KKKKKA.' 'V ${c1}LJ${c4} V' '.4KKKKK ${c3}. +${c4} .4D ${c2}KKKKKKKA.'' ${c1}LJ${c4} ''.4KKKKKKK ${c3}FA. +${c4} +${c4} 'VD ${c3}KKKKKKKK'.. ${c2}LJ ${c1}..'KKKKKKKK ${c3}FV +${c4} ' ${c3}VKKKKK'. .4 ${c2}LJ ${c1}K. .'KKKKKV ${c3}' + ${c3} 'VK'. .4KK ${c2}LJ ${c1}KKA. .'KV' + ${c3}A. . .4KKKK ${c2}LJ ${c1}KKKKA. . .4 + ${c3}KKA. 'KKKKK ${c2}LJ ${c1}KKKKK' .4KK + ${c3}KKSSA. VKKK ${c2}LJ ${c1}KKKV .4SSKK +${c2} <><><><> + 'MKKM' + '' EOF ;; - "Scientific"*) - set_colors 4 7 1 + "Chakra"*) + set_colors 4 5 7 6 read -rd '' ascii_data <<'EOF' -${c1} =/;;/- - +: // - /; /; - -X H. -.//;;;:;;-, X= :+ .-;:=;:;#;. -M- ,=;;;#:, ,:#;;:=, ,@ -:# :#.=/++++/=.$= #= - ,#; #/:+/;,,/++:+/ ;+. - ,+/. ,;@+, ,#H;, ,/+, - ;+;;/= @. ${c3}.H${c2}#${c3}#X ${c1}-X :///+; - ;+=;;;.@, ${c2}.X${c3}M${c2}@$. ${c1}=X.//;=#/. - ,;: :@#= =$H: .+#- - ,#= #;-///==///-// =#, -;+ :#-;;;:;;;;-X- +: -@- .-;;;;M- =M/;;;-. -X - :;;::;;-. #- :+ ,-;;-;:== - ,X H. - ;/ #= - // +; - '////' +${c1} _ _ _ "kkkkkkkk. + ,kkkkkkkk., 'kkkkkkkkk, + ,kkkkkkkkkkkk., 'kkkkkkkkk. + ,kkkkkkkkkkkkkkkk,'kkkkkkkk, + ,kkkkkkkkkkkkkkkkkkk'kkkkkkk. + "''"''',;::,,"''kkk''kkkkk; __ + ,kkkkkkkkkk, "k''kkkkk' ,kkkk + ,kkkkkkk' ., ' .: 'kkkk',kkkkkk + ,kkkkkkkk'.k' , ,kkkk;kkkkkkkkk + ,kkkkkkkk';kk 'k "'k',kkkkkkkkkkkk +.kkkkkkkkk.kkkk.'kkkkkkkkkkkkkkkkkk' +;kkkkkkkk''kkkkkk;'kkkkkkkkkkkkk'' +'kkkkkkk; 'kkkkkkkk.,""''"''"" + ''kkkk; 'kkkkkkkkkk., + ';' 'kkkkkkkkkkkk., + ';kkkkkkkkkk' + ';kkkkkk' + "''" EOF ;; - "Siduction"*) - set_colors 4 4 + "ChaletOS"*) + set_colors 4 7 1 read -rd '' ascii_data <<'EOF' -${c1} _aass, - jQh: =$w - QWmwawQW - )$QQQQ@( .. - _a_a. ~??^ syDY?Sa, - _mW>-<$c jWmi imm. - ]QQwayQE 4QQmgwmQQ` - ?WWQWP' -9QQQQQ@'._aas, - _a%is. .adYYs,. -"?!` aQB*~^3$c -_Qh;.nm .QWc. {QL ]QQp;..vmQ/ -"QQmmQ@ -QQQggmQP ]QQWmggmQQ( - -???" "$WQQQY` __, ?QQQQQQW! - _yZ!?q, - .yWY!!Sw, "???^ - .QQa_=qQ mQm>..vmm - $QQWQQP $QQQgmQQ@ - "???" _aa, -9WWQQWY` - _mB>~)$a -~~ - mQms_vmQ. - ]WQQQQQP - -?T??" +${c1} `.//+osso+/:`` + `/sdNNmhyssssydmNNdo:` + :hNmy+-` .-+hNNs- + /mMh/` `+:` `+dMd: + .hMd- -sNNMNo. /yyy /mMs` + -NM+ `/dMd/--omNh::dMM `yMd` + .NN+ .sNNs:/dMNy:/hNmo/s yMd` + hMs `/hNd+-smMMMMMMd+:omNy- `dMo +:NM. .omMy:/hNMMMMMMMMMMNy:/hMd+` :Md` +/Md` `sm+.omMMMMMMMMMMMMMMMMd/-sm+ .MN: +/Md` MMMMMMMMMMMMMMMMMMMN .MN: +:NN. MMMMMMm....--NMMMMMN -Mm. +`dMo MMMMMMd mMMMMMN hMs + -MN: MMMMMMd mMMMMMN oMm` + :NM: MMMMMMd mMMMMMN +Mm- + -mMy. mmmmmmh dmmmmmh -hMh. + oNNs- :yMm/ + .+mMdo:` `:smMd/` + -ohNNmhsoo++osshmNNh+. + `./+syyhhyys+:`` EOF ;; - "Slackware"*) - set_colors 4 7 1 + "Chapeau"*) + set_colors 2 7 read -rd '' ascii_data <<'EOF' -${c1} ::::::: - ::::::::::::::::::: - ::::::::::::::::::::::::: - ::::::::${c2}cllcccccllllllll${c1}:::::: - :::::::::${c2}lc dc${c1}::::::: - ::::::::${c2}cl clllccllll oc${c1}::::::::: - :::::::::${c2}o lc${c1}::::::::${c2}co oc${c1}:::::::::: - ::::::::::${c2}o cccclc${c1}:::::${c2}clcc${c1}:::::::::::: - :::::::::::${c2}lc cclccclc${c1}::::::::::::: -::::::::::::::${c2}lcclcc lc${c1}:::::::::::: -::::::::::${c2}cclcc${c1}:::::${c2}lccclc oc${c1}::::::::::: -::::::::::${c2}o l${c1}::::::::::${c2}l lc${c1}::::::::::: - :::::${c2}cll${c1}:${c2}o clcllcccll o${c1}::::::::::: - :::::${c2}occ${c1}:${c2}o clc${c1}::::::::::: - ::::${c2}ocl${c1}:${c2}ccslclccclclccclclc${c1}::::::::::::: - :::${c2}oclcccccccccccccllllllllllllll${c1}::::: - ::${c2}lcc1lcccccccccccccccccccccccco${c1}:::: - :::::::::::::::::::::::::::::::: - :::::::::::::::::::::::::::: - :::::::::::::::::::::: - :::::::::::: +${c1} .-/-. + ////////. + ////////${c2}y+${c1}//. + ////////${c2}mMN${c1}/////. + ////////${c2}mMN+${c1}////////. + ////////////////////////. + /////////+${c2}shhddhyo${c1}+////////. + ////////${c2}ymMNmdhhdmNNdo${c1}///////. +///////+${c2}mMms${c1}////////${c2}hNMh${c1}///////. +///////${c2}NMm+${c1}//////////${c2}sMMh${c1}/////// +//////${c2}oMMNmmmmmmmmmmmmMMm${c1}/////// +//////${c2}+MMmssssssssssssss+${c1}/////// +`//////${c2}yMMy${c1}//////////////////// + `//////${c2}smMNhso++oydNm${c1}//////// + `///////${c2}ohmNMMMNNdy+${c1}/////// + `//////////${c2}++${c1}////////// + `////////////////. + -////////- EOF ;; - "SliTaz"*) - set_colors 3 3 + "Chrom"*) + set_colors 2 1 3 4 7 read -rd '' ascii_data <<'EOF' -${c1} @ @( @ - @@ @@ @ @/ - @@ @@ @@ @@ - @@ %@@ @@ @@ - @@ %@@@ @@@@@. @@@@ @@ - @@@ @@@@ @@@@@@@ &@@@ @@@ - @@@@@@@ %@@@@@@@@@@@@ &@@@% @@@@@@@/ - ,@@@@@@@@@@@@@@@@@@@@@@@@@ - .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/ -@@@@@@. @@@@@@@@@@@@@@@@@@@@@ /@@@@@@ -@@ @@@@@ @@@@@@@@@@@@, @@@@@ @@@ -@@ @@@@. @@@@@@@@@@@@@% #@@@@ @@. -@@ ,@@ @@@@@@@@@@@@@ @@@ @@ -@ @@. @@@@@@@@@@@@@ @@@ *@ -@ @@ @@@@@@@@@@@@ @@ @ - @ @@@@@@@@@. #@ - @ ,@@@@@ @ +${c2} .,:loool:,. + .,coooooooooooooc,. + .,lllllllllllllllllllll,. + ;ccccccccccccccccccccccccc; +${c1} '${c2}ccccccccccccccccccccccccccccc. +${c1} ,oo${c2}c::::::::okO${c5}000${c3}0OOkkkkkkkkkkk: +${c1}.ooool${c2};;;;:x${c5}K0${c4}kxxxxxk${c5}0X${c3}K0000000000. +${c1}:oooool${c2};,;O${c5}K${c4}ddddddddddd${c5}KX${c3}000000000d +${c1}lllllool${c2};l${c5}N${c4}dllllllllllld${c5}N${c3}K000000000 +${c1}lllllllll${c2}o${c5}M${c4}dccccccccccco${c5}W${c3}K000000000 +${c1};cllllllllX${c5}X${c4}c:::::::::c${c5}0X${c3}000000000d +${c1}.ccccllllllO${c5}Nk${c4}c;,,,;cx${c5}KK${c3}0000000000. +${c1} .cccccclllllxOO${c5}OOO${c1}Okx${c3}O0000000000; +${c1} .:ccccccccllllllllo${c3}O0000000OOO, +${c1} ,:ccccccccclllcd${c3}0000OOOOOOl. +${c1} '::ccccccccc${c3}dOOOOOOOkx:. +${c1} ..,::cccc${c3}xOOOkkko;. +${c1} ..,:${c3}dOkxl:. EOF ;; - "SmartOS"*) - set_colors 6 7 + "Clover"*) + set_colors 2 6 read -rd '' ascii_data <<'EOF' -${c1}yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy -yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy -yyyys oyyyyyyyyyyyyyyyy -yyyys yyyyyyyyy oyyyyyyyyyyyyyyyy -yyyys yyyyyyyyy oyyyyyyyyyyyyyyyy -yyyys yyyyyyyyy oyyyyyyyyyyyyyyyy -yyyys yyyyyyyyy oyyyyyyyyyyyyyyyy -yyyys yyyyyyyyyyyyyyyyyyyyyyyyyyyy -yyyyy syyyy -yyyyyyyyyyyyyyyyyyyyyyyyyyyy syyyy -yyyyyyyyyyyyyyyy syyyyyyyyy syyyy -yyyyyyyyyyyyyyyy oyyyyyyyyy syyyy -yyyyyyyyyyyyyyyy oyyyyyyyyy syyyy -yyyyyyyyyyyyyyyy syyyyyyyyy syyyy -yyyyyyyyyyyyyyyy yyyyy -yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy -yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy +${c1} `omo``omo` + `oNMMMNNMMMNo` + `oNMMMMMMMMMMMMNo` + oNMMMMMMMMMMMMMMMMNo + `sNMMMMMMMMMMMMMMNs` + `omo` `sNMMMMMMMMMMNs` `omo` + `oNMMMNo` `sNMMMMMMNs` `oNMMMNo` + `oNMMMMMMMNo` `oNMMNs` `oNMMMMMMMNo` +oNMMMMMMMMMMMNo` `sy` `oNMMMMMMMMMMMNo +`sNMMMMMMMMMMMMNo.${c2}oNNs${c1}.oNMMMMMMMMMMMMNs` +`oNMMMMMMMMMMMMNs.${c2}oNNs${c1}.oNMMMMMMMMMMMMNo` +oNMMMMMMMMMMMNs` `sy` `oNMMMMMMMMMMMNo + `oNMMMMMMMNs` `oNMMNo` `oNMMMMMMMNs` + `oNMMMNs` `sNMMMMMMNs` `oNMMMNs` + `oNs` `sNMMMMMMMMMMNs` `oNs` + `sNMMMMMMMMMMMMMMNs` + +NMMMMMMMMMMMMMMMMNo + `oNMMMMMMMMMMMMNo` + `oNMMMNNMMMNs` + `omo``oNs` EOF ;; - "Solus"*) + "Container Linux by CoreOS"*) set_colors 4 7 1 read -rd '' ascii_data <<'EOF' -${c2} -``````````` - `-+/------------.` - .---:mNo---------------. - .-----yMMMy:---------------. - `------oMMMMMm/----------------` - .------/MMMMMMMN+----------------. - .------/NMMMMMMMMm-+/--------------. -`------/NMMMMMMMMMN-:mh/-------------` -.-----/NMMMMMMMMMMM:-+MMd//oso/:-----. ------/NMMMMMMMMMMMM+--mMMMh::smMmyo:-- -----+NMMMMMMMMMMMMMo--yMMMMNo-:yMMMMd/. -.--oMMMMMMMMMMMMMMMy--yMMMMMMh:-yMMMy-` -`-sMMMMMMMMMMMMMMMMh--dMMMMMMMd:/Ny+y. -`-/+osyhhdmmNNMMMMMm-/MMMMMMMmh+/ohm+ - .------------:://+-/++++++${c1}oshddys: - -hhhhyyyyyyyyyyyhhhhddddhysssso- - `:ossssssyysssssssssssssssso:` - `:+ssssssssssssssssssss+- - `-/+ssssssssssso+/-` - `.-----..` +${c1} ..... + .';:cccccccc:;'. + ':ccccclc${c3}lllllllll${c1}cc:. + .;cccccccc${c3}lllllllllllllll${c1}c, + ;clllccccc${c3}llllllllllllllllll${c1}c, + .cllclccccc${c3}lllll${c2}lll${c3}llllllllllll${c1}c: + ccclclcccc${c3}cllll${c2}kWMMNKk${c3}llllllllll${c1}c: + :ccclclcccc${c3}llll${c2}oWMMMMMMWO${c3}lllllllll${c1}c, +.ccllllllccc${c3}clll${c2}OMMMMMMMMM0${c3}lllllllll${c1}c +.lllllclcccc${c3}llll${c2}KMMMMMMMMMMo${c3}llllllll${c1}c. +.lllllllcccc${c3}clll${c2}KMMMMMMMMN0${c3}lllllllll${c1}c. +.cclllllcccc${c3}lllld${c2}xkkxxdo${c3}llllllllllc${c1}lc + :cccllllllcccc${c3}lllccllllcclccc${c1}cccccc; + .ccclllllllcccccccc${c3}lll${c1}ccccclccccccc + .cllllllllllclcccclccclccllllcllc + :cllllllllccclcllllllllllllcc; + .cccccccccccccclcccccccccc:. + .;cccclccccccllllllccc,. + .';ccccclllccc:;.. + ..... EOF ;; - "Source Mage"*) - set_colors 4 7 1 + "crux_small") + set_colors 4 5 7 6 read -rd '' ascii_data <<'EOF' -${c2} :ymNMNho. -.+sdmNMMMMMMMMMMy` -.-::/yMMMMMMMMMMMm- - sMMMMMMMMMMMm/ - /NMMMMMMMMMMMMMm: - .MMMMMMMMMMMMMMMMM: - `MMMMMMMMMMMMMMMMMN. - NMMMMMMMMMMMMMMMMMd - mMMMMMMMMMMMMMMMMMMo - hhMMMMMMMMMMMMMMMMMM. - .`/MMMMMMMMMMMMMMMMMs - :mMMMMMMMMMMMMMMMN` - `sMMMMMMMMMMMMMMM+ - /NMMMMMMMMMMMMMN` - oMMMMMMMMMMMMM+ - ./sd.-hMMMMMMMMmmN` - ./+oyyyh- `MMMMMMMMMmNh - sMMMMMMMMMmmo - `NMMMMMMMMMd: - -dMMMMMMMMMo - -shmNMMms. +${c1} ___ + (${c3}.· ${c1}| + (${c2}<> ${c1}| + / ${c3}__ ${c1}\\ + ( ${c3}/ \\ ${c1}/| +${c2}_${c1}/\\ ${c3}__)${c1}/${c2}_${c1}) +${c2}\/${c1}-____${c2}\/ +EOF + ;; + + "CRUX"*) + set_colors 4 5 7 6 + read -rd '' ascii_data <<'EOF' +${c1} odddd + oddxkkkxxdoo + ddcoddxxxdoool + xdclodod olol + xoc xdd olol + xdc ${c2}k00${c1}Okdlol + xxd${c2}kOKKKOkd${c1}ldd + xdco${c2}xOkdlo${c1}dldd + ddc:cl${c2}lll${c1}oooodo + odxxdd${c3}xkO000kx${c1}ooxdo + oxdd${c3}x0NMMMMMMWW0od${c1}kkxo + oooxd${c3}0WMMMMMMMMMW0o${c1}dxkx +docldkXW${c3}MMMMMMMWWN${c1}Odolco +xx${c2}dx${c1}kxxOKN${c3}WMMWN${c1}0xdoxo::c +${c2}xOkkO${c1}0oo${c3}odOW${c2}WW${c1}XkdodOxc:l +${c2}dkkkxkkk${c3}OKX${c2}NNNX0Oxx${c1}xc:cd +${c2} odxxdx${c3}xllod${c2}ddooxx${c1}dc:ldo +${c2} lodd${c1}dolccc${c2}ccox${c1}xoloo EOF ;; - "Sparky"*) - set_colors 1 7 + "debian_small") + set_colors 1 7 3 read -rd '' ascii_data <<'EOF' -${c1} - . `-:-` - .o` .-///-` - `oo` .:/++:. - os+` -/+++:` ``.........``` - /ys+`./+++/-.-::::::----......`` - `syyo`++o+--::::-::/+++/-`` - -yyy+.+o+`:/:-:sdmmmmmmmmdy+-` -::-` :yyy/-oo.-+/`ymho++++++oyhdmdy/` -`/yy+-`.syyo`+o..o--h..osyhhddhs+//osyy/` - -ydhs+-oyy/.+o.-: ` ` :/::+ydhy+```-os- - .sdddy::syo--/:. `.:dy+-ohhho ./: - :yddds/:+oo+//:-`- /+ +hy+.shhy: `` - `:ydmmdysooooooo-.ss`/yss--oyyo - `./ossyyyyo+:-/oo:.osso- .oys - ``..-------::////.-oooo/ :so - `...----::::::::--.`/oooo: .o: - ``````` ++o+:` `:` - ./+/-` ` - `-:-. - `` + ${c1}_____ + / __ \\ +| / | +| \\___- +-_ + --_ EOF ;; - "SteamOS"*) - set_colors 5 7 + "Debian"*) + set_colors 1 7 3 read -rd '' ascii_data <<'EOF' -${c1} .,,,,. - .,'onNMMMMMNNnn',. - .'oNMANKMMMMMMMMMMMNNn'. - .'ANMMMMMMMXKNNWWWPFFWNNMNn. - ;NNMMMMMMMMMMNWW'' ,.., 'WMMM, - ;NMMMMV+##+VNWWW' .+;'':+, 'WMW, -,VNNWP+${c2}######${c1}+WW, ${c2}+: ${c1}:+, +MMM, -'${c2}+#############, +. ,+' ${c1}+NMMM -${c2} '*#########*' '*,,*' ${c1}.+NMMMM. -${c2} `'*###*' ,.,;###${c1}+WNM, -${c2} .,;;, .;##########${c1}+W -${c2},',. '; ,+##############' - '###+. :,. .,; ,###############' - '####.. `'' .,###############' - '#####+++################' - '*##################*' - ''*##########*'' - '''''' +${c2} _,met$$$$$gg. + ,g$$$$$$$$$$$$$$$P. + ,g$$P" """Y$$.". + ,$$P' `$$$. +',$$P ,ggs. `$$b: +`d$$' ,$P"' ${c1}.${c2} $$$ + $$P d$' ${c1},${c2} $$P + $$: $$. ${c1}-${c2} ,d$$' + $$; Y$b._ _,d$P' + Y$$. ${c1}`.${c2}`"Y$$$$P"' +${c2} `$$b ${c1}"-.__ +${c2} `Y$$ + `Y$$. + `$$b. + `Y$$b. + `"Y$b._ + `""" EOF ;; - "SunOS" | "Solaris") - set_colors 3 7 + "Deepin"*) + set_colors 2 7 read -rd '' ascii_data <<'EOF' -${c1} `- ` - `-- `+- .: - .+: `++: -/+- . - `.::` -++/``:::`./+/ `.-/. - `++/-`.` ` /++:` - `` ./:` .: `..`.- -``./+/:- -+++:- - -/+` :. +${c1} ............ + .';;;;;. .,;,. + .,;;;;;;;. ';;;;;;;. + .;::::::::' .,::;;,''''',. + ,'.:::::::: .;;'. '; + ;' 'cccccc, ,' :: '.. .: + ,, :ccccc. ;: .c, '' :. ,; +.l. cllll' ., .lc :; .l' l. +.c :lllc ;cl: .l' .ll. :' +.l 'looc. . ,o: 'oo' c, +.o. .:ool::coc' .ooo' o. + :: ..... .;dddo ;c + l:... .';lddddo. ,o + lxxxxxdoolllodxxxxxxxxxc :l + ,dxxxxxxxxxxxxxxxxxxl. 'o, + ,dkkkkkkkkkkkkko;. .;o; + .;okkkkkdl;. .,cl:. + .,:cccccccc:,. EOF ;; - "openSUSE Tumbleweed"*) + "DesaOS") set_colors 2 7 read -rd '' ascii_data <<'EOF' -${c2} ...... - .,cdxxxoc,. .:kKMMMNWMMMNk:. - cKMMN0OOOKWMMXo. ; ;0MWk:. .:OMMk. - ;WMK;. .lKMMNM, :NMK, .OMW; - cMW; 'WMMMN ,XMK, oMM' -.MMc ..;l. xMN: KM0 -'MM. 'NMO oMM -.MM, .kMMl xMN - KM0 .kMM0. .dl:,.. .WMd - .XM0. ,OMMK, OMMMK. .XMK - oWMO:. .;xNMMk, NNNMKl. .xWMx - :ONMMNXMMMKx; . ,xNMWKkxllox0NMWk, - ..... .:dOOXXKOxl, +${c1}███████████████████████ +███████████████████████ +███████████████████████ +███████████████████████ +████████ ███████ +████████ ███████ +████████ ███████ +████████ ███████ +████████ ███████ +████████ ███████ +████████ ███████ +██████████████████████████████ +██████████████████████████████ +████████████████████████ +████████████████████████ +████████████████████████ EOF ;; - "openSUSE"* | "open SUSE"* | "SUSE"*) - set_colors 2 7 + "Devuan"*) + set_colors 5 7 read -rd '' ascii_data <<'EOF' -${c2} .;ldkO0000Okdl;. - .;d00xl:^''''''^:ok00d;. - .d00l' 'o00d. - .d0Kd'${c1} Okxol:;,. ${c2}:O0d. - .OK${c1}KKK0kOKKKKKKKKKKOxo:, ${c2}lKO. - ,0K${c1}KKKKKKKKKKKKKKK0P^${c2},,,${c1}^dx:${c2} ;00, -.OK${c1}KKKKKKKKKKKKKKKk'${c2}.oOPPb.${c1}'0k.${c2} cKO. -:KK${c1}KKKKKKKKKKKKKKK: ${c2}kKx..dd ${c1}lKd${c2} 'OK: -dKK${c1}KKKKKKKKKOx0KKKd ${c2}^0KKKO' ${c1}kKKc${c2} dKd -dKK${c1}KKKKKKKKKK;.;oOKx,..${c2}^${c1}..;kKKK0.${c2} dKd -:KK${c1}KKKKKKKKKK0o;...^cdxxOK0O/^^' ${c2}.0K: - kKK${c1}KKKKKKKKKKKKK0x;,,......,;od ${c2}lKk - '0K${c1}KKKKKKKKKKKKKKKKKKKK00KKOo^ ${c2}c00' - 'kK${c1}KKOxddxkOO00000Okxoc;'' ${c2}.dKk' - l0Ko. .c00l' - 'l0Kk:. .;xK0l' - 'lkK0xl:;,,,,;:ldO0kl' - '^:ldxkkkkxdl:^' +${c1} ..,,;;;::;,.. + `':ddd;:,. + `'dPPd:,. + `:b$$b`. + 'P$$$d` + .$$$$$` + ;$$$$$P + .:P$$$$$$` + .,:b$$$$$$$;' + .,:dP$$$$$$$$b:' + .,:;db$$$$$$$$$$Pd'` + ,db$$$$$$$$$$$$$$b:'` +:$$$$$$$$$$$$b:'` + `$$$$$bd:''` + `'''` EOF ;; - "SwagArch"*) - set_colors 4 7 1 + "DracOS"*) + set_colors 1 7 3 read -rd '' ascii_data <<'EOF' -${c2} .;ldkOKXXNNNNXXK0Oxoc,. - ,lkXMMNK0OkkxkkOKWMMMMMMMMMM; - 'K0xo ..,;:c:. `'lKMMMMM0 - .lONMMMMMM' `lNMk' -${c2} ;WMMMMMMMMMO. ${c1}....::... -${c2} OMMMMMMMMMMMMKl. ${c1}.,;;;;;ccccccc, -${c2} `0MMMMMMMMMMMMMM0: ${c1}.. .ccccccc. -${c2} 'kWMMMMMMMMMMMMMNo. ${c1}.,:' .ccccccc. -${c2} `c0MMMMMMMMMMMMMN,${c1},:c; :cccccc: -${c2} ckl. `lXMMMMMMMMMX${c1}occcc:.. ;ccccccc. -${c2}dMMMMXd, `OMMMMMMWk${c1}ccc;:''` ,ccccccc: -${c2}XMMMMMMMWKkxxOWMMMMMNo${c1}ccc; .cccccccc. -${c2} `':ldxO0KXXXXXK0Okdo${c1}cccc. :cccccccc. - :ccc:' `cccccccc:, - '' +${c1} `-:/- + -os: + -os/` + :sy+-` + `/yyyy+. + `+yyyyo- + `/yyyys: +`:osssoooo++- +yyyyyy/` + ./yyyyyyo yo`:syyyy+. + -oyyy+ +- :yyyyyo- + `:sy: `. `/yyyyys: + ./o/.` .oyyso+oo:` + :+oo+//::::///:-.` `.` EOF ;; - "Tails"*) - set_colors 5 7 + "dragonfly_old"*) + set_colors 1 7 3 read -rd '' ascii_data <<'EOF' -${c1} `` - ./yhNh -syy/Nshh `:o/ -N:dsNshh █ `ohNMMd -N-/+Nshh `yMMMMd -N-yhMshh yMMMMd -N-s:hshh █ yMMMMd so//. -N-oyNsyh yMMMMd d Mms. -N:hohhhd:. yMMMMd syMMM+ -Nsyh+-..+y+- yMMMMd :mMM+ -+hy- -ss/`yMMMM `+d+ - :sy/. ./yNMMMMm `` - .+ys- `:+hNMMMMMMy/` - `hNmmMMMMMMMMMMMMdo. - dMMMMMMMMMMMMMMMMMNh: - +hMMMMMMMMMMMMMMMMMmy. - -oNMMMMMMMMMMmy+.` - `:yNMMMds/.` - .//` + ${c1} | + .-. + ${c3} ()${c1}I${c3}() + ${c1} "==.__:-:__.==" + "==.__/~|~\__.==" + "==._( Y )_.==" + ${c2}.-'~~""~=--...,__${c1}\/|\/${c2}__,...--=~""~~'-. +( ..=${c1}\\=${c1}/${c2}=.. ) + `'-. ,.-"`;${c1}/=\\${c2};"-.,_ .-'` + `~"-=-~` .-~` ${c1}|=|${c2} `~-. `~-=-"~` + .-~` /${c1}|=|${c2}\ `~-. + .~` / ${c1}|=|${c2} \ `~. + .-~` .' ${c1}|=|${c2} `. `~-. + (` _,.-="` ${c1} |=|${c2} `"=-.,_ `) + `~"~"` ${c1} |=|${c2} `"~"~` + ${c1} /=\\ + \\=/ + ^ EOF ;; - "Trisquel"*) - set_colors 4 6 + "dragonfly_small"*) + set_colors 1 7 3 read -rd '' ascii_data <<'EOF' -${c1} ▄▄▄▄▄▄ - ▄█████████▄ - ▄▄▄▄▄▄ ████▀ ▀████ - ▄██████████▄ ████▀ ▄▄ ▀███ - ▄███▀▀ ▀▀████ ███▄ ▄█ ███ -▄███ ▄▄▄ ████▄ ▀██████ ▄███ -███ █▀▀██▄ █████▄ ▀▀ ▄████ -▀███ ███ ███████▄▄ ▄▄██████ -${c1} ▀███▄ ▄███ █████████████${c2}████▀ -${c1} ▀█████████ ███████${c2}███▀▀▀ - ▀▀███▀▀ ██████▀▀ - ██████▀ ▄▄▄▄ - █████▀ ████████ - █████ ███▀ ▀███ - ████▄ ██▄▄▄ ███ - █████▄ ▀▀ ▄██ - ██████▄▄▄████ - ▀▀█████▀▀ +${c2}(\${c3}"${c2}/) +${c2}(/${c1}|${c2}\) +${c1} | + | EOF ;; - "Ubuntu-Budgie"*) - set_colors 4 7 1 + "DragonFly"*) + set_colors 1 7 3 read -rd '' ascii_data <<'EOF' -${c2} ./oydmMMMMMMmdyo/. - :smMMMMMMMMMMMhs+:++yhs: - `omMMMMMMMMMMMN+` `odo` - /NMMMMMMMMMMMMN- `sN/ - `hMMMMmhhmMMMMMMh sMh` - .mMmo- /yMMMMm` `MMm. - mN/ yMMMMMMMd- MMMm -oN- oMMMMMMMMMms+//+o+: :MMMMo -m/ +NMMMMMMMMMMMMMMMMm. :NMMMMm -M` .NMMMMMMMMMMMMMMMNodMMMMMMM -M- sMMMMMMMMMMMMMMMMMMMMMMMMM -mm` mMMMMMMMMMNdhhdNMMMMMMMMMm -oMm/ .dMMMMMMMMh: :dMMMMMMMo - mMMNyo/:/sdMMMMMMMMM+ sMMMMMm - .mMMMMMMMMMMMMMMMMMs `NMMMm. - `hMMMMMMMMMMM.oo+. `MMMh` - /NMMMMMMMMMo sMN/ - `omMMMMMMMMy. :dmo` - :smMMMMMMMh+-` `.:ohs: - ./oydmMMMMMMdhyo/. +${c2},--, ${c1}| ${c2},--, +${c2}| `-, ${c1},^, ${c2},-' | +${c2} `, `-, ${c3}(/ \) ${c2},-' ,' +${c2} `-, `-,${c1}/ \${c2},-' ,-' +${c2} `------${c1}( )${c2}------' +${c2} ,----------${c1}( )${c2}----------, +${c2} | _,-${c1}( )${c2}-,_ | +${c2} `-,__,-' ${c1}\ /${c2} `-,__,-' +${c1} | | + | | + | | + | | + | | + | | + `|' EOF ;; - "Ubuntu-GNOME"*) - set_colors 4 5 7 6 + "Elementary"*) + set_colors 4 7 1 read -rd '' ascii_data <<'EOF' -${c3} ./o. - .oooooooo - .oooo```soooo - .oooo` `soooo - .ooo` ${c4}.o.${c3} `\/ooo. - :ooo ${c4}:oooo.${c3} `\/ooo. - sooo ${c4}`ooooo${c3} \/oooo - \/ooo ${c4}`soooo${c3} `ooooo - `soooo ${c4}`\/ooo${c3} `soooo -${c4}./oo ${c3}`\/ooo ${c4}`/oooo.${c3} `/ooo -${c4}`\/ooo. ${c3}`/oooo. ${c4}`/oooo.${c3} `` -${c4} `\/ooo. ${c3}/oooo ${c4}/ooo` -${c4} `ooooo ${c3}`` ${c4}.oooo -${c4} `soooo. .oooo` - `\/oooooooooo` - ``\/oo`` +${c2} eeeeeeeeeeeeeeeee + eeeeeeeeeeeeeeeeeeeeeee + eeeee eeeeeeeeeeee eeeee + eeee eeeee eee eeee + eeee eeee eee eeee +eee eee eee eee +eee eee eee eee +ee eee eeee eeee +ee eee eeeee eeeeee +ee eee eeeee eeeee ee +eee eeee eeeeee eeeee eee +eee eeeeeeeeee eeeeee eee + eeeeeeeeeeeeeeeeeeeeeeee eeeee + eeeeeeee eeeeeeeeeeee eeee + eeeee eeeee + eeeeeee eeeeeee + eeeeeeeeeeeeeeeee EOF ;; - "Ubuntu-MATE"*) - set_colors 2 7 + "Endless"*) + set_colors 1 7 read -rd '' ascii_data <<'EOF' -${c1} `:+shmNNMMNNmhs+:` - .odMMMMMMMMMMMMMMMMMMdo. - /dMMMMMMMMMMMMMMMmMMMMMMMMd/ - :mMMMMMMMMMMMMNNNNM/`/yNMMMMMMm: - `yMMMMMMMMMms:..-::oM: -omMMMMMy` - `dMMMMMMMMy-.odNMMMMMM: -odMMMMMMd` - hMMMMMMMm-.hMMy/....+M:`/yNm+mMMMMMMMh -/MMMMNmMN-:NMy`-yNMMMMMmNyyMN:`dMMMMMMM/ -hMMMMm -odMMh`sMMMMMMMMMMs sMN..MMMMMMMh -NMMMMm `/yNMMMMMMMMMMMM: MM+ mMMMMMMN -NMMMMm `/yNMMMMMMMMMMMM: MM+ mMMMMMMN -hMMMMm -odMMh sMMMMMMMMMMs oMN..MMMMMMMh -/MMMMNNMN-:NMy`-yNMMMMMNNsyMN:`dMMMMMMM/ - hMMMMMMMm-.hMMy/....+M:.+hNd+mMMMMMMMh - `dMMMMMMMMy-.odNMMMMMM: :smMMMMMMd` - yMMMMMMMMMms/..-::oM: .+dMMMMMy - :mMMMMMMMMMMMMNNNNM: :smMMMMMMm: - /dMMMMMMMMMMMMMMMdNMMMMMMMd/ - .odMMMMMMMMMMMMMMMMMMdo. - `:+shmNNMMNNmhs+:` +${c1} `:+yhmNMMMMNmhy+:` + -odMMNhso//////oshNMMdo- + /dMMh+. .+hMMd/ + /mMNo` `oNMm: + `yMMo` `oMMy` + `dMN- -NMd` + hMN. .NMh +/MM/ -os` /MM/ +dMm `smNmmhs/- `:sNMd+ `` mMd +MMy oMd--:+yMMMMMNo.:ohmMMMNy` yMM +MMy -NNyyhmMNh+oNMMMMMy:. dMo yMM +dMm `/++/-``/yNNh+/sdNMNddMm- mMd +/MM/ `dNy: `-::- /MM/ + hMN. .NMh + `dMN- -NMd` + `yMMo` `oMMy` + /mMNo` `oNMm/ + /dMMh+. .+hMMd/ + -odMMNhso//////oshNMMdo- + `:+yhmNMMMMNmhy+:` EOF ;; - "ubuntu_old") - set_colors 1 7 3 + "Exherbo"*) + set_colors 4 7 1 read -rd '' ascii_data <<'EOF' -${c1} ./+o+- -${c2} yyyyy- ${c1}-yyyyyy+ -${c2} ${c2}://+//////${c1}-yyyyyyo -${c3} .++ ${c2}.:/++++++/-${c1}.+sss/` -${c3} .:++o: ${c2}/++++++++/:--:/- -${c3} o:+o+:++.${c2}`..```.-/oo+++++/ -${c3} .:+o:+o/.${c2} `+sssoo+/ -${c2} .++/+:${c3}+oo+o:`${c2} /sssooo. -${c2}/+++//+:${c3}`oo+o${c2} /::--:. -${c2}+/+o+++${c3}`o++o${c1} ++////. -${c2} .++.o+${c3}++oo+:`${c1} /dddhhh. -${c3} .+.o+oo:.${c1} `oddhhhh+ -${c3} +.++o+o`${c1}`-````.:ohdhhhhh+ -${c3} `:o+++ ${c1}`ohhhhhhhhyo++os: -${c3} .o:${c1}`.syhhhhhhh/${c3}.oo++o` -${c1} /osyyyyyyo${c3}++ooo+++/ -${c1} ````` ${c3}+oo+++o: -${c3} `oo++. +${c2} , +OXo. +NXdX0: .cok0KXNNXXK0ko:. +KX '0XdKMMK;.xMMMk, .0MMMMMXx; ... +'NO..xWkMMx kMMM cMMMMMX,NMWOxOXd. + cNMk NK .oXM. OMMMMO. 0MMNo kW. + lMc o: ., .oKNk; ;NMMWlxW' + ;Mc .. .,,' .0M${c1}g;${c2}WMN'dWMMMMMMO + XX ,WMMMMW. cM${c1}cfli${c2}WMKlo. .kMk +.Mo .WM${c1}GD${c2}MW. XM${c1}WO0${c2}MMk oMl +,M: ,XMMWx::,''oOK0x; NM. +'Ml ,kNKOxxxxxkkO0XXKOd:. oMk + NK .0Nxc${c3}:::::::::::::::${c2}fkKNk, .MW + ,Mo .NXc${c3}::${c2}qXWXb${c3}::::::::::${c2}oo${c3}::${c2}lNK. .MW + ;Wo oMd${c3}:::${c2}oNMNP${c3}::::::::${c2}oWMMMx${c3}:${c2}c0M; lMO + 'NO;W0c${c3}:::::::::::::::${c2}dMMMMO${c3}::${c2}lMk .WM' + xWONXdc${c3}::::::::::::::${c2}oOOo${c3}::${c2}lXN. ,WMd + 'KWWNXXK0Okxxo,${c3}:::::::${c2},lkKNo xMMO + :XMNxl,';:lodxkOO000Oxc. .oWMMo + 'dXMMXkl;,. .,o0MMNo' + ':d0XWMMMMWNNNNMMMNOl' + ':okKXWNKkl' EOF ;; - "Ubuntu-Studio") - set_colors 6 7 + "Fedora"* | "RFRemix"*) + set_colors 4 7 1 read -rd '' ascii_data <<'EOF' -${c1} ..-::::::-.` - `.:+++++++++++${c2}ooo${c1}++:.` - ./+++++++++++++${c2}sMMMNdyo${c1}+/. - .++++++++++++++++${c2}oyhmMMMMms${c1}++. - `/+++++++++${c2}osyhddddhys${c1}+${c2}osdMMMh${c1}++/` - `+++++++++${c2}ydMMMMNNNMMMMNds${c1}+${c2}oyyo${c1}++++` - +++++++++${c2}dMMNhso${c1}++++${c2}oydNMMmo${c1}++++++++` - :+${c2}odmy${c1}+++${c2}ooysoohmNMMNmyoohMMNs${c1}+++++++: - ++${c2}dMMm${c1}+${c2}oNMd${c1}++${c2}yMMMmhhmMMNs+yMMNo${c1}+++++++ -`++${c2}NMMy${c1}+${c2}hMMd${c1}+${c2}oMMMs${c1}++++${c2}sMMN${c1}++${c2}NMMs${c1}+++++++. -`++${c2}NMMy${c1}+${c2}hMMd${c1}+${c2}oMMMo${c1}++++${c2}sMMN${c1}++${c2}mMMs${c1}+++++++. - ++${c2}dMMd${c1}+${c2}oNMm${c1}++${c2}yMMNdhhdMMMs${c1}+y${c2}MMNo${c1}+++++++ - :+${c2}odmy${c1}++${c2}oo${c1}+${c2}ss${c1}+${c2}ohNMMMMmho${c1}+${c2}yMMMs${c1}+++++++: - +++++++++${c2}hMMmhs+ooo+oshNMMms${c1}++++++++ - `++++++++${c2}oymMMMMNmmNMMMMmy+oys${c1}+++++` - `/+++++++++${c2}oyhdmmmmdhso+sdMMMs${c1}++/ - ./+++++++++++++++${c2}oyhdNMMMms${c1}++. - ./+++++++++++++${c2}hMMMNdyo${c1}+/. - `.:+++++++++++${c2}sso${c1}++:. - ..-::::::-.. +${c1} /:-------------:\\ + :-------------------:: + :-----------${c2}/shhOHbmp${c1}---:\\ + /-----------${c2}omMMMNNNMMD ${c1}---: + :-----------${c2}sMMMMNMNMP${c1}. ---: + :-----------${c2}:MMMdP${c1}------- ---\\ +,------------${c2}:MMMd${c1}-------- ---: +:------------${c2}:MMMd${c1}------- .---: +:---- ${c2}oNMMMMMMMMMNho${c1} .----: +:-- .${c2}+shhhMMMmhhy++${c1} .------/ +:- -------${c2}:MMMd${c1}--------------: +:- --------${c2}/MMMd${c1}-------------; +:- ------${c2}/hMMMy${c1}------------: +:--${c2} :dMNdhhdNMMNo${c1}------------; +:---${c2}:sdNMMMMNds:${c1}------------: +:------${c2}:://:${c1}-------------:: +:---------------------:// EOF ;; - "Ubuntu"*) - set_colors 1 7 3 - read -rd '' ascii_data <<'EOF' -${c1} .-/+oossssoo+/-. - `:+ssssssssssssssssss+:` - -+ssssssssssssssssssyyssss+- - .ossssssssssssssssss${c2}dMMMNy${c1}sssso. - /sssssssssss${c2}hdmmNNmmyNMMMMh${c1}ssssss/ - +sssssssss${c2}hm${c1}yd${c2}MMMMMMMNddddy${c1}ssssssss+ - /ssssssss${c2}hNMMM${c1}yh${c2}hyyyyhmNMMMNh${c1}ssssssss/ -.ssssssss${c2}dMMMNh${c1}ssssssssss${c2}hNMMMd${c1}ssssssss. -+ssss${c2}hhhyNMMNy${c1}ssssssssssss${c2}yNMMMy${c1}sssssss+ -oss${c2}yNMMMNyMMh${c1}ssssssssssssss${c2}hmmmh${c1}ssssssso -oss${c2}yNMMMNyMMh${c1}sssssssssssssshmmmh${c1}ssssssso -+ssss${c2}hhhyNMMNy${c1}ssssssssssss${c2}yNMMMy${c1}sssssss+ -.ssssssss${c2}dMMMNh${c1}ssssssssss${c2}hNMMMd${c1}ssssssss. - /ssssssss${c2}hNMMM${c1}yh${c2}hyyyyhdNMMMNh${c1}ssssssss/ - +sssssssss${c2}dm${c1}yd${c2}MMMMMMMMddddy${c1}ssssssss+ - /sssssssssss${c2}hdmNNNNmyNMMMMh${c1}ssssss/ - .ossssssssssssssssss${c2}dMMMNy${c1}sssso. - -+sssssssssssssssss${c2}yyy${c1}ssss+- - `:+ssssssssssssssssss+:` - .-/+oossssoo+/-. + "freebsd_small") + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c1} /\\ _____ /\\ + \\_) (_/ + / \ +| | +| | + \ / + --_____-- EOF ;; - "void_small") - set_colors 2 8 + "FreeBSD"*) + set_colors 1 7 3 read -rd '' ascii_data <<'EOF' -${c1} _______ - _ \______ - -| \ ___ \ | -| | / \ | | -| | \___/ | | -| \______ \_| - -_______\ + ${c2}``` ${c1}` + ${c2}` `.....---...${c1}....--.``` -/ + ${c2}+o .--` ${c1}/y:` +. + ${c2} yo`:. ${c1}:o `+- + ${c2}y/ ${c1}-/` -o/ + ${c2}.- ${c1}::/sy+:. + ${c2}/ ${c1}`-- / + ${c2}`: ${c1}:` + ${c2}`: ${c1}:` + ${c2}/ ${c1}/ + ${c2}.- ${c1}-. + ${c2}-- ${c1}-. + ${c2}`:` ${c1}`:` + .-- `--. + .---.....----. EOF ;; - "Void"*) - set_colors 2 8 + "FreeMiNT"*) + # Don't explicitly set colors since + # TosWin2 doesn't reset well. read -rd '' ascii_data <<'EOF' -${c1} __.;=====;.__ - _.=+==++=++=+=+===;. - -=+++=+===+=+=+++++=_ - . -=:`` `--==+=++==. - _vi, ` --+=++++: - .uvnvi. _._ -==+==+. - .vvnvnI` .;==|==;. :|=||=|. -${c2}+QmQQm${c1}pvvnv; ${c2}_yYsyQQWUUQQQm #QmQ#${c1}:${c2}QQQWUV$QQmL -${c2} -QQWQW${c1}pvvo${c2}wZ?.wQQQE${c1}==<${c2}QWWQ/QWQW.QQWW${c1}(: ${c2}jQWQE -${c2} -$QQQQmmU' jQQQ@${c1}+=<${c2}QWQQ)mQQQ.mQQQC${c1}+;${c2}jWQQ@' -${c2} -$WQ8Y${c1}nI: ${c2}QWQQwgQQWV${c1}`${c2}mWQQ.jQWQQgyyWW@! -${c1} -1vvnvv. `~+++` ++|+++ - +vnvnnv, `-|=== - +vnvnvns. . :=- - -Invnvvnsi..___..=sv=. ` - +Invnvnvnnnnnnnnvvnn;. - ~|Invnvnvvnvvvnnv}+` - -~|{*l}*|~ +${c1} ## + ## ######### + #### ## + #### #### ## +#### #### ## ## + #### #### ## ## + #### #### ## ## ## + #### ###### + ###### ## ## #### + #### ################ + #### ## #### + ## #### ###### + ## ## #### #### + ## ## ## ## ## #### + #### ## ## ## EOF ;; - *"[Windows 10]"* | *"on Windows 10"* | "Windows 8"* |\ - "Windows 10"* | "windows10" | "windows8" ) - set_colors 6 7 + "Frugalware"*) + set_colors 4 7 1 read -rd '' ascii_data <<'EOF' -${c1} .., - ....,,:;+ccllll - ...,,+:; cllllllllllllllllll -,cclllllllllll lllllllllllllllllll -llllllllllllll lllllllllllllllllll -llllllllllllll lllllllllllllllllll -llllllllllllll lllllllllllllllllll -llllllllllllll lllllllllllllllllll -llllllllllllll lllllllllllllllllll - -llllllllllllll lllllllllllllllllll -llllllllllllll lllllllllllllllllll -llllllllllllll lllllllllllllllllll -llllllllllllll lllllllllllllllllll -llllllllllllll lllllllllllllllllll -`'ccllllllllll lllllllllllllllllll - `' \\*:: :ccllllllllllllllll - ````''*::cll - `` +${c1} `++/::-.` + /o+++++++++/::-.` + `o+++++++++++++++o++/::-.` + /+++++++++++++++++++++++oo++/:-.`` + .o+ooooooooooooooooooosssssssso++oo++/:-` + ++osoooooooooooosssssssssssssyyo+++++++o: + -o+ssoooooooooooosssssssssssssyyo+++++++s` + o++ssoooooo++++++++++++++sssyyyyo++++++o: + :o++ssoooooo${c2}/-------------${c1}+syyyyyo+++++oo + `o+++ssoooooo${c2}/-----${c1}+++++ooosyyyyyyo++++os: + /o+++ssoooooo${c2}/-----${c1}ooooooosyyyyyyyo+oooss + .o++++ssooooos${c2}/------------${c1}syyyyyyhsosssy- + ++++++ssooooss${c2}/-----${c1}+++++ooyyhhhhhdssssso + -s+++++syssssss${c2}/-----${c1}yyhhhhhhhhhhhddssssy. + sooooooyhyyyyyh${c2}/-----${c1}hhhhhhhhhhhddddyssy+ + :yooooooyhyyyhhhyyyyyyhhhhhhhhhhdddddyssy` + yoooooooyhyyhhhhhhhhhhhhhhhhhhhddddddysy/ +-ysooooooydhhhhhhhhhhhddddddddddddddddssy + .-:/+osssyyyysyyyyyyyyyyyyyyyyyyyyyyssy: + ``.-/+oosysssssssssssssssssssssss + ``.:/+osyysssssssssssssh. + `-:/+osyyssssyo + .-:+++` EOF ;; - "Windows"*) - set_colors 1 2 4 3 + "Funtoo"*) + set_colors 5 7 read -rd '' ascii_data <<'EOF' -${c1} ,.=:!!t3Z3z., - :tt:::tt333EE3 -${c1} Et:::ztt33EEEL${c2} @Ee., .., -${c1} ;tt:::tt333EE7${c2} ;EEEEEEttttt33# -${c1} :Et:::zt333EEQ.${c2} $EEEEEttttt33QL -${c1} it::::tt333EEF${c2} @EEEEEEttttt33F -${c1} ;3=*^```"*4EEV${c2} :EEEEEEttttt33@. -${c3} ,.=::::!t=., ${c1}`${c2} @EEEEEEtttz33QF -${c3} ;::::::::zt33)${c2} "4EEEtttji3P* -${c3} :t::::::::tt33.${c4}:Z3z..${c2} ``${c4} ,..g. -${c3} i::::::::zt33F${c4} AEEEtttt::::ztF -${c3} ;:::::::::t33V${c4} ;EEEttttt::::t3 -${c3} E::::::::zt33L${c4} @EEEtttt::::z3F -${c3}{3=*^```"*4E3)${c4} ;EEEtttt:::::tZ` -${c3} `${c4} :EEEEtttt::::z7 - "VEzjt:;;z>*` +${c2} _______ ____ + /MMMMMMM/ /MMMM| _____ _____ + __/M${c1}.MMM.${c2}M/_____________|M${c1}.M${c2}MM|/MMMMM\/MMMMM\\ +|MMMM${c1}MM'${c2}MMMMMMMMMMMMMMMMMMM${c1}MM${c2}MMMM${c1}.MMMM..MMMM.${c2}MM\\ +|MM${c1}MMMMMMM${c2}/m${c1}MMMMMMMMMMMMMMMMMMMMMM${c2}MMMM${c1}MM${c2}MMMM${c1}MM${c2}MM| +|MMMM${c1}MM${c2}MMM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MMMMM${c1}\MMM${c2}MMM${c1}MM${c2}MMMM${c1}MM${c2}MMMM${c1}MM${c2}MM| + |MM${c1}MM${c2}MMM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MMM${c2}MMMM${c1}'MMMM''MMMM'${c2}MM/ + |MM${c1}MM${c2}MMM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MMM${c2}MMM\MMMMM/\MMMMM/ + |MM${c1}MM${c2}MMM${c1}MM${c2}MMMMMM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MMMMM'${c2}M| + |MM${c1}MM${c2}MMM${c1}MMMMMMMMMMMMMMMMM MM'${c2}M/ + |MMMMMMMMMMMMMMMMMMMMMMMMMMMM/ EOF ;; - "Xubuntu"*) + "GalliumOS"*) set_colors 4 7 1 read -rd '' ascii_data <<'EOF' -${c1} `-/osyhddddhyso/-` - .+yddddddddddddddddddy+. - :yddddddddddddddddddddddddy: - -yddddddddddddddddddddhdddddddy- - odddddddddddyshdddddddh`dddd+ydddo - `yddddddhshdd- ydddddd+`ddh.:dddddy` - sddddddy /d. :dddddd-:dy`-ddddddds -:ddddddds /+ .dddddd`yy`:ddddddddd: -sdddddddd` . .-:/+ssdyodddddddddds -ddddddddy `:ohddddddddd -dddddddd. +dddddddd -sddddddy ydddddds -:dddddd+ .oddddddd: - sdddddo ./ydddddddds - `yddddd. `:ohddddddddddy` - oddddh/` `.:+shdddddddddddddo - -ydddddhyssyhdddddddddddddddddy- - :yddddddddddddddddddddddddy: - .+yddddddddddddddddddy+. - `-/osyhddddhyso/-` +${c1}sooooooooooooooooooooooooooooooooooooo+: +yyooooooooooooooooooooooooooooooooo+/::: +yyysoooooooooooooooooooooooooooo+/:::::: +yyyyyoooooooooooooooooooooooo+/::::::::: +yyyyyysoooooooooooooooooo++/:::::::::::: +yyyyyyysoooooooooooooo++/::::::::::::::: +yyyyyyyyysoooooo${c2}sydddys${c1}+/::::::::::::::: +yyyyyyyyyysooo${c2}smMMMMMMMNd${c1}+:::::::::::::: +yyyyyyyyyyyyo${c2}sMMMMMMMMMMMN${c1}/::::::::::::: +yyyyyyyyyyyyy${c2}dMMMMMMMMMMMM${c1}o//::::::::::: +yyyyyyyyyyyyy${c2}hMMMMMMMMMMMm${c1}--//:::::::::: +yyyyyyyyyyyyyy${c2}hmMMMMMMMNy${c1}:..-://:::::::: +yyyyyyyyyyyyyyy${c2}yyhhyys+:${c1}......://::::::: +yyyyyyyyyyyyyyys+:--...........-///::::: +yyyyyyyyyyyys+:--................://:::: +yyyyyyyyyo+:-.....................-//::: +yyyyyyo+:-..........................://: +yyyo+:-..............................-// +o/:-...................................: EOF ;; - "Zorin"*) - set_colors 4 6 + "gentoo_small") + set_colors 5 7 read -rd '' ascii_data <<'EOF' -${c1} `osssssssssssssssssssso` - .osssssssssssssssssssssso. - .+oooooooooooooooooooooooo+. - - - `::::::::::::::::::::::. .:` - `+ssssssssssssssssss+:.` `.:+ssso` -.ossssssssssssssso/. `-+ossssssso. -ssssssssssssso/-` `-/osssssssssssss -.ossssssso/-` .-/ossssssssssssssso. - `+sss+:. `.:+ssssssssssssssssss+` - `:. .::::::::::::::::::::::` - - - .+oooooooooooooooooooooooo+. - -osssssssssssssssssssssso- - `osssssssssssssssssssso` +${c1} _-----_ +( \\ +\ 0 \\ +${c2} \ ) + / _/ +( _- +\____- EOF ;; - *) - case "$kernel_name" in - *"BSD") - set_colors 1 7 4 3 6 - read -rd '' ascii_data <<'EOF' -${c1} , , - /( )` - \ \___ / | - /- _ `-/ ' - (${c2}/\/ \ ${c1}\ /\ - ${c2}/ / | ` ${c1}\ - ${c3}O O ${c2}) ${c1}/ | - ${c2}`-^--'${c1}`< ' - (_.) _ ) / - `.___/` / - `-----' / -${c4}<----. __ / __ \ -${c4}<----|====${c1}O)))${c4}==${c1}) \) /${c4}====| -<----' ${c1}`--' `.__,' \ - | | - \ / /\ - ${c5}______${c1}( (_ / \______/ - ${c5},' ,-----' | - `--{__________) + "Gentoo"*) + set_colors 5 7 + read -rd '' ascii_data <<'EOF' +${c1} -/oyddmdhs+:. + -o${c2}dNMMMMMMMMNNmhy+${c1}-` + -y${c2}NMMMMMMMMMMMNNNmmdhy${c1}+- + `o${c2}mMMMMMMMMMMMMNmdmmmmddhhy${c1}/` + om${c2}MMMMMMMMMMMN${c1}hhyyyo${c2}hmdddhhhd${c1}o` +.y${c2}dMMMMMMMMMMd${c1}hs++so/s${c2}mdddhhhhdm${c1}+` + oy${c2}hdmNMMMMMMMN${c1}dyooy${c2}dmddddhhhhyhN${c1}d. + :o${c2}yhhdNNMMMMMMMNNNmmdddhhhhhyym${c1}Mh + .:${c2}+sydNMMMMMNNNmmmdddhhhhhhmM${c1}my + /m${c2}MMMMMMNNNmmmdddhhhhhmMNh${c1}s: + `o${c2}NMMMMMMMNNNmmmddddhhdmMNhs${c1}+` + `s${c2}NMMMMMMMMNNNmmmdddddmNMmhs${c1}/. + /N${c2}MMMMMMMMNNNNmmmdddmNMNdso${c1}:` ++M${c2}MMMMMMNNNNNmmmmdmNMNdso${c1}/- +yM${c2}MNNNNNNNmmmmmNNMmhs+/${c1}-` +/h${c2}MMNNNNNNNNMNdhs++/${c1}-` +`/${c2}ohdmmddhys+++/:${c1}.` + `-//////:--. EOF - ;; + ;; - "Darwin") - set_colors 2 3 1 1 5 4 - read -rd '' ascii_data <<'EOF' -${c1} 'c. - ,xNMM. - .OMMMMo - OMMM0, - .;loddo:' loolloddol;. - cKMMMMMMMMMMNWMMMMMMMMMM0: -${c2} .KMMMMMMMMMMMMMMMMMMMMMMMWd. - XMMMMMMMMMMMMMMMMMMMMMMMX. -${c3};MMMMMMMMMMMMMMMMMMMMMMMM: -:MMMMMMMMMMMMMMMMMMMMMMMM: -${c4}.MMMMMMMMMMMMMMMMMMMMMMMMX. - kMMMMMMMMMMMMMMMMMMMMMMMMWd. - ${c5}.XMMMMMMMMMMMMMMMMMMMMMMMMMMk - .XMMMMMMMMMMMMMMMMMMMMMMMMK. - ${c6}kMMMMMMMMMMMMMMMMMMMMMMd - ;KMMMMMMMWXXWMMMMMMMk. - .cooc,. .,coo:. + "gNewSense"*) + set_colors 4 5 7 6 + read -rd '' ascii_data <<'EOF' +${c1} ..,,,,.. + .oocchhhhhhhhhhccoo. + .ochhlllllllc hhhhhh ollllllhhco. + ochlllllllllll hhhllllllhhh lllllllllllhco + .cllllllllllllll hlllllo +hllh llllllllllllllc. +ollllllllllhco'' hlllllo +hllh ``ochllllllllllo +hllllllllc' hllllllllllllh `cllllllllh +ollllllh +llllllllllll+ hllllllo + `cllllh. ohllllllho .hllllc' + ochllc. ++++ .cllhco + `+occooo+. .+ooocco+' + `+oo++++ ++++oo+' EOF - ;; + ;; - "GNU"*) - set_colors fg 7 - read -rd '' ascii_data <<'EOF' + "GNU") + set_colors fg 7 + read -rd '' ascii_data <<'EOF' ${c1} _-`````-, ,- '- . .' .- - | | - -. `. /.' / `. \ @@ -7640,982 +6342,2280 @@ ${c1} _-`````-, ,- '- . '/'/' `; EOF - ;; - - "Linux") - set_colors fg 8 3 - read -rd '' ascii_data <<'EOF' -${c2} ##### -${c2} ####### -${c2} ##${c1}O${c2}#${c1}O${c2}## -${c2} #${c3}#####${c2}# -${c2} ##${c1}##${c3}###${c1}##${c2}## -${c2} #${c1}##########${c2}## -${c2} #${c1}############${c2}## -${c2} #${c1}############${c2}### -${c3} ##${c2}#${c1}###########${c2}##${c3}# -${c3}######${c2}#${c1}#######${c2}#${c3}###### -${c3}#######${c2}#${c1}#####${c2}#${c3}####### -${c3} #####${c2}#######${c3}##### -EOF - ;; - - "SunOS") - set_colors 3 7 - read -rd '' ascii_data <<'EOF' -${c1} `- ` - `-- `+- .: - .+: `++: -/+- . - `.::` -++/``:::`./+/ `.-/. - `++/-`.` ` /++:` - `` ./:` .: `..`.- -``./+/:- -+++:- - -/+` :. -EOF - ;; + ;; - "IRIX"*) - set_colors 4 7 - read -rd '' ascii_data <<'EOF' -${c1} ./ohmNd/ +dNmho/- - `:+ydNMMMMMMMM.-MMMMMMMMMdyo:. - `hMMMMMMNhs/sMMM-:MMM+/shNMMMMMMh` - -NMMMMMmo-` /MMM-/MMM- `-omMMMMMN. - `.`-+hNMMMMMNhyMMM-/MMMshmMMMMMmy+...` -+mMNds:-:sdNMMMMMMMyyMMMMMMMNdo:.:sdMMm+ -dMMMMMMmy+.-/ymNMMMMMMMMNmy/-.+hmMMMMMMd -oMMMMmMMMMNds:.+MMMmmMMN/.-odNMMMMmMMMM+ -.MMMM-/ymMMMMMmNMMy..hMMNmMMMMMmy/-MMMM. - hMMM/ `/dMMMMMMMN////NMMMMMMMd/. /MMMh - /MMMdhmMMMmyyMMMMMMMMMMMMhymMMMmhdMMM: - `mMMMMNho//sdMMMMM//NMMMMms//ohNMMMMd - `/so/:+ymMMMNMMMM` mMMMMMMMmh+::+o/` - `yNMMNho-yMMMM` NMMMm.+hNMMNh` - -MMMMd: oMMMM. NMMMh :hMMMM- - -yNMMMmooMMMM- NMMMyomMMMNy- - .omMMMMMMMM-`NMMMMMMMmo. - `:hMMMMMM. NMMMMMh/` - .odNm+ /dNms. + "GoboLinux"*) + set_colors 5 4 6 2 + read -rd '' ascii_data <<'EOF' +${c1}_____ _ +/ ____| | | +| | __ ___ | |__ ___ +| | |_ |/ _ \| '_ \ / _ \ +| |__| | (_) | |_) | (_) | + \_____|\___/|_.__/ \___/ EOF - ;; - esac ;; - esac - - # Overwrite distro colors if '$ascii_colors' doesn't - # equal 'distro'. - if [[ "${ascii_colors[0]}" != "distro" ]]; then - color_text="off" - set_colors "${ascii_colors[@]}" - fi -} - -set_colors() { - c1="$(color "$1")${ascii_bold}" - c2="$(color "$2")${ascii_bold}" - c3="$(color "$3")${ascii_bold}" - c4="$(color "$4")${ascii_bold}" - c5="$(color "$5")${ascii_bold}" - c6="$(color "$6")${ascii_bold}" - - [[ "$color_text" != "off" ]] && set_text_colors "$@" -} - -set_text_colors() { - if [[ "${colors[0]}" == "distro" ]]; then - title_color="$(color "$1")" - at_color="$reset" - underline_color="$reset" - subtitle_color="$(color "$2")" - colon_color="$reset" - info_color="$reset" - - # If the ascii art uses 8 as a color, make the text the fg. - ((${1:-1} == 8)) && title_color="$reset" - ((${2:-7} == 8)) && subtitle_color="$reset" - - # If the second color is white use the first for the subtitle. - ((${2:-7} == 7)) && subtitle_color="$(color "$1")" - ((${1:-1} == 7)) && title_color="$reset" - else - title_color="$(color "${colors[0]}")" - at_color="$(color "${colors[1]}")" - underline_color="$(color "${colors[2]}")" - subtitle_color="$(color "${colors[3]}")" - colon_color="$(color "${colors[4]}")" - info_color="$(color "${colors[5]}")" - fi - - # Bar colors. - if [[ "$bar_color_elapsed" == "distro" ]]; then - bar_color_elapsed="$(color fg)" - else - bar_color_elapsed="$(color "$bar_color_elapsed")" - fi - - case "$bar_color_total $1" in - "distro "[736]) bar_color_total="$(color "$1")" ;; - "distro "[0-9]) bar_color_total="$(color "$2")" ;; - *) bar_color_total="$(color "$bar_color_total")" ;; - esac -} - -color() { - case "$1" in - [0-6]) printf "%b" "${reset}\e[3${1}m" ;; - 7 | "fg") printf "%b" "\e[37m${reset}" ;; - *) printf "%b" "\e[38;5;${1}m" ;; - esac -} - -# OTHER - -stdout() { - image_backend="off" - unset subtitle_color - unset colon_color - unset info_color - unset underline_color - unset bold - unset title_color - unset at_color - unset text_padding - unset zws - unset reset - unset color_blocks - unset get_line_break -} - -err() { - err+="$(color 1)[!]\e[0m $1\n" -} - -get_full_path() { - # This function finds the absolute path from a relative one. - # For example "Pictures/Wallpapers" --> "/home/dylan/Pictures/Wallpapers" - - # If the file exists in the current directory, stop here. - [[ -f "${PWD}/${1/*\/}" ]] && { printf "%s\n" "${PWD}/${1/*\/}"; return; } - - if ! cd "${1%/*}"; then - err "Error: Directory '${1%/*}' doesn't exist or is inaccessible" - err " Check that the directory exists or try another directory." - exit 1 - fi - - local full_dir="${1##*/}" - - # Iterate down a (possible) chain of symlinks. - while [[ -L "$full_dir" ]]; do - full_dir="$(readlink "$full_dir")" - cd "${full_dir%/*}" || exit - full_dir="${full_dir##*/}" - done - # Final directory. - full_dir="$(pwd -P)/${1/*\/}" + "Grombyang"*) + set_colors 4 2 1 + read -rd '' ascii_data <<'EOF' +${c1} eeeeeeeeeeee + eeeeeeeeeeeeeeeee + eeeeeeeeeeeeeeeeeeeeeee + eeeee ${c2}.o+ ${c1}eeee + eeee ${c2}`ooo/ ${c1}eeee + eeee ${c2}`+oooo: ${c1}eeee +eee ${c2}`+oooooo: ${c1}eee +eee ${c2}-+oooooo+: ${c1}eee +ee ${c2}`/:oooooooo+: ${c1}ee +ee ${c2}`/+ +++ +: ${c1}ee +ee ${c2}+o+\ ${c1}ee +eee ${c2}+o+\ ${c1}eee +eee ${c2}// \\ooo/ \\\ ${c1}eee + eee ${c2}//++++oooo++++\\\ ${c1}eee + eeee ${c2}::::++oooo+::::: ${c1}eeee + eeeee ${c3}Grombyang OS ${c1} eeee + eeeeeeeeeeeeeeeeeeeeeee + eeeeeeeeeeeeeeeee +EOF + ;; - [[ -e "$full_dir" ]] && printf "%s\n" "$full_dir" -} + "GuixSD"*) + set_colors 3 7 6 1 8 + read -rd '' ascii_data <<'EOF' +${c1} .. `. + `--..```..` `..```..--` + .-:///-:::. `-:::///:-. + ````.:::` `:::.```` + -//:` -::- + ://: -::- + `///- .:::` + -+++-:::. + :+/:::- + `-....` +EOF + ;; -get_user_config() { - # Check $config_file. - if [[ -f "$config_file" ]]; then - source "$config_file" - err "Config: Sourced user config. (${config_file})" - old_options - return - fi - mkdir -p "${XDG_CONFIG_HOME}/neofetch/" + "Haiku"*) + set_colors 2 8 + read -rd '' ascii_data <<'EOF' +${c2} :dc' + 'l:;'${c1},${c2}'ck. .;dc:. + co ${c1}..${c2}k. .;; ':o. + co ${c1}..${c2}k. ol ${c1}.${c2}0. + co ${c1}..${c2}k. oc ${c1}..${c2}0. + co ${c1}..${c2}k. oc ${c1}..${c2}0. +.Ol,. co ${c1}...''${c2}Oc;kkodxOdddOoc,. + ';lxxlxOdxkxk0kd${c1}oooll${c2}dl${c1}ccc:${c2}clxd; + ..${c1}oOolllllccccccc:::::${c2}od; + cx:ooc${c1}:::::::;${c2}cooolcX. + cd${c1}.${c2}''cloxdoollc' ${c1}...${c2}0. + cd${c1}......${c2}k;${c1}.${c2}xl${c1}.... .${c2}0. + .::c${c1};..${c2}cx;${c1}.${c2}xo${c1}..... .${c2}0. + '::c'${c1}...${c2}do${c1}..... .${c2}K, + cd,.${c1}....:${c2}O,${c1} + ':clod:'${c1} + ${c1} +EOF + ;; - # Check ${XDG_CONFIG_HOME}/neofetch and create the - # dir/files if they don't exist. - if [[ -f "${XDG_CONFIG_HOME}/neofetch/config" ]]; then - config_file="${XDG_CONFIG_HOME}/neofetch/config" + "Hyperbola"*) + set_colors 8 + read -rd '' ascii_data <<'EOF' +${c1} WW + KX W + WO0W NX0O + NOO0NW WNXK0OOKW + W0OOOOOOOOOOOOKN + N0OOOOOOO0KXW + WNXXXNW + NXK00000KN + WNK0OOOOOOOOOO0W + NK0OOOOOOOOOOOOOO0W + X0OOOOOOO00KK00OOOOOK + X0OOOO0KNWW WX0OO0W + X0OO0XNW KOOW + N00KNW KOW + NKXN W0W +WW W +EOF + ;; - elif [[ -f "${XDG_CONFIG_HOME}/neofetch/config.conf" ]]; then - config_file="${XDG_CONFIG_HOME}/neofetch/config.conf" + "Kali"*) + set_colors 4 8 + read -rd '' ascii_data <<'EOF' +${c1}.............. + ..,;:ccc,. + ......''';lxO. +.....''''..........,:ld; + .';;;:::;,,.x, + ..'''. 0Xxoc:,. ... + .... ,ONkc;,;cokOdc',. + . OMo ':${c2}dd${c1}o. + dMc :OO; + 0M. .:o. + ;Wd + ;XO, + ,d0Odlc;,.. + ..',;:cdOOd::,. + .:d;.':;. + 'd, .' + ;l .. + .o + c + .' + . +EOF + ;; - else - config_file="${XDG_CONFIG_HOME}/neofetch/config.conf" + "KaOS"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} .. + ..... ..OSSAAAAAAA.. + .KKKKSS. .SSAAAAAAAAAAA. +.KKKKKSO. .SAAAAAAAAAA... +KKKKKKS. .OAAAAAAAA. +KKKKKKS. .OAAAAAA. +KKKKKKS. .SSAA.. +.KKKKKS..OAAAAAAAAAAAA........ + DKKKKO.=AA=========A===AASSSO.. + AKKKS.==========AASSSSAAAAAASS. + .=KKO..========ASS.....SSSSASSSS. + .KK. .ASS..O.. =SSSSAOSS: + .OK. .ASSSSSSSO...=A.SSA. + .K ..SSSASSSS.. ..SSA. + .SSS.AAKAKSSKA. + .SSS....S.. +EOF + ;; - # The config file doesn't exist, create it. - printf "%s\n" "$config" > "$config_file" - fi + "KDE"*) + set_colors 2 7 + read -rd '' ascii_data <<'EOF' +${c1} `..---+/---..` + `---.`` `` `.---.` + .--.` `` `-:-. + `:/: `.----//----.` :/- + .:. `---` `--.` .:` + .:` `--` .:- `:. + `/ `:. `.-::-.` -:` `/` + /. /. `:++++++++:` .: .: +`/ .: `+++++++++++/ /` `+` +/+` -- .++++++++++++` :. .+: +`/ .: `+++++++++++/ /` `+` + /` /. `:++++++++:` .: .: + ./ `:. `.:::-.` -:` `/` + .:` `--` .:- `:. + .:. `---` `--.` .:` + `:/: `.----//----.` :/- + .-:.` `` `-:-. + `---.`` `` `.---.` + `..---+/---..` +EOF + ;; - source "$config_file" - err "Config: Sourced user config. (${config_file})" - old_options -} + "Kogaion"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} ;; ,; + ;;; ,;; + ,;;;; ;;;; + ,;;;;;;;; ;;;; + ;;;;;;;;;;; ;;;;; + ,;;;;;;;;;;;; ';;;;;, + ;;;;;;;;;;;;;;, ';;;;;;; + ;;;;;;;;;;;;;;;;;, ';;;;; +; ';;;;;;;;;;;;;;;;;;, ;;; +;;;, ';;;;;;;;;;;;;;;;;;;,;; +;;;;;, ';;;;;;;;;;;;;;;;;;, +;;;;;;;;, ';;;;;;;;;;;;;;;;, +;;;;;;;;;;;;, ';;;;;;;;;;;;;; +';;;;;;;;;;;;; ';;;;;;;;;;;;; + ';;;;;;;;;;;;;, ';;;;;;;;;;; + ';;;;;;;;;;;;; ;;;;;;;;;; + ';;;;;;;;;;;; ;;;;;;;; + ';;;;;;;; ;;;;;; + ';;;;; ;;;; + ';;; ;; +EOF + ;; -bar() { - # Get the values. - elapsed="$(($1 * bar_length / $2))" + "Korora"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c2} ____________ + _add55555555554${c1}: + _w?'${c1}``````````'${c2})k${c1}: + _Z'${c1}`${c2} ]k${c1}: + m(${c1}`${c2} )k${c1}: + _.ss${c1}`${c2}m[${c1}`${c2}, ]e${c1}: + .uY"^`${c1}`${c2}Xc${c1}`${c2}?Ss. d(${c1}` + jF'${c1}`${c2} `@. ${c1}`${c2}Sc .jr${c1}` + jr${c1}`${c2} `?n_ ${c1}`${c2}$; _a2"${c1}` +.m${c1}:${c2} `~M${c1}`${c2}1k${c1}`${c2}5?!`${c1}` +:#${c1}:${c2} ${c1}`${c2})e${c1}``` +:m${c1}:${c2} ,#'${c1}` +:#${c1}:${c2} .s2'${c1}` +:m,________.aa7^${c1}` +:#baaaaaaas!J'${c1}` + ``````````` +EOF + ;; - # Create the bar with spaces. - printf -v prog "%${elapsed}s" - printf -v total "%$((bar_length - elapsed))s" + "KSLinux"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} K K U U RRRR ooo + K K U U R R o o + KKK U U RRRR o o + K K U U R R o o + K K UUU R R ooo - # Set the colors and swap the spaces for $bar_char_. - bar+="${bar_color_elapsed}${prog// /${bar_char_elapsed}}" - bar+="${bar_color_total}${total// /${bar_char_total}}" +${c2} SSS AAA W W AAA + S A A W W A A + SSS AAAAA W W W AAAAA + S A A WW WW A A + SSS A A W W A A +EOF + ;; - # Borders. - [[ "$bar_border" == "on" ]] && \ - bar="$(color fg)[${bar}$(color fg)]" + "Kubuntu"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} `.:/ossyyyysso/:. + .:oyyyyyyyyyyyyyyyyyyo:` + -oyyyyyyyo${c2}dMMy${c1}yyyyyyysyyyyo- + -syyyyyyyyyy${c2}dMMy${c1}oyyyy${c2}dmMMy${c1}yyyys- + oyyys${c2}dMy${c1}syyyy${c2}dMMMMMMMMMMMMMy${c1}yyyyyyo + `oyyyy${c2}dMMMMy${c1}syysoooooo${c2}dMMMMy${c1}yyyyyyyyo` + oyyyyyy${c2}dMMMMy${c1}yyyyyyyyyyys${c2}dMMy${c1}sssssyyyo +-yyyyyyyy${c2}dMy${c1}syyyyyyyyyyyyyys${c2}dMMMMMy${c1}syyy- +oyyyysoo${c2}dMy${c1}yyyyyyyyyyyyyyyyyy${c2}dMMMMy${c1}syyyo +yyys${c2}dMMMMMy${c1}yyyyyyyyyyyyyyyyyysosyyyyyyyy +yyys${c2}dMMMMMy${c1}yyyyyyyyyyyyyyyyyyyyyyyyyyyyy +oyyyyysos${c2}dy${c1}yyyyyyyyyyyyyyyyyy${c2}dMMMMy${c1}syyyo +-yyyyyyyy${c2}dMy${c1}syyyyyyyyyyyyyys${c2}dMMMMMy${c1}syyy- + oyyyyyy${c2}dMMMy${c1}syyyyyyyyyyys${c2}dMMy${c1}oyyyoyyyo + `oyyyy${c2}dMMMy${c1}syyyoooooo${c2}dMMMMy${c1}oyyyyyyyyo + oyyysyyoyyyys${c2}dMMMMMMMMMMMy${c1}yyyyyyyo + -syyyyyyyyy${c2}dMMMy${c1}syyy${c2}dMMMy${c1}syyyys- + -oyyyyyyy${c2}dMMy${c1}yyyyyysosyyyyo- + ./oyyyyyyyyyyyyyyyyyyo/. + `.:/oosyyyysso/:.` +EOF + ;; - printf "%b" "${bar}${info_color}" -} + "LEDE"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' + ${c1} _________ + / /\ + / LE / \ + / DE / \ + /________/ LE \ + \ \ DE / + \ LE \ / + \ DE \ / + \________\/ +EOF + ;; -cache() { - if [[ "$2" ]]; then - mkdir -p "${cache_dir}/neofetch" - printf "%s" "${1/*-}=\"$2\"" > "${cache_dir}/neofetch/${1/*-}" - fi -} + "Linux") + set_colors fg 8 3 + read -rd '' ascii_data <<'EOF' +${c2} ##### +${c2} ####### +${c2} ##${c1}O${c2}#${c1}O${c2}## +${c2} #${c3}#####${c2}# +${c2} ##${c1}##${c3}###${c1}##${c2}## +${c2} #${c1}##########${c2}## +${c2} #${c1}############${c2}## +${c2} #${c1}############${c2}### +${c3} ##${c2}#${c1}###########${c2}##${c3}# +${c3}######${c2}#${c1}#######${c2}#${c3}###### +${c3}#######${c2}#${c1}#####${c2}#${c3}####### +${c3} #####${c2}#######${c3}##### +EOF + ;; -get_cache_dir() { - case "$os" in - "Mac OS X") cache_dir="/Library/Caches" ;; - *) cache_dir="/tmp" ;; - esac -} + "LMDE"*) + set_colors 2 7 + read -rd '' ascii_data <<'EOF' + ${c2}`.-::---.. +${c1} .:++++ooooosssoo:. + .+o++::. `.:oos+. +${c1} :oo:.` -+oo${c2}: +${c1} ${c2}`${c1}+o/` .${c2}::::::${c1}-. .++-${c2}` +${c1}${c2}`${c1}/s/ .yyyyyyyyyyo: +o-${c2}` +${c1}${c2}`${c1}so .ss ohyo` :s-${c2}: +${c1}${c2}`${c1}s/ .ss h m myy/ /s`${c2}` +${c1}`s: `oo s m Myy+-o:` +`oo :+sdoohyoydyso/. + :o. .:////////++: +${c1} `/++ ${c2}-:::::- +${c1} ${c2}`${c1}++- +${c1} ${c2}`${c1}/+- +${c1} ${c2}.${c1}+/. +${c1} ${c2}.${c1}:+-. + `--.`` +EOF + ;; -kde_config_dir() { - # If the user is using KDE get the KDE - # configuration directory. - if [[ "$kde_config_dir" ]]; then - return + "Lubuntu"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} `-/+oyyhhhhyyo+/-` + ./shhhhhhhhhhhhhhhhhhs/. + `:shhhhhhhhhhhhhhhhhhhhhhhhs:` + :yhhhhhhhhhhhhhhhs++yhhhhhhhhhy: + `ohhhhhhhhhhhhhs+:. .yhhhhhhhhhhhho` + `shhhhhhhhhhy+:` /yhhhhhhhhhhhhhs` + shhhhhhhhy+. .ohhhhhhhhhhhhhs +:hhhhhhy/. /hhhhhhhhhhhhh: +shhhy/. :hhhhhhhhhhhhs +hy+. ` `+yhs/` +hhhhhhhhhhhh +-.:/oshy- ` :yhhhhhy/ shhhhhhhhhhh +shhhhhy-`/s. .shhhhhhhhho` .hhhhhhhhhhs +:hhhho`:ys` /yhhhhhhhhhhhs` +hhhhhhhhh: + shh/.sh+ `ohhhhhhhhhhhhhhs` .hhhhhhhhs + `o-+hh: :yhhhhhhhhhhhhhhhho ohhhhhhs` + +hy-`ohhhhhhhhhhhhhhhhhhh+ -hhhhho` + :.-yhhhhhhhhhhhhhhhhhhhhh: yhhy: + :shhhhhhhhhhhhhhhhhhhhhy`+s:` + .+shhhhhhhhhhhhhhhhhhs:` + `-/+oyyhhhhyys+/-` +EOF + ;; - elif type -p kf5-config >/dev/null 2>&1; then - kde_config_dir="$(kf5-config --path config)" + "Lunar"*) + set_colors 4 7 3 + read -rd '' ascii_data <<'EOF' +${c1}`-. `-. + -ohys/-` `:+shy/` + -omNNdyo/` :+shmNNy/` + ${c3} - + /mMmo + hMMMN` + .NMMs + ${c1} -:+oooo+//: ${c3}/MN${c1}. -///oooo+/-` + /:.` ${c3}/${c1} `.:/` +${c3} __ + | | _ _ ___ ___ ___ + | |__| | | | .'| _| + |_____|___|_|_|__,|_| +EOF + ;; - elif type -p kde4-config >/dev/null 2>&1; then - kde_config_dir="$(kde4-config --path config)" + "mac"*"_small") + set_colors 2 3 1 5 4 + read -rd '' ascii_data <<'EOF' +${c1} .:' + _ :'_ +${c2} .'`_`-'_``. +:________.-' +${c3}:_______: +:_______: +${c4} :_______`-; +${c5} `._.-._.' +EOF + ;; - elif type -p kde-config >/dev/null 2>&1; then - kde_config_dir="$(kde-config --path config)" + "mac" | "Darwin") + set_colors 2 3 1 1 5 4 + read -rd '' ascii_data <<'EOF' +${c1} 'c. + ,xNMM. + .OMMMMo + OMMM0, + .;loddo:' loolloddol;. + cKMMMMMMMMMMNWMMMMMMMMMM0: +${c2} .KMMMMMMMMMMMMMMMMMMMMMMMWd. + XMMMMMMMMMMMMMMMMMMMMMMMX. +${c3};MMMMMMMMMMMMMMMMMMMMMMMM: +:MMMMMMMMMMMMMMMMMMMMMMMM: +${c4}.MMMMMMMMMMMMMMMMMMMMMMMMX. + kMMMMMMMMMMMMMMMMMMMMMMMMWd. + ${c5}.XMMMMMMMMMMMMMMMMMMMMMMMMMMk + .XMMMMMMMMMMMMMMMMMMMMMMMMK. + ${c6}kMMMMMMMMMMMMMMMMMMMMMMd + ;KMMMMMMMWXXWMMMMMMMk. + .cooc,. .,coo:. +EOF + ;; - elif [[ -d "${HOME}/.kde4" ]]; then - kde_config_dir="${HOME}/.kde4/share/config" + "Mageia"*) + set_colors 6 7 + read -rd '' ascii_data <<'EOF' +${c1} .°°. + °° .°°. + .°°°. °° + . . + °°° .°°°. + .°°°. '___' +${c2} .${c1}'___' ${c2} . + :dkxc;'. ..,cxkd; + .dkk. kkkkkkkkkk .kkd. +.dkk. ';cloolc;. .kkd +ckk. .kk; +xO: cOd +xO: lOd +lOO. .OO: +.k00. .00x + .k00; ;00O. + .lO0Kc;,,,,,,;c0KOc. + ;d00KKKKKK00d; + .,KKKK,. +EOF + ;; - elif [[ -d "${HOME}/.kde3" ]]; then - kde_config_dir="${HOME}/.kde3/share/config" - fi + "MagpieOS"*) + set_colors 2 1 3 5 + read -rd '' ascii_data <<'EOF' +${c1} ;00000 :000Ol + .x00kk00: O0kk00k; + l00: :00. o0k :O0k. + .k0k. x${c2}d$dddd${c1}k' .d00; + k0k. ${c2}.dddddl ${c1}o00, + o00. ${c2}':cc:. ${c1}d0O +.00l ,00. +l00. d0x +k0O .:k0o +O0k ;dO0000d. +k0O .O0O${c2}xxxxk${c1}00: +o00. k0O${c2}dddddd${c1}occ +'00l x0O${c2}dddddo${c3};..${c1} + x00. .x00${c2}kxxd${c3}:..${c1} + .O0x .:oxxx${c4}Okl.${c1} + .x0d ${c4},xx,${c1} + .:o. ${c4}.xd ckd${c1} + .. ${c4}dxl .xx; + :xxolldxd' + ;oxdl. +EOF + ;; - kde_config_dir="${kde_config_dir/$'/:'*}" -} + "Manjaro"*) + set_colors 2 7 + read -rd '' ascii_data <<'EOF' +${c1}██████████████████ ████████ +██████████████████ ████████ +██████████████████ ████████ +██████████████████ ████████ +████████ ████████ +████████ ████████ ████████ +████████ ████████ ████████ +████████ ████████ ████████ +████████ ████████ ████████ +████████ ████████ ████████ +████████ ████████ ████████ +████████ ████████ ████████ +████████ ████████ ████████ +████████ ████████ ████████ +EOF + ;; -get_term_padding() { - # Terminal info. - # - # Parse terminal config files to get - # info about padding. Due to how w3m-img - # works padding around the terminal throws - # off the cursor placement calculation in - # specific terminals. - # - # Note: This issue only seems to affect - # URxvt. - ((term_run != 1)) && get_term + "Maui"*) + set_colors 6 7 + read -rd '' ascii_data <<'EOF' +${c1} `.-://////:--` + .:/oooooooooooooooo+:. + `:+ooooooooooooooooooooooo:` + `:oooooooooooooooooooooooooooo/` + ..```-oooooo/-`` `:oooooo+:.` `-- + :. +oo+-` /ooo/` -/ + -o. `o+- +o/` -o: +`oo` ::` :o/ `+. .+o` /oo. +/o+ . -+oo- ` /oo/ `ooo/ ++o- /ooo+` .+ooo. :ooo+ +++ .+oooo: -oooo+ `oooo+ +:. .oooooo` :ooooo- :oooo: +` .oooooo: :ooooo+ `ooo+-` + .+oooooo` -oooooo: `o/- + +oooooo: .ooooooo. + /ooooooo` /ooooooo/ .. + `:oooooooo/:::/ooooooooo+:--:/:` + `:+oooooooooooooooooooooo+:` + .:+oooooooooooooooo+:. + `.-://////:-.` +EOF + ;; - case "$term" in - "URxvt"*) - border="$(xrdb -query | awk -F ':' '/^(URxvt|\*).internalBorder/ {printf $2; exit}')" + "Mer"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} dMs + .-` + `y`-o+` + ``NMMy + .--`:++. + .hNNNNs + /MMMMMN + `ommmd/ +/ + ```` +/ + `:+sssso/-` + .-::. `-::-` `smNMNmdmNMNd/ .://-` +.ymNMNNdmNMMNm+` -dMMh:.....+dMMs `sNNMMNo +dMN+::NMMy::hMM+ mMMo `ohhy/ `dMM+ yMMy::- +MMm yMM- :MMs NMN` `:::::--sMMh dMM` +MMm yMM- -MMs mMM+ `ymmdsymMMMs dMM` +NNd sNN- -NNs -mMNs-.--..:dMMh` dNN +--- .--` `--. .smMMmdddmMNdo` .-- + ./ohddds+:` + +h- `.:-. + ./`.dMMMN+ + +MMMMMd + `+dmmy- + ``` .+` + .dMNo-y. + `hmm/ + .:` + dMs +EOF ;; - esac -} -dynamic_prompt() { - case "$image_backend" in - "ascii") printf "\n" ;; - "off") return ;; - *) - get_term_padding - lines="$(((border + height + yoffset) / font_height))" - image_prompt="on" + "Minix"*) + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c2} -sdhyo+:-` -/syymm: + sdyooymmNNy. `` .smNmmdysNd + odyoso+syNNmysoyhhdhsoomNmm+/osdm/ + :hhy+-/syNNmddhddddddmNMNo:sdNd: + `smNNdNmmNmddddddddddmmmmmmmy` + `ohhhhdddddmmNNdmddNmNNmdddddmdh- + odNNNmdyo/:/-/hNddNy-`..-+ydNNNmd: + `+mNho:` smmd/ sNNh :dmms` -+ymmo. +-od/ -m${c1}mm${c2}mo -NN+ +m${c1}mm${c2}m- yms: ++sms -.` :so: .NN+ :os/ .-`mNh: +.-hyh+:////- -sNNd:` .--://ohNs- + `:hNNNNNNNMMd/sNMmhsdMMh/ymmNNNmmNNy/ + -+sNNNNMMNNNsmNMo: :NNmymNNNNMMMms: + //oydNMMMMydMMNysNMMmsMMMMMNyo/` + ../-yNMMy--/::/-.sMMmos+.` + -+oyhNsooo+omy/``` + `::ohdmds-` +EOF ;; - esac - # If the info is higher than the ascii/image place the prompt - # based on the info height instead of the ascii/image height. - if ((lines < info_height)); then - [[ "$image_prompt" ]] && printf "\n" - return - else - [[ "$image_prompt" ]] && printf "%b\n" "$line_breaks" - lines="$((lines - info_height + 1))" - fi + "Linux Mint"* | "LinuxMint"*) + set_colors 2 7 + read -rd '' ascii_data <<'EOF' +${c1}MMMMMMMMMMMMMMMMMMMMMMMMMmds+. +MMm----::-://////////////oymNMd+` +MMd ${c2}/++ ${c1}-sNMd: +MMNso/` ${c2}dMM `.::-. .-::.` ${c1}.hMN: +ddddMMh ${c2}dMM :hNMNMNhNMNMNh: ${c1}`NMm + NMm ${c2}dMM .NMN/-+MMM+-/NMN` ${c1}dMM + NMm ${c2}dMM -MMm `MMM dMM. ${c1}dMM + NMm ${c2}dMM -MMm `MMM dMM. ${c1}dMM + NMm ${c2}dMM .mmd `mmm yMM. ${c1}dMM + NMm ${c2}dMM` ..` ... ydm. ${c1}dMM + hMM- ${c2}+MMd/-------...-:sdds ${c1}dMM + -NMm- ${c2}:hNMNNNmdddddddddy/` ${c1}dMM + -dMNs-${c2}``-::::-------.`` ${c1}dMM + `/dMNmy+/:-------------:/yMMM + ./ydNMMMMMMMMMMMMMMMMMMMMM + .MMMMMMMMMMMMMMMMMMM +EOF + ;; - # Set the prompt location. - if ((lines > 1)); then - case "$kernel_name" in - "OpenBSD") tput cud "$lines" ;; - *) printf "%b" "\e[${lines}B" ;; - esac - fi -} + "MX"*) + set_colors 4 6 7 + read -rd '' ascii_data <<'EOF' +${c3}MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNMMMMMMMMM +MMMMMMMMMMNs..yMMMMMMMMMMMMMm: +NMMMMMMM +MMMMMMMMMN+ :mMMMMMMMMMNo` -dMMMMMMMM +MMMMMMMMMMMs. `oNMMMMMMh- `sNMMMMMMMMM +MMMMMMMMMMMMN/ -hMMMN+ :dMMMMMMMMMMM +MMMMMMMMMMMMMMh- +ms. .sMMMMMMMMMMMMM +MMMMMMMMMMMMMMMN+` ` +NMMMMMMMMMMMMMM +MMMMMMMMMMMMMMNMMd: .dMMMMMMMMMMMMMMM +MMMMMMMMMMMMm/-hMd- `sNMMMMMMMMMMMMM +MMMMMMMMMMNo` -` :h/ -dMMMMMMMMMMMM +MMMMMMMMMd: /NMMh- `+NMMMMMMMMMM +MMMMMMMNo` :mMMN+` `-hMMMMMMMM +MMMMMMh. `oNMMd: `/mMMMMMM +MMMMm/ -hMd- `sNMMMM +MMNs` - :dMMM +Mm: `oMM +MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM +EOF + ;; -old_functions() { - # Deprecated functions. - # Neofetch 2.0 changed the names of a few variables. - # This function adds backwards compatibility for the - # old variable names. - if type printinfo >/dev/null 2>&1; then - print_info() { printinfo ; } - get_wmtheme() { get_wm_theme; wmtheme="$wm_theme"; } - get_termfont() { get_term_font; termfont="$term_font"; } - get_localip() { get_local_ip; localip="$local_ip"; } - get_publicip() { get_public_ip; publicip="$public_ip"; } - get_linebreak() { get_line_break; linebreak="$line_break"; } - fi + "NetBSD"*) + set_colors 5 7 + read -rd '' ascii_data <<'EOF' +${c1} `-/oshdmNMNdhyo+:-` +${c2}y${c1}/s+:-`` `.-:+oydNMMMMNhs/-`` +${c2}-m+${c1}NMMMMMMMMMMMMMMMMMMMNdhmNMMMmdhs+/-` + ${c2}-m+${c1}NMMMMMMMMMMMMMMMMMMMMmy+:` + ${c2}-N/${c1}dMMMMMMMMMMMMMMMds:` + ${c2}-N/${c1}hMMMMMMMMMmho:` + ${c2}-N/${c1}-:/++/:.` +${c2} :M+ + :Mo + :Ms + :Ms + :Ms + :Ms + :Ms + :Ms + :Ms + :Ms +EOF + ;; - get_birthday() { get_install_date; birthday="$install_date"; } -} + "Netrunner"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} .:oydmMMMMMMmdyo:` + -smMMMMMMMMMMMMMMMMMMds- + +mMMMMMMMMMMMMMMMMMMMMMMMMd+ + /mMMMMMMMMMMMMMMMMMMMMMMMMMMMMm/ + `hMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMy` + .mMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMd` + dMMMMMMMMMMMMMMMMMMMMMMNdhmMMMMMMMMMMh ++MMMMMMMMMMMMMNmhyo+/-. -MMMMMMMMMMMM/ +mMMMMMMMMd+:.` `mMMMMMMMMMMMMd +MMMMMMMMMMMdy/. yMMMMMMMMMMMMMM +MMMMMMMMMMMMMMMNh+` +MMMMMMMMMMMMMMM +mMMMMMMMMMMMMMMMMMs -NMMMMMMMMMMMMMMd ++MMMMMMMMMMMMMMMMMN. `mMMMMMMMMMMMMMMM/ + dMMMMMMMMMMMMMMMMMy hMMMMMMMMMMMMMMMh + `dMMMMMMMMMMMMMMMMM-+MMMMMMMMMMMMMMMd` + `hMMMMMMMMMMMMMMMMmMMMMMMMMMMMMMMMy + /mMMMMMMMMMMMMMMMMMMMMMMMMMMMMm: + +dMMMMMMMMMMMMMMMMMMMMMMMMd/ + -odMMMMMMMMMMMMMMMMMMdo- + `:+ydmNMMMMNmhy+-` +EOF + ;; -old_options() { - [[ -n "$osx_buildversion" ]] && \ - err "Config: \$osx_buildversion is deprecated, use \$distro_shorthand instead." - [[ -n "$osx_codename" ]] && \ - err "Config: \$osx_codename is deprecated, use \$distro_shorthand instead." - [[ "$cpu_cores" == "on" ]] && \ - err "Config: cpu_cores='on' is deprecated, use cpu_cores='logical|physical|off' instead." - [[ -n "$image" ]] && \ - { err "Config: \$image is deprecated, use \$image_source instead."; image_source="$image"; } + "Nitrux"*) + set_colors 4 + read -rd '' ascii_data <<'EOF' +${c1}`:/. +`/yo +`/yo +`/yo .+:. +`/yo .sys+:.` +`/yo `-/sys+:.` +`/yo ./sss+:.` +`/yo .:oss+:-` +`/yo ./o///:-` +`/yo `.-:///////:` +`/yo `.://///++//-`` +`/yo `.-:////++++/-` +`/yo `-://///++o+/-` +`/yo `-/+o+++ooo+/-` +`/s+:+oooossso/.` +`//+sssssso:. +`+syyyy+:` +:+s+- +EOF + ;; - # All progress_ variables were changed to bar_. - [[ -n "$progress_char" ]] && \ - err "Config: \$progress_char is deprecated, use \$bar_char_{elapsed,total} instead." - [[ -n "$progress_border" ]] && \ - { err "Config: \$progress_border is deprecated, use \$bar_border instead."; \ - bar_border="$progress_border"; } - [[ -n "$progress_length" ]] && \ - { err "Config: \$progress_length is deprecated, use \$bar_length instead."; \ - bar_length="$progress_length"; } - [[ -n "$progress_color_elapsed" ]] && \ - { err "Config: \$progress_color_elapsed is deprecated, use \$bar_color_elapsed instead."; \ - bar_color_elapsed="$progress_color_elapsed"; } - [[ -n "$progress_color_total" ]] && \ - { err "Config: \$progress_color_total is deprecated, use \$bar_color_total instead."; \ - bar_color_total="$progress_color_total"; } + "nixos_small") + set_colors 4 6 + read -rd '' ascii_data <<'EOF' + ${c1}\\\\ \\\\ // + ==\\\\__\\\\/ // + // \\\\// +==// //== + //\\\\___// +// /\\\\ \\\\== + // \\\\ \\\\ +EOF + ;; - # All cpufreq values were changed in 3.0. - [[ "$speed_type" == "current" ]] && \ - err "Config: speed_type='current' is deprecated, use speed_type='scaling_cur_freq' instead." - [[ "$speed_type" == "min" ]] && \ - err "Config: speed_type='min' is deprecated, use speed_type='scaling_min_freq' instead." - [[ "$speed_type" == "max" ]] && \ - err "Config: speed_type='max' is deprecated, use speed_type='scaling_max_freq' instead." - [[ "$speed_type" == "bios" ]] && \ - err "Config: speed_type='bios' is deprecated, use speed_type='bios_limit' instead." + "NixOS"*) + set_colors 4 6 + read -rd '' ascii_data <<'EOF' +${c1} ::::. ${c2}'::::: ::::' +${c1} '::::: ${c2}':::::. ::::' +${c1} ::::: ${c2}'::::.::::: +${c1} .......:::::..... ${c2}:::::::: +${c1} ::::::::::::::::::. ${c2}:::::: ${c1}::::. + ::::::::::::::::::::: ${c2}:::::. ${c1}.::::' +${c2} ..... ::::' ${c1}:::::' +${c2} ::::: '::' ${c1}:::::' +${c2} ........::::: ' ${c1}:::::::::::. +${c2}::::::::::::: ${c1}::::::::::::: +${c2} ::::::::::: ${c1}.. ${c1}::::: +${c2} .::::: ${c1}.::: ${c1}::::: +${c2} .::::: ${c1}::::: ${c1}''''' ${c2}..... + ::::: ${c1}':::::. ${c2}......:::::::::::::' + ::: ${c1}::::::. ${c2}':::::::::::::::::' +${c1} .:::::::: ${c2}':::::::::: +${c1} .::::''::::. ${c2}'::::. +${c1} .::::' ::::. ${c2}'::::. +${c1} .:::: :::: ${c2}'::::. +EOF + ;; - # Ascii_logo_size was removed in 3.0. - [[ "$ascii_logo_size" ]] && \ - err "Config: ascii_logo_size is deprecated, use ascii_distro='{distro}_small' instead." + "Nurunner"*) + set_colors 4 + read -rd '' ascii_data <<'EOF' +${c1} ,xc + ;00cxXl + ;K0, .xNo. + :KO' .lXx. + cXk. ;xl cXk. + cXk. ;k:.,xo. cXk. + .lXx. :x::0MNl,dd. :KO, + .xNx. cx;:KMMMMMNo'dx. ;KK; + .dNl. cd,cXMMMMMMMMMWd,ox' 'OK: +;WK. 'K,.KMMMMMMMMMMMMMWc.Kx lMO + 'OK: 'dl'xWMMMMMMMMMM0::x: 'OK: + .kNo .xo'xWMMMMMM0;:O: ;KK; + .dXd. .do,oNMMO;ck: ;00, + oNd. .dx,;'cO; ;K0, + oNx. okk; ;K0, + lXx. :KO' + cKk' cXk. + ;00:lXx. + ,kd. +EOF + ;; - # $start and $end were replaced with ${block_range[@]} in 3.0. - [[ "$start" && "$end" ]] && \ - { err "Config: \$start and \$end are deprecated, use block_range=(0 7) instead."; \ - block_range=("$start" "$end"); } + "NuTyX"*) + set_colors 4 1 + read -rd '' ascii_data <<'EOF' +${c1} . + . + ... + ... + .... .........--. + ..-++-----....--++++++---. + .-++++++-. .-++++++++++++-----.. + .--... .++..-+++--.....-++++++++++--.. + . .-+-. .**- .... ..-+----.. + .+++. .*+. + -++-----. + .+++++- ++. .*+. .....-+++-----. + -+++-++. .+. .-+***++***++--++++. . + -+-. -- -. -*- ...... ..--. +.-. .+- . -+. +. .+- +. + -- -- + -+----. .- + -++-.+. . + .++. -- + +. ----. + . .+. .. + - . + . +EOF + ;; - # Fahrenheit support was added to CPU so the options were changed. - [[ "$cpu_temp" == "on" ]] && \ - { err "Config: cpu_temp='on' is deprecated, use cpu_temp='C' or 'F' instead."; - cpu_temp="C"; } + "OBRevenge"*) + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c1} __ __ + _@@@@ @@@g_ + _@@@@@@ @@@@@@ + _@@@@@@M W@@@@@@_ + j@@@@P ^W@@@@ + @@@@L____ _____Q@@@@ +Q@@@@@@@@@@j@@@@@@@@@@ +@@@@@ T@j@ T@@@@@ +@@@@@ ___Q@J@ _@@@@@ +@@@@@fMMM@@j@jggg@@@@@@ +@@@@@ j@j@^MW@P @@@@ +Q@@@@@ggg@@f@ @@@@@@L +^@@@@WWMMP ^ Q@@@@ + @@@@@_ _@@@@l + W@@@@@g_____g@@@@@P + @@@@@@@@@@@@@@@@l + ^W@@@@@@@@@@@P + ^TMMMMTll +EOF + ;; - # Birthday was renamed to Install Date in 3.0 - [[ -n "$birthday_time" ]] && \ - { err "Config: \$birthday_time is deprecated, use \3install_time instead."; \ - install_time="$birthday_time"; } + "openbsd_small") + set_colors 3 7 6 1 8 + read -rd '' ascii_data <<'EOF' +${c1} _____ + \\- -/ + \\_/ \\ + | ${c2}O O${c1} | + |_ < ) 3 ) + / \\ / + /-_____-\\ +EOF + ;; - # Scrot dir was removed in 3.1.0. - [[ -n "$scrot_dir" ]] && scrot_dir= + "OpenBSD"*) + set_colors 3 7 6 1 8 + read -rd '' ascii_data <<'EOF' + ${c3} _ + (_) +${c1} | . +${c1} . |L /| . ${c3} _ +${c1} _ . |\ _| \--+._/| . ${c3}(_) +${c1} / ||\| Y J ) / |/| ./ + J |)'( | ` F`.'/ ${c3} _ +${c1} -<| F __ .-< ${c3}(_) +${c1} | / .-'${c3}. ${c1}`. /${c3}-. ${c1}L___ + J \\ < ${c3}\ ${c1} | | ${c5}O${c3}\\${c1}|.-' ${c3} _ +${c1} _J \\ .- \\${c3}/ ${c5}O ${c3}| ${c1}| \\ |${c1}F ${c3}(_) +${c1} '-F -<_. \\ .-' `-' L__ +__J _ _. >-' ${c1})${c4}._. ${c1}|-' +${c1} `-|.' /_. ${c4}\_| ${c1} F + /.- . _.< + /' /.' .' `\\ + /L /' |/ _.-'-\\ + /'J ___.---'\| + |\ .--' V | `. ` + |/`. `-. `._) + / .-.\\ + \\ ( `\\ + `.\ +EOF + ;; - # cpu_shorthand was deprecated in 3.3.0 - [[ -n "$cpu_shorthand" ]] && \ - { err "Config: \$cpu_shorthand is deprecated, use \$cpu_brand, \$cpu_cores, and - \$cpu_speed instead."; } -} + "OpenIndiana"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c2} .sy/ + .yh+ -cache_uname() { - # Cache the output of uname so we don't - # have to spawn it multiple times. - IFS=" " read -ra uname <<< "$(uname -sr)" + ${c1}-+syyyo+- ${c2} /+. + ${c1}+ddo/---/sdh/ ${c2} ym- + ${c1}`hm+ `sms${c2} ym-```````.-. + ${c1}sm+ sm/ ${c2} ym- +s + ${c1}hm. /mo ${c2} ym- /h + ${c1}omo ym: ${c2} ym- `os` + ${c1}smo` .ym+ ${c2} ym- .os- + `` ${c1}:ymy+///oyms- ${c2} ym- .+s+. + ..` ${c1}`:+oo+/-` ${c2} -//oyo- + -:` .:oys/. ++- `./oyys/. +h+` `.-:+oyyyo/-` +`/ossssysso+/-.` +EOF + ;; - kernel_name="${uname[0]}" - kernel_version="${uname[1]}" -} + "OpenMandriva"*) + set_colors 4 3 + read -rd '' ascii_data <<'EOF' +${c2} `` + `-. +${c1} ` ${c2}.--- +${c1} -/ ${c2}-::--` +${c1} `++ ${c2}`----...```-:::::. +${c1} `os. ${c2}.::::::::::::::-``` ` ` +${c1} +s+ ${c2}.::::::::::::::::---...--` +${c1}-ss: ${c2}`-::::::::::::::::-.``.`` +${c1}/ss- ${c2}.::::::::::::-.`` ` +${c1}+ss: ${c2}.::::::::::::- +${c1}/sso ${c2}.::::::-::::::- +${c1}.sss/ ${c2}-:::-.` .::::: +${c1} /sss+. ${c2}..`${c1} `--` ${c2}.::: +${c1} -ossso+/:://+/-` ${c2}.:` +${c1} -/+ooo+/-. ${c2}` +EOF + ;; -convert_time() { - # Convert ls timestamp to 'Tue 06 Dec 2016 4:58 PM' format. - year="$1" - day="${3#0}" + "OpenWrt"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} _______ +| |.-----.-----.-----. +| - || _ | -__| | +|_______|| __|_____|__|__| + |__| + ________ __ +| | | |.----.| |_ +| | | || _|| _| +|________||__| |____| +EOF + ;; - # Split time into hours/minutes. - hour="${4/:*}" - min="${4/${hour}}" + "Open Source Media Center"* | "osmc") + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} -+shdmNNNNmdhs+- + .+hMNho/:..``..:/ohNMh+. + :hMdo. .odMh: + -dMy- -yMd- + sMd- -dMs + hMy +. .+ yMh + yMy dMs. .sMd yMy +:Mm dMNMs` `sMNMd `mM: +yM+ dM//mNs``sNm//Md +My +mM- dM: +NNNN+ :Md -Mm +mM- dM: `oNN+ :Md -Mm +yM+ dM/+NNo` :Md +My +:Mm` dMMNs` :Md `mM: + yMy dMs` -ms yMy + hMy +. yMh + sMd- -dMs + -dMy- -yMd- + :hMdo. .odMh: + .+hMNho/:..``..:/ohNMh+. + -+shdmNNNNmdhs+- +EOF + ;; - # Get month. (Month code is used for day of week) - # Due to different versions of 'ls', the month can be 1, 01 or Jan. - case "$2" in - 1 | 01 | "Jan") month="Jan"; month_code=0 ;; - 2 | 02 | "Feb") month="Feb"; month_code=3 ;; - 3 | 03 | "Mar") month="Mar"; month_code=3 ;; - 4 | 04 | "Apr") month="Apr"; month_code=6 ;; - 5 | 05 | "May") month="May"; month_code=1 ;; - 6 | 06 | "Jun") month="Jun"; month_code=4 ;; - 7 | 07 | "Jul") month="Jul"; month_code=6 ;; - 8 | 08 | "Aug") month="Aug"; month_code=2 ;; - 9 | 09 | "Sep") month="Sep"; month_code=5 ;; - 10 | "Oct") month="Oct"; month_code=0 ;; - 11 | "Nov") month="Nov"; month_code=3 ;; - 12 | "Dec") month="Dec"; month_code=5 ;; - esac + "Oracle"*) + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c1} + `-/+++++++++++++++++/-.` + `/syyyyyyyyyyyyyyyyyyyyyyys/. + :yyyyo/-...............-/oyyyy/ + /yyys- .oyyy+ +.yyyy` `syyy- +:yyyo /yyy/ +.yyyy` `syyy- + /yyys. .oyyyo + /yyyyo:-...............-:oyyyy/` + `/syyyyyyyyyyyyyyyyyyyyyyys+. + `.:/+ooooooooooooooo+/:.` +EOF + ;; - # Get leap year. - # Source: http://stackoverflow.com/questions/725098/leap-year-calculation - [[ "$((year % 4))" == 0 && "$((year % 100))" != 0 || "$((year % 400))" == 0 ]] && \ - [[ "$month" =~ (Jan|Feb) ]] && \ - leap_code=1 + "PacBSD"*) + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c1} :+sMs. + `:ddNMd- -o--` + -sMMMMh: `+N+`` + yMMMMMs` .....-/-... `mNh/ + yMMMMMmh+-`:sdmmmmmmMmmmmddy+-``./ddNMMm + yNMMNMMMMNdyyNNMMMMMMMMMMMMMMMhyshNmMMMm + :yMMMMMMMMMNdooNMMMMMMMMMMMMMMMMNmy:mMMd + +MMMMMMMMMmy:sNMMMMMMMMMMMMMMMMMMMmshs- + :hNMMMMMMN+-+MMMMMMMMMMMMMMMMMMMMMMMs. + .omysmNNhy/+yNMMMMMMMMMMNMMMMMMMMMNdNNy- + /hMM:::::/hNMMMMMMMMMMMm/-yNMMMMMMN.mMNh` +.hMMMMdhdMMMMMMMMMMMMMMmo `sMMMMMMN mMMm- +:dMMMMMMMMMMMMMMMMMMMMMdo+ oMMMMMMN`smMNo` +/dMMMMMMMMMMMMMMMMMMMMMNd/` :yMMMMMN:-hMMM. +:dMMMMMMMMMMMMMMMMMMMMMNh` oMMMMMMNo/dMNN` +:hMMMMMMMMMMMMMMMMMMMMMMNs--sMMMMMMMNNmy++` + sNMMMMMMMMMMMMMMMMMMMMMMMmmNMMMMMMNho::o. + :yMMMMMMMMMMMMMNho+sydNNNNNNNmysso/` -// + /dMMMMMMMMMMMMMs- ````````..`` + .oMMMMMMMMMMMMNs` ./y:` + +dNMMNMMMMMMMmy` ``./ys. + `/hMMMMMMMMMMMNo-`` `.+yy+-` + `-/hmNMNMMMMMMmmddddhhy/-` + `-+oooyMMMdsoo+/:. +EOF + ;; - # Calculate day of week. - # Source: http://blog.artofmemory.com/how-to-calculate-the-day-of-the-week-4203.html - year_code="$((${year/??} + (${year/??} / 4) % 7))" - week_day="$(((year_code + month_code + 6 + day - leap_code) % 7))" + "Parabola"*) + set_colors 5 7 + read -rd '' ascii_data <<'EOF' +${c1} `.-. `. + `.` `:++. `-+o+. + `` `:+/. `:+/. `-+oooo+ + ``-::-.:+/. `:+/. `-+oooooo+ + `.-:///- ..` .-. `-+oooooooo- + `..-..` `+ooooooooo: +`` :oooooooo/ + `ooooooo: + `oooooo: + -oooo+. + +ooo/` + -ooo- + `+o/. + /+- + //` + -. +EOF + ;; - case "$week_day" in - 0) week_day="Sun" ;; - 1) week_day="Mon" ;; - 2) week_day="Tue" ;; - 3) week_day="Wed" ;; - 4) week_day="Thu" ;; - 5) week_day="Fri" ;; - 6) week_day="Sat" ;; - esac + "Pardus"*) + set_colors 3 7 6 1 8 + read -rd '' ascii_data <<'EOF' +${c1} .smNdy+- `.:/osyyso+:.` -+ydmNs. +/Md- -/ymMdmNNdhso/::/oshdNNmdMmy/. :dM/ +mN. oMdyy- -y `-dMo .Nm +.mN+` sMy hN+ -: yMs `+Nm. + `yMMddMs.dy `+` sMddMMy` + +MMMo .` . oMMM+ + `NM/ `````.` `.````` +MN` + yM+ `.-:yhomy ymohy:-.` +My + yM: yo oy :My + +Ms .N` `N. +h sM+ + `MN - -::::::- : :o:+`NM` + yM/ sh -dMMMMd- ho +y+My + .dNhsohMh-//: /mm/ ://-yMyoshNd` + `-ommNMm+:/. oo ./:+mMNmmo:` + `/o+.-somNh- :yy: -hNmos-.+o/` + ./` .s/`s+sMdd+``+ddMs+s`/s. `/. + : -y. -hNmddmNy. .y- : + -+ `..` +- +EOF + ;; - # Convert 24 hour time to 12 hour time + AM/PM. - case "$install_time_format" in - "12h") - case "$hour" in - [0-9] | 0[0-9] | 1[0-1]) time="${hour/00/12}${min} AM" ;; - *) time="$((hour - 12))${min} PM" ;; - esac + "Parrot"*) + set_colors 6 7 + read -rd '' ascii_data <<'EOF' +${c1} `:oho/-` +`mMMMMMMMMMMMNmmdhy- + dMMMMMMMMMMMMMMMMMMs` + +MMsohNMMMMMMMMMMMMMm/ + .My .+dMMMMMMMMMMMMMh. + + :NMMMMMMMMMMMMNo + `yMMMMMMMMMMMMMm: + /NMMMMMMMMMMMMMy` + .hMMMMMMMMMMMMMN+ + ``-NMMMMMMMMMd- + /MMMMMMMMMMMs` + mMMMMMMMsyNMN/ + +MMMMMMMo :sNh. + `NMMMMMMm -o/ + oMMMMMMM. + `NMMMMMM+ + +MMd/NMh + mMm -mN` + /MM `h: + dM` . + :M- + d: + -+ + - +EOF ;; - *) time="$4" ;; - esac - # Toggle showing the time. - [[ "$install_time" == "off" ]] && unset time + "Parsix"*) + set_colors 3 1 7 8 + read -rd '' ascii_data <<'EOF' + ${c2}-/+/:. + ${c2}.syssssys. + ${c1}.--. ${c2}ssssssssso${c1} ..--. + :++++++: ${c2}+ssssssss+${c1} ./++/+++: + /+++++++++.${c2}.yssooooy`${c1}-+///////o- + /++++++++++.${c2}+soooos:${c1}:+////////+- + :+++++////o-${c2}oooooo-${c1}+/////////- + `-/++//++-${c4}.-----.-${c1}:+/////:- + ${c3}-://::--${c1}-:/:${c4}.--.````.--.${c1}:::-${c3}--::::::. +${c3}-/:::::::://:${c4}.:-` `-:${c3}`:/:::::::--/- +${c3}/::::::::::/-${c4}--. .-.${c3}-/://///::::/ +${c3}-/:::::::::/:${c4}`:-. .-:${c3}`:///////////- + `${c3}-::::--${c1}.-://.${c4}---....---${c1}`:+/:-${c3}--::::-` + ${c1}-/+///+o/-${c4}.----.${c1}.:oo+++o+. + ${c1}-+/////+++o:${c2}syyyyy.${c1}o+++++++++: + ${c1}.+////+++++-${c2}+sssssy+${c1}.++++++++++\ + ${c1}.+:/++++++.${c2}.yssssssy-${c1}`+++++++++: + ${c1}:/+++++- ${c2}+sssssssss ${c1}-++++++- + ${c1}`--` ${c2}+sssssssso ${c1}`--` + ${c2}+sssssy+` + ${c2}`.::-` +EOF + ;; - # Print the install date. - printf "%s" "$week_day $day $month $year $time" -} + "PCBSD"* | "TrueOS"*) + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c1} .. + s. + +y + yN + -MN `. + :NMs `m + .yMMm` `No + `-/+++sdMMMNs+-`+Ms + `:oo+-` .yMMMMy` `-+oNMh + -oo- +NMMMM/ oMMh- + .s+` ` oMMMMM/ - oMMMhy. + +s`- :: :MMMMMd -o `mMMMy`s+ + y+ h .Ny+oNMMMMMN/ sh+NMMMMo +y + s+ .ds -NMMMMMMMMMMNdhdNMMMMMMh` +s +-h .NM` `hMMMMMMMMMMMMMMNMMNy: h- +y- hMN` hMMmMMMMMMMMMNsdMNs. -y +m` mMMy` oMMNoNMMMMMMo` sMMMo `m +m` :NMMMdyydMMMMo+MdMMMs sMMMd` `m +h- `+ymMMMMMMMM--M+hMMN/ +MMMMy -h +:y `.sMMMMM/ oMM+.yMMNddNMMMMMm y: + y: `s dMMN- .MMMM/ :MMMMMMMMMMh :y + `h: `mdmMMM/ yMMMMs sMMMMMMMMN- :h` + so -NMMMN /mmd+ `dMMMMMMMm- os + :y: `yMMM` `+NMMMMMMNo`:y: + /s+`.omy /NMMMMMNh/.+s: + .+oo:-. /mdhs+::oo+. + -/o+++++++++++/- +EOF + ;; -get_ppid() { - # Get parent process ID of PID. - case "$os" in - "Windows") - ppid="$(ps -p "${1:-$PPID}" | awk '{printf $2}')" - ppid="${ppid/'PPID'}" + "PCLinuxOS"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' + ${c1}mhhhyyyyhhhdN + dyssyhhhhhhhhhhhssyhN + Nysyhhyo/:-.....-/oyhhhssd + Nsshhy+. `/shhysm + dohhy/ -shhsy + dohhs` /hhys +N+hho ${c2}+ssssss+- .+syhys+ ${c1}/hhsy +ohhh` ${c2}ymmo++hmm+`smmy/::+y` ${c1}shh+ ++hho ${c2}ymm- /mmy+mms ${c1}:hhod +/hh+ ${c2}ymmhhdmmh.smm/ ${c1}.hhsh ++hhs ${c2}ymm+::-` /mmy` ` ${c1}/hh+m +yyhh- ${c2}ymm- /dmdyosyd` ${c1}`yhh+ + ohhy` ${c2}://` -/+++/- ${c1}ohhom + N+hhy- `shhoh + sshho. `+hhyom + dsyhhs/. `:ohhhoy + dysyhhhso///://+syhhhssh + dhyssyhhhhhhyssyyhN + mddhdhdmN +EOF ;; - "Linux") - ppid="$(grep -i -F "PPid:" "/proc/${1:-$PPID}/status")" - ppid="$(trim "${ppid/PPid:}")" + "Peppermint"*) + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c1} 8ZZZZZZ${c2}MMMMM +${c1} .ZZZZZZZZZ${c2}MMMMMMM. +${c2} MM${c1}ZZZZZZZZZ${c2}MMMMMMM${c1}ZZZZ +${c2} MMMMM${c1}ZZZZZZZZ${c2}MMMMM${c1}ZZZZZZZM +${c2} MMMMMMM${c1}ZZZZZZZ${c2}MMMM${c1}ZZZZZZZZZ. +${c2} MMMMMMMMM${c1}ZZZZZZ${c2}MMM${c1}ZZZZZZZZZZZI +${c2}MMMMMMMMMMM${c1}ZZZZZZ${c2}MM${c1}ZZZZZZZZZZ${c2}MMM +${c1}.ZZZ${c2}MMMMMMMMMM${c1}IZZ${c2}MM${c1}ZZZZZ${c2}MMMMMMMMM +${c1}ZZZZZZZ${c2}MMMMMMMM${c1}ZZ${c2}M${c1}ZZZZ${c2}MMMMMMMMMMM +${c1}ZZZZZZZZZZZZZZZZ${c2}M${c1}Z${c2}MMMMMMMMMMMMMMM +${c1}.ZZZZZZZZZZZZZ${c2}MMM${c1}Z${c2}M${c1}ZZZZZZZZZZ${c2}MMMM +${c1}.ZZZZZZZZZZZ${c2}MMM${c1}7ZZ${c2}MM${c1}ZZZZZZZZZZ7${c2}M +${c1} ZZZZZZZZZ${c2}MMMM${c1}ZZZZ${c2}MMMM${c1}ZZZZZZZ77 +${c2} MMMMMMMMMMMM${c1}ZZZZZ${c2}MMMM${c1}ZZZZZ77 +${c2} MMMMMMMMMM${c1}7ZZZZZZ${c2}MMMMM${c1}ZZ77 +${c2} .MMMMMMM${c1}ZZZZZZZZ${c2}MMMMM${c1}Z7Z +${c2} MMMMM${c1}ZZZZZZZZZ${c2}MMMMMMM +${c1} NZZZZZZZZZZZ${c2}MMMMM +${c1} ZZZZZZZZZ${c2}MM) +EOF ;; - *) - ppid="$(ps -p "${1:-$PPID}" -o ppid=)" + "Pop!_OS"*) + set_colors 6 7 + read -rd '' ascii_data <<'EOF' +${c1} ///////////// + ///////////////////// + ///////${c2}*767${c1}//////////////// + //////${c2}7676767676*${c1}////////////// + /////${c2}76767${c1}//${c2}7676767${c1}////////////// + /////${c2}767676${c1}///${c2}*76767${c1}/////////////// + ///////${c2}767676${c1}///${c2}76767${c1}.///${c2}7676*${c1}/////// +/////////${c2}767676${c1}//${c2}76767${c1}///${c2}767676${c1}//////// +//////////${c2}76767676767${c1}////${c2}76767${c1}///////// +///////////${c2}76767676${c1}//////${c2}7676${c1}////////// +////////////,${c2}7676${c1},///////${c2}767${c1}/////////// +/////////////*${c2}7676${c1}///////${c2}76${c1}//////////// +///////////////${c2}7676${c1}//////////////////// + ///////////////${c2}7676${c1}///${c2}767${c1}//////////// + //////////////////////${c2}'${c1}//////////// + //////${c2}.7676767676767676767,${c1}////// + /////${c2}767676767676767676767${c1}///// + /////////////////////////// + ///////////////////// + ///////////// +EOF ;; - esac - - printf "%s" "$ppid" -} -get_process_name() { - # Get PID name. - case "$os" in - "Windows") - name="$(ps -p "${1:-$PPID}" | awk '{printf $8}')" - name="${name/'COMMAND'}" - name="${name/*\/}" + "Porteus"*) + set_colors 6 7 + read -rd '' ascii_data <<'EOF' +${c1} `.-:::-.` + -+ydmNNNNNNNmdy+- + .+dNmdhs+//////+shdmdo. + .smmy+-` ./sdy: + `omdo. `.-/+osssso+/-` `+dy. + `yms. `:shmNmdhsoo++osyyo-``oh. + hm/ .odNmds/.` ``.....:::-+s +/m: `+dNmy:` `./oyhhhhyyooo++so +ys `yNmy- .+hmmho:-.` ``` +s: yNm+` .smNd+. +`` /Nm: +dNd+` + yN+ `smNy. + dm oNNy` + hy -mNm. + +y oNNo + `y` sNN: + `: +NN: + ` .mNo + /mm` + /my` + .sy` + .+: + ` +EOF ;; - "Linux") - name="$(< "/proc/${1:-$PPID}/comm")" + "PostMarketOS"*) + set_colors 2 7 + read -rd '' ascii_data <<'EOF' +${c1} ss + `hMMh` + .dMMMMd. + -NMMMMMMN- + /MMMMMMMMMN/ + hMMMMMMMMMMMo + y+`mMMmdNMMMMMMy + `dMM-.-:- .mMMMMMMh` + .mMMMMMMd` `dMMMMMMm. + :NMMMMMMy yMMMMMMN: + /MMMMMMMo oMMMmdmN/ + oMMMMMMM/ /MN.-/:-. + `yMMMMMMN- -:.NMMMMy` + `dMMMMMMM- -/////////////dMMMMMMd` + -mMMMMMMMMN+`sMMMMMMMMMMMMMMMMMMMMm- + :NMMMMMMMMMMM/ yMMMMMMMMMMMMMMMMMMMMN: ++MMMMMMMMMMMh.:mMMMMMMMMMMMMMMMMMMMMMMM+ +EOF ;; - *) - name="$(ps -p "${1:-$PPID}" -o comm=)" + "Puppy"* | "Quirky Werewolf"* | "Precise Puppy"*) + set_colors 4 7 + read -rd '' ascii_data <<'EOF' +${c1} `-/osyyyysosyhhhhhyys+- + -ohmNNmh+/hMMMMMMMMNNNNd+dMMMMNM+ + yMMMMNNmmddo/NMMMNNNNNNNNNo+NNNNNy +.NNNNNNmmmddds:MMNNNNNNNNNNNh:mNNN/ +-NNNdyyyhdmmmd`dNNNNNmmmmNNmdd/os/ +.Nm+shddyooo+/smNNNNmmmmNh. :mmd. + NNNNy:` ./hmmmmmmmNNNN: hNMh + NMN- -++- +NNNNNNNNNNm+..-sMMMM- +.MMo oNNNNo hNNNNNNNNmhdNNNMMMMM+ +.MMs /NNNN/ dNmhs+:-` yMMMMMMMM+ + mMM+ .. `sNN+. hMMMMhhMMM- + +MMMmo:...:sNMMMMMms:` hMMMMm.hMMy + yMMMMMMMMMMMNdMMMMMM::/+o+//dMMd` + sMMMMMMMMMMN+:oyyo:sMMMNNMMMNy` + :mMMMMMMMMMMMmddNMMMMMMMMmh/ + /dMMMMMMMMMMMMMMMMMMNdy/` + .+hNMMMMMMMMMNmdhs/. + .:/+ooo+/:-. +EOF ;; - esac - - printf "%s" "$name" -} - -decode_url() { - decode="${1//+/ }" - printf "%b" "${decode//%/\\x}" -} - -# FINISH UP - -usage() { printf "%s" "\ -Usage: neofetch --option \"value\" --option \"value\" - -Neofetch is a CLI system information tool written in BASH. Neofetch -displays information about your system next to an image, your OS logo, -or any ASCII file of your choice. - -NOTE: Every launch flag has a config option. - -Options: - -INFO: - --disable infoname Allows you to disable an info line from appearing - in the output. - - NOTE: You can supply multiple args. eg. 'neofetch --disable cpu gpu' - - --os_arch on/off Hide/Show OS architecture. - --speed_type type Change the type of cpu speed to display. - Possible values: current, min, max, bios, - scaling_current, scaling_min, scaling_max - - NOTE: This only supports Linux with cpufreq. - - --speed_shorthand on/off Whether or not to show decimals in CPU speed. - - NOTE: This flag is not supported in systems with CPU speed less than - 1 GHz. - - --cpu_brand on/off Enable/Disable CPU brand in output. - --cpu_cores type Whether or not to display the number of CPU cores - Possible values: logical, physical, off - - NOTE: 'physical' doesn't work on BSD. - - --cpu_speed on/off Hide/Show cpu speed. - --cpu_temp C/F/off Hide/Show cpu temperature. - - NOTE: This only works on Linux and BSD. - - NOTE: For FreeBSD and NetBSD-based systems, you need to enable - coretemp kernel module. This only supports newer Intel processors. - - --distro_shorthand on/off Shorten the output of distro (tiny, on, off) - - NOTE: This option won't work in Windows (Cygwin) - - --kernel_shorthand on/off Shorten the output of kernel - - NOTE: This option won't work in BSDs (except PacBSD and PC-BSD) - - --uptime_shorthand on/off Shorten the output of uptime (tiny, on, off) - --refresh_rate on/off Whether to display the refresh rate of each monitor - Unsupported on Windows - --gpu_brand on/off Enable/Disable GPU brand in output. (AMD/NVIDIA/Intel) - --gpu_type type Which GPU to display. (all, dedicated, integrated) - - NOTE: This only supports Linux. - - --gtk_shorthand on/off Shorten output of gtk theme/icons - --gtk2 on/off Enable/Disable gtk2 theme/font/icons output - --gtk3 on/off Enable/Disable gtk3 theme/font/icons output - --shell_path on/off Enable/Disable showing \$SHELL path - --shell_version on/off Enable/Disable showing \$SHELL version - --disk_show value Which disks to display. - Possible values: '/', '/dev/sdXX', '/path/to/mount point' - - NOTE: Multiple values can be given. (--disk_show '/' '/dev/sdc1') - - --disk_subtitle type What information to append to the Disk subtitle. - Takes: name, mount, dir - - 'name' shows the disk's name (sda1, sda2, etc) - - 'mount' shows the disk's mount point (/, /mnt/Local Disk, etc) - - 'dir' shows the basename of the disks's path. (/, Local Disk, etc) - - --ip_host url URL to query for public IP - --song_shorthand on/off Print the Artist/Title on separate lines - --music_player player-name Manually specify a player to use. - Available values are listed in the config file - --install_time on/off Enable/Disable showing the time in Install Date output. - --install_time_format 12h/24h - Set time format in Install Date to be 12 hour or 24 hour. - -TEXT FORMATTING: - --colors x x x x x x Changes the text colors in this order: - title, @, underline, subtitle, colon, info - --underline on/off Enable/Disable the underline. - --underline_char char Character to use when underlining title - --bold on/off Enable/Disable bold text -COLOR BLOCKS: - --color_blocks on/off Enable/Disable the color blocks - --block_width num Width of color blocks in spaces - --block_height num Height of color blocks in lines - --block_range num num Range of colors to print as blocks + "Qubes"*) + set_colors 4 5 7 6 + read -rd '' ascii_data <<'EOF' +${c1} `..--..` + `.----------.` + `..----------------..` + `.------------------------.`` + `..-------------....-------------..` +.::----------..`` ``..----------:+: +:////:----..` `..---:/ossso +:///////:` `/osssssso +:///////: /ssssssso +:///////: /ssssssso +:///////: /ssssssso +:///////: /ssssssso +:///////: /ssssssso +:////////-` .:sssssssso +:///////////-.` `-/osssssssssso +`//////////////:-```.:+ssssssssssssso- + .-://////////////sssssssssssssso/-` + `.:///////////sssssssssssssso:. + .-:///////ssssssssssssssssss/` + `.:////ssss+/+ssssssssssss. + `--//- `-/osssso/. +EOF + ;; -BARS: - --bar_char 'elapsed char' 'total char' - Characters to use when drawing bars. - --bar_border on/off Whether or not to surround the bar with '[]' - --bar_length num Length in spaces to make the bars. - --bar_colors num num Colors to make the bar. - Set in this order: elapsed, total - --cpu_display mode Bar mode. - Possible values: bar, infobar, barinfo, off - --memory_display mode Bar mode. - Possible values: bar, infobar, barinfo, off - --battery_display mode Bar mode. - Possible values: bar, infobar, barinfo, off - --disk_display mode Bar mode. - Possible values: bar, infobar, barinfo, off + "Raspbian"*) + set_colors 2 1 + read -rd '' ascii_data <<'EOF' +${c1} `.::///+:/-. --///+//-:`` + `+oooooooooooo: `+oooooooooooo: + /oooo++//ooooo: ooooo+//+ooooo. + `+ooooooo:-:oo- +o+::/ooooooo: + `:oooooooo+`` `.oooooooo+- + `:++ooo/. :+ooo+/.` + ${c2}...` `.----.` ``.. + .::::-``:::::::::.`-:::-` + -:::-` .:::::::-` `-:::- + `::. `.--.` `` `.---.``.::` + .::::::::` -::::::::` ` + .::` .:::::::::- `::::::::::``::. +-:::` ::::::::::. ::::::::::.`:::- +:::: -::::::::. `-:::::::: :::: +-::- .-:::-.``....``.-::-. -::- + .. `` .::::::::. `..`.. + -:::-` -::::::::::` .:::::` + :::::::` -::::::::::` :::::::. + .::::::: -::::::::. :::::::: + `-:::::` ..--.` ::::::. + `...` `...--..` `...` + .:::::::::: + `.-::::-` +EOF + ;; -IMAGE BACKEND: - --backend backend Which image backend to use. - Possible values: 'ascii', 'caca', 'catimg', 'jp2a', 'iterm2', 'off', - 'sixel', 'tycat', 'w3m' - --source source Which image or ascii file to use. - Possible values: 'auto', 'ascii', 'wallpaper', '/path/to/img', - '/path/to/ascii', '/path/to/dir/' - --ascii source Shortcut to use 'ascii' backend. - --caca source Shortcut to use 'caca' backend. - --catimg source Shortcut to use 'catimg' backend. - --iterm2 source Shortcut to use 'iterm2' backend. - --jp2a source Shortcut to use 'jp2a' backend. - --kitty source Shortcut to use 'kitty' backend. - --pixterm source Shortcut to use 'pixterm' backend. - --sixel source Shortcut to use 'sixel' backend. - --termpix source Shortcut to use 'termpix' backend. - --tycat source Shortcut to use 'tycat' backend. - --w3m source Shortcut to use 'w3m' backend. - --off Shortcut to use 'off' backend. + "Red Star"* | "Redstar"*) + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c1} .. + .oK0l + :0KKKKd. + .xKO0KKKKd + ,Od' .d0000l + .c;. .'''... ..'. +.,:cloddxxxkkkkOOOOkkkkkkkkxxxxxxxxxkkkx: +;kOOOOOOOkxOkc'...',;;;;,,,'',;;:cllc:,. + .okkkkd,.lko .......',;:cllc:;,,'''''. + .cdo. :xd' cd:. ..';'',,,'',,;;;,'. + . .ddl.;doooc'..;oc;'..';::;,'. + coo;.oooolllllllcccc:'. . + .ool''lllllccccccc:::::;. + ;lll. .':cccc:::::::;;;;' + :lcc:'',..';::::;;;;;;;,,. + :cccc::::;...';;;;;,,,,,,. + ,::::::;;;,'. ..',,,,'''. + ........ ...... +EOF + ;; - NOTE: 'source; can be any of the following: 'auto', 'ascii', 'wallpaper', '/path/to/img', - '/path/to/ascii', '/path/to/dir/' + "Redhat"* | "Red Hat"* | "rhel"*) + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c1} `.-..........` + `////////::.`-/. + -: ....-////////. + //:-::///////////` + `--::: `-://////////////: + //////- ``.-:///////// .` + `://////:-.` :///////::///:` + .-/////////:---/////////////: + .-://////////////////////. +${c2} yMN+`.-${c1}::///////////////-` +${c2} .-`:NMMNMs` `..-------..` + MN+/mMMMMMhoooyysshsss +MMM MMMMMMMMMMMMMMyyddMMM+ + MMMM MMMMMMMMMMMMMNdyNMMh` hyhMMM + MMMMMMMMMMMMMMMMyoNNNMMM+. MMMMMMMM + MMNMMMNNMMMMMNM+ mhsMNyyyyMNMMMMsMM +EOF + ;; -ASCII: - --ascii_colors x x x x x x Colors to print the ascii art - --ascii_distro distro Which Distro's ascii art to print + "Refracted Devuan"*) + set_colors 8 7 + read -rd '' ascii_data <<'EOF' +${c2} A + VW + VVW\\ + .yWWW\\ + ,;,,u,;yy;;v;uyyyyyyy ,WWWWW^ + *WWWWWWWWWWWWWWWW/ $VWWWWw , + ^*%WWWWWWVWWX $WWWW** ,yy + , "**WWW/' **' ,yy/WWW*` + &WWWWwy `*` <,ywWW%VWWW* + yWWWWWWWWWW* ., "**WW%W + ,&WWWWWM*"` ,y/ &WWWww ^* + XWWX*^ ,yWWWW09 .WWWWWWWWwy, + *` &WWWWWM WWWWWWWWWWWWWww, + (WWWWW` /#####WWW*********** + ^WWWW + VWW + Wh. + V/ +EOF + ;; - NOTE: Arch and Ubuntu have 'old' logo variants. + "Rosa"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} ROSAROSAROSAROSAR + ROSA AROS + ROS SAROSAROSAROSAR AROS + RO ROSAROSAROSAROSAROSAR RO + ARO AROSAROSAROSARO AROS ROS + ARO ROSAROS OSAR ROSA ROS + RO AROSA ROSAROSAROSA ROSAR RO +RO ROSAR ROSAROSAROSAR R ROSARO RO +RO ROSA AROSAROSAROSA AR ROSARO AR +RO AROS ROSAROSAROSA ROS AROSARO AR +RO AROS ROSAROSARO ROSARO ROSARO AR +RO ROS AROSAROS ROSAROSA AROSAR AR +RO ROSA ROS ROSAROSAR ROSARO RO + RO ROS AROSAROSAROSA ROSARO AR + ARO ROSA ROSAROSAROS AROSAR ARO + ARO OROSA R ROSAROS ROS + RO AROSAROS AROSAROSAR RO + AROS AROSAROSAROSARO AROS + ROSA SARO + ROSAROSAROSAROSAR +EOF + ;; - NOTE: Use 'arch_old' or 'ubuntu_old' to use the old logos. + "sabotage"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c2} .|'''.| | '||''|. ..|''|| + ||.. ' ||| || || .|' || + ''|||. | || ||'''|. || || +. '|| .''''|. || || '|. || +|'....|' .|. .||. .||...|' ''|...|' - NOTE: Ubuntu has flavor variants. +|''||''| | ..|'''.| '||''''| + || ||| .|' ' || . + || | || || .... ||''| + || .''''|. '|. || || + .||. .|. .||. ''|...'| .||.....| +EOF + ;; - NOTE: Change this to 'Lubuntu', 'Xubuntu', 'Ubuntu-GNOME', - 'Ubuntu-Studio' or 'Ubuntu-Budgie' to use the flavors. + "Sabayon"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} ........... + .. .. + .. .. + .. ${c2}o ${c1}.. + .. ${c2}:W' ${c1}.. + .. ${c2}.d. ${c1}.. +:. ${c2}.KNO ${c1}.: +:. ${c2}cNNN. ${c1}.: +: ${c2}dXXX, ${c1}: +: ${c2}. dXXX, .cd, ${c1}: +: ${c2}'kc .. dKKK. ,ll;:' ${c1}: +: ${c2}.xkkxc;..dkkkc',cxkkl ${c1}: +:. ${c2}.,cdddddddddddddo:. ${c1}.: + .. ${c2}:lllllll: ${c1}.. + .. ${c2}',,,,, ${c1}.. + .. .. + .. .. + ............... +EOF + ;; - NOTE: Alpine, Arch, CRUX, Debian, Gentoo, FreeBSD, Mac, NixOS, - OpenBSD, and Void have a smaller logo variant. + "SailfishOS"*) + set_colors 4 5 7 6 + read -rd '' ascii_data <<'EOF' +${c1} .+eWWW + .+ee+++eee e. + .ee++eeeeeeee +e. + .e++ee++eeeeeee+eee+e+ + ee.e+.ee+eee++eeeeee+ + W.+e.e+.e++ee+eee + W.+e.W.ee.W++ee' + +e.W W.e+.W.W+ + W.e.+e.W W W. + e e e +e.W.W + .W W W. + W.+e.W. + W++e.ee+. + ++ +ee++eeeee++. + ' '+++e 'ee. + ee + ee + e +EOF + ;; - NOTE: Use '{distro name}_small' to use the small variants. + "SalentOS"*) + set_colors 2 1 3 7 + read -rd '' ascii_data <<'EOF' +${c1} ``..`` + .-:+oshdNMMMMMMNdhyo+:-.` + -oydmMMMMMMMMMMMMMMMMMMMMMMMMMMNdhs/ +${c4} +hdddm${c1}NMMMMMMMMMMMMMMMMMMMMMMMMN${c4}mdddh+` +${c2}`MMMMMN${c4}mdddddm${c1}MMMMMMMMMMMM${c4}mdddddm${c3}NMMMMM- +${c2} mMMMMMMMMMMMN${c4}ddddhyyhhddd${c3}NMMMMMMMMMMMM` +${c2} dMMMMMMMMMMMMMMMMM${c4}oo${c3}MMMMMMMMMMMMMMMMMN` +${c2} yMMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMMd +${c2} +MMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMMy +${c2} :MMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMMo +${c2} .MMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMM/ +${c2} `NMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMM- +${c2} mMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMN` +${c2} hMMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMm +${c2} /MMMMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMMMMy +${c2} .+hMMMMMMMMMMMMM${c4}hh${c3}MMMMMMMMMMMMMms: +${c2} `:smMMMMMMMMM${c4}hh${c3}MMMMMMMMMNh+. +${c2} .+hMMMMMM${c4}hh${c3}MMMMMMdo: +${c2} `:smMM${c4}yy${c3}MMNy/` + ${c2}.- ${c4}`${c3}:. +EOF + ;; - --ascii_bold on/off Whether or not to bold the ascii logo. - -L, --logo Hide the info text and only show the ascii logo. + "Scientific"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} =/;;/- + +: // + /; /; + -X H. +.//;;;:;;-, X= :+ .-;:=;:;#;. +M- ,=;;;#:, ,:#;;:=, ,@ +:# :#.=/++++/=.$= #= + ,#; #/:+/;,,/++:+/ ;+. + ,+/. ,;@+, ,#H;, ,/+, + ;+;;/= @. ${c3}.H${c2}#${c3}#X ${c1}-X :///+; + ;+=;;;.@, ${c2}.X${c3}M${c2}@$. ${c1}=X.//;=#/. + ,;: :@#= =$H: .+#- + ,#= #;-///==///-// =#, +;+ :#-;;;:;;;;-X- +: +@- .-;;;;M- =M/;;;-. -X + :;;::;;-. #- :+ ,-;;-;:== + ,X H. + ;/ #= + // +; + '////' +EOF + ;; - Possible values: bar, infobar, barinfo, off + "Siduction"*) + set_colors 4 4 + read -rd '' ascii_data <<'EOF' +${c1} _aass, + jQh: =$w + QWmwawQW + )$QQQQ@( .. + _a_a. ~??^ syDY?Sa, + _mW>-<$c jWmi imm. + ]QQwayQE 4QQmgwmQQ` + ?WWQWP' -9QQQQQ@'._aas, + _a%is. .adYYs,. -"?!` aQB*~^3$c +_Qh;.nm .QWc. {QL ]QQp;..vmQ/ +"QQmmQ@ -QQQggmQP ]QQWmggmQQ( + -???" "$WQQQY` __, ?QQQQQQW! + _yZ!?q, - .yWY!!Sw, "???^ + .QQa_=qQ mQm>..vmm + $QQWQQP $QQQgmQQ@ + "???" _aa, -9WWQQWY` + _mB>~)$a -~~ + mQms_vmQ. + ]WQQQQQP + -?T??" +EOF + ;; -IMAGE: - --loop Redraw the image constantly until Ctrl+C is used. This fixes issues - in some terminals emulators when using image mode. - --size 00px | --size 00% How to size the image. - Possible values: auto, 00px, 00%, none - --crop_mode mode Which crop mode to use - Takes the values: normal, fit, fill - --crop_offset value Change the crop offset for normal mode. - Possible values: northwest, north, northeast, - west, center, east, southwest, south, southeast + "Slackware"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} ::::::: + ::::::::::::::::::: + ::::::::::::::::::::::::: + ::::::::${c2}cllcccccllllllll${c1}:::::: + :::::::::${c2}lc dc${c1}::::::: + ::::::::${c2}cl clllccllll oc${c1}::::::::: + :::::::::${c2}o lc${c1}::::::::${c2}co oc${c1}:::::::::: + ::::::::::${c2}o cccclc${c1}:::::${c2}clcc${c1}:::::::::::: + :::::::::::${c2}lc cclccclc${c1}::::::::::::: +::::::::::::::${c2}lcclcc lc${c1}:::::::::::: +::::::::::${c2}cclcc${c1}:::::${c2}lccclc oc${c1}::::::::::: +::::::::::${c2}o l${c1}::::::::::${c2}l lc${c1}::::::::::: + :::::${c2}cll${c1}:${c2}o clcllcccll o${c1}::::::::::: + :::::${c2}occ${c1}:${c2}o clc${c1}::::::::::: + ::::${c2}ocl${c1}:${c2}ccslclccclclccclclc${c1}::::::::::::: + :::${c2}oclcccccccccccccllllllllllllll${c1}::::: + ::${c2}lcc1lcccccccccccccccccccccccco${c1}:::: + :::::::::::::::::::::::::::::::: + :::::::::::::::::::::::::::: + :::::::::::::::::::::: + :::::::::::: +EOF + ;; - --xoffset px How close the image will be to the left edge of the - window. This only works with w3m. - --yoffset px How close the image will be to the top edge of the - window. This only works with w3m. - --bg_color color Background color to display behind transparent image. - This only works with w3m. - --gap num Gap between image and text. + "SliTaz"*) + set_colors 3 3 + read -rd '' ascii_data <<'EOF' +${c1} @ @( @ + @@ @@ @ @/ + @@ @@ @@ @@ + @@ %@@ @@ @@ + @@ %@@@ @@@@@. @@@@ @@ + @@@ @@@@ @@@@@@@ &@@@ @@@ + @@@@@@@ %@@@@@@@@@@@@ &@@@% @@@@@@@/ + ,@@@@@@@@@@@@@@@@@@@@@@@@@ + .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/ +@@@@@@. @@@@@@@@@@@@@@@@@@@@@ /@@@@@@ +@@ @@@@@ @@@@@@@@@@@@, @@@@@ @@@ +@@ @@@@. @@@@@@@@@@@@@% #@@@@ @@. +@@ ,@@ @@@@@@@@@@@@@ @@@ @@ +@ @@. @@@@@@@@@@@@@ @@@ *@ +@ @@ @@@@@@@@@@@@ @@ @ + @ @@@@@@@@@. #@ + @ ,@@@@@ @ +EOF + ;; - NOTE: --gap can take a negative value which will move the text - closer to the left side. + "SmartOS"*) + set_colors 6 7 + read -rd '' ascii_data <<'EOF' +${c1}yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy +yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy +yyyys oyyyyyyyyyyyyyyyy +yyyys yyyyyyyyy oyyyyyyyyyyyyyyyy +yyyys yyyyyyyyy oyyyyyyyyyyyyyyyy +yyyys yyyyyyyyy oyyyyyyyyyyyyyyyy +yyyys yyyyyyyyy oyyyyyyyyyyyyyyyy +yyyys yyyyyyyyyyyyyyyyyyyyyyyyyyyy +yyyyy syyyy +yyyyyyyyyyyyyyyyyyyyyyyyyyyy syyyy +yyyyyyyyyyyyyyyy syyyyyyyyy syyyy +yyyyyyyyyyyyyyyy oyyyyyyyyy syyyy +yyyyyyyyyyyyyyyy oyyyyyyyyy syyyy +yyyyyyyyyyyyyyyy syyyyyyyyy syyyy +yyyyyyyyyyyyyyyy yyyyy +yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy +yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy +EOF + ;; - --clean Delete cached files and thumbnails. + "Solus"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c2} -``````````` + `-+/------------.` + .---:mNo---------------. + .-----yMMMy:---------------. + `------oMMMMMm/----------------` + .------/MMMMMMMN+----------------. + .------/NMMMMMMMMm-+/--------------. +`------/NMMMMMMMMMN-:mh/-------------` +.-----/NMMMMMMMMMMM:-+MMd//oso/:-----. +-----/NMMMMMMMMMMMM+--mMMMh::smMmyo:-- +----+NMMMMMMMMMMMMMo--yMMMMNo-:yMMMMd/. +.--oMMMMMMMMMMMMMMMy--yMMMMMMh:-yMMMy-` +`-sMMMMMMMMMMMMMMMMh--dMMMMMMMd:/Ny+y. +`-/+osyhhdmmNNMMMMMm-/MMMMMMMmh+/ohm+ + .------------:://+-/++++++${c1}oshddys: + -hhhhyyyyyyyyyyyhhhhddddhysssso- + `:ossssssyysssssssssssssssso:` + `:+ssssssssssssssssssss+- + `-/+ssssssssssso+/-` + `.-----..` +EOF + ;; -SCREENSHOT: - -s, --scrot /path/to/img Take a screenshot, if path is left empty the screen- - shot function will use \$scrot_dir and \$scrot_name. - -su, --upload /path/to/img Same as --scrot but uploads the scrot to a website. - --image_host imgur/teknik Website to upload scrots to. - --scrot_cmd cmd Screenshot program to launch + "Source Mage"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c2} :ymNMNho. +.+sdmNMMMMMMMMMMy` +.-::/yMMMMMMMMMMMm- + sMMMMMMMMMMMm/ + /NMMMMMMMMMMMMMm: + .MMMMMMMMMMMMMMMMM: + `MMMMMMMMMMMMMMMMMN. + NMMMMMMMMMMMMMMMMMd + mMMMMMMMMMMMMMMMMMMo + hhMMMMMMMMMMMMMMMMMM. + .`/MMMMMMMMMMMMMMMMMs + :mMMMMMMMMMMMMMMMN` + `sMMMMMMMMMMMMMMM+ + /NMMMMMMMMMMMMMN` + oMMMMMMMMMMMMM+ + ./sd.-hMMMMMMMMmmN` + ./+oyyyh- `MMMMMMMMMmNh + sMMMMMMMMMmmo + `NMMMMMMMMMd: + -dMMMMMMMMMo + -shmNMMms. +EOF + ;; -OTHER: - --config /path/to/config Specify a path to a custom config file - --config none Launch the script without a config file - --stdout Turn off all colors and disables any ASCII/image backend. - --help Print this text and exit - --version Show neofetch version - -v Display error messages. - -vv Display a verbose log for error reporting. + "Sparky"*) + set_colors 1 7 + read -rd '' ascii_data <<'EOF' +${c1} + . `-:-` + .o` .-///-` + `oo` .:/++:. + os+` -/+++:` ``.........``` + /ys+`./+++/-.-::::::----......`` + `syyo`++o+--::::-::/+++/-`` + -yyy+.+o+`:/:-:sdmmmmmmmmdy+-` +::-` :yyy/-oo.-+/`ymho++++++oyhdmdy/` +`/yy+-`.syyo`+o..o--h..osyhhddhs+//osyy/` + -ydhs+-oyy/.+o.-: ` ` :/::+ydhy+```-os- + .sdddy::syo--/:. `.:dy+-ohhho ./: + :yddds/:+oo+//:-`- /+ +hy+.shhy: `` + `:ydmmdysooooooo-.ss`/yss--oyyo + `./ossyyyyo+:-/oo:.osso- .oys + ``..-------::////.-oooo/ :so + `...----::::::::--.`/oooo: .o: + ``````` ++o+:` `:` + ./+/-` ` + `-:-. + `` +EOF + ;; -DEVELOPER: - --gen-man Generate a manpage for Neofetch in your PWD. (Requires GNU help2man) + "SteamOS"*) + set_colors 5 7 + read -rd '' ascii_data <<'EOF' +${c1} .,,,,. + .,'onNMMMMMNNnn',. + .'oNMANKMMMMMMMMMMMNNn'. + .'ANMMMMMMMXKNNWWWPFFWNNMNn. + ;NNMMMMMMMMMMNWW'' ,.., 'WMMM, + ;NMMMMV+##+VNWWW' .+;'':+, 'WMW, +,VNNWP+${c2}######${c1}+WW, ${c2}+: ${c1}:+, +MMM, +'${c2}+#############, +. ,+' ${c1}+NMMM +${c2} '*#########*' '*,,*' ${c1}.+NMMMM. +${c2} `'*###*' ,.,;###${c1}+WNM, +${c2} .,;;, .;##########${c1}+W +${c2},',. '; ,+##############' + '###+. :,. .,; ,###############' + '####.. `'' .,###############' + '#####+++################' + '*##################*' + ''*##########*'' + '''''' +EOF + ;; + "SunOS" | "Solaris") + set_colors 3 7 + read -rd '' ascii_data <<'EOF' +${c1} `- ` + `-- `+- .: + .+: `++: -/+- . + `.::` -++/``:::`./+/ `.-/. + `++/-`.` ` /++:` + `` ./:` .: `..`.- +``./+/:- -+++:- + -/+` :. +EOF + ;; -Report bugs to https://github.com/dylanaraps/neofetch/issues + "openSUSE Tumbleweed"*) + set_colors 2 7 + read -rd '' ascii_data <<'EOF' +${c2} ...... + .,cdxxxoc,. .:kKMMMNWMMMNk:. + cKMMN0OOOKWMMXo. ; ;0MWk:. .:OMMk. + ;WMK;. .lKMMNM, :NMK, .OMW; + cMW; 'WMMMN ,XMK, oMM' +.MMc ..;l. xMN: KM0 +'MM. 'NMO oMM +.MM, .kMMl xMN + KM0 .kMM0. .dl:,.. .WMd + .XM0. ,OMMK, OMMMK. .XMK + oWMO:. .;xNMMk, NNNMKl. .xWMx + :ONMMNXMMMKx; . ,xNMWKkxllox0NMWk, + ..... .:dOOXXKOxl, +EOF + ;; -" -exit 1 -} + "openSUSE"* | "open SUSE"* | "SUSE"*) + set_colors 2 7 + read -rd '' ascii_data <<'EOF' +${c2} .;ldkO0000Okdl;. + .;d00xl:^''''''^:ok00d;. + .d00l' 'o00d. + .d0Kd'${c1} Okxol:;,. ${c2}:O0d. + .OK${c1}KKK0kOKKKKKKKKKKOxo:, ${c2}lKO. + ,0K${c1}KKKKKKKKKKKKKKK0P^${c2},,,${c1}^dx:${c2} ;00, +.OK${c1}KKKKKKKKKKKKKKKk'${c2}.oOPPb.${c1}'0k.${c2} cKO. +:KK${c1}KKKKKKKKKKKKKKK: ${c2}kKx..dd ${c1}lKd${c2} 'OK: +dKK${c1}KKKKKKKKKOx0KKKd ${c2}^0KKKO' ${c1}kKKc${c2} dKd +dKK${c1}KKKKKKKKKK;.;oOKx,..${c2}^${c1}..;kKKK0.${c2} dKd +:KK${c1}KKKKKKKKKK0o;...^cdxxOK0O/^^' ${c2}.0K: + kKK${c1}KKKKKKKKKKKKK0x;,,......,;od ${c2}lKk + '0K${c1}KKKKKKKKKKKKKKKKKKKK00KKOo^ ${c2}c00' + 'kK${c1}KKOxddxkOO00000Okxoc;'' ${c2}.dKk' + l0Ko. .c00l' + 'l0Kk:. .;xK0l' + 'lkK0xl:;,,,,;:ldO0kl' + '^:ldxkkkkxdl:^' +EOF + ;; -get_args() { - # Check the commandline flags early for '--config'. - [[ "$*" != *--config* ]] && get_user_config + "SwagArch"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c2} .;ldkOKXXNNNNXXK0Oxoc,. + ,lkXMMNK0OkkxkkOKWMMMMMMMMMM; + 'K0xo ..,;:c:. `'lKMMMMM0 + .lONMMMMMM' `lNMk' +${c2} ;WMMMMMMMMMO. ${c1}....::... +${c2} OMMMMMMMMMMMMKl. ${c1}.,;;;;;ccccccc, +${c2} `0MMMMMMMMMMMMMM0: ${c1}.. .ccccccc. +${c2} 'kWMMMMMMMMMMMMMNo. ${c1}.,:' .ccccccc. +${c2} `c0MMMMMMMMMMMMMN,${c1},:c; :cccccc: +${c2} ckl. `lXMMMMMMMMMX${c1}occcc:.. ;ccccccc. +${c2}dMMMMXd, `OMMMMMMWk${c1}ccc;:''` ,ccccccc: +${c2}XMMMMMMMWKkxxOWMMMMMNo${c1}ccc; .cccccccc. +${c2} `':ldxO0KXXXXXK0Okdo${c1}cccc. :cccccccc. + :ccc:' `cccccccc:, + '' +EOF + ;; - while [[ "$1" ]]; do - case "$1" in - # Info - "--os_arch") os_arch="$2" ;; - "--cpu_cores") cpu_cores="$2" ;; - "--cpu_speed") cpu_speed="$2" ;; - "--speed_type") speed_type="$2" ;; - "--speed_shorthand") speed_shorthand="$2" ;; - "--distro_shorthand") distro_shorthand="$2" ;; - "--kernel_shorthand") kernel_shorthand="$2" ;; - "--uptime_shorthand") uptime_shorthand="$2" ;; - "--cpu_brand") cpu_brand="$2" ;; - "--gpu_brand") gpu_brand="$2" ;; - "--gpu_type") gpu_type="$2" ;; - "--refresh_rate") refresh_rate="$2" ;; - "--gtk_shorthand") gtk_shorthand="$2" ;; - "--gtk2") gtk2="$2" ;; - "--gtk3") gtk3="$2" ;; - "--shell_path") shell_path="$2" ;; - "--shell_version") shell_version="$2" ;; - "--ip_host") public_ip_host="$2" ;; - "--song_shorthand") song_shorthand="$2" ;; - "--music_player") music_player="$2" ;; - "--install_time") install_time="$2" ;; - "--install_time_format") install_time_format="$2" ;; - "--cpu_temp") - cpu_temp="$2" - [[ "$cpu_temp" == "on" ]] && cpu_temp="C" - ;; + "Tails"*) + set_colors 5 7 + read -rd '' ascii_data <<'EOF' +${c1} `` + ./yhNh +syy/Nshh `:o/ +N:dsNshh █ `ohNMMd +N-/+Nshh `yMMMMd +N-yhMshh yMMMMd +N-s:hshh █ yMMMMd so//. +N-oyNsyh yMMMMd d Mms. +N:hohhhd:. yMMMMd syMMM+ +Nsyh+-..+y+- yMMMMd :mMM+ ++hy- -ss/`yMMMM `+d+ + :sy/. ./yNMMMMm `` + .+ys- `:+hNMMMMMMy/` + `hNmmMMMMMMMMMMMMdo. + dMMMMMMMMMMMMMMMMMNh: + +hMMMMMMMMMMMMMMMMMmy. + -oNMMMMMMMMMMmy+.` + `:yNMMMds/.` + .//` +EOF + ;; - "--disk_subtitle") disk_subtitle="$2" ;; - "--disk_show") - unset disk_show - for arg in "$@"; do - case "$arg" in - "--disk_show") ;; - "-"*) break ;; - *) disk_show+=("$arg") ;; - esac - done - ;; + "Trisquel"*) + set_colors 4 6 + read -rd '' ascii_data <<'EOF' +${c1} ▄▄▄▄▄▄ + ▄█████████▄ + ▄▄▄▄▄▄ ████▀ ▀████ + ▄██████████▄ ████▀ ▄▄ ▀███ + ▄███▀▀ ▀▀████ ███▄ ▄█ ███ +▄███ ▄▄▄ ████▄ ▀██████ ▄███ +███ █▀▀██▄ █████▄ ▀▀ ▄████ +▀███ ███ ███████▄▄ ▄▄██████ +${c1} ▀███▄ ▄███ █████████████${c2}████▀ +${c1} ▀█████████ ███████${c2}███▀▀▀ + ▀▀███▀▀ ██████▀▀ + ██████▀ ▄▄▄▄ + █████▀ ████████ + █████ ███▀ ▀███ + ████▄ ██▄▄▄ ███ + █████▄ ▀▀ ▄██ + ██████▄▄▄████ + ▀▀█████▀▀ +EOF + ;; - "--disable") - for func in "$@"; do - case "$func" in - "--disable") continue ;; - "-"*) break ;; - *) - ((bash_version >= 4)) && func="${func,,}" - unset -f "get_$func" - ;; - esac - done - ;; + "Ubuntu-Budgie"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c2} ./oydmMMMMMMmdyo/. + :smMMMMMMMMMMMhs+:++yhs: + `omMMMMMMMMMMMN+` `odo` + /NMMMMMMMMMMMMN- `sN/ + `hMMMMmhhmMMMMMMh sMh` + .mMmo- /yMMMMm` `MMm. + mN/ yMMMMMMMd- MMMm +oN- oMMMMMMMMMms+//+o+: :MMMMo +m/ +NMMMMMMMMMMMMMMMMm. :NMMMMm +M` .NMMMMMMMMMMMMMMMNodMMMMMMM +M- sMMMMMMMMMMMMMMMMMMMMMMMMM +mm` mMMMMMMMMMNdhhdNMMMMMMMMMm +oMm/ .dMMMMMMMMh: :dMMMMMMMo + mMMNyo/:/sdMMMMMMMMM+ sMMMMMm + .mMMMMMMMMMMMMMMMMMs `NMMMm. + `hMMMMMMMMMMM.oo+. `MMMh` + /NMMMMMMMMMo sMN/ + `omMMMMMMMMy. :dmo` + :smMMMMMMMh+-` `.:ohs: + ./oydmMMMMMMdhyo/. +EOF + ;; - # Text Colors - "--colors") - unset colors - for arg in "$2" "$3" "$4" "$5" "$6" "$7"; do - case "$arg" in - "-"*) break ;; - *) colors+=("$arg") ;; - esac - done - colors+=(7 7 7 7 7 7) - ;; + "Ubuntu-GNOME"*) + set_colors 4 5 7 6 + read -rd '' ascii_data <<'EOF' +${c3} ./o. + .oooooooo + .oooo```soooo + .oooo` `soooo + .ooo` ${c4}.o.${c3} `\/ooo. + :ooo ${c4}:oooo.${c3} `\/ooo. + sooo ${c4}`ooooo${c3} \/oooo + \/ooo ${c4}`soooo${c3} `ooooo + `soooo ${c4}`\/ooo${c3} `soooo +${c4}./oo ${c3}`\/ooo ${c4}`/oooo.${c3} `/ooo +${c4}`\/ooo. ${c3}`/oooo. ${c4}`/oooo.${c3} `` +${c4} `\/ooo. ${c3}/oooo ${c4}/ooo` +${c4} `ooooo ${c3}`` ${c4}.oooo +${c4} `soooo. .oooo` + `\/oooooooooo` + ``\/oo`` +EOF + ;; - # Text Formatting - "--underline") underline_enabled="$2" ;; - "--underline_char") underline_char="$2" ;; - "--bold") bold="$2" ;; + "Ubuntu-MATE"*) + set_colors 2 7 + read -rd '' ascii_data <<'EOF' +${c1} `:+shmNNMMNNmhs+:` + .odMMMMMMMMMMMMMMMMMMdo. + /dMMMMMMMMMMMMMMMmMMMMMMMMd/ + :mMMMMMMMMMMMMNNNNM/`/yNMMMMMMm: + `yMMMMMMMMMms:..-::oM: -omMMMMMy` + `dMMMMMMMMy-.odNMMMMMM: -odMMMMMMd` + hMMMMMMMm-.hMMy/....+M:`/yNm+mMMMMMMMh +/MMMMNmMN-:NMy`-yNMMMMMmNyyMN:`dMMMMMMM/ +hMMMMm -odMMh`sMMMMMMMMMMs sMN..MMMMMMMh +NMMMMm `/yNMMMMMMMMMMMM: MM+ mMMMMMMN +NMMMMm `/yNMMMMMMMMMMMM: MM+ mMMMMMMN +hMMMMm -odMMh sMMMMMMMMMMs oMN..MMMMMMMh +/MMMMNNMN-:NMy`-yNMMMMMNNsyMN:`dMMMMMMM/ + hMMMMMMMm-.hMMy/....+M:.+hNd+mMMMMMMMh + `dMMMMMMMMy-.odNMMMMMM: :smMMMMMMd` + yMMMMMMMMMms/..-::oM: .+dMMMMMy + :mMMMMMMMMMMMMNNNNM: :smMMMMMMm: + /dMMMMMMMMMMMMMMMdNMMMMMMMd/ + .odMMMMMMMMMMMMMMMMMMdo. + `:+shmNNMMNNmhs+:` +EOF + ;; - # Color Blocks - "--color_blocks") color_blocks="$2" ;; - "--block_range") block_range=("$2" "$3") ;; - "--block_width") block_width="$2" ;; - "--block_height") block_height="$2" ;; + "ubuntu_old") + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c1} ./+o+- +${c2} yyyyy- ${c1}-yyyyyy+ +${c2} ${c2}://+//////${c1}-yyyyyyo +${c3} .++ ${c2}.:/++++++/-${c1}.+sss/` +${c3} .:++o: ${c2}/++++++++/:--:/- +${c3} o:+o+:++.${c2}`..```.-/oo+++++/ +${c3} .:+o:+o/.${c2} `+sssoo+/ +${c2} .++/+:${c3}+oo+o:`${c2} /sssooo. +${c2}/+++//+:${c3}`oo+o${c2} /::--:. +${c2}+/+o+++${c3}`o++o${c1} ++////. +${c2} .++.o+${c3}++oo+:`${c1} /dddhhh. +${c3} .+.o+oo:.${c1} `oddhhhh+ +${c3} +.++o+o`${c1}`-````.:ohdhhhhh+ +${c3} `:o+++ ${c1}`ohhhhhhhhyo++os: +${c3} .o:${c1}`.syhhhhhhh/${c3}.oo++o` +${c1} /osyyyyyyo${c3}++ooo+++/ +${c1} ````` ${c3}+oo+++o: +${c3} `oo++. +EOF + ;; - # Bars - "--bar_char") - bar_char_elapsed="$2" - bar_char_total="$3" - ;; + "Ubuntu-Studio") + set_colors 6 7 + read -rd '' ascii_data <<'EOF' +${c1} ..-::::::-.` + `.:+++++++++++${c2}ooo${c1}++:.` + ./+++++++++++++${c2}sMMMNdyo${c1}+/. + .++++++++++++++++${c2}oyhmMMMMms${c1}++. + `/+++++++++${c2}osyhddddhys${c1}+${c2}osdMMMh${c1}++/` + `+++++++++${c2}ydMMMMNNNMMMMNds${c1}+${c2}oyyo${c1}++++` + +++++++++${c2}dMMNhso${c1}++++${c2}oydNMMmo${c1}++++++++` + :+${c2}odmy${c1}+++${c2}ooysoohmNMMNmyoohMMNs${c1}+++++++: + ++${c2}dMMm${c1}+${c2}oNMd${c1}++${c2}yMMMmhhmMMNs+yMMNo${c1}+++++++ +`++${c2}NMMy${c1}+${c2}hMMd${c1}+${c2}oMMMs${c1}++++${c2}sMMN${c1}++${c2}NMMs${c1}+++++++. +`++${c2}NMMy${c1}+${c2}hMMd${c1}+${c2}oMMMo${c1}++++${c2}sMMN${c1}++${c2}mMMs${c1}+++++++. + ++${c2}dMMd${c1}+${c2}oNMm${c1}++${c2}yMMNdhhdMMMs${c1}+y${c2}MMNo${c1}+++++++ + :+${c2}odmy${c1}++${c2}oo${c1}+${c2}ss${c1}+${c2}ohNMMMMmho${c1}+${c2}yMMMs${c1}+++++++: + +++++++++${c2}hMMmhs+ooo+oshNMMms${c1}++++++++ + `++++++++${c2}oymMMMMNmmNMMMMmy+oys${c1}+++++` + `/+++++++++${c2}oyhdmmmmdhso+sdMMMs${c1}++/ + ./+++++++++++++++${c2}oyhdNMMMms${c1}++. + ./+++++++++++++${c2}hMMMNdyo${c1}+/. + `.:+++++++++++${c2}sso${c1}++:. + ..-::::::-.. +EOF + ;; - "--bar_border") bar_border="$2" ;; - "--bar_length") bar_length="$2" ;; - "--bar_colors") - bar_color_elapsed="$2" - bar_color_total="$3" - ;; + "Ubuntu"*) + set_colors 1 7 3 + read -rd '' ascii_data <<'EOF' +${c1} .-/+oossssoo+/-. + `:+ssssssssssssssssss+:` + -+ssssssssssssssssssyyssss+- + .ossssssssssssssssss${c2}dMMMNy${c1}sssso. + /sssssssssss${c2}hdmmNNmmyNMMMMh${c1}ssssss/ + +sssssssss${c2}hm${c1}yd${c2}MMMMMMMNddddy${c1}ssssssss+ + /ssssssss${c2}hNMMM${c1}yh${c2}hyyyyhmNMMMNh${c1}ssssssss/ +.ssssssss${c2}dMMMNh${c1}ssssssssss${c2}hNMMMd${c1}ssssssss. ++ssss${c2}hhhyNMMNy${c1}ssssssssssss${c2}yNMMMy${c1}sssssss+ +oss${c2}yNMMMNyMMh${c1}ssssssssssssss${c2}hmmmh${c1}ssssssso +oss${c2}yNMMMNyMMh${c1}sssssssssssssshmmmh${c1}ssssssso ++ssss${c2}hhhyNMMNy${c1}ssssssssssss${c2}yNMMMy${c1}sssssss+ +.ssssssss${c2}dMMMNh${c1}ssssssssss${c2}hNMMMd${c1}ssssssss. + /ssssssss${c2}hNMMM${c1}yh${c2}hyyyyhdNMMMNh${c1}ssssssss/ + +sssssssss${c2}dm${c1}yd${c2}MMMMMMMMddddy${c1}ssssssss+ + /sssssssssss${c2}hdmNNNNmyNMMMMh${c1}ssssss/ + .ossssssssssssssssss${c2}dMMMNy${c1}sssso. + -+sssssssssssssssss${c2}yyy${c1}ssss+- + `:+ssssssssssssssssss+:` + .-/+oossssoo+/-. +EOF + ;; - "--cpu_display") cpu_display="$2" ;; - "--memory_display") memory_display="$2" ;; - "--battery_display") battery_display="$2" ;; - "--disk_display") disk_display="$2" ;; + "void_small") + set_colors 2 8 + read -rd '' ascii_data <<'EOF' +${c1} _______ + _ \______ - +| \ ___ \ | +| | / \ | | +| | \___/ | | +| \______ \_| + -_______\ +EOF + ;; - # Image backend - "--backend") image_backend="$2" ;; - "--source") image_source="$2" ;; - "--ascii" | "--caca" | "--catimg" | "--jp2a" | "--iterm2" | "--off" | "--pixterm" |\ - "--sixel" | "--termpix" | "--tycat" | "--w3m" | "--kitty") - image_backend="${1/--}" - case "$2" in - "-"* | "") ;; - *) image_source="$2" ;; - esac - ;; + "Void"*) + set_colors 2 8 + read -rd '' ascii_data <<'EOF' +${c1} __.;=====;.__ + _.=+==++=++=+=+===;. + -=+++=+===+=+=+++++=_ + . -=:`` `--==+=++==. + _vi, ` --+=++++: + .uvnvi. _._ -==+==+. + .vvnvnI` .;==|==;. :|=||=|. +${c2}+QmQQm${c1}pvvnv; ${c2}_yYsyQQWUUQQQm #QmQ#${c1}:${c2}QQQWUV$QQmL +${c2} -QQWQW${c1}pvvo${c2}wZ?.wQQQE${c1}==<${c2}QWWQ/QWQW.QQWW${c1}(: ${c2}jQWQE +${c2} -$QQQQmmU' jQQQ@${c1}+=<${c2}QWQQ)mQQQ.mQQQC${c1}+;${c2}jWQQ@' +${c2} -$WQ8Y${c1}nI: ${c2}QWQQwgQQWV${c1}`${c2}mWQQ.jQWQQgyyWW@! +${c1} -1vvnvv. `~+++` ++|+++ + +vnvnnv, `-|=== + +vnvnvns. . :=- + -Invnvvnsi..___..=sv=. ` + +Invnvnvnnnnnnnnvvnn;. + ~|Invnvnvvnvvvnnv}+` + -~|{*l}*|~ +EOF + ;; - # Image options - "--loop") image_loop="on" ;; - "--image_size" | "--size") image_size="$2" ;; - "--crop_mode") crop_mode="$2" ;; - "--crop_offset") crop_offset="$2" ;; - "--xoffset") xoffset="$2" ;; - "--yoffset") yoffset="$2" ;; - "--background_color" | "--bg_color") background_color="$2" ;; - "--gap") gap="$2" ;; - "--clean") - [[ -d "$thumbnail_dir" ]] && rm -rf "$thumbnail_dir" - rm -rf "/Library/Caches/neofetch/" - rm -rf "/tmp/neofetch/" - exit - ;; + *"[Windows 10]"* | *"on Windows 10"* | "Windows 8"* |\ + "Windows 10"* | "windows10" | "windows8" ) + set_colors 6 7 + read -rd '' ascii_data <<'EOF' +${c1} .., + ....,,:;+ccllll + ...,,+:; cllllllllllllllllll +,cclllllllllll lllllllllllllllllll +llllllllllllll lllllllllllllllllll +llllllllllllll lllllllllllllllllll +llllllllllllll lllllllllllllllllll +llllllllllllll lllllllllllllllllll +llllllllllllll lllllllllllllllllll - "--ascii_colors") - unset ascii_colors - for arg in "$2" "$3" "$4" "$5" "$6" "$7"; do - case "$arg" in - "-"*) break ;; - *) ascii_colors+=("$arg") - esac - done - ascii_colors+=(7 7 7 7 7 7) - ;; +llllllllllllll lllllllllllllllllll +llllllllllllll lllllllllllllllllll +llllllllllllll lllllllllllllllllll +llllllllllllll lllllllllllllllllll +llllllllllllll lllllllllllllllllll +`'ccllllllllll lllllllllllllllllll + `' \\*:: :ccllllllllllllllll + ````''*::cll + `` +EOF + ;; - "--ascii_distro") - image_backend="ascii" - ascii_distro="$2" - case "$2" in "-"* | "") ascii_distro="$distro" ;; esac - ;; + "Windows"*) + set_colors 1 2 4 3 + read -rd '' ascii_data <<'EOF' +${c1} ,.=:!!t3Z3z., + :tt:::tt333EE3 +${c1} Et:::ztt33EEEL${c2} @Ee., .., +${c1} ;tt:::tt333EE7${c2} ;EEEEEEttttt33# +${c1} :Et:::zt333EEQ.${c2} $EEEEEttttt33QL +${c1} it::::tt333EEF${c2} @EEEEEEttttt33F +${c1} ;3=*^```"*4EEV${c2} :EEEEEEttttt33@. +${c3} ,.=::::!t=., ${c1}`${c2} @EEEEEEtttz33QF +${c3} ;::::::::zt33)${c2} "4EEEtttji3P* +${c3} :t::::::::tt33.${c4}:Z3z..${c2} ``${c4} ,..g. +${c3} i::::::::zt33F${c4} AEEEtttt::::ztF +${c3} ;:::::::::t33V${c4} ;EEEttttt::::t3 +${c3} E::::::::zt33L${c4} @EEEtttt::::z3F +${c3}{3=*^```"*4E3)${c4} ;EEEtttt:::::tZ` +${c3} `${c4} :EEEEtttt::::z7 + "VEzjt:;;z>*` +EOF + ;; + + "Xubuntu"*) + set_colors 4 7 1 + read -rd '' ascii_data <<'EOF' +${c1} `-/osyhddddhyso/-` + .+yddddddddddddddddddy+. + :yddddddddddddddddddddddddy: + -yddddddddddddddddddddhdddddddy- + odddddddddddyshdddddddh`dddd+ydddo + `yddddddhshdd- ydddddd+`ddh.:dddddy` + sddddddy /d. :dddddd-:dy`-ddddddds +:ddddddds /+ .dddddd`yy`:ddddddddd: +sdddddddd` . .-:/+ssdyodddddddddds +ddddddddy `:ohddddddddd +dddddddd. +dddddddd +sddddddy ydddddds +:dddddd+ .oddddddd: + sdddddo ./ydddddddds + `yddddd. `:ohddddddddddy` + oddddh/` `.:+shdddddddddddddo + -ydddddhyssyhdddddddddddddddddy- + :yddddddddddddddddddddddddy: + .+yddddddddddddddddddy+. + `-/osyhddddhyso/-` +EOF + ;; - "--ascii_bold") ascii_bold="$2" ;; - "--logo" | "-L") - image_backend="ascii" - print_info() { info line_break; } - ;; + "Zorin"*) + set_colors 4 6 + read -rd '' ascii_data <<'EOF' +${c1} `osssssssssssssssssssso` + .osssssssssssssssssssssso. + .+oooooooooooooooooooooooo+. - # Screenshot - "--scrot" | "-s") - scrot_args "$@" - ;; - "--upload" | "-su") - scrot_upload="on" - scrot_args "$@" - ;; - "--image_host") image_host="$2" ;; - "--scrot_cmd") scrot_cmd="$2" ;; + `::::::::::::::::::::::. .:` + `+ssssssssssssssssss+:.` `.:+ssso` +.ossssssssssssssso/. `-+ossssssso. +ssssssssssssso/-` `-/osssssssssssss +.ossssssso/-` .-/ossssssssssssssso. + `+sss+:. `.:+ssssssssssssssssss+` + `:. .::::::::::::::::::::::` - # Other - "--config") - case "$2" in - "none" | "off" | "") ;; - *) - config_file="$(get_full_path "$2")" - get_user_config - ;; - esac - ;; - "--stdout") stdout="on" ;; - "-v") verbose="on" ;; - "-vv") set -x; verbose="on" ;; - "--help") usage ;; - "--version") - printf "%s\\n" "Neofetch $version" - exit 1 - ;; - "--gen-man") - help2man -n "A fast, highly customizable system info script" \ - -N ./neofetch -o neofetch.1 - exit 1 - ;; - "--travis") - print_info() { - info title - info underline + .+oooooooooooooooooooooooo+. + -osssssssssssssssssssssso- + `osssssssssssssssssssso` +EOF + ;; - info "OS" distro - info "Host" model - info "Kernel" kernel - info "Uptime" uptime - info "Packages" packages - info "Shell" shell - info "Resolution" resolution - info "DE" de - info "WM" wm - info "WM Theme" wm_theme - info "Theme" theme - info "Icons" icons - info "Terminal" term - info "Terminal Font" term_font - info "CPU" cpu - info "GPU" gpu - info "GPU Driver" gpu_driver - info "Memory" memory + *) + case "$kernel_name" in + *"BSD") + set_colors 1 7 4 3 6 + read -rd '' ascii_data <<'EOF' +${c1} , , + /( )` + \ \___ / | + /- _ `-/ ' + (${c2}/\/ \ ${c1}\ /\ + ${c2}/ / | ` ${c1}\ + ${c3}O O ${c2}) ${c1}/ | + ${c2}`-^--'${c1}`< ' + (_.) _ ) / + `.___/` / + `-----' / +${c4}<----. __ / __ \ +${c4}<----|====${c1}O)))${c4}==${c1}) \) /${c4}====| +<----' ${c1}`--' `.__,' \ + | | + \ / /\ + ${c5}______${c1}( (_ / \______/ + ${c5},' ,-----' | + `--{__________) +EOF + ;; - info "CPU Usage" cpu_usage - info "Disk" disk - info "Battery" battery - info "Font" font - info "Song" song - info "Local IP" local_ip - info "Public IP" public_ip - info "Users" users - info "Install Date" install_date + "Darwin") + set_colors 2 3 1 1 5 4 + read -rd '' ascii_data <<'EOF' +${c1} 'c. + ,xNMM. + .OMMMMo + OMMM0, + .;loddo:' loolloddol;. + cKMMMMMMMMMMNWMMMMMMMMMM0: +${c2} .KMMMMMMMMMMMMMMMMMMMMMMMWd. + XMMMMMMMMMMMMMMMMMMMMMMMX. +${c3};MMMMMMMMMMMMMMMMMMMMMMMM: +:MMMMMMMMMMMMMMMMMMMMMMMM: +${c4}.MMMMMMMMMMMMMMMMMMMMMMMMX. + kMMMMMMMMMMMMMMMMMMMMMMMMWd. + ${c5}.XMMMMMMMMMMMMMMMMMMMMMMMMMMk + .XMMMMMMMMMMMMMMMMMMMMMMMMK. + ${c6}kMMMMMMMMMMMMMMMMMMMMMMd + ;KMMMMMMMWXXWMMMMMMMk. + .cooc,. .,coo:. +EOF + ;; - info line_break - info cols - info line_break + "GNU"*) + set_colors fg 7 + read -rd '' ascii_data <<'EOF' +${c1} _-`````-, ,- '- . + .' .- - | | - -. `. + /.' / `. \ +:/ : _... ..._ `` : +:: : /._ .`:'_.._\. || : +:: `._ ./ ,` : \ . _.'' . +`:. / | -. \-. \\_ / + \:._ _/ .' .@) \@) ` `\ ,.' + _/,--' .- .\,-.`--`. + ,'/'' (( \ ` ) + /'/' \ `-' ( + '/'' `._,-----' + ''/' .,---' + ''/' ;: + ''/'' ''/ + ''/''/'' + '/'/' + `; +EOF + ;; - # Testing. - prin "prin" - prin "prin" "prin" + "Linux") + set_colors fg 8 3 + read -rd '' ascii_data <<'EOF' +${c2} ##### +${c2} ####### +${c2} ##${c1}O${c2}#${c1}O${c2}## +${c2} #${c3}#####${c2}# +${c2} ##${c1}##${c3}###${c1}##${c2}## +${c2} #${c1}##########${c2}## +${c2} #${c1}############${c2}## +${c2} #${c1}############${c2}### +${c3} ##${c2}#${c1}###########${c2}##${c3}# +${c3}######${c2}#${c1}#######${c2}#${c3}###### +${c3}#######${c2}#${c1}#####${c2}#${c3}####### +${c3} #####${c2}#######${c3}##### +EOF + ;; - # Testing no subtitles. - info uptime - info disk - } + "SunOS") + set_colors 3 7 + read -rd '' ascii_data <<'EOF' +${c1} `- ` + `-- `+- .: + .+: `++: -/+- . + `.::` -++/``:::`./+/ `.-/. + `++/-`.` ` /++:` + `` ./:` .: `..`.- +``./+/:- -+++:- + -/+` :. +EOF + ;; - refresh_rate="on" - shell_version="on" - cpu_display="infobar" - memory_display="infobar" - disk_display="infobar" - cpu_temp="C" - ;; - esac + "IRIX"*) + set_colors 4 7 + read -rd '' ascii_data <<'EOF' +${c1} ./ohmNd/ +dNmho/- + `:+ydNMMMMMMMM.-MMMMMMMMMdyo:. + `hMMMMMMNhs/sMMM-:MMM+/shNMMMMMMh` + -NMMMMMmo-` /MMM-/MMM- `-omMMMMMN. + `.`-+hNMMMMMNhyMMM-/MMMshmMMMMMmy+...` ++mMNds:-:sdNMMMMMMMyyMMMMMMMNdo:.:sdMMm+ +dMMMMMMmy+.-/ymNMMMMMMMMNmy/-.+hmMMMMMMd +oMMMMmMMMMNds:.+MMMmmMMN/.-odNMMMMmMMMM+ +.MMMM-/ymMMMMMmNMMy..hMMNmMMMMMmy/-MMMM. + hMMM/ `/dMMMMMMMN////NMMMMMMMd/. /MMMh + /MMMdhmMMMmyyMMMMMMMMMMMMhymMMMmhdMMM: + `mMMMMNho//sdMMMMM//NMMMMms//ohNMMMMd + `/so/:+ymMMMNMMMM` mMMMMMMMmh+::+o/` + `yNMMNho-yMMMM` NMMMm.+hNMMNh` + -MMMMd: oMMMM. NMMMh :hMMMM- + -yNMMMmooMMMM- NMMMyomMMMNy- + .omMMMMMMMM-`NMMMMMMMmo. + `:hMMMMMM. NMMMMMh/` + .odNm+ /dNms. +EOF + ;; + esac + ;; + esac - shift - done + # Overwrite distro colors if '$ascii_colors' doesn't + # equal 'distro'. + if [[ "${ascii_colors[0]}" != "distro" ]]; then + color_text="off" + set_colors "${ascii_colors[@]}" + fi } main() {