Skip to content

Instantly share code, notes, and snippets.

@johnroyer
Last active April 28, 2024 03:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save johnroyer/d67bc574e1a8158a917f17ec305f0ac4 to your computer and use it in GitHub Desktop.
Save johnroyer/d67bc574e1a8158a917f17ec305f0ac4 to your computer and use it in GitHub Desktop.
ubuntu packages
apt-transport-https ca-certificates gnupg curl nano
vim-nox exuberant-ctags
net-tools fail2ban
aptitude
# Ubuntu Pro
sudo pro attach TOKEN
build-essential cmake git-core mercurial
apache2-utils mycli mysql-client-8.0
sqlite3 imagemagick ffmpeg
p7zip-full lbzip2 pigz parallel
dstat iftop iperf3 pv btop
# lsd
wget -O /tmp/lsd.deb https://github.com/lsd-rs/lsd/releases/download/v1.0.0/lsd-musl_1.0.0_amd64.deb && \
sudo dpkg -i /tmp/lsd.deb && \
sudo rm /tmp/lsd.deb
# dust
wget -O /tmp/dust.deb https://github.com/bootandy/dust/releases/download/v0.9.0/du-dust_0.9.0-1_amd64.deb && \
sudo dpkg -i /tmp/dust.deb && \
sudo rm /tmp/dust.deb
# docker ----------------------
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# Nginx from ondrej PPA ---------------------
sudo add-apt-repository ppa:ondrej/nginx && \
sudo apt-get update && \
sudo apt install -y nginx-core
# PHP from ondrej PPA -----------------------
sudo add-apt-repository -y ppa:ondrej/php && \
sudo apt install -y php8.1-cli php8.1-mcrypt php8.1-zstd php8.1-bcmath php8.1-bz2 \
php8.1-curl php8.1-gd php8.1-imagick php8.1-intl php8.1-mbstring php8.1-mysql php8.1-pgsql \
php8.1-redis php8.1-sqlite3 php8.1-xml php8.1-zip
# phpbrew
curl -L -O https://github.com/phpbrew/phpbrew/releases/latest/download/phpbrew.phar && \
chmod +x phpbrew.phar && \
sudo mv phpbrew.phar /bin/phpbrew && \
phpbrew init && \
echo '
# phpbrew
[[ -e ~/.phpbrew/bashrc ]] && source ~/.phpbrew/bashrc' >> ~/.bashrc
# phpbrew build tools
sudo apt install -y libxml2-dev libxml++2.6-dev libssl-dev libsqlite3-dev libbz2-dev libcurl4-openssl-dev \
libonig-dev libpq-dev libreadline-dev libxslt1-dev libzip-dev autoconf unixodbc-dev
# GVM ------------
sudo apt-get -y install bison && \
bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer) && \
echo '
# GVM
[[ -s "/home/johnroyer/.gvm/scripts/gvm" ]] && source "/home/johnroyer/.gvm/scripts/gvm"' >> ~/.bashrc
# NVM
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash && \
echo '
# NVM
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion' >> ~/.bashrc
# rustup
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y && \
echo '
# rustup
source "$HOME/.cargo/env"` >> ~/.bashrc
# RVM
gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB && \
curl -sSL https://get.rvm.io | bash -s stable && \
echo '
# RVM
export PATH="$PATH:$HOME/.rvm/bin"
source ~/.rvm/scripts/rvm' >> ~/.bashrc
# AWS cli
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" && \
unzip awscliv2.zip && \
sudo ./aws/install && \
rm -fr aws awscliv2.zip
# Google Cloud SDK
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg && \
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list && \
sudo apt update && \
sudo apt install -y google-cloud-cli
# minikube
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 && \
sudo install minikube-linux-amd64 /usr/local/bin/minikube && \
rm minikube-linux-amd64
# kubectl
curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.29/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg && \
echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.29/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list && \
sudo apt update && \
sudo apt install -y kubectl
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment