Skip to content

Instantly share code, notes, and snippets.

@ghostdevv
Last active November 30, 2024 23:22
Show Gist options
  • Save ghostdevv/d5f50585e2e4058ea9b9192001329648 to your computer and use it in GitHub Desktop.
Save ghostdevv/d5f50585e2e4058ea9b9192001329648 to your computer and use it in GitHub Desktop.
pi-install
#!/bin/bash
set -e
echo Updating
sudo apt update
if ! command -v jq &> /dev/null; then
echo Installing jq
sudo apt-get install jq
fi
if ! command -v bat &> /dev/null; then
echo Installing bat
sudo apt-get install bat
sudo ln -s /usr/bin/batcat /usr/bin/bat
fi
if ! command -v fastfetch &> /dev/null; then
echo Installing fastfetch
wget https://github.com/fastfetch-cli/fastfetch/releases/latest/download/fastfetch-linux-aarch64.deb -O fastfetch.deb
sudo apt-get install ./fastfetch.deb
rm ./fastfetch.deb
fi
if ! command -v tailscale &> /dev/null; then
echo Installing fastfetch
curl -fsSL https://tailscale.com/install.sh | sh
fi
if ! command -v lazydocker &> /dev/null; then
echo Installing lazydocker
curl https://raw.githubusercontent.com/jesseduffield/lazydocker/master/scripts/install_update_linux.sh | bash
echo 'export PATH="$PATH:/home/$USER/.local/bin"' >> ~/.bashrc
fi
if ! command -v gh &> /dev/null; then
(type -p wget >/dev/null || (sudo apt update && sudo apt-get install wget -y)) \
&& sudo mkdir -p -m 755 /etc/apt/keyrings \
&& wget -qO- https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg > /dev/null \
&& sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg \
&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
&& sudo apt update \
&& sudo apt install gh -y
fi
if ! command -v docker &> /dev/null; then
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo usermod -aG docker $USER
fi
echo "Done! Don't forget to restart your shell"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment