Skip to content

Instantly share code, notes, and snippets.

@ntaraujo
Last active November 10, 2020 20:03
Show Gist options
  • Save ntaraujo/c57add4ca23c575c271fe47bd4a5fa9b to your computer and use it in GitHub Desktop.
Save ntaraujo/c57add4ca23c575c271fe47bd4a5fa9b to your computer and use it in GitHub Desktop.
My current setup
#!/bin/sh
# Start timer
start=$SECONDS
# Verbose and safe
set -xe
# Display
echo "#!/bin/sh
xrandr --newmode '1920x1080_60.00' 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode VGA-2 1920x1080_60.00" > ~/.xprofile
xrandr --newmode '1920x1080_60.00' 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode VGA-2 1920x1080_60.00
xrandr --output VGA-2 --mode 1920x1080_60.00
# Keyboard
setxkbmap br
# Downloads
cd ~/Downloads
wget "https://teams.microsoft.com/downloads/desktopurl?env=production&plat=linux&arch=x64&download=true&linuxArchiveType=deb" -O teams.deb
wget https://www.torproject.org/dist/torbrowser/10.0.2/tor-browser-linux64-10.0.2_en-US.tar.xz -O tor-browser.tar.xz
wget https://zoom.us/client/latest/zoom_amd64.deb
wget https://download.virtualbox.org/virtualbox/6.1.16/Oracle_VM_VirtualBox_Extension_Pack-6.1.16.vbox-extpack
wget https://download.mobirise.com/beta/mobirise5beta-setup.deb
wget https://files.dev47apps.net/obs/droidcam_obs_1.1.1_linux.zip
# Need to be moved
cd ~/Downloads
sudo tar -xvJf tor-browser.tar.xz -C /opt/
sudo mv /opt/tor-browser*/ /opt/tor-browser
unzip droidcam_obs_1.1.1_linux.zip -d /tmp
# Repositories
sudo sh -c "echo 'deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main' >> /etc/apt/sources.list.d/google.list"
wget -q https://dl.google.com/linux/linux_signing_key.pub -O- | sudo apt-key add -
sudo sh -c "echo \"deb http://download.virtualbox.org/virtualbox/debian $(lsb_release -sc) contrib\" >> /etc/apt/sources.list.d/virtualbox.list"
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
# Apply
sudo apt-get update
# Installables by apt
cd ~/Downloads
sudo apt-get install ./mobirise5beta-setup.deb ./zoom_amd64.deb ./teams.deb `# local packages` \
virtualbox-6.1 google-chrome-stable `# from external repositories` \
filezilla zsh vim git gnome-tweak-tool `# apps` \
gnome-shell-extension-dash-to-panel `# shell extensions` \
zip unzip python3-pip snapd npm `# tools for after` \
linux-lowlatency linux-headers-lowlatency `# low latency kernel`\
openjdk-8-jdk libtool pkg-config zlib1g-dev libltdl-dev autoconf autotools-dev \
libncurses5-dev libncursesw5-dev libtinfo5 cmake libffi-dev libssl-dev libssl0* \
libglib2.0-0 libxcb-shape0 libxcb-shm0 libxcb-xfixes0 libxcb-randr0 libxcb-image0 \
libfontconfig1 libgl1-mesa-glx libxi6 libsm6 libxrender1 libpulse0 libxcomposite1 \
libxslt1.1 libsqlite3-0 libxcb-keysyms1 libxcb-xtest0 chrome-gnome-shell \
gnome-shell-extension # dependecies
# Installables by classic snap
sudo snap install blender --classic
sudo snap install node --classic
sudo snap install android-studio --classic
sudo snap install code --classic
sudo snap install gitkraken --classic
sudo snap install pycharm-community --classic
# Installables by snap
sudo snap install audacity discord inkscape kdenlive simplenote spotify \
the-powder-toy vlc gimp photogimp obs-studio qbittorrent-arnatious
# Installables by global npm
sudo npm install n8n -g
# Installables by pip3 --user
pip3 install --user --upgrade buildozer Cython==0.29.19 virtualenv
# Some folders
mkdir ~/proj0
mkdir ~/proj1
mkdir ~/proj2
# Google Chrome, needed for passwords
google-chrome &
# PyCharm
pycharm-community
# Whatsapp Web
google-chrome https://web.whatsapp.com/
# n8n.io
n8n & google-chrome http://localhost:5678
# Teams, quit on indicator
teams
# Zoom, exit on indicator
zoom
# Visual Studio Code
code --verbose
# Discord, quit on indicator
discord
# GitKraken
gitkraken
# Simplenote
simplenote
# Spotify
spotify
# VirtualBox
virtualbox
# Tor Browser
/opt/tor-browser/start-tor-browser.desktop --register-app
# Oh-My-Zshell
sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
sed -i "s/(git/(sudo safe-paste timer z adb colorize command-not-found copydir copyfile dirhistory extract/g" ~/.zshrc
# Joiner
cp ~/proj1/joiner/joiner /usr/local/bin/
gnome-session-properties
alacarte
# Destreamer
cp ~/proj1/destreamer/destreamer /usr/local/bin
# Buildozer
echo "export PATH=\$PATH:~/.local/bin/" >> ~/.zshrc
# OBS Studio
sudo snap connect obs-studio:audio-record
sudo snap connect obs-studio:avahi-control
sudo snap connect obs-studio:camera
sudo snap connect obs-studio:removable-media
sudo snap connect obs-studio:raw-usb
echo "options v4l2loopback devices=1 video_nr=99 card_label=VirtualCam exclusive_caps=1" | sudo tee /etc/modprobe.d/v4l2loopback.conf
echo "v4l2loopback" | sudo tee /etc/modules-load.d/v4l2loopback.conf
sudo modprobe -r v4l2loopback
sudo modprobe v4l2loopback devices=1 video_nr=99 card_label=VirtualCam exclusive_caps=1
obs-studio
mv /tmp/droidcam-obs ~/snap/obs-studio/current/.config/obs-studio/plugins/
# Settings
gnome-control-center
# Extensions
google-chrome https://support.system76.com/articles/customize-gnome/
google-chrome https://github.com/andyholmes/gnome-shell-extension-gsconnect/wiki/Installation#standard
# Quiet
set +x
# Finish timer
finish=$SECONDS
# Say the duration
duration=$(( finish - start ))
if (( $duration > 3600 )) ; then
let "hours=SECONDS/3600"
let "minutes=(SECONDS%3600)/60"
let "seconds=(SECONDS%3600)%60"
echo "Completed in $hours hour(s), $minutes minute(s) and $seconds second(s)"
elif (( $duration > 60 )) ; then
let "minutes=(SECONDS%3600)/60"
let "seconds=(SECONDS%3600)%60"
echo "Completed in $minutes minute(s) and $seconds second(s)"
else
echo "Completed in $duration seconds"
fi
while :
do
read -p "Would you like to restart the computer to apply some changes? (Y/n) " RIGHT
[ "$RIGHT" == "y" ] && sudo init 6
[ "$RIGHT" == "n" ] && break
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment