Skip to content

Instantly share code, notes, and snippets.

@fsouza
Last active November 28, 2015 18:00
Show Gist options
  • Save fsouza/6fe9e94d4a0a780ca4e4 to your computer and use it in GitHub Desktop.
Save fsouza/6fe9e94d4a0a780ca4e4 to your computer and use it in GitHub Desktop.
#!/bin/bash
set -e
echo "Please ensure that you have the proper SSH keys and then press enter"
read
mkdir -p ${HOME}/Projects
pushd ${HOME}/Projects
if [ ! -d dotfiles ]; then
git clone [email protected]:fsouza/dotfiles.git
fi
pushd dotfiles
git submodule update --init --recursive
popd
popd
pushd ${HOME}
ln -sf Projects/dotfiles/.gitconfig
ln -sf Projects/dotfiles/.gitignore_global
ln -sf Projects/dotfiles/.hgignore_global
ln -sf Projects/dotfiles/.hgrc
ln -sf Projects/dotfiles/.bash_profile .bashrc
if [ ! -d .vim ]; then
git clone [email protected]:fsouza/vimfiles.git .vim
fi
pushd .vim
git submodule update --init --recursive
mkdir -p swp
popd
cat >.vimrc <<EOF
source $HOME/.vim/.vimrc
EOF
mkdir -p $HOME/.config
pushd $HOME/.config
curl -L https://gist.github.com/fsouza/6fe9e94d4a0a780ca4e4/raw/fe50d0495614f7b18f105cf449a974328dbaa6bf/dconf.tar.gz | tar -xzvf -
popd
source $HOME/.bashrc
go get github.com/nsf/gocode/...
go get github.com/odeke-em/drive/cmd/drive
popd
vagrant plugin install vagrant-kvm
#!/bin/bash
set -e
OWNER=${OWNER:-fss}
PACKAGES="curl git mercurial clang build-essential spotify-client apt-transport-https vim-nox msttcorefonts python-dev libevent-dev libxml2-dev libxslt-dev libmysqlclient-dev mysql-server docker-engine youtube-dl python3 python3-dev mongodb-org parallel gfortran scala mono-devel rbenv ruby-build pypy tree python-virtualenv redis-server xclip qemu-kvm libvirt-bin virtinst virtualbox-5.0 dkms libvirt-dev"
GO_VERSION=1.5.1
export DEBIAN_FRONTEND=noninteractive
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys BBEBDCB318AD50EC6865090613B00F1FD2C19886
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
curl -L https://www.virtualbox.org/download/oracle_vbox.asc | apt-key add -
echo "deb http://repository.spotify.com testing non-free" | tee /etc/apt/sources.list.d/spotify.list
echo "deb https://apt.dockerproject.org/repo debian-jessie main" | tee /etc/apt/sources.list.d/docker.list
echo "deb http://download.mono-project.com/repo/debian beta main" | tee /etc/apt/sources.list.d/mono-xamarin-beta.list
echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main" | tee /etc/apt/sources.list.d/mongodb-org-3.0.list
echo "deb http://download.virtualbox.org/virtualbox/debian jessie contrib non-free" | tee /etc/apt/sources.list.d/virtualbox.list
sed -ie '/^deb /s/jessie main$/\0 non-free contrib/' /etc/apt/sources.list
apt-get update
apt-get dist-upgrade -y
apt-get install ${PACKAGES} -qqy
cat > /etc/locale.gen <<EOF
en_US.UTF-8 UTF-8
pt_BR.UTF-8 UTF-8
EOF
locale-gen
pushd /tmp
if [ ! -f /usr/local/bin/gitter ]; then
curl -LO https://update.gitter.im/linux64/gitter_2.4.0_amd64.deb
dpkg -i gitter_2.4.0_amd64.deb
fi
if [ ! -f /usr/bin/slack ]; then
curl -LO https://slack-ssb-updates.global.ssl.fastly.net/linux_releases/slack-desktop-1.2.6-amd64.deb
dpkg -i slack-desktop-1.2.6-amd64.deb
fi
if [ ! -f /usr/bin/vagrant ]; then
curl -LO https://releases.hashicorp.com/vagrant/1.7.4/vagrant_1.7.4_x86_64.deb
dpkg -i vagrant_1.7.4_x86_64.deb
fi
rm -f *.deb
FIREFOX_FILE=firefox-developer-edition.tar.bz2
if [ ! -d /opt/firefox ]; then
curl -Lo ${FIREFOX_FILE} "https://download.mozilla.org/?product=firefox-aurora-latest-ssl&os=linux64&lang=en-US"
mkdir -p /opt/firefox
tar -C /opt -xjvf ${FIREFOX_FILE}
rm -f ${FIREFOX_FILE}
fi
if [ ! -d /usr/local/go ]; then
curl -LO https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz
mkdir -p /usr/local/go
tar -C /usr/local -xzvf go${GO_VERSION}.linux-amd64.tar.gz
rm go${GO_VERSION}.linux-amd64.tar.gz
fi
ln -sf /usr/local/go/bin/* /usr/local/bin
ln -sf /opt/firefox/firefox /usr/local/bin/firefox
mkdir -p /usr/local/var
id ${OWNER} || useradd -m -s /bin/bash ${OWNER}
chown -R ${OWNER}:${OWNER} /opt/firefox /usr/local/var /usr/local/go
popd
usermod -G sudo,kvm,libvirt ${OWNER}
if [ ! -f /usr/local/bin/rustc ]; then
curl -sSf https://static.rust-lang.org/rustup.sh | bash -s -- --disable-sudo --yes
fi
curl -sL https://deb.nodesource.com/setup_4.x | bash -
apt-get install nodejs -y
ln -sf /usr/bin/nodejs /usr/bin/node
#!/bin/bash
set -e
OWNER=${OWNER:-fss}
GROUPS="@virtualization "
PACKAGES="curl git mercurial clang clang-devel vim python-devel libevent-devel libxml2-devel libxslt-devel community-mysql-server community-mysql-libs youtube-dl python3 python3-devel mongodb-server parallel gcc-gfortran scala mono-devel mono-basic pypy tree python-virtualenv redis xclip VirtualBox-5.0 dkms libvirt-devel golang vagrant spotify-client"
echo "fastestmirror=true" >> /etc/dnf/dnf.conf
systemctl disable dnf-makecache.timer
dnf check-update -y
dnf upgrade -y
dnf install http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm -y
dnf config-manager --add-repo=http://download.virtualbox.org/virtualbox/rpm/fedora/virtualbox.repo
dnf config-manager --add-repo=http://negativo17.org/repos/fedora-spotify.repo
dnf install ${PACKAGES} -y
set +e
localedef -c -i en_US -f UTF-8 en_US.UTF-8
localedef -c -i pt_BR -f UTF-8 pt_BR.UTF-8
set -e
pushd /tmp
if [ ! -f /usr/bin/slack ]; then
dnf install -y https://slack-ssb-updates.global.ssl.fastly.net/linux_releases/slack-1.2.6-0.1.fc21.x86_64.rpm
fi
FIREFOX_FILE=firefox-developer-edition.tar.bz2
if [ ! -d /opt/firefox ]; then
curl -Lo ${FIREFOX_FILE} "https://download.mozilla.org/?product=firefox-aurora-latest-ssl&os=linux64&lang=en-US"
mkdir -p /opt/firefox
tar -C /opt -xjvf ${FIREFOX_FILE}
rm -f ${FIREFOX_FILE}
fi
ln -sf /opt/firefox/firefox /usr/bin/firefox
mkdir -p /usr/local/var
chown -R ${OWNER}:${OWNER} /opt/firefox /usr/local/var
popd
if [ ! -f /usr/local/bin/rustc ]; then
curl -sSf https://static.rust-lang.org/rustup.sh | bash -s -- --disable-sudo --yes
fi
curl -sSL https://get.docker.com/ | sh
curl --silent --location https://rpm.nodesource.com/setup | bash -
dnf install nodejs -y
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment