Skip to content

Instantly share code, notes, and snippets.

@minetaro12
Last active March 7, 2024 00:05
Show Gist options
  • Save minetaro12/57d94f85ce51e84f819443be20d1f1eb to your computer and use it in GitHub Desktop.
Save minetaro12/57d94f85ce51e84f819443be20d1f1eb to your computer and use it in GitHub Desktop.
arch gui setup script
#!/bin/bash
TITLE="Arch GUI Setup Script"
# system update & install dialog
echo "Run system update & install dialog"
sudo pacman -Syu
# check dialog
dialog --version &> /dev/null
if [ $? -ne 0 ]; then
sudo pacman -S dialog --noconfirm & wait
fi
# video driver
while :
do
VDRIV=$(dialog --title "$TITLE" --menu "Select video driver" 0 0 5 \
1 "xf86-video-intel" \
2 "xf86-video-amdgpu" \
3 "virtualbox-guest-utils" \
4 "xorg-server only" \
5 "Skip" 3>&1 1>&2 2>&3)
case "$VDRIV" in
[1]) clear
sudo pacman -S xorg-server xf86-video-intel --noconfirm & wait
break ;;
[2]) clear
sudo pacman -S xorg-server xf86-video-amdgpu --noconfirm & wait
break ;;
[3]) clear
sudo pacman -S xorg-server virtualbox-guest-utils --noconfirm & wait
break ;;
[4]) clear
sudo pacman -S xorg-server --noconfirm & wait
break ;;
[5]) break
esac
done
# font
dialog --title "$TITLE" --yesno "Install japanese fonts?" 0 0
case "$?" in
[0]) clear
sudo pacman -S noto-fonts noto-fonts-cjk noto-fonts-emoji --noconfirm & wait
esac
# select de
while :
do
DE=$(dialog --title "$TITLE" --menu "Select desktop environment" 0 0 4 \
1 "Xfce4" \
2 "KDE Plasma" \
3 "KDE Plasma (minimal)" \
4 "LXDE" \
5 "LXQt" \
6 "Skip" 3>&1 1>&2 2>&3)
case "$DE" in
[1]) clear
sudo pacman -S lightdm lightdm-gtk-greeter xfce4 xfce4-goodies --noconfirm & wait
sudo systemctl enable lightdm
break ;;
[2]) clear
sudo pacman -S sddm plasma konsole --noconfirm & wait
sudo systemctl enable sddm
break ;;
[3]) clear
sudo pacman -S breeze-gtk plasma-desktop kdeplasma-addons kscreen kde-gtk-config konsole kinfocenter sddm --noconfirm & wait
sudo systemctl enable sddm
break ;;
[4]) clear
sudo pacman -S lightdm lightdm-gtk-greeter lxde --noconfirm & wait
sudo systemctl enable lightdm
break ;;
[5]) clear
sudo pacman -S lightdm lightdm-gtk-greeter lxqt oxygen-icons --noconfirm & wait
sudo systemctl enable lightdm
break ;;
[6]) break
esac
done
# fcitx5
dialog --title "$TITLE" --yesno "Install japanese input?" 0 0
case "$?" in
[0]) clear
sudo pacman -S fcitx5-im fcitx5-mozc --noconfirm & wait
echo "export GTK_IM_MODULE=fcitx" >> ~/.xprofile
echo "export QT_IM_MODULE=fcitx" >> ~/.xprofile
echo "export XMODIFIERS=@im=fcitx" >> ~/.xprofile
esac
# locale setting
dialog --title "$TITLE" --yesno "Change locale to ja_JP.UTF-8?" 0 0
case "$?" in
[0]) clear
sudo cp /etc/locale.gen /etc/locale.gen.bak
sudo bash -c 'echo "en_US.UTF-8 UTF-8" > /etc/locale.gen'
sudo bash -c 'echo "ja_JP.UTF-8 UTF-8" >> /etc/locale.gen'
sudo locale-gen
sudo bash -c 'echo "LANG=ja_JP.UTF-8" > /etc/locale.conf'
sudo localectl set-x11-keymap jp
break
esac
clear
echo "All Done!"
echo "Please reboot"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment