Skip to content

Instantly share code, notes, and snippets.

@thibaultmol
Last active May 1, 2019 05:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save thibaultmol/ec521688a09d4f4dcf4e9deb8f3eba38 to your computer and use it in GitHub Desktop.
Save thibaultmol/ec521688a09d4f4dcf4e9deb8f3eba38 to your computer and use it in GitHub Desktop.
Crostini initialize
#!/bin/bash
get_go() {
# [get_golang.sh](https://gist.github.com/n8henrie/1043443463a4a511acf98aaa4f8f0f69)
# Download latest Golang release for AMD64
# https://dl.google.com/go/go1.10.linux-amd64.tar.gz
set -euf -o pipefail
# Install pre-reqs
sudo apt-get install python3 git -y
o=$(python3 -c $'import os\nprint(os.get_blocking(0))\nos.set_blocking(0, True)')
#Download Latest Go
GOURLREGEX='https://dl.google.com/go/go[0-9\.]+\.linux-amd64.tar.gz'
echo "Finding latest version of Go for AMD64..."
url="$(wget -qO- https://golang.org/dl/ | grep -oP 'https:\/\/dl\.google\.com\/go\/go([0-9\.]+)\.linux-amd64\.tar\.gz' | head -n 1 )"
latest="$(echo $url | grep -oP 'go[0-9\.]+' | grep -oP '[0-9\.]+' | head -c -2 )"
echo "Downloading latest Go for AMD64: ${latest}"
wget --quiet --continue --show-progress "${url}"
unset url
unset GOURLREGEX
# Remove Old Go
sudo rm -rf /usr/local/go
# Install new Go
sudo tar -C /usr/local -xzf go"${latest}".linux-amd64.tar.gz
echo "Create the skeleton for your local users go directory"
mkdir -p ~/go/{bin,pkg,src}
echo "Setting up GOPATH"
echo "export GOPATH=~/go" >> ~/.profile && source ~/.profile
echo "Setting PATH to include golang binaries"
echo "export PATH='$PATH':/usr/local/go/bin:$GOPATH/bin" >> ~/.profile && source ~/.profile
echo "Installing dep for dependency management"
go get -u github.com/golang/dep/cmd/dep
# Remove Download
rm go"${latest}".linux-amd64.tar.gz
# Print Go Version
/usr/local/go/bin/go version
python3 -c $'import os\nos.set_blocking(0, '$o')'
}
get_code() {
set -euf -o pipefail
sudo apt-get install gpg -y
curl -s https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
sudo apt-get update -y
sudo apt-get install code -y
sudo apt-get install libxss1 libasound2 -y
code --install-extension dbaeumer.vscode-eslint
code --install-extension PeterJausovec.vscode-docker
code --install-extension keesschollaart.vscode-home-assistant
code --install-extension Shan.code-settings-sync
code --install-extension GoogleCloudTools.cloudcode
code --install-extension GitHub.vscode-pull-request-github
code --install-extension ms-vscode.Go
code --install-extension HookyQR.beautify
code --install-extension ms-python.python
code --install-extension redhat.vscode-yaml
code --install-extension ritwickdey.LiveServer
code --install-extension vscode-icons-team.vscode-icons
code --install-extension dbaeumer.jshint
code --install-extension quicktype.quicktype
code --install-extension eamodio.gitlens
code --install-extension humao.rest-client
code --install-extension 30-seconds.30-seconds-of-code
code --install-extension lukas-tr.materialdesignicons-intellisense
code --install-extension Zignd.html-css-class-completion
code --install-extension codezombiech.gitignore
code --install-extension IBM.output-colorizer
code --list-extensions --show-versions
}
get_docker() {
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg2 \
software-properties-common -y
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-get update
sudo apt-get install docker-ce -y
me=`whoami`
sudo usermod -aG docker ${me}
}
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get install wget curl bzip2 -y
cd ~
get_go
cd ~
go get github.com/nsf/gocode
go get github.com/uudashr/gopkgs/cmd/gopkgs
go get github.com/ramya-rao-a/go-outline
go get github.com/acroca/go-symbols
go get golang.org/x/tools/cmd/guru
go get golang.org/x/tools/cmd/gorename
go get github.com/rogpeppe/godef
go get github.com/sqs/goreturns
go get golang.org/x/lint/golint
go get github.com/derekparker/delve/cmd/dlv
get_docker
get_code
sudo apt install flatpak -y
# peazip and dependencies
sudo apt install sudo apt-get install libatk1.0-0:i386 libc6:i386 libcairo2:i386 libgdk-pixbuf2.0-0:i386 libglib2.0-0:i386 libgtk2.0-0:i386 libpango1.0-0:i386 libx11-6:i386 libcanberra-gtk-module:i386 -y
wget https://osdn.net/dl/peazip/peazip_6.7.2.LINUX.GTK2-2_all.deb
sudo apt install ./peazip_6.7.2.LINUX.GTK2-2_all.deb -y
#Steam
sudo usermod -a -G video,audio thibaultmolleman
deb http://deb.debian.org/debian stretch main contrib non-free
deb http://security.debian.org/ stretch/updates main contrib non-free
Add i386 infrastructure:
sudo dpkg --add-architecture i386
sudo apt update
sudo apt dist-upgrade -y
sudo apt install libgl1-mesa-dri:i386 libgl1-mesa-glx:i386 libglapi-mesa:i386 steam -y
#Firefox
sudo apt install wget bzip2 -y
sudo apt install libdbus-glib-1-2 -y
sudo apt install firefox-esr -y
#PDFsam Basic
curl -s https://api.github.com/repos/torakiki/pdfsam/releases/latest \
| grep "pdfsam.*deb" \
| cut -d : -f 2,3 \
| tr -d \" \
| wget -qi -
sudo apt install ./pdfsam*.deb -y
#others
sudo apt install command-not-found -y
sudo update
sudo update-command-not-found
sudo apt install filezilla playonlinux qbittorrent zenmap gwakeonlan teamviewer gimp inkscape gedit yubikey-personalization-gui -y
echo download filezilla pro and install using playonlinux https://filezilla-project.org/prodownload.php
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment