Skip to content

Instantly share code, notes, and snippets.

@leobrines
Created April 19, 2019 16:23
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save leobrines/4496d9dcf3beb8d22ccf27d2fae121aa to your computer and use it in GitHub Desktop.
Save leobrines/4496d9dcf3beb8d22ccf27d2fae121aa to your computer and use it in GitHub Desktop.
Apt Repositories And Install Programs Debian Example
#!/bin/bash
apt install curl
#
# Writes sources.list in order to add non-free repository
#
DEBIAN_RELEASE=`cat /etc/*-release 2> /dev/null | grep PRETTY_NAME | awk -F "=" {'print $2'} | awk -F "(" {'print $2'} | awk -F ")" {'print $1'}`
sourcesListFile=/etc/apt/sources.list
repository=http://deb.debian.org/debian/
securityRepository=http://security.debian.org/debian-security
echo "Writes /etc/apt/sources.list in order to add $DEBIAN_RELEASE non-free repository"
echo "deb $repository $DEBIAN_RELEASE main contrib non-free" > $sourcesListFile
echo "deb-src $repository $DEBIAN_RELEASE main contrib non-free" >> $sourcesListFile
echo "" >> $sourcesListFile
echo "deb $securityRepository $DEBIAN_RELEASE/updates main contrib non-free" >> $sourcesListFile
echo "deb-src $securityRepository $DEBIAN_RELEASE/updates main contrib non-free" >> $sourcesListFile
echo "" >> $sourcesListFile
echo "# $DEBIAN_RELEASE-updates, previously known as "volatile"" >> $sourcesListFile
echo "deb $repository $DEBIAN_RELEASE-updates main contrib non-free" >> $sourcesListFile
echo "deb-src $repository $DEBIAN_RELEASE-updates main contrib non-free" >> $sourcesListFile
#
# Writes extras repository and install its programs
#
# Spotify
apt -y install dirmngr
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 931FF8E79F0876134EDDBDCCA87FF9DF48BF1C90
echo deb http://repository.spotify.com stable non-free | tee /etc/apt/sources.list.d/spotify.list
# Chrome
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" | tee /etc/apt/sources.list.d/chrome.list
# Backports
echo "deb http://ftp.debian.org/debian stretch-backports contrib" | tee /etc/apt/sources.list.d/backports.list
# Mongo DB
curl https://www.mongodb.org/static/pgp/server-4.0.asc | sudo apt-key add -
sudo echo "deb http://repo.mongodb.org/apt/debian stretch/mongodb-org/4.0 main" > /etc/apt/sources.list.d/mongodb.list
## UPDATE Repositories
apt update -y
#
# Install programs
#
# Nvidia graphic 340xx Driver
# Inkscape
# Steam
# Chrome
#
dpkg --add-architecture i386
apt install -y linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') nvidia-legacy-340xx-driver nvidia-xconfig inkscape steam google-chrome-stable git
apt install -y vim net-tools nmap unzip wget sudo libcap2-bin build-essential
apt install -y gcc g++ make
nvidia-xconfig # This install xorg.conf
# NODEJS
curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -
apt install -y nodejs
npm install -g express body-parser nodemon babel-cli babel-register babel-preset-env dotenv firebase-tools
setcap cap_net_bind_service=+ep /usr/bin/node
## NPM
npm install -g npm nodemon @vue/cli @vue/cli-init
ln -s /usr/local/bin/npm /usr/bin/npm
## MongoDB
apt install -y mongodb-org
systemctl enable mongod
systemctl start mongod
apt upgrade -y
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment