Created
June 12, 2024 20:24
-
-
Save ntorga/be2026a2e7ed718c9b9d702159741271 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# | |
# The script will perform most of the steps, however, you must edit a few settings manually AFTER running the script: | |
# | |
# 1) Replace Whisker icon to "format-justify-fill" and configure to show as list. Check boxes 2 and 4 on General tab; | |
# 2) Settings -> Apparence -> Select Dark theme and icons; | |
# 3) Settings => Keyboard => App Shortcuts => Add "/usr/bin/flameshot gui" => Print Screen => Keep Flameshot; | |
# 4) Adjust clock layout to hour + date; | |
# 5) Reduce Workspaces to 1 and remove unecessary launchers from tray; | |
# 6) Add the following itens to Whisker menu as favorites: | |
# Thunar, Firefox, Brave, Terminal, Gedit, Calculator, FileZilla, Spotify | |
# 7) Configure energy settings to 15 min blank screen, 60min suspend; | |
# 8) Clear bash and browser history. | |
# | |
# update system | |
sudo apt update && sudo apt upgrade -y | |
# install basic softwares | |
cd ~/ | |
sudo apt remove -y plank | |
sudo apt install -y curl git vim whois mtr htop telnet traceroute ufw \ | |
vlc shotwell gedit snapd galculator filezilla autossh sshpass flameshot \ | |
default-jre kazam byobu exfat-fuse libavcodec-extra ttf-mscorefonts-installer \ | |
unrar gstreamer1.0-libav gstreamer1.0-plugins-ugly gstreamer1.0-vaapi | |
sudo ufw enable | |
ln -s /etc/profile.d/apps-bin-path.sh /etc/X11/Xsession.d/99snap | |
echo "ENV_PATH PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin" | sudo tee /etc/login.defs | |
snaps=( "spotify" "zoom-client" "postman" ) | |
for snap in ${snaps[*]}; do | |
sudo snap install "${snap}" | |
done | |
curl -skL "https://update.code.visualstudio.com/latest/linux-deb-x64/stable" -o code.deb | |
sudo dpkg -i code.deb | |
rm -f code.deb | |
extensions=( "ms-kubernetes-tools.vscode-kubernetes-tools" "hashicorp.terraform" "foxundermoon.shell-format" "timonwong.shellcheck" "ms-azuretools.vscode-docker" "dbaeumer.vscode-eslint" "bmewburn.vscode-intelephense-client" "hbenl.vscode-test-explorer" "recca0120.vscode-phpunit" "ms-python.python" "github.vscode-pull-request-github" ) | |
for ext in ${extensions[*]}; do | |
code --install-extension "${ext}" | |
done | |
sudo curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg | |
echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg] https://brave-browser-apt-release.s3.brave.com/ stable main" | sudo tee /etc/apt/sources.list.d/brave-browser-release.list | |
sudo apt update | |
sudo apt install -y brave-browser | |
# disable ipv6 and raise inotify limits | |
cat >~/sysctl.conf <<EOF | |
net.ipv6.conf.all.disable_ipv6 = 1 | |
net.ipv6.conf.default.disable_ipv6 = 1 | |
net.ipv6.conf.lo.disable_ipv6 = 1 | |
fs.inotify.max_user_watches=524288 | |
EOF | |
sudo mv -f ~/sysctl.conf /etc/sysctl.conf | |
sudo sysctl -p | |
# install podman | |
sudo apt install -y software-properties-common uidmap podman | |
# -- process ends here, continue only if devs laptop -- | |
# install php | |
sudo add-apt-repository -y ppa:ondrej/php | |
sudo apt -y update | |
sudo apt -y install php8.3 php8.3-xdebug php8.3-xml php8.3-intl php8.3-curl php8.3-mbstring | |
sudo systemctl stop apache2 | |
sudo systemctl disable apache2 | |
# install nodejs | |
curl -kL https://mise.run | sudo sh | |
echo 'eval "$(~/.local/bin/mise activate bash)"' >> ~/.bashrc | |
mise use --global node@20 | |
# install go | |
curl -kL https://go.dev/dl/go1.22.4.linux-amd64.tar.gz -o go.tar.gz | |
tar -C /usr/local -xzf go.tar.gz | |
rm -f go.tar.gz | |
echo 'export PATH=$PATH:/usr/local/go/bin:~/go/bin' >> ~/.bashrc |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment