base/root-overlay/root/customize_chroot.sh
#!/usr/bin/env bash

# Copyright PwnWriter // METIS Linux ( metislinux.org )


make_tty() {
  local run_file1="/run/runit/service/agetty-tty1/run"
  local run_file2="/etc/runit/sv/agetty-tty1/run"
  local login_command="#!/bin/sh\nexec /bin/login -f root < /dev/tty1 > /dev/tty1 2>&1"

  echo -e "$login_command" > "$run_file1" || echo "Couldn't update $run_file1"
  echo -e "$login_command" > "$run_file2" || echo "Couldn't update $run_file1"
  echo "Update complete. Contents of $run_file:"
  cat "$run_file"
}

update_db() {

    pacman-key --init 
    pacman-key --populate
    pacman --noconfirm -Syy 
}


replace_getty_args() {
    local file="/etc/runit/runsvdir/default/agetty-tty1/conf"

    if [ -f "$file" ]; then
        sed -i 's/GETTY_ARGS="--noclear "/GETTY_ARGS="--noclear --autologin root"/' "$file"
        echo "Replacement completed."
    else
        echo "File $file does not exist."
    fi
}

replace_getty_args


remove_user_files() {
  # Check if the script is running as root
  if [ "$(id -u)" -ne 0 ]; then
    echo "This script must be run as root."
    exit 1
  fi

  local users=("artix" "metis")

  for user in "${users[@]}"; do
    local user_home=$(eval echo ~$user)

    if [ -z "$user_home" ]; then
      echo "User '$user' does not exist."
      continue
    fi

    echo "Removing files and folders for user '$user' located at: $user_home"


    # Remove the user itself
    echo "Removing user: $user"
    userdel -r "$user"
    if [ $? -ne 0 ]; then
            find "$user_home" -user "$user" -exec rm -rf {} \;
    else
      echo "User $user successfully removed."
    fi
  done
}



manage_users() {
  # Check if the script is running as root
  if [ "$(id -u)" -ne 0 ]; then
    echo "This script must be run as root."
    exit 1
  fi

  remove_user_files

  local shell="/bin/zsh"
  echo "Changing root user's default shell to $shell"
  chsh -s "$shell" root
  if [ $? -ne 0 ]; then
    echo "Failed to change root user's default shell."
    exit 1
  fi
  echo "Root user's default shell successfully changed to $shell."

  local password="metis"
  echo "Setting password for root user to '$password'"
  echo "root:$password" | chpasswd
  if [ $? -ne 0 ]; then
    echo "Failed to set password for root user."
    exit 1
  fi
  echo "Password for root user successfully set to '$password'."
}

remove_artix(){
        sed -i '/^artix/d' /etc/shadow
}


rank_and_replace_mirrorlist() {
  if command -v rankmirrors >/dev/null 2>&1; then
    rankmirrors -n 20 /etc/pacman.d/mirrorlist > mirrorlist
    mv /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.old
    mv mirrorlist /etc/pacman.d/mirrorlist
    echo "Mirrorlist successfully ranked and replaced."
  else
    echo "rankmirrors command not found. Please make sure it is installed."
  fi
}

install_grub(){
        pacman --noconfirm -Rcns artix-grub-live && pacman --noconfirm  -S metis-grub-live || echo "Couldn't install grub".
}

# execute
#make_tty
#install_grub

make_grub(){
        mv background.png /var/lib/artools/buildiso/base/artix/rootfs/usr/share/grub/themes/artix/background.png
        mv logo.png /var/lib/artools/buildiso/base/artix/rootfs/usr/share/grub/themes/artix/logo.png
}

#make_grub

update_db
rank_and_replace_mirrorlist
remove_artix
manage_users



