Last active
April 26, 2024 15:33
-
-
Save ntorga/fc21fbdbf06b72348f6fa0245c46a654 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) a) Replace Menu Lite with Whisker; | |
# b) All Icons - Search "format-justify-fill"; | |
# | |
# 2) Settings -> Apparence -> Select Dark Mode; | |
# | |
# 3) Settings => Keyboard => App Shortcuts => Add "/usr/bin/flameshot gui" => Print Screen => Keep Flameshot. | |
# | |
# 4) Configure UFW via Settings (just activate Home mode). | |
# | |
# update system | |
sudo apt update && sudo apt upgrade -y | |
# remove default apps and install better ones | |
cd ~/ | |
sudo apt remove -y pidgin* thunderbird* ristretto* xfburn remmina | |
sudo apt install -y vlc shotwell ubuntu-restricted-extras | |
sudo apt install -y byobu exfat-fuse exfat-utils | |
# install basic softwares | |
sudo apt install -y flameshot default-jre kazam mtr vim curl git whois htop | |
sudo apt install -y filezilla autossh sshpass telnet traceroute | |
snaps=( "spotify" "zoom-client" "postman" ) | |
for snap in ${snaps[*]}; do | |
sudo snap install "${snap}" | |
done | |
sudo snap install code --classic | |
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.github-vscode-theme" "github.vscode-pull-request-github" ) | |
for ext in ${extensions[*]}; do | |
code --install-extension "${ext}" | |
done | |
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb -O chrome.deb | |
sudo dpkg -i chrome.deb | |
sudo apt-get install -y -f | |
rm -f chrome.deb | |
# 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 | |
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/ /' > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list" | |
sudo apt -y update | |
# if error, use: sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 4D64390375060A | |
sudo apt install -y podman | |
# replace zorin menu lite with whiskers | |
sudo add-apt-repository ppa:gottcode/gcppa | |
sudo apt install -y xfce4-whiskermenu-plugin | |
# -- 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.2 php8.2-xdebug php8.2-xml php8.2-intl php8.2-curl php8.2-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.2.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