136 lines
2.9 KiB
Bash
136 lines
2.9 KiB
Bash
#!/bin/bash
|
|
|
|
# ---Clearing Variables to Default---
|
|
var_wheel=""
|
|
|
|
# ---Questions---
|
|
read -p 'Hostname: ' var_hostname
|
|
read -p 'Root password: ' var_password
|
|
read -p 'User name: ' var_user_name
|
|
read -p "User ($var_user_name) password: " var_user_password
|
|
read -p "Would you like the user \"$var_user_name\" to be a super user? (type \'wheel\' to say yes) " var_user_wheel
|
|
if [[ $var_user_wheel = "wheel" ]]
|
|
then
|
|
var_wheel="-aG wheel"
|
|
else
|
|
var_wheel=" "
|
|
fi
|
|
|
|
|
|
echo
|
|
echo
|
|
echo 'Starting to install...'
|
|
echo
|
|
echo
|
|
echo
|
|
sleep 1
|
|
|
|
# ---Execution---
|
|
ln -sf /usr/share/zoneinfo/America/Buenos_Aires /etc/localtime
|
|
hwclock --systohc
|
|
timedatectl set-ntp true
|
|
|
|
sed -i 's/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen
|
|
locale-gen
|
|
|
|
echo 'LANG=en_US.UTF-8' >> /etc/locale.conf
|
|
echo "$var_hostname" >> /etc/hostname
|
|
|
|
echo '127.0.0.1 localhost' >> /etc/hosts
|
|
echo '::1 localhost' >> /etc/hosts
|
|
echo "127.0.0.1 $var_hostname.localdomain $var_hostname" >> /etc/hosts
|
|
|
|
echo
|
|
echo
|
|
echo 'Doing btrfs stuff and encryption...'
|
|
echo
|
|
echo
|
|
echo
|
|
sleep 1
|
|
|
|
# ---[Btrfs and encryption]---
|
|
sed -i 's/MODULES=(/MODULES=(btrfs/' /etc/mkinitcpio.conf
|
|
var_hooks_line="$(grep 'HOOKS=(' /etc/mkinitcpio.conf | grep -v '# HOOKS')"
|
|
var_hooks_replace="$(grep 'HOOKS=(' /etc/mkinitcpio.conf | grep -v '# HOOKS' | sed 's/filesystems/encrypt filesystems/')"
|
|
sed -i "s/$var_hooks_line/$var_hooks_replace/" /etc/mkinitcpio.conf
|
|
mkinitcpio -p linux
|
|
|
|
echo
|
|
echo
|
|
echo 'Doing user stuff...'
|
|
echo
|
|
echo
|
|
echo
|
|
sleep 1
|
|
|
|
# ---[Users]---
|
|
useradd -m "$var_user_name"
|
|
echo "$var_user_name:$var_user_password" | chpasswd
|
|
|
|
echo "root:$var_password" | chpasswd
|
|
|
|
sed -i 's/# %wheel ALL=(ALL) ALL/%wheel ALL=(ALL) ALL/' /etc/sudoers
|
|
if [[ $var_wheel = "-aG wheel" ]]
|
|
then
|
|
usermod $var_wheel $var_user_name
|
|
fi
|
|
|
|
echo
|
|
echo
|
|
echo 'Installing packages...'
|
|
echo
|
|
echo
|
|
echo
|
|
sleep 1
|
|
|
|
# ---[Packages]---
|
|
pacman -S networkmanager gnome gdm gnome-tweaks alacritty fish exa vlc git base-devel adobe-source-sans-fonts
|
|
|
|
mkdir /root/arch-custom-install
|
|
cd /root/arch-custom-install
|
|
|
|
git clone https://gitlab.com/thebiblelover7/prebuilt-packages
|
|
cd prebuilt-packages
|
|
for i in $(ls -1)
|
|
do
|
|
pacman -U $i
|
|
done
|
|
|
|
paru -S brave-bin logseq-desktop-bin slack-desktop schildichat-desktop-bin whitesur-icon-theme whitesur-gtk-theme gnome-shell-extension-pop-shell-git cursor-theme-macos-big-sur
|
|
|
|
echo
|
|
echo
|
|
echo 'Installing configs...'
|
|
echo
|
|
echo
|
|
echo
|
|
sleep 1
|
|
|
|
# ---[Configs]---
|
|
cd /home/$var_user_name
|
|
git clone https://gitlab.com/thebiblelover7/dotfiles
|
|
cd dotfiles
|
|
./install.sh
|
|
chown -R $var_user_name:$var_user_name /home/$var_user_name
|
|
chsh -s /bin/fish $var_user_name
|
|
|
|
cd
|
|
|
|
# pacman color and parallel downloads
|
|
# change dotfiles to have the plain background, and to have the right theme
|
|
# albert
|
|
|
|
echo
|
|
echo
|
|
echo 'Enabling services to start on boot...'
|
|
echo
|
|
echo
|
|
echo
|
|
sleep 1
|
|
|
|
# ---[Services]
|
|
systemctl enable NetworkManager
|
|
systemctl enable bluetooth
|
|
systemctl enable gdm
|
|
#systemctl enable cups.service
|