#! /bin/bash # fail immediately on error set -e CURLOPT=${CURLOPT:-"--location --remote-time --show-error --silent --fail --tlsv1.2"} apt-get update \ && apt-get dist-upgrade -y \ && apt-get install -y \ apt-file \ bash-completion \ bat \ build-essential \ byobu \ ca-certificates \ cargo \ command-not-found \ curl \ elinks \ exa \ fd-find \ fzf \ git \ glances \ highlight \ htop \ locales \ man \ mc \ neovim \ nodeenv \ python3 \ python3-pygments \ python3-venv \ ranger \ ripgrep \ tig \ zsh \ && apt-get install --no-install-recommends -y \ firejail \ firejail-profiles \ && apt-file update # node related # shellcheck disable=SC2086 curl $CURLOPT https://deb.nodesource.com/setup_14.x | bash - apt-get install -y nodejs # python3 related # shellcheck disable=SC2086 curl $CURLOPT https://bootstrap.pypa.io/get-pip.py | python3 pip install pipx [ ! -x "$(which exa)" ] && cargo install --root /usr/local --git https://github.com/ogham/exa --tag v0.10.1 cargo install --root /usr/local --git https://github.com/mookid/diffr # shellcheck disable=SC2086 curl $CURLOPT -o /usr/local/sbin/cleanup.sh https://gist.github.com/schtobia/f02deeaf2fd20b23ae9fcf0f451cc858/raw/cleanup.sh \ && chmod u+x /usr/local/sbin/cleanup.sh # diff-highlight from git is necessary for tig if [ ! -x /usr/local/bin/diff-highlight ]; then echo "#!/usr/bin/perl" > /usr/local/bin/diff-highlight \ && cat /usr/share/doc/git/contrib/diff-highlight/DiffHighlight.pm /usr/share/doc/git/contrib/diff-highlight/diff-highlight.perl >> /usr/local/bin/diff-highlight \ && chmod +x /usr/local/bin/diff-highlight fi