ansible/roles/shell/files/showapps.sh

55 lines
1.7 KiB
Bash

#!/bin/bash
# Show installed software on this system
# Part of the Ansible shell role
BOLD='\033[1m'
GREEN='\033[32m'
YELLOW='\033[33m'
RED='\033[31m'
RESET='\033[0m'
echo -e "${BOLD}=== Installed Software ===${RESET}\n"
echo -e "${YELLOW}Development:${RESET}"
for tool in git node python3 docker; do
if command -v $tool >/dev/null 2>&1; then
version=$(case $tool in
node) node --version 2>/dev/null ;;
python3) python3 --version 2>/dev/null | awk '{print $2}' ;;
git) git --version 2>/dev/null | awk '{print $3}' ;;
docker) docker --version 2>/dev/null | awk '{print $3}' | tr -d ',' ;;
esac)
printf " ${GREEN}${RESET} %-15s %s\n" "$tool" "$version"
fi
done
echo -e "\n${YELLOW}Data Science:${RESET}"
for tool in conda jupyter R; do
if command -v $tool >/dev/null 2>&1; then
version=$(case $tool in
conda) conda --version 2>/dev/null | awk '{print $2}' ;;
jupyter) echo "installed" ;;
R) R --version 2>/dev/null | head -1 | awk '{print $3}' ;;
esac)
printf " ${GREEN}${RESET} %-15s %s\n" "$tool" "$version"
fi
done
echo -e "\n${YELLOW}Editors:${RESET}"
for tool in vim nvim nano; do
command -v $tool >/dev/null 2>&1 && printf " ${GREEN}${RESET} %s\n" "$tool"
done
echo -e "\n${YELLOW}CLI Tools:${RESET}"
for tool in tmux fzf htop btop jq yq rg fd; do
command -v $tool >/dev/null 2>&1 && printf " ${GREEN}${RESET} %s\n" "$tool"
done
echo -e "\n${YELLOW}Shell:${RESET}"
echo -e " ${GREEN}${RESET} current: $SHELL"
[ -d "$HOME/.oh-my-zsh" ] && echo -e " ${GREEN}${RESET} oh-my-zsh"
[ -d "$HOME/.oh-my-zsh/custom/themes/powerlevel10k" ] && echo -e " ${GREEN}${RESET} powerlevel10k"
echo ""