Last active
December 3, 2019 08:57
-
-
Save vanyasem/8799c2cd5902f12374f1f76335373e93 to your computer and use it in GitHub Desktop.
Arch Auto-Install
This file contains 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
#!/usr/bin/env bash | |
# REVISED ON 20/11/19 | |
# FULLY TESTED ON 15/11/19 | |
# I assume you've already installed Arch with base and base-devel groups and any bootloader. | |
# Run this as a user with sudo access. DON'T RUN THE SCRIPT AS ROOT. | |
# Make sure to adjust sudo timeout or building AUR packages will fail. | |
# You need to enable pacman's multilib repository in /etc/pacman.conf | |
# Sets big font on HiDPI screens. Uncomment if needed | |
#sudo setfont latarcyrheb-sun32 | |
set -e | |
sudo mount -o remount,size=6G,noatime /tmp | |
SRC_LOCATION=/tmp | |
cd $SRC_LOCATION || exit | |
# Hardware-specific packages for my personal PC: | |
#broadcom-wl-dkms heimdall intel-ucode lib32-nvidia-utils mdadm nvidia-settings nvidia-dkms nvidia-docker-1.0.1 | |
#dcaenc openrazer-meta razercommander-git samsung-unified-driver sc-controller sensei-raw-ctl linux-apfs-dkms-git | |
#optimus-manager optimus-manager-qt bbswitch vulkan-intel fprintd tlp | |
gpg --recv-keys --keyserver pool.sks-keyservers.net 702353E0F7E48EDB # (lib32-)ncurses5-compat-libs | |
gpg --recv-keys --keyserver pool.sks-keyservers.net 9766E084FB0F43D8 # pcre-static | |
gpg --recv-keys --keyserver pool.sks-keyservers.net 3353C9CEF108B584 # qemu-user-static | |
gpg --recv-keys --keyserver pool.sks-keyservers.net BFF2F5A2CA201B84 # linux-steam-integration | |
sudo pacman -S git --noconfirm --needed | |
git clone https://aur.archlinux.org/trizen.git | |
cd trizen || exit | |
makepkg -sic --noconfirm | |
cd $SRC_LOCATION || exit | |
# Arch Repositories: | |
PACKAGE=' | |
android-udev | |
arch-install-scripts | |
ark | |
asp | |
at | |
audacity | |
bleachbit | |
bluez-utils bluez-plugins | |
chromium pepper-flash | |
cmake | |
code | |
cpupower | |
cronie | |
cryfs encfs | |
cups sane gtk3-print-backends | |
dbeaver | |
dconf-editor | |
devtools | |
dnscrypt-proxy | |
dolphin | |
easytag | |
evtest | |
openssh sshfs fail2ban | |
falkon | |
ffmpegthumbs | |
filelight | |
filezilla | |
firefox | |
flatpak flatpak-builder | |
gconf-editor | |
gimp | |
git git-lfs | |
gpick | |
glade | |
gnome-builder gnome-code-assistance meson | |
gnome-disk-utility | |
grc | |
gthumb | |
guvcview-qt | |
htop iotop | |
inkscape | |
kate | |
kcalc | |
kcron | |
kde-gtk-config | |
kdenlive movit frei0r-plugins | |
kdialog | |
kile | |
konsole | |
konversation | |
kompare | |
libreoffice-fresh hunspell-en_US hyphen-en | |
linux-headers | |
lollypop | |
lostfiles | |
man | |
neofetch | |
neovim | |
networkmanager-openvpn | |
nfs-utils | |
nmap traceroute | |
ntfs-3g | |
obs-studio | |
okteta | |
okular | |
p7zip | |
packagekit-qt5 | |
peek | |
plasma-meta | |
print-manager | |
pulseaudio-alsa pulseaudio-bluetooth pulseeffects | |
pycharm-community-edition | |
python2 python2-pip | |
python python-pip | |
qbittorrent | |
qemu-arch-extra ovmf | |
qtcreator | |
samba | |
scrot | |
shellcheck | |
smartmontools hdparm | |
spectacle | |
steam-native-runtime | |
strace | |
telegram-desktop | |
texinfo texlive-langcyrillic texlive-pictures texlive-science texlive-bibtexextra texlive-latexextra biber | |
tk | |
traceroute | |
ttf-liberation | |
tree | |
unrar | |
usbutils | |
vlc | |
vulkan-icd-loader lib32-vulkan-icd-loader | |
wget | |
whois | |
xdg-user-dirs | |
xorg-xhost | |
youtube-dl | |
zsh zsh-syntax-highlighting | |
' | |
trizen -S $PACKAGE --noconfirm --needed | |
# AUR: | |
AURPACKAGE=' | |
android-apktool | |
android-studio | |
aosp-devel | |
aqemu | |
binfmt-qemu-static | |
chromium-extension-autoscroll | |
chromium-extension-dashlane | |
chromium-extension-runet-censorship-bypass | |
chromium-extension-user-agent-switcher | |
chromium-ublock-origin | |
chromium-widevine | |
clickable-git | |
dayjournal-bin | |
etcher | |
flutter | |
fslint | |
git-cola | |
halium-devel | |
hunspell-ru-aot | |
insomnia | |
linux-steam-integration | |
mellowplayer | |
minecraft-technic-launcher | |
neovim-symlinks | |
oh-my-zsh-git | |
protontricks | |
smloadr | |
tmate | |
ttf-emojione-color | |
vk-scraper instagram-scraper | |
' | |
trizen -S $AURPACKAGE --noconfirm --needed | |
# Theme (disabled by default): | |
THEMEPACKAGE=' | |
adapta-gtk-theme | |
adapta-kde | |
adapta-kde-wallpapers-git | |
breeze-adapta-cursor-theme-git | |
kvantum-theme-adapta | |
papirus-filezilla-themes-git | |
papirus-icon-theme | |
papirus-libreoffice-theme | |
' | |
#trizen -S $THEMEPACKAGE --noconfirm --needed | |
#wget https://github.com/adapta-project/adapta-gtk-theme/raw/master/extra/telegram/adapta-nokto.tdesktop-theme -O ~/Downloads/ | |
# User groups: | |
for GROUP in \ | |
'audio' \ | |
'docker' \ | |
'kvm' \ | |
'sys' | |
do | |
sudo usermod -a -G $GROUP $(whoami) | |
done | |
/usr/share/oh-my-zsh/tools/install.sh | |
# .bashrc / .zshrc settings: | |
# 'alias firefox=\'env TZ=UTC /usr/lib/firefox/firefox\'' \ | |
# 'alias autoremove=\'trizen -Rns $(trizen -Qtdq)\'' \ | |
touch ~/.zshrc | |
for LINE in \ | |
'neofetch' \ | |
'export ANDROID_HOME=$HOME/Android/Sdk/' \ | |
'export ANDROID_NDK_ROOT=$HOME/Android/Sdk/ndk-bundle/' \ | |
'export PATH=$HOME/Android/Sdk/emulator/:$PATH{}' \ | |
'export EDITOR=/bin/nvim' \ | |
'alias -s {avi,mpeg,mpg,mov,mkv,wmv,m2v,mp4,3gp,mp3,wav}=vlc' \ | |
'alias -s {jpg,jpeg,png,bmp,cr2}=gthumb' \ | |
'alias configure="grc --colour=auto ./configure"' \ | |
'alias df="grc --colour=auto df"' \ | |
'alias diff="grc --colour=auto diff"' \ | |
'alias dig="grc --colour=auto dig"' \ | |
'alias env="grc --colour=auto env"' \ | |
'alias gcc="grc --colour=auto gcc"' \ | |
'alias ip="grc --colour=auto ip"' \ | |
'alias iptables="grc --colour=auto iptables"' \ | |
'alias lsblk="grc --colour=auto lsblk"' \ | |
'alias lsmod="grc --colour=auto lsmod"' \ | |
'alias lspci="grc --colour=auto lspci"' \ | |
'alias mount="grc --colour=auto mount"' \ | |
'alias ping="grc --colour=auto ping"' \ | |
'alias ps="grc --colour=auto ps"' \ | |
'alias traceroute="grc --colour=auto traceroute"' \ | |
'alias uptime="grc --colour=auto uptime"' | |
do | |
grep -qF "$LINE" ~/.bashrc || echo "$LINE" >> ~/.bashrc | |
grep -qF "$LINE" ~/.zshrc || echo "$LINE" >> ~/.zshrc | |
done | |
source ~/.bashrc | |
flutter config --no-analytics | |
LC_ALL=C xdg-user-dirs-update --force | |
rmdir ~/Public | |
rmdir ~/Templates | |
#git config --global cola.icontheme dark | |
#git config --global cola.color.remove f24343 | |
#git config --global cola.color.add 7fd140 | |
# Enable systemd services: | |
for SERVICE in \ | |
atd \ | |
dnscrypt-proxy \ | |
NetworkManager \ | |
bluetooth \ | |
org.cups.cupsd \ | |
smartd \ | |
cronie \ | |
sddm | |
do | |
sudo systemctl enable $SERVICE | |
sudo systemctl start $SERVICE | |
done | |
#echo -- | |
#echo IP Vanish VPN | |
#echo -- | |
#echo npm: | |
#echo firebase-tools |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment