#!/usr/bin/env bash set -ex export LANG=C.UTF-8 export LC_ALL=C.UTF-8 export DEBIAN_FRONTEND=noninteractive DOCKER_VERSION=27.2 # update sudo -E apt update # basic sudo -E apt install -y locales tzdata chrony ca-certificates gpg dirmngr apt-transport-https sudo -E apt install -y gcc g++ make cmake pkg-config openssl libssl-dev sudo -E apt install -y fish curl git git-lfs zip unzip cron sudo chsh -s /usr/bin/fish $(whoami) fish -c "set -Ux LANG C.UTF-8" fish -c "set -Ux LC_ALL C.UTF-8" fish -c "set -Ux fish_features qmark-noglob" sudo git lfs install --system git config --global bash.showUntrackedFiles true # tools sudo -E apt install -y tmux pssh httpie hey glances lsof procps iproute2 iputils-ping dnsutils tcpdump socat ncdu trash-cli jq coreutils moreutils # tweak curl -L http://setup.fish/tmux.conf | tee $HOME/.tmux.conf curl -L http://setup.fish/sysctl.conf | sudo tee /etc/sysctl.d/99-tweak.conf curl -L http://setup.fish/limits.conf | sudo tee /etc/security/limits.d/99-tweak.conf sudo sysctl --system # docker docker version || curl -L https://get.docker.com | bash -s -- --version $DOCKER_VERSION sudo usermod -aG docker $(whoami) # todo #containerd config default | sudo tee /etc/containerd/config.toml #sudo perl -pi -e 's/SystemdCgroup = false/SystemdCgroup = true/g' /etc/containerd/config.toml #which systemctl && sudo systemctl restart containerd || true # dev sudo -E apt install -y rustup golang-go redis-tools postgresql-client fish -c "fish_add_path $HOME/go/bin || true" fish -c "fish_add_path $HOME/.cargo/bin || true" sudo mkdir -p /data sudo chown $(whoami):$(id -gn) /data echo "Done."