debian deps script

This commit is contained in:
Stefen Auris 2021-09-20 23:17:52 -04:00
parent 84953f3843
commit ef50af2de1

59
ddeps.sh Executable file
View file

@ -0,0 +1,59 @@
#!/bin/bash
#These are the programs I expect to find on any install
function dpkg_url() {
local tmp_deb="$(mktemp)"
local src_url=$1
local args=${@:2}
wget -q --show-progress -O $tmp_deb $src_url &&
sudo dpkg -i $tmp_deb $args &&
{ rm -f $tmp_deb; true; } || # commands above succeeded, remove tmp file
{ rm -f $tmp_deb; false; } # commands above failed, remove tmp file anyway
}
# installing base dependencies
sudo apt-get -my install \
git \
wget \
stow \
etckeeper \
tmux \
zsh \
vim \
powerline\
htop \
mc \
curl \
aptitude \
nnn \
ack \
fzf \
ripgrep \
grc \
fd-find \
ncdu \
exa
read -n1 -p $'Does this system need a ssh server?\n' REPLY
if [[ $REPLY == [Yy] ]]; then
sudo apt-get install openssh-server fail2ban
fi
read -n1 -p $'\nDoes this system have a GUI?\n' REPLY
if [[ $REPLY == [Yy] ]]; then
sudo apt-get install synaptic emacs vim-gtk3
else
sudo apt-get install emacs-nox
fi
#Fix stupid Rust issue
if [ -f "/usr/.crates2.json" ]; then
sudo sed -i '/crates2/d' /var/lib/dpkg/info/ripgrep.list
sudo rm -f /usr/.crates2.json
sudo apt-get -my install bat
sudo sed -i '/crates2/d' /var/lib/dpkg/info/bat.list
sudo rm -f /usr/.crates2.json
fi
#This section installs software outside apt
dpkg_url https://github.com/muesli/duf/releases/download/v0.6.2/duf_0.6.2_linux_amd64.deb
dpkg_url https://github.com/dandavison/delta/releases/download/0.8.3/git-delta_0.8.3_amd64.deb
dpkg_url https://github.com/ClementTsang/bottom/releases/download/0.6.4/bottom_0.6.4_amd64.deb