90 lines
2.0 KiB
Bash
Executable File
90 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
function do_debian_stretch_setup {
|
|
|
|
git config credential.helper store
|
|
|
|
# FIXME assumes amd64
|
|
export DEBIAN_FRONTEND=noninteractive
|
|
|
|
export PACKAGES="
|
|
byobu
|
|
screen
|
|
vim
|
|
command-not-found
|
|
dnsutils
|
|
inetutils-ping
|
|
man-db
|
|
mosh
|
|
nmap
|
|
runit
|
|
runit-systemd
|
|
wget
|
|
"
|
|
|
|
sudo apt update
|
|
sudo apt install -y $PACKAGES
|
|
|
|
if ! which docker 2>&1 >/dev/null ;then
|
|
sudo apt -y install \
|
|
apt-transport-https \
|
|
ca-certificates \
|
|
curl \
|
|
gnupg2 \
|
|
software-properties-common
|
|
curl -fsSL https://download.docker.com/linux/debian/gpg |
|
|
sudo apt-key add -
|
|
sudo add-apt-repository \
|
|
"deb [arch=amd64] https://download.docker.com/linux/debian \
|
|
$(lsb_release -cs) \
|
|
stable"
|
|
sudo apt update
|
|
sudo apt install -y docker-ce docker-compose
|
|
fi
|
|
}
|
|
|
|
function do_osx_setup {
|
|
cc
|
|
|
|
if [[ ! -d "$HOME/tmp" ]]; then
|
|
mkdir "$HOME/tmp"
|
|
fi
|
|
|
|
if [[ ! -d "$HOME/tmp/osximage" ]]; then
|
|
git clone https://github.com/sneak/osximage.git "$HOME/tmp/osximage.tmp" && \
|
|
mv "$HOME/tmp/osximage.tmp" "$HOME/tmp/osximage"
|
|
fi
|
|
|
|
if [[ -d "$HOME/tmp/osximage" ]]; then
|
|
cd "$HOME/tmp/osximage/custompkg/root/etc/skel"
|
|
if [[ ! -d /etc/skel ]]; then
|
|
sudo rsync -avP ./ /etc/skel/
|
|
fi
|
|
if [[ -d /etc/skel ]]; then
|
|
rsync -avP /etc/skel/ "$HOME"
|
|
fi
|
|
fi
|
|
|
|
for FN in $HOME/Library/user-setup/*.sh ; do
|
|
echo "new-user-setup: starting $(basename $FN)..."
|
|
bash "$FN" 2>&1 | tee -a $HOME/Library/Logs/user-setup.log
|
|
rm "$FN"
|
|
echo "new-user-setup: removed $(basename $FN)..."
|
|
done
|
|
}
|
|
|
|
function do_setup {
|
|
|
|
if [[ "$(lsb_release -c -s)" = "stretch" ]]; then
|
|
do_debian_stretch_setup
|
|
fi
|
|
|
|
if [[ "$(uname)" = "Darwin" ]]; then
|
|
if [[ ! -e "$HOME/Library/profile.d" ]]; then
|
|
do_osx_setup
|
|
fi
|
|
fi
|
|
}
|
|
|
|
do_setup
|