Skip to content

Instantly share code, notes, and snippets.

@KevCaz
Last active November 13, 2023 04:30
Show Gist options
  • Save KevCaz/ad87721016ba091f8bf9d594fc6dac55 to your computer and use it in GitHub Desktop.
Save KevCaz/ad87721016ba091f8bf9d594fc6dac55 to your computer and use it in GitHub Desktop.
My setup on Debian 11 "Bullseye"
#!/usr/bin/env bash
# NB: this is based on my previous gist installDebian.sh
# *Pre-requisite*:
## 1: enter super user (su) mode
su
## 2: add kevcaz (my username) to sudo
## note NOPASSWD:ALL means no password required when kevcaz uses sudo
## remove 'NOPASSWD:' if you want the password to be required
echo "kevcaz ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/username
## 3: edit sources.list (if needed)
sudo apt-get update
#
sudo apt-get install \
apt-transport-https aria2 build-essential byobu cloc curl ffmpeg htop \
figlet gconf2 gconf-service git gpick inxi lshw llvm lolcat pass tree \
openssh-server pdftk qpdf lftp dnsutils nmap ncftp nethogs lightning \
festival uuid-runtime xdotool xvfb youtube-dl zsh
#
sudo apt-get install \
audacity bibtool calibre emacs font-manager imagemagick inkscape \
gimp gnome-photos gnome-shell gnome-session gparted gnuplot \
graphicsmagick lyx okular papirus-icon-theme qgis \
texlive-full thunderbird transmission vlc vim xournal
#
sudo apt-get install \
fonts-font-awesome fonts-roboto fonts-firacode fontforge \
powerline fonts-powerline ttf-mscorefonts-installer \
libreoffice-l10n-fr mythes-fr hunspell-fr hunspell-pt-br \
hunspell-en-gb hunspell-en-ca
#
sudo apt-get install \
cmake default-jdk gfortran clang golang hugo npm \
nim octave octave-symbolic pandoc pandoc-citeproc primesieve perl \
mdbtools postgresql postgis python3-pip python3 python3-sphinx \
r-base r-recommended r-base-dev ruby-dev uncrustify valgrind libomp-dev
# Rust (https://www.rust-lang.org/tools/install)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
#
git config --global credential.helper 'cache --timeout=14400'
git config --global user.name "Kevin Cazelles"
git config --global user.email kevin.cazelles@gmail.com
# Prezto
zsh
git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto"
setopt EXTENDED_GLOB
for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do
ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}"
done
chsh -s /bin/zsh
# Applications folder
mkdir -p ~/Applications && cd ~/Applications
## config
git clone https://github.com/KevCaz/dotfiles.git
cd dotfiles && make deploy
# Atom
sudo apt-get install gvfs-bin
wget https://atom.io/download/deb -O /tmp/atom.deb && sudo dpkg -i /tmp/atom.deb
## themes
apm install atom-material-syntax atom-material-syntax-dark atom-material-ui
## packages
apm install language-knitr language-latex atom-language-r language-matlab\
language-docker language-julia language-sage\
autocomplete-bibtex autocomplete-emojis autocomplete-font-awesome\
wordcount minimap pdf-view pigments color-picker gist-it file-icons\
ascii-unicode-escape teletype multi-cursor-increment zen filesize\
data-atom intentions busy-signal ink julia-client sourcerer linter\
linter-lintr split-diff atom-beautify git-time-machine highlight-selected\
markdown-preview-enhanced document-outline Hydrogen hydrogen-launcher\
linter-ui-default atom-ide-ui atom-ide-ui ide-python ide-r
# VSCodium (https://vscodium.com/)
echo 'deb https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/debs/ vscodium main' | sudo tee --append /etc/apt/sources.list.d/vscodium.list
sudo apt-get update && sudo apt-get install codium
# to be used by spellright
ln -s /usr/share/hunspell/* ~/.config/VSCodium/Dictionaries
# Pastel (https://github.com/sharkdp/pastel)
wget "https://github.com/sharkdp/pastel/releases/download/v0.8.0/pastel_0.8.0_amd64.deb" -O "/tmp/pastel.deb"
sudo dpkg -i /tmp/pastel.deb
# Brave (requires apt-transport-https curl)
curl -s https://brave-browser-apt-release.s3.brave.com/brave-core.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-release.gpg add -
echo "deb [arch=amd64] https://brave-browser-apt-release.s3.brave.com/ bullseye main" | sudo tee /etc/apt/sources.list.d/brave-browser-release.list
sudo apt-get update && sudo apt-get install brave-browser
# Dropbox (https://www.dropbox.com/install-linux)
cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf -
# Docker (https://docs.docker.com/engine/install/debian/)
sudo apt-get install ca-certificates gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/debian buster stable"
sudo apt-get update && sudo apt-get install docker-ce docker-ce-cli containerd.io
# Simplenote (https://github.com/Automattic/simplenote-electron/releases)
wget https://github.com/Automattic/simplenote-electron/releases/download/v1.21.1/Simplenote-linux-1.21.1-amd64.deb -O /tmp/simplenote.deb
sudo dpkg -i /tmp/simplenote.deb
# Slack Desktop
wget https://downloads.slack-edge.com/linux_releases/slack-desktop-4.8.0-amd64.deb -O /tmp/slack.deb
sudo apt-get install /tmp/slack.deb
# Discord
wget 'https://discord.com/api/download?platform=linux&format=deb' -O /tmp/discord.deb
sudo apt-get install /tmp/discord.deb
# Python packages
# dependencies
sudo apt-get install libcairo2-dev libjpeg-dev libgif-dev libpq-dev
# packages
pip3 install --user --upgrade pip
pip3 install --user pip-tools numpy scipy matplotlib psycopg2 pyparsing future \
pandoc-fignos pandoc-tablenos pandoc-eqnos zotero-cli plotly ipykernel jupyterlab pycairo \
autopep8 beautysh radian tensorflow keras
# Gem config
sudo gem install bundler commonmarker
# npm packages
sudo npm -g gtop decktape google-font-installer
# R config
sudo apt-get install ibfreetype6-dev libpng-dev libtiff5-dev libjpeg-dev libfontconfig1-dev libharfbuzz-dev libfribidi-dev libjq-dev libprotobuf-dev protobuf-compiler
sudo apt-get install r-cran-*
mkdir -p ~/Applications/R_4_0
# /Applications/R_4_0 in Renviron is set as user library path
Rscript -e "install.packages(c('mapview', 'rorcid', 'rcrossref',
'goodpractice', 'microbenchmark', 'pkgdown', 'rhub', 'blogdown'))"
Rscript -e "devtools::install_github(c('inSileco/graphicsutils',
'inSileco/inSilecoMisc', 'inSileco/omdbr', 'inSilecoRef'))"
## Sage
cd ~/Applications
git clone https://github.com/sagemath/sage.git
cd sage && git checkout 9.1 && make
# Zotero
wget 'https://www.zotero.org/download/client/dl?channel=release&platform=linux-x86_64&version=5.0.89' -O /tmp/zotero.tar.bz2
tar -xvf /tmp/zotero.tar.bz2 -C ~/Applications
aria2c https://github.com/retorquere/zotero-better-bibtex/releases/download/v5.2.66/zotero-better-bibtex-5.2.66.xpi
## Julia
cd ~/Applications && git clone https://github.com/JuliaLang/julia.git
cd julia && git checkout v1.5.1 && make
julia -e '
using Pkg
Pkg.add(
["CSV", "DataFrames", "DataFramesMeta", "Query", "Printf",
"Statistics", "Random", "Distributions", "Combinatorics", "Flux", "Tracker",
"DifferentialEquations", "Parameters", "RecursiveArrayTools", "NLsolve",
"PyPlot", "Lazy"])'
## duf
cd ~/Applications
git clone https://github.com/muesli/duf.git
cd duf
go build
cd ~
## Node
cd ~/Applications && git clone https://github.com/nodejs/node.git
cd node && git checkout v14.10.1
./configure && make
## Download Markdown-here for thunderbird
wget https://github.com/neilmayhew/markdown-here/releases/download/v2.13.4-community/markdown-here-v2.13.4-community.xpi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment