Skip to content

Instantly share code, notes, and snippets.

@gntlmnoffice
Created November 29, 2020 12:17
Show Gist options
  • Select an option

  • Save gntlmnoffice/59c215b8189f571ffe41d77b4795bf18 to your computer and use it in GitHub Desktop.

Select an option

Save gntlmnoffice/59c215b8189f571ffe41d77b4795bf18 to your computer and use it in GitHub Desktop.
Arch system bootstrap script
#!/bin/bash
echo "Updating packages (official repository)..."
pacman -Suy --noconfirm
echo "Installing make packages..."
pacman -S --noconfirm \
git \
binutils \
make \
gcc \
fakeroot
echo "Installing yay..."
cd /tmp
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
cd ..
rm -rf yay
echo "Installing X server..."
pacman -S --noconfirm \
xorg-server \
xorg-apps \
xorg-xinit
echo "Installing drivers..."
yay -S --noconfirm \
#synaptics \
nvidia-390xx-dkms
echo "Installing display manager..."
yay -S --noconfirm \
lightdm \
lightdm-gtk-greeter \
lightdm-webkit2-greeter \
lightdm-webkit-theme-sequoia-git \
plymouth \
openvpn \
postman-bin
echo "Installing desktop environment..."
yay -S --noconfirm \
i3-gaps \
gnome \
gnome-extra
echo "Installing development packages..."
yay -S --noconfirm \
code \
nodejs \
yarn \
go \
nodejs \
npm \
mariadb \
docker \
docker-compose \
mycli
echo "Installing utils..."
yay -S --noconfirm \
curl \
wget \
man \
xclip \
xdotool \
jq \
imagemagick \
fortune-mod \
cowsay \
vim \
arandr \
gimp \
slack-desktop \
cronie \
lm_sensors \
acpi \
cmatrix \
neofetch \
wmctrl \
moc-pulse \
tty-clock \
pacman-contrib \
dotdrop \
gnome-icon-theme \
projectlibre \
xorg-xsetroot \
xorg-xinput \
xorg-server-xephyr \
xorg-xev \
xorg-xlsfonts xorg-xfontsel \
unclutter \
wavebox
echo "Browser setup..."
yay -S --noconfirm \
chromium \
lastpass
echo "Opening chromium and websites to login on..."
chromium \
https://accounts.google.com \
https://trello.com/login \
https://github.com/login \
https://login.yahoo.com \
https://login.yahoo.com \
https://login.yahoo.com \
https://ufcfightpass.com/login \
https://discord.com/login \
https://linkedin.com/login \
https://instagram.com \
https://slack.com/signin \
https://id.atlassian.com/login \
https://netflix.com/login \
https://reddit.com/login \
https://twitter.com/login \
https://web.whatsapp.com \
chrome://flags/#enable-native-notifications
echo "Installing ricing packages..."
yay -S --noconfirm \
zsh \
feh \
rofi \
polybar \
byobu \
compton \
polybar \
volnoti \
deepin-screenshot \
xautolock \
dunst \
kitty \
ranger \
network-manager-applet \
redshift \
playerctl \
i3lock \
ttf-hack \
awesome-terminal-fonts \
ttf-font-awesome \
rambox
echo "Install oh my zsh..."
sh -c "$(wget -O- https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
chsh -s $(which zsh)
echo "Enable services..."
sudo systemctl enable lightdm
sudo systemctl start mariadb
sudo systemctl enable mariadb
echo "Sync time and date..."
timedatectl set-timezone Europe/Bucharest
timedatectl set-ntp true
sudo systemctl restart systemd-timedated
sudo systemctl restart systemd-timesyncd
echo "Increase user watches..."
sudo rm /etc/sysctl.d/40-max-user-watches.conf
sudo rm /etc/sysctl.d/50-max-user-watches.conf
sudo echo fs.inotify.max_user_watches=524288 | sudo tee /etc/sysctl.d/99-max-user-watches.conf && sudo sysctl --system
echo "Git setup..."
git config --global user.email "raduta.sorin@yahoo.com"
git config --global user.name "Sorin Raduta"
eval "$(ssh-agent -s)"
# Copy or generate ssh key
ssh-add ~/.ssh/id_rsa_github
echo "Dotfiles..."
yay -S --noconfirm dotdrop
cd ~
git clone https://github.com/sorinraduta/.dotfiles
cd .dotfiles
cp .env .env.home
dotdrop install
source ~/.zshrc
zsh
dot
sudot
# Set themes (lxappereance)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment