Skip to content

Instantly share code, notes, and snippets.

@mikepruett3
Last active June 20, 2024 04:44
Show Gist options
  • Save mikepruett3/a87c855a8920a5b2273a0e9765dec501 to your computer and use it in GitHub Desktop.
Save mikepruett3/a87c855a8920a5b2273a0e9765dec501 to your computer and use it in GitHub Desktop.
A setup script for my Default Arch Linux installation
#!/usr/bin/env bash
## Install base
pacman -Syu base
# Initial Setup
## Install git if is unavailable on the system
if ! [ -x "$(command -v git)" ]; then
pacman -S git
fi
## Install yay
git clone https://aur.archlinux.org/yay.git /tmp/yay
pushd /tmp/yay
makepkg --noconfirm -si -p /tmp/yay/PKGBUILD
popd
rm -rf /tmp/yay
## Install pciutils
if ! [ -x "$(command -v lspci)" ]; then
pacman -S --noconfirm pciutils
fi
# General Tools
## Install sudo
if ! [ -x "$(command -v sudo)" ]; then
pacman -S --noconfirm sudo
fi
## Install lsb-release
if ! [ -x "$(command -v lsb_release)" ]; then
pacman -S --noconfirm lsb-release
fi
## Install bash-completion
## https://github.com/scop/bash-completion
if ! [ -f "/usr/share/bash-completion/bash_completion" ]; then
pacman -S --noconfirm bash-completion
fi
## Install unzip
if ! [ -x "$(command -v unzip)" ]; then
pacman -S --noconfirm unzip
fi
## Install ranger
if ! [ -x "$(command -v ranger)" ]; then
pacman -S --noconfirm ranger
fi
## Install vim
if ! [ -x "$(command -v vim)" ]; then
pacman -S --noconfirm vim
fi
# X-Windows Stuff
## Install xorg-server
if ! [ -x "$(command -v Xorg)" ]; then
pacman -S --noconfirm xorg-server
fi
## Install xorg-xinit
if ! [ -x "$(command -v startx)" ]; then
pacman -S --noconfirm xorg-xinit
fi
## Install xorg-xwininfo
if ! [ -x "$(command -v xwininfo)" ]; then
pacman -S --noconfirm xorg-xwininfo
fi
## Install xorg-xprop
if ! [ -x "$(command -v xprop)" ]; then
pacman -S --noconfirm xorg-xprop
fi
## Install xorg-xbacklight
if ! [ -x "$(command -v xbacklight)" ]; then
pacman -S --noconfirm xorg-xbacklight
fi
## Install xorg-xfontsel
if ! [ -x "$(command -v xfontsel)" ]; then
pacman -S --noconfirm xorg-xfontsel
fi
## Install lxappearance
if ! [ -x "$(command -v lxappearance)" ]; then
pacman -S --noconfirm lxappearance
fi
## Install gtk2fontsel
if ! [ -x "$(command -v gtk2fontsel)" ]; then
pacman -S --noconfirm gtk2fontsel
fi
## Install arandr
if ! [ -x "$(command -v arandr)" ]; then
pacman -S --noconfirm arandr
fi
## Install xorg-xrandr
if ! [ -x "$(command -v xrandr)" ]; then
pacman -S --noconfirm xorg-xrandr
fi
## Install xorg-xdpyinfo
if ! [ -x "$(command -v xdpyinfo)" ]; then
pacman -S --noconfirm xorg-xdpyinfo
fi
## Install gnome-keyring
if ! [ -x "$(command -v gnome-keyring)" ]; then
pacman -S --noconfirm gnome-keyring
fi
# X-Windows Drivers
## Install xf86-video-intel
#if ! [ -x "$(command -v xf86-video-intel)" ]; then
# pacman -S --noconfirm xf86-video-intel
#fi
# i3 Window Manager
## Install i3-wm
if ! [ -x "$(command -v i3)" ]; then
pacman -S --noconfirm i3-wm
fi
## Install i3blocks
if ! [ -x "$(command -v i3blocks)" ]; then
pacman -S --noconfirm i3blocks
fi
## Install i3lock-color
if ! [ -x "$(command -v i3lock)" ]; then
pacman -S --noconfirm i3lock-color
fi
## Install rofi
if ! [ -x "$(command -v rofi)" ]; then
pacman -S --noconfirm rofi
fi
## Install compton
if ! [ -x "$(command -v compton)" ]; then
pacman -S --noconfirm compton
fi
## Install dunst
if ! [ -x "$(command -v dunst)" ]; then
pacman -S --noconfirm dunst
fi
## Install feh
if ! [ -x "$(command -v feh)" ]; then
pacman -S --noconfirm feh
fi
## Install imagemagick
if ! [ -x "$(command -v MagickCore-config)" ]; then
pacman -S --noconfirm imagemagick
fi
## Install betterlockscreen
## https://github.com/pavanjadhaw/betterlockscreen
if ! [ -x "$(command -v betterlockscreen)" ]; then
yay -S --noconfirm betterlockscreen
fi
# Terminal
## Install rxvt-unicode
if ! [ -x "$(command -v urxvt)" ]; then
pacman -S --noconfirm rxvt-unicode
fi
## Install urxvt-resize-font-git
if ! [ -f "/usr/lib/urxvt/perl/resize-font" ]; then
yay -S --noconfirm urxvt-resize-font-git
fi
## Install system-san-francisco-font-git
## https://github.com/supermarin/YosemiteSanFranciscoFont
if ! [ -f "/usr/share/fonts/TTF/System San Francisco Display Regular.ttf" ]; then
yay -S --noconfirm system-san-francisco-font-git
fi
## Install ttf-font-awesome-4
if ! [ -f "/usr/share/fonts/TTF/fontawesome-webfont.ttf" ]; then
yay -S --noconfirm ttf-font-awesome-4
fi
# Audio Stuff
## Install pulseaudio
if ! [ -x "$(command -v pulseaudio)" ]; then
pacman -S --noconfirm pulseaudio
fi
## Install alsa-utils
if ! [ -x "$(command -v alsamixer)" ]; then
pacman -S --noconfirm alsa-utils
fi
## Install alsa-tools
if ! [ -x "$(command -v as10k1)" ]; then
pacman -S --noconfirm alsa-tools
fi
## Install pulseaudio-alsa
if ! [ -f "/etc/asound.conf" ]; then
pacman -S --noconfirm pulseaudio-alsa
fi
## Install playerctl
if ! [ -x "$(command -v playerctl)" ]; then
pacman -S --noconfirm playerctl
fi
## Install gpmdp
if ! [ -x "$(command -v gpmdp)" ]; then
yay -S --noconfirm gpmdp
fi
## Install pmcli-git
if ! [ -x "$(command -v pmcli)" ]; then
yay -S --noconfirm pmcli-git
fi
# Video Stuff
## Install gnome-twitch-git
if ! [ -x "$(command -v gnome-twitch)" ]; then
yay -S --noconfirm gnome-twitch-git
yay -S --noconfirm gnome-twitch-player-backend-gstreamer-cairo
fi
# Laptop Stuff
## Install acpi
#if ! [ -x "$(command -v acpi)" ]; then
# pacman -S --noconfirm acpi
#fi
# Mount Tools
## Install udisks2
#if ! [ -x "$(command -v udisks2)" ]; then
# pacman -S --noconfirm udisks2
#fi
# Update All Installed
pacman -Sy --noconfirm archlinux-keyring
pacman -Syu --noconfirm
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment