diff --git a/core/tabs/applications-setup/dwmtitus-setup.sh b/core/tabs/applications-setup/dwmtitus-setup.sh index c4fa5fc9..89bf649b 100755 --- a/core/tabs/applications-setup/dwmtitus-setup.sh +++ b/core/tabs/applications-setup/dwmtitus-setup.sh @@ -129,17 +129,17 @@ picom_animations() { clone_config_folders() { # Ensure the target directory exists - [ ! -d ~/.config ] && mkdir -p ~/.config + [ ! -d "$HOME/.config" ] && mkdir -p "$HOME/.config" # Iterate over all directories in config/* for dir in config/*/; do # Extract the directory name dir_name=$(basename "$dir") - # Clone the directory to ~/.config/ + # Clone the directory to $HOME/.config/ if [ -d "$dir" ]; then - cp -r "$dir" ~/.config/ - printf "%b\n" "${GREEN}Cloned $dir_name to ~/.config/${RC}" + cp -r "$dir" "$HOME/.config/" + printf "%b\n" "${GREEN}Cloned $dir_name to $HOME/.config/${RC}" else printf "%b\n" "${RED}Directory $dir_name does not exist, skipping${RC}" fi @@ -153,11 +153,11 @@ configure_backgrounds() { # Set the variable BG_DIR to the path where backgrounds will be stored BG_DIR="$PIC_DIR/backgrounds" - # Check if the ~/Pictures directory exists + # Check if the $HOME/Pictures directory exists if [ ! -d "$PIC_DIR" ]; then # If it doesn't exist, print an error message and return with a status of 1 (indicating failure) printf "%b\n" "${RED}Pictures directory does not exist${RC}" - mkdir ~/Pictures + mkdir "$HOME/Pictures" printf "%b\n" "${GREEN}Directory was created in Home folder${RC}" fi diff --git a/core/tabs/applications-setup/mybash-setup.sh b/core/tabs/applications-setup/mybash-setup.sh index c09df01e..a12ca318 100644 --- a/core/tabs/applications-setup/mybash-setup.sh +++ b/core/tabs/applications-setup/mybash-setup.sh @@ -61,8 +61,8 @@ installStarshipAndFzf() { if command_exists fzf; then printf "%b\n" "${GREEN}Fzf already installed${RC}" else - git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf - "$ESCALATION_TOOL" ~/.fzf/install + git clone --depth 1 https://github.com/junegunn/fzf.git "$HOME/.fzf" + "$ESCALATION_TOOL" "$HOME/.fzf/install" fi } diff --git a/core/tabs/system-setup/arch/server-setup.sh b/core/tabs/system-setup/arch/server-setup.sh index 913d5f61..f530fd79 100755 --- a/core/tabs/system-setup/arch/server-setup.sh +++ b/core/tabs/system-setup/arch/server-setup.sh @@ -242,7 +242,7 @@ userinfo () { while true do read -r -p "Please enter username: " username - if [[ "${username,,}" =~ ^[a-z_]([a-z0-9_-]{0,31}|[a-z0-9_-]{0,30}\$)$ ]] + if echo "$username" | grep -qE '^[a-z_]([a-z0-9_-]{0,31}|[a-z0-9_-]{0,30}\$)$' then break fi @@ -266,21 +266,24 @@ userinfo () { # Loop through user input until the user gives a valid hostname, but allow the user to force save while true - do - read -r -p "Please name your machine: " name_of_machine - # hostname regex (!!couldn't find spec for computer name!!) - if [[ "${name_of_machine,,}" =~ ^[a-z][a-z0-9_.-]{0,62}[a-z0-9]$ ]] - then - break - fi + do + printf "%b" "Please name your machine: " + read -r machine_name + + lower_machine_name=$(echo "$machine_name" | tr '[:upper:]' '[:lower:]') + if echo "$lower_machine_name" | grep -q '^[a-z][a-z0-9_.-]\{0,62\}[a-z0-9]$' + then + break + fi # if validation fails allow the user to force saving of the hostname - read -r -p "Hostname doesn't seem correct. Do you still want to save it? (y/n)" force - if [[ "${force,,}" = "y" ]] - then - break - fi - done - export NAME_OF_MACHINE=$name_of_machine + printf "%b" "Hostname doesn't seem correct. Do you still want to save it? (y/N) " + read -r force + if [[ "$force" == "y" || "$force" == "Y" ]] + then + break + fi + done + export NAME_OF_MACHINE=$lower_machine_name } # Starting functions @@ -376,7 +379,7 @@ subvolumesetup () { mountallsubvol } -if [[ "${DISK}" =~ "nvme" ]]; then +if echo "$DISK" | grep -q "nvme"; then partition2=${DISK}p2 partition3=${DISK}p3 else diff --git a/core/tabs/utils/ssh.sh b/core/tabs/utils/ssh.sh index e5a899ef..7769134c 100644 --- a/core/tabs/utils/ssh.sh +++ b/core/tabs/utils/ssh.sh @@ -2,14 +2,14 @@ . ../common-script.sh -# Check if ~/.ssh/config exists, if not, create it -if [ ! -f ~/.ssh/config ]; then - mkdir -p "$HOME/.ssh" +# Check if $HOME/.ssh/config exists, if not, create it +if [ ! -f "$HOME/.ssh/config" ]; then + mkdir -p "$HOME/.ssh"\ touch "$HOME/.ssh/config" chmod 600 "$HOME/.ssh/config" fi -# Function to show available hosts from ~/.ssh/config +# Function to show available hosts from $HOME/.ssh/config show_available_hosts() { printf "%b\n" "Available Systems:" grep -E "^Host " "$HOME/.ssh/config" | awk '{print $2}' @@ -28,18 +28,18 @@ ask_for_host_details() { printf "%b\n" "Host $host_alias" printf "%b\n" " HostName $host" printf "%b\n" " User $user" - printf "%b\n" " IdentityFile ~/.ssh/id_rsa" + printf "%b\n" " IdentityFile $HOME/.ssh/id_rsa" printf "%b\n" " StrictHostKeyChecking no" printf "%b\n" " UserKnownHostsFile=/dev/null" - } >> ~/.ssh/config + } >> "$HOME/.ssh/config" printf "%b\n" "Host $host_alias added successfully." } # Function to generate SSH key if not exists generate_ssh_key() { - if [ ! -f ~/.ssh/id_rsa ]; then + if [ ! -f "$HOME/.ssh/id_rsa" ]; then printf "%b\n" "SSH key not found, generating one..." - ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa -N "" -C "$(whoami)@$(hostname)" + ssh-keygen -t rsa -b 4096 -f "$HOME/.ssh/id_rsa -N" "" -C "$(whoami)@$(hostname)" else printf "%b\n" "SSH key already exists." fi @@ -151,7 +151,7 @@ move_directory_to_remote() { remove_system() { printf "%b\n" "Enter the alias of the host to remove: " read -r host_alias - sed -i "/^Host $host_alias/,+3d" ~/.ssh/config + sed -i "/^Host $host_alias/,+3d" "$HOME/.ssh/config" printf "%b\n" "Removed $host_alias from SSH configuration." } @@ -160,9 +160,9 @@ view_ssh_config() { printf "%b\n" "Enter the alias of the host to view (or press Enter to view all): " read -r host_alias if [ -z "$host_alias" ]; then - cat ~/.ssh/config + cat "$HOME/.ssh/config" else - grep -A 3 "^Host $host_alias" ~/.ssh/config + grep -A 3 "^Host $host_alias" "$HOME/.ssh/config" fi } @@ -250,4 +250,4 @@ done checkEnv checkEscalationTool -main \ No newline at end of file +main