███████╗███████╗████████╗ ██████╗██╗ ██╗ ████████╗ ██████╗ ██████╗ ██╗ ███████╗
██╔════╝██╔════╝╚══██╔══╝██╔════╝██║ ██║ ╚══██╔══╝██╔═══██╗██╔═══██╗██║ ██╔════╝
█████╗ █████╗ ██║ ██║ ███████║ ██║ ██║ ██║██║ ██║██║ ███████╗
██╔══╝ ██╔══╝ ██║ ██║ ██╔══██║ ██║ ██║ ██║██║ ██║██║ ╚════██║
██║ ███████╗ ██║ ╚██████╗██║ ██║ ██║ ╚██████╔╝╚██████╔╝███████╗███████║
╚═╝ ╚══════╝ ╚═╝ ╚═════╝╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚══════╝╚══════╝
random anime logo · system info · shell setup · distro-aware aliases
Every time you open a terminal, myfastfetch fires — pulling a random anime logo from your local collection and rendering it alongside a full system snapshot via fastfetch. Shell templates for bash and zsh are deployed during install, distro detection runs at startup, and aliases are set accordingly. No manual config needed.
git clone https://github.com/0xb0rn3/fetch-tools.git
cd fetch-tools
chmod +x run
sudo ./runThe installer asks whether to configure Bash (with ble.sh) or Zsh (with Oh My Zsh). It then:
- installs fastfetch via your distro's package manager
- pulls anime logos from
0xb0rn3/my-fastfetch-configvia sparse-checkout - copies
myfastfetch→/usr/local/bin/myfastfetchand makes it executable - deploys
config.jsonc→~/.config/fastfetch/ - writes the shell template to
~/.zshrcor~/.bashrc(backs up the original first) - installs Oh My Zsh + plugins, or ble.sh, depending on your choice
Open a new terminal. myfastfetch runs automatically on every session start.
Logos are sourced from 0xb0rn3/my-fastfetch-config. To pull the latest set without re-running the full installer:
./run --update-logosNo sudo required. Writes directly to ~/.config/fastfetch/logos/.
myfastfetch reads all files in ~/.config/fastfetch/logos/, tracks which ones have been shown in ~/.config/fastfetch/used_logos.txt, picks randomly from the remaining pool, and resets when every logo has been shown once. The full cycle repeats, never the same logo twice until the deck runs out.
myfastfetch passes image files directly to fastfetch. Inline image rendering requires one of:
| Terminal | Support |
|---|---|
| kitty | ✓ |
| Ghostty | ✓ |
| WezTerm | ✓ |
| iTerm2 | ✓ macOS |
| Terminology | ✓ |
| Konsole | ✓ |
Text-only terminals still display system info — just without the image logo.
config.jsonc defines what fastfetch shows. Two bordered panels, color circles at the bottom:
| module | what it shows |
|---|---|
| Chassis | form factor + chassis type |
| OS | distro name + architecture |
| Kernel | kernel version |
| Packages | pacman count + flatpak count |
| Display | resolution + refresh rate + display type |
| Terminal | terminal emulator name |
| WM | window manager + version + protocol |
| CPU | model + clock speed |
| GPU | name + type (integrated/discrete) |
| GPU Driver | Mesa/amdgpu version via glxinfo |
| Memory | used / total |
| OS Age | days since install + install date |
| Uptime | current session uptime |
| Colors | terminal color palette as circles |
Logo is resolved at runtime by myfastfetch — the config.jsonc logo field is overridden by the --logo flag.
Shell templates detect your package manager at startup and define a unified alias set. Every distro gets the same command names.
| alias | arch pacman |
debian/ubuntu apt |
fedora/rhel dnf |
opensuse zypper |
void xbps |
|---|---|---|---|---|---|
update |
pacman -Syy -Syu |
apt upgrade |
dnf update |
zypper update |
xbps-install -Su |
install |
pacman -S |
apt install |
dnf install |
zypper install |
xbps-install -S |
remove |
pacman -Rns |
apt remove |
dnf remove |
zypper remove |
xbps-remove -R |
clean |
pacman -Scc |
apt autoremove |
dnf clean all |
zypper clean |
xbps-remove -Oo |
search |
pacman -Ss |
apt-cache search |
dnf search |
zypper search |
xbps-query -Rs |
orphans |
pacman -Qtdq |
apt autoremove |
dnf autoremove |
zypper --orphaned |
xbps-remove -o |
pkglist |
pacman -Qe |
apt list --installed |
dnf list installed |
zypper packages --installed |
xbps-query -l |
pkgcount |
pacman -Q | wc -l |
dpkg -l | wc -l |
rpm -qa | wc -l |
rpm -qa | wc -l |
xbps-query -l | wc -l |
pkgown |
pacman -Qo |
dpkg -S |
rpm -qf |
rpm -qf |
xbps-query -o |
arxos-update full sync + system update
arxos-install install packages
arxos-remove remove package + unneeded deps
arxos-force-remove remove without dep checks (pacman -Rdd)
arxos-clean full package cache wipe
arxos-refresh-keys reinit and repopulate keyring
arxos-mirrors reflector — top 20 HTTPS mirrors sorted by rate
arxos-orphans remove all orphaned packages
arxos-boostmode set CPU governor to performance
arxos-powersave set CPU governor to powersave
arxos-cpu-status show current governor state
arxos-health failed services · disk · memory · load · pending updates
arxos-selfscan nmap -sS -sV on localhost
pkgsize top 20 packages by installed size (requires expac)
mirrors alias for arxos-mirrors
| alias | command |
|---|---|
ls |
ls --color=auto |
ll |
ls -l |
la |
ls -A |
l |
ls -CF |
lt |
ls -lht — sort by time |
lz |
ls -lhS — sort by size |
lsd |
ls -d */ — directories only |
lsf |
ls -p | grep -v / — files only |
newest |
ls -lt | head -10 |
oldest |
ls -ltr | head -10 |
tree |
tree -C — colored tree |
| alias | command |
|---|---|
.. |
cd .. |
... |
cd ../.. |
.... |
cd ../../.. |
..... |
cd ../../../.. |
dl |
cd ~/Downloads |
docs |
cd ~/Documents |
| alias | command |
|---|---|
mkdir |
mkdir -pv |
cp |
cp -iv |
mv |
mv -iv |
fhere |
find . -name |
ftext |
grep -r — recursive text search |
| alias | command |
|---|---|
df |
df -h |
free |
free -m |
sysinfo |
inxi -Fxz |
temps |
sensors |
procs |
ps aux --sort=-%cpu | head -20 |
meminfo |
memory + top 10 by mem |
diskinfo |
storage overview + top dirs by size |
duh |
du -h --max-depth=1 | sort -rh |
bigfiles |
top N files by size in current dir |
countfiles |
count files recursively |
boot-time |
systemd-analyze |
boot-blame |
systemd-analyze blame | head -20 |
| alias | command |
|---|---|
psmem |
top 10 processes by memory |
pscpu |
top 10 processes by CPU |
topmem |
detailed top 10 by memory |
killed |
dmesg | grep -i kill — OOM kills |
| alias | command |
|---|---|
myip |
external IP via ifconfig.me |
localip |
local IPv4 address |
gateway |
default gateway |
ports |
netstat -tulanp |
portsopen |
listening ports only |
connections |
active connections via ss |
wifi |
list nearby networks |
wifi-connect |
nmcli device wifi connect |
flush-dns |
flush systemd-resolved cache |
tracert |
traceroute |
headers |
curl -I — HTTP headers |
get |
curl -sL — silent fetch |
nmap-quick |
sudo nmap -sV --open |
nmap-ping |
sudo nmap -sn — ping sweep |
| alias | command |
|---|---|
speedtest |
netspeed -q |
st |
netspeed -q (short) |
speedtest-full |
netspeed -f |
pingtest |
netspeed -p |
netinfo |
netspeed -i |
ping1 |
ping -c 5 1.1.1.1 |
ping8 |
ping -c 5 8.8.8.8 |
| alias | command |
|---|---|
service-list |
all active services |
service-failed |
systemctl --failed |
service-start |
sudo systemctl start |
service-stop |
sudo systemctl stop |
service-restart |
sudo systemctl restart |
service-enable |
sudo systemctl enable |
service-disable |
sudo systemctl disable |
| alias | command |
|---|---|
logs |
journalctl -xe |
logs-boot |
journalctl -b |
logs-follow |
journalctl -f |
logs-service |
journalctl -u |
| alias | command |
|---|---|
gs |
git status |
ga |
git add |
gc |
git commit -m |
gp |
git push |
gpl |
git pull |
gl |
git log --oneline --graph --decorate |
gd |
git diff |
| alias | command |
|---|---|
dps |
docker ps |
dpsa |
docker ps -a |
di |
docker images |
dex |
docker exec -it |
dlog |
docker logs -f |
dstop |
stop all running containers |
dclean |
docker system prune -af |
dcu |
docker compose up -d |
dcd |
docker compose down |
dcl |
docker compose logs -f |
| alias | command |
|---|---|
ta |
tmux attach |
tls |
tmux ls |
tn |
tmux new -s |
tk |
tmux kill-session -t |
| alias | opens |
|---|---|
google <q> |
|
bing <q> |
Bing |
ddg <q> |
DuckDuckGo |
| alias | command |
|---|---|
reload |
re-source shell config |
aliases |
sorted alias list |
hist |
history | grep |
now |
current date + time |
week |
current week number |
epoch |
unix timestamp |
calc |
bc -l — calculator |
weather |
curl wttr.in |
cheat |
curl cheat.sh/ |
pubkey |
print ~/.ssh/id_rsa.pub |
genpass |
openssl rand -base64 32 |
sha |
shasum -a 256 |
md5 |
md5sum |
py |
python3 |
serve |
python3 -m http.server 8000 |
| function | usage | what it does |
|---|---|---|
mkcd |
mkcd dirname |
mkdir + cd in one shot |
backup |
backup file |
copies file with timestamp suffix |
killp |
killp name |
kill all processes matching name |
whatsmyip |
whatsmyip |
local + external IP |
isup |
isup https://site.com |
checks if a URL returns 200 |
testhost |
testhost hostname |
ping + DNS lookup |
portcheck |
portcheck host port |
TCP port open/closed |
duh |
duh |
disk usage, current dir, sorted |
bigfiles |
bigfiles [N] |
top N files by size (default 20) |
countfiles |
countfiles [dir] |
count all files recursively |
path |
path |
print PATH entries one per line |
urlencode |
urlencode string |
percent-encode a string |
urldecode |
urldecode string |
decode percent-encoded string |
http-server |
http-server |
python3 -m http.server |
extract |
extract file |
decompress any archive format |
copypath |
copypath |
copy current path to clipboard |
copyfile |
copyfile file |
copy file contents to clipboard |
web_search |
web_search google query |
open search in browser |
dirhistory |
dirhistory path |
pushd wrapper |
arxos-health |
arxos-health |
arch/arxos — system health overview |
arxos-selfscan |
arxos-selfscan |
arch/arxos — nmap localhost scan |
extractsupports:.tar.bz2.tar.gz.bz2.rar.gz.tar.tbz2.tgz.zip.Z.7z
cleanup.sh wipes caches for Brave, Firefox, OBS, VS Code, and the system package manager. Runs sequentially — each section is independent so partial failures don't block the rest.
chmod +x cleanup.sh && ./cleanup.shscope:
| target | what gets wiped |
|---|---|
| Brave | IndexedDB · LocalStorage · ServiceWorker CacheStorage · GPUCache · ShaderCache · BlobStorage |
| Firefox | cache2 · startupCache · shader-cache · ServiceWorker · IndexedDB · LocalStorage · thumbnails |
| OBS Studio | cache · plugin config · browser plugin cache + code cache · logs |
| VS Code | Cache · CachedData · GPUCache · workspaceStorage · crashpad |
| System | AppImage cache · thumbnails · /var/cache · pacman cache · journal vacuum to 100M |
fetch-tools/
├── run # installer · handles --update-logos flag
├── myfastfetch # random logo picker — called at shell startup
├── config.jsonc # fastfetch module layout and display config
├── cleanup.sh # cache cleanup utility
├── .src/
│ └── templates/
│ ├── bashrc.template # bash config · full alias + function set · ble.sh ready
│ └── zshrc.template # zsh equivalent · oh-my-zsh · plugins
└── README.md
myfastfetch: no logos found
./run --update-logosfastfetch not found after install Install it manually for your distro then re-run:
# Arch
sudo pacman -S fastfetch
# Debian/Ubuntu
sudo apt install fastfetch
# Fedora
sudo dnf install fastfetchlogo displays as text / broken characters Your terminal doesn't support inline images. Switch to kitty, Ghostty, or WezTerm.
Oh My Zsh plugins not loading
Make sure the plugin repos were cloned into ~/.oh-my-zsh/custom/plugins/. The installer handles this, but if it was skipped:
git clone --depth=1 https://github.com/zsh-users/zsh-syntax-highlighting \
~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting
git clone --depth=1 https://github.com/zsh-users/zsh-autosuggestions \
~/.oh-my-zsh/custom/plugins/zsh-autosuggestionsble.sh not activating
Check that the source line was appended to ~/.bashrc:
tail -5 ~/.bashrcIt should contain: source "$HOME/.local/share/blesh/ble.sh"
MIT — 0xb0rn3 | 0xbv1