106 lines
4.6 KiB
Bash
Executable File
106 lines
4.6 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
echo -ne "
|
|
-------------------------------------------------------------------------
|
|
█████╗ ██████╗ ██████╗██╗ ██╗████████╗██╗████████╗██╗ ██╗███████╗
|
|
██╔══██╗██╔══██╗██╔════╝██║ ██║╚══██╔══╝██║╚══██╔══╝██║ ██║██╔════╝
|
|
███████║██████╔╝██║ ███████║ ██║ ██║ ██║ ██║ ██║███████╗
|
|
██╔══██║██╔══██╗██║ ██╔══██║ ██║ ██║ ██║ ██║ ██║╚════██║
|
|
██║ ██║██║ ██║╚██████╗██║ ██║ ██║ ██║ ██║ ╚██████╔╝███████║
|
|
╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚══════╝
|
|
-------------------------------------------------------------------------
|
|
Automated Arch Linux Installer
|
|
SCRIPTHOME: ArchTitus
|
|
-------------------------------------------------------------------------
|
|
|
|
Final Setup and Configurations
|
|
GRUB EFI Bootloader Install & Check
|
|
"
|
|
source /root/ArchTitus/setup.conf
|
|
genfstab -U /mnt >> /etc/fstab
|
|
if [[ -d "/sys/firmware/efi" ]]; then
|
|
grub-install --efi-directory=/boot ${DISK}
|
|
fi
|
|
# set kernel parameter for decrypting the drive
|
|
if [[ "${FS}" == "luks" ]]; then
|
|
sed -i "s%GRUB_CMDLINE_LINUX_DEFAULT=\"%GRUB_CMDLINE_LINUX_DEFAULT=\"cryptdevice=UUID=${ENCRYPTED_PARTITION_UUID}:ROOT root=/dev/mapper/ROOT %g" /etc/default/grub
|
|
fi
|
|
|
|
echo -e "Installing CyberRe Grub theme..."
|
|
THEME_DIR="/boot/grub/themes"
|
|
THEME_NAME=CyberRe
|
|
echo -e "Creating the theme directory..."
|
|
mkdir -p "${THEME_DIR}/${THEME_NAME}"
|
|
echo -e "Copying the theme..."
|
|
cd ${HOME}/ArchTitus
|
|
cp -a ${THEME_NAME}/* ${THEME_DIR}/${THEME_NAME}
|
|
echo -e "Backing up Grub config..."
|
|
cp -an /etc/default/grub /etc/default/grub.bak
|
|
echo -e "Setting the theme as the default..."
|
|
grep "GRUB_THEME=" /etc/default/grub 2>&1 >/dev/null && sed -i '/GRUB_THEME=/d' /etc/default/grub
|
|
echo "GRUB_THEME=\"${THEME_DIR}/${THEME_NAME}/theme.txt\"" >> /etc/default/grub
|
|
echo -e "Updating grub..."
|
|
grub-mkconfig -o /boot/grub/grub.cfg
|
|
echo -e "All set!"
|
|
|
|
echo -ne "
|
|
-------------------------------------------------------------------------
|
|
Enabling (and Theming) Login Display Manager
|
|
-------------------------------------------------------------------------
|
|
"
|
|
if [[ ${DESKTOP_ENV} == "kde" ]]; then
|
|
systemctl enable sddm.service
|
|
if [[ ${INSTALL_TYPE} == "FULL" ]]; then
|
|
echo [Theme] >> /etc/sddm.conf
|
|
echo Current=Nordic >> /etc/sddm.conf
|
|
fi
|
|
|
|
elif [[ "${DESKTOP_ENV}" == "gnome" ]]; then
|
|
systemctl enable gdm.service
|
|
|
|
elif [[ "${DESKTOP_ENV}" == "lxde" ]]; then
|
|
systemctl enable lxdm.service
|
|
|
|
elif [[ "${DESKTOP_ENV}" == "openbox" ]]; then
|
|
systemctl enable lightdm.service
|
|
if [[ "${INSTALL_TYPE}" == "FULL" ]]; then
|
|
# Set default lightdm-webkit2-greeter theme to Litarvan
|
|
sed -i 's/^webkit_theme\s*=\s*\(.*\)/webkit_theme = litarvan #\1/g' /etc/lightdm/lightdm-webkit2-greeter.conf
|
|
# Set default lightdm greeter to lightdm-webkit2-greeter
|
|
sed -i 's/#greeter-session=example.*/greeter-session=lightdm-webkit2-greeter/g' /etc/lightdm/lightdm.conf
|
|
fi
|
|
|
|
else
|
|
if [[ ! "${DESKTOP_ENV}" == "server" ]]; then
|
|
sudo pacman -S --noconfirm --needed lightdm lightdm-gtk-greeter
|
|
systemctl enable lightdm.service
|
|
fi
|
|
fi
|
|
|
|
echo -ne "
|
|
-------------------------------------------------------------------------
|
|
Enabling Essential Services
|
|
-------------------------------------------------------------------------
|
|
"
|
|
systemctl enable cups.service
|
|
ntpd -qg
|
|
systemctl enable ntpd.service
|
|
systemctl disable dhcpcd.service
|
|
systemctl stop dhcpcd.service
|
|
systemctl enable NetworkManager.service
|
|
systemctl enable bluetooth
|
|
echo -ne "
|
|
-------------------------------------------------------------------------
|
|
Cleaning
|
|
-------------------------------------------------------------------------
|
|
"
|
|
# Remove no password sudo rights
|
|
sed -i 's/^%wheel ALL=(ALL) NOPASSWD: ALL/# %wheel ALL=(ALL) NOPASSWD: ALL/' /etc/sudoers
|
|
# Add sudo rights
|
|
sed -i 's/^# %wheel ALL=(ALL) ALL/%wheel ALL=(ALL) ALL/' /etc/sudoers
|
|
|
|
rm -r /root/ArchTitus
|
|
rm -r /home/$USERNAME/ArchTitus
|
|
|
|
# Replace in the same state
|
|
cd $pwd
|