diff --git a/Arch-Installer.png b/Arch-Installer.png deleted file mode 100644 index 32100fb..0000000 Binary files a/Arch-Installer.png and /dev/null differ diff --git a/Installer.png b/Installer.png new file mode 100644 index 0000000..b47d46f Binary files /dev/null and b/Installer.png differ diff --git a/README.md b/README.md index d2cfc93..8420e57 100644 --- a/README.md +++ b/README.md @@ -68,7 +68,7 @@ chmod +x install.sh ```
-
+
#### ✨ for ZSH and OH-MY-ZSH installation
> installer should auto change your default shell to zsh. However, if it does not, do this
@@ -94,6 +94,10 @@ source ~/.zshrc
- for the install part, kindly open issue on this repo
- for the Pre-configured Hyprland dots / configuration, submit issue [`here`](https://github.com/JaKooLit/Hyprland-Dots/issues)
+#### 🔧 Proper way to re-installing a particular script from install-scripts folder
+- CD into Arch-Hyprland Folder and then ran the below command.
+- i.e. `./install-scripts/gtk-themes` - For reinstall GTK Themes.
+
#### 🛣️ Roadmap:
- ~~[ ] Install zsh and oh-my-zsh without necessary steps above~~ DONE
- [ ] possibly adding gruvbox themes, cursors, icons
diff --git a/assets/.zshrc b/assets/.zshrc
index 167d176..0cc0d55 100644
--- a/assets/.zshrc
+++ b/assets/.zshrc
@@ -20,7 +20,7 @@ source $ZSH/oh-my-zsh.sh
# Display Pokemon-colorscripts
# Project page: https://gitlab.com/phoneybadger/pokemon-colorscripts#on-other-distros-and-macos
-pokemon-colorscripts --no-title -s -r
+#pokemon-colorscripts --no-title -s -r
### From this line is for pywal-colors
diff --git a/install-scripts/00-base.sh b/install-scripts/00-base.sh
old mode 100644
new mode 100755
index 07434d4..21cf82f
--- a/install-scripts/00-base.sh
+++ b/install-scripts/00-base.sh
@@ -1,50 +1,30 @@
#!/bin/bash
-
-# https://github.com/JaKooLit
+# 💫 https://github.com/JaKooLit 💫 #
+# base devel #
base=(
base-devel
)
-############## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ######################################
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-RESET=$(tput sgr0)
+# Determine the directory where the script is located
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+# Change the working directory to the parent directory of the script
+PARENT_DIR="$SCRIPT_DIR/.."
+cd "$PARENT_DIR" || exit 1
+
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_base.log"
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_base.log"
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if package is already installed
- if pacman -Q "$1" &>/dev/null ; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- sudo pacman -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is installed
- if pacman -Q "$1" &>/dev/null ; then
- echo -e "${OK} $1 was installed."
- else
- # Something is missing, exiting to review log
- echo -e "${ERROR} $1 failed to install. Please check the $LOG. You may need to install manually."
- exit 1
- fi
- fi
-}
# Installation of main components
printf "\n%s - Installing base-devel \n" "${NOTE}"
for PKG1 in "${base[@]}"; do
- install_package "$PKG1" | tee -a "$LOG"
+ install_package_pacman "$PKG1" | tee -a "$LOG"
done
-
-# clear
+clear
\ No newline at end of file
diff --git a/install-scripts/00-hypr-pkgs.sh b/install-scripts/00-hypr-pkgs.sh
old mode 100644
new mode 100755
index 3dd4bc4..a5554f8
--- a/install-scripts/00-hypr-pkgs.sh
+++ b/install-scripts/00-hypr-pkgs.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-
-# https://github.com/JaKooLit
+# 💫 https://github.com/JaKooLit 💫 #
+# Hyprland Packages #
# edit your packages desired here.
# WARNING! If you remove packages here, dotfiles may not work properly.
@@ -83,63 +83,19 @@ uninstall=(
mako
)
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
+# Determine the directory where the script is located
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+# Change the working directory to the parent directory of the script
+PARENT_DIR="$SCRIPT_DIR/.."
+cd "$PARENT_DIR" || exit 1
+
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_hypr-pkgs.log"
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_hypr-pkgs.log"
-ISAUR=$(command -v yay || command -v paru)
-
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if package is already installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
- else
- # Something is missing, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
- exit 1
- fi
- fi
-}
-
-# Function for uninstalling packages
-uninstall_package() {
- # Checking if package is installed
- if pacman -Qi "$1" &>> /dev/null ; then
- # Package is installed
- echo -e "${NOTE} Uninstalling $1 ..."
- sudo pacman -Rns --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is uninstalled
- if ! pacman -Qi "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was uninstalled."
- else
- # Something went wrong, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to uninstall. Please check the log."
- exit 1
- fi
- fi
-}
# Installation of main components
printf "\n%s - Installing hyprland packages.... \n" "${NOTE}"
@@ -152,8 +108,8 @@ for PKG1 in "${hypr_package[@]}" "${hypr_package_2[@]}" "${fonts[@]}" "${Extra[@
fi
done
+# Checking if mako or dunst is installed
printf "\n%s - Checking if mako or dunst are installed and removing for swaync to work properly \n" "${NOTE}"
-
for PKG in "${uninstall[@]}"; do
uninstall_package "$PKG" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then
diff --git a/install-scripts/Global_functions.sh b/install-scripts/Global_functions.sh
new file mode 100755
index 0000000..133b7ff
--- /dev/null
+++ b/install-scripts/Global_functions.sh
@@ -0,0 +1,82 @@
+#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Global Functions for Scripts #
+
+set -e
+
+# Set some colors for output messages
+OK="$(tput setaf 2)[OK]$(tput sgr0)"
+ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
+NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
+WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
+CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
+ORANGE=$(tput setaf 166)
+YELLOW=$(tput setaf 3)
+RESET=$(tput sgr0)
+
+
+# Create Directory for Install Logs
+if [ ! -d Install-Logs ]; then
+ mkdir Install-Logs
+fi
+
+# Function for installing packages
+install_package_pacman() {
+ # Checking if package is already installed
+ if pacman -Q "$1" &>/dev/null ; then
+ echo -e "${OK} $1 is already installed. Skipping..."
+ else
+ # Package not installed
+ echo -e "${NOTE} Installing $1 ..."
+ sudo pacman -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
+ # Making sure package is installed
+ if pacman -Q "$1" &>/dev/null ; then
+ echo -e "${OK} $1 was installed."
+ else
+ # Something is missing, exiting to review log
+ echo -e "${ERROR} $1 failed to install. Please check the $LOG. You may need to install manually."
+ exit 1
+ fi
+ fi
+}
+
+
+ISAUR=$(command -v yay || command -v paru)
+
+# Function for installing packages
+install_package() {
+ # Checking if package is already installed
+ if $ISAUR -Q "$1" &>> /dev/null ; then
+ echo -e "${OK} $1 is already installed. Skipping..."
+ else
+ # Package not installed
+ echo -e "${NOTE} Installing $1 ..."
+ $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
+ # Making sure package is installed
+ if $ISAUR -Q "$1" &>> /dev/null ; then
+ echo -e "\e[1A\e[K${OK} $1 was installed."
+ else
+ # Something is missing, exiting to review log
+ echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
+ exit 1
+ fi
+ fi
+}
+
+# Function for uninstalling packages
+uninstall_package() {
+ # Checking if package is installed
+ if pacman -Qi "$1" &>> /dev/null ; then
+ # Package is installed
+ echo -e "${NOTE} Uninstalling $1 ..."
+ sudo pacman -Rns --noconfirm "$1" 2>&1 | tee -a "$LOG"
+ # Making sure package is uninstalled
+ if ! pacman -Qi "$1" &>> /dev/null ; then
+ echo -e "\e[1A\e[K${OK} $1 was uninstalled."
+ else
+ # Something went wrong, exiting to review log
+ echo -e "\e[1A\e[K${ERROR} $1 failed to uninstall. Please check the log."
+ exit 1
+ fi
+ fi
+}
\ No newline at end of file
diff --git a/install-scripts/InputGroup.sh b/install-scripts/InputGroup.sh
old mode 100644
new mode 100755
index e82e37b..b98c995
--- a/install-scripts/InputGroup.sh
+++ b/install-scripts/InputGroup.sh
@@ -1,6 +1,9 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Adding users into input group #
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
+
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
# Determine the directory where the script is located
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
@@ -8,18 +11,10 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
PARENT_DIR="$SCRIPT_DIR/.."
cd "$PARENT_DIR" || exit 1
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_input.log"
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_input.log"
while true; do
echo "${WARN} This script will add or remove your user from the 'input' group."
@@ -36,7 +31,7 @@ while true; do
sudo groupadd input
# Log the creation of the 'input' group
- echo "$(date '+%Y-%m-%d %H:%M:%S') - 'input' group created" >> "$LOG"
+ echo "'input' group created" >> "$LOG"
fi
# Add the user to the input group
@@ -44,7 +39,7 @@ while true; do
echo "${OK} User added to the 'input' group. Changes will take effect after you log out and log back in."
# Log the addition of the user to the 'input' group
- echo "$(date '+%Y-%m-%d %H:%M:%S') - User added to 'input' group" >> "$LOG"
+ echo "User added to 'input' group" >> "$LOG"
break # Break out of the loop if 'yes' is chosen
elif [[ $choice == "n" || $choice == "N" ]]; then
echo "${NOTE} No changes made. Exiting the script."
@@ -53,3 +48,5 @@ while true; do
echo "${ERROR} Invalid choice. Please enter 'y' for yes or 'n' for no."
fi
done
+
+clear
\ No newline at end of file
diff --git a/install-scripts/bluetooth.sh b/install-scripts/bluetooth.sh
old mode 100644
new mode 100755
index d315953..4eafee4
--- a/install-scripts/bluetooth.sh
+++ b/install-scripts/bluetooth.sh
@@ -1,4 +1,6 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Bluetooth Stuff #
blue=(
bluez
@@ -6,55 +8,27 @@ bluez-utils
blueman
)
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
+# Determine the directory where the script is located
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+# Change the working directory to the parent directory of the script
+PARENT_DIR="$SCRIPT_DIR/.."
+cd "$PARENT_DIR" || exit 1
+
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_bluetooth.log"
-
-ISAUR=$(command -v yay || command -v paru)
-
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if package is already installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
- else
- # Something is missing, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
- exit 1
- fi
- fi
-}
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_bluetooth.log"
# Bluetooth
-
printf "${NOTE} Installing Bluetooth Packages...\n"
for BLUE in "${blue[@]}"; do
install_package "$BLUE" 2>&1 | tee -a "$LOG"
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $BLUE install had failed, please check the install.log"; exit 1; }
done
- printf " Activating Bluetooth Services...\n"
- sudo systemctl enable --now bluetooth.service 2>&1 | tee -a "$LOG"
+printf " Activating Bluetooth Services...\n"
+sudo systemctl enable --now bluetooth.service 2>&1 | tee -a "$LOG"
- clear
\ No newline at end of file
+clear
\ No newline at end of file
diff --git a/install-scripts/dotfiles.sh b/install-scripts/dotfiles.sh
old mode 100644
new mode 100755
index 424b153..75576d6
--- a/install-scripts/dotfiles.sh
+++ b/install-scripts/dotfiles.sh
@@ -1,16 +1,10 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Hyprland-Dots to download from Releases #
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
printf "${NOTE} Downloading / Checking for existing Hyprland-Dots.tar.gz...\n"
@@ -36,14 +30,14 @@ if [ -f Hyprland-Dots.tar.gz ]; then
echo -e "${WARN} Hyprland-Dots.tar.gz is outdated (Existing version: $existing_version, Latest version: $latest_version)."
read -p "Do you want to upgrade to the latest version? (y/n): " upgrade_choice
if [ "$upgrade_choice" = "y" ]; then
- echo -e "${NOTE} Proceeding to download the latest release."
+ echo -e "${NOTE} Proceeding to download the latest release." 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
# Delete existing directories starting with JaKooLit-Hyprland-Dots
find . -type d -name 'JaKooLit-Hyprland-Dots*' -exec rm -rf {} +
rm -f Hyprland-Dots.tar.gz
printf "${WARN} Removed existing Hyprland-Dots.tar.gz.\n"
else
- echo -e "${NOTE} User chose not to upgrade. Exiting..."
+ echo -e "${NOTE} User chose not to upgrade. Exiting..." 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
exit 0
fi
fi
@@ -56,7 +50,7 @@ latest_tag=$(curl -s https://api.github.com/repos/JaKooLit/Hyprland-Dots/release
# Check if the tag is obtained successfully
if [ -z "$latest_tag" ]; then
- echo -e "${ERROR} Unable to fetch the latest tag information."
+ echo -e "${ERROR} Unable to fetch the latest tag information." 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
exit 1
fi
@@ -65,7 +59,7 @@ latest_tarball_url=$(curl -s https://api.github.com/repos/JaKooLit/Hyprland-Dots
# Check if the URL is obtained successfully
if [ -z "$latest_tarball_url" ]; then
- echo -e "${ERROR} Unable to fetch the tarball URL for the latest release."
+ echo -e "${ERROR} Unable to fetch the tarball URL for the latest release." 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
exit 1
fi
@@ -90,10 +84,12 @@ if curl -L "$latest_tarball_url" -o "$file_name"; then
# Set execute permission for copy.sh and execute it
chmod +x copy.sh
- ./copy.sh 2>&1 | tee -a "../install-$(date +'%d-%H%M%S')_dots.log"
+ ./copy.sh
- echo -e "${OK} Latest source code release downloaded, extracted, and processed successfully."
+ echo -e "${OK} Latest Dotfiles release downloaded, extracted, and processed successfully. Check JaKooLit-Hyprland-Dots folder for more detailed install logs" 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
else
- echo -e "${ERROR} Failed to download the latest source code release."
+ echo -e "${ERROR} Failed to download the latest Dotfiles release." 2>&1 | tee -a "../Install-Logs/install-$(date +'%d-%H%M%S')_dotfiles.log"
exit 1
fi
+
+clear
diff --git a/install-scripts/gtk_themes.sh b/install-scripts/gtk_themes.sh
index ac2f8c7..b384462 100755
--- a/install-scripts/gtk_themes.sh
+++ b/install-scripts/gtk_themes.sh
@@ -1,11 +1,13 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# GTK Themes & ICONS and Sourcing from a different Repo #
engine=(
unzip
gtk-engine-murrine
)
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
# Determine the directory where the script is located
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
@@ -14,45 +16,12 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
PARENT_DIR="$SCRIPT_DIR/.."
cd "$PARENT_DIR" || exit 1
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_themes_main.log"
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_themes.log"
-ISAUR=$(command -v yay || command -v paru)
-
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if package is already installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
- else
- # Something is missing, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
- exit 1
- fi
- fi
-}
-
# installing engine needed for gtk themes
for PKG1 in "${engine[@]}"; do
install_package "$PKG1" 2>&1 | tee -a "$LOG"
@@ -69,10 +38,10 @@ if [ -d "GTK-themes-icons" ]; then
fi
echo "$NOTE Cloning Tokyo Theme GTK themes and Icons repository..." 2>&1 | tee -a "$LOG"
-if git clone https://github.com/JaKooLit/GTK-themes-icons.git 2>&1 | tee -a "$LOG"; then
+if git clone https://github.com/JaKooLit/GTK-themes-icons.git ; then
cd GTK-themes-icons
chmod +x auto-extract.sh
- ./auto-extract.sh 2>&1 | tee -a "$LOG"
+ ./auto-extract.sh
cd ..
echo "$OK Extracted GTK Themes & Icons to ~/.icons & ~/.themes folders" 2>&1 | tee -a "$LOG"
else
diff --git a/install-scripts/hyprland.sh b/install-scripts/hyprland.sh
old mode 100644
new mode 100755
index ea17544..389dccb
--- a/install-scripts/hyprland.sh
+++ b/install-scripts/hyprland.sh
@@ -1,48 +1,24 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Main Hyprland Package #
hypr=(
hyprland
)
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+# Determine the directory where the script is located
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+# Change the working directory to the parent directory of the script
+PARENT_DIR="$SCRIPT_DIR/.."
+cd "$PARENT_DIR" || exit 1
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_hyprland.log"
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_hyprland.log"
-ISAUR=$(command -v yay || command -v paru)
-
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if package is already installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
- else
- # Something is missing, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
- exit 1
- fi
- fi
-}
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Removing other Hyprland to avoid conflict
printf "${YELLOW} Checking for other hyprland packages and remove if any..${RESET}\n"
@@ -58,6 +34,6 @@ printf "${NOTE} Installing Hyprland .......\n"
for HYPR in "${hypr[@]}"; do
install_package "$HYPR" 2>&1 | tee -a "$LOG"
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $HYPR install had failed, please check the install.log"; exit 1; }
- done
+done
- clear
\ No newline at end of file
+clear
\ No newline at end of file
diff --git a/install-scripts/nvidia.sh b/install-scripts/nvidia.sh
old mode 100644
new mode 100755
index a4af9a4..413fd7f
--- a/install-scripts/nvidia.sh
+++ b/install-scripts/nvidia.sh
@@ -1,4 +1,6 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Nvidia Stuffs #
nvidia_pkg=(
nvidia-dkms
@@ -12,45 +14,19 @@ hypr=(
hyprland
)
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
+# Determine the directory where the script is located
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+# Change the working directory to the parent directory of the script
+PARENT_DIR="$SCRIPT_DIR/.."
+cd "$PARENT_DIR" || exit 1
+
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_nvidia.log"
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_nvidia.log"
-ISAUR=$(command -v yay || command -v paru)
-
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if package is already installed
- if $ISAUR -Q "$1" &>> /dev/null; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is installed
- if $ISAUR -Q "$1" &>> /dev/null; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
- else
- # Something is missing, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry, I have tried :("
- exit 1
- fi
- fi
-}
# nvidia stuff
printf "${YELLOW} Checking for other hyprland packages and remove if any..${RESET}\n"
@@ -108,9 +84,9 @@ if [ -f /etc/default/grub ]; then
sudo sed -i 's/\(GRUB_CMDLINE_LINUX_DEFAULT=".*\)"/\1 nvidia-drm.modeset=1"/' /etc/default/grub
# Regenerate GRUB configuration
sudo grub-mkconfig -o /boot/grub/grub.cfg
- echo "nvidia-drm.modeset=1 added to /etc/default/grub"
+ echo "nvidia-drm.modeset=1 added to /etc/default/grub" 2>&1 | tee -a "$LOG"
else
- echo "nvidia-drm.modeset=1 is already present in /etc/default/grub"
+ echo "nvidia-drm.modeset=1 is already present in /etc/default/grub" 2>&1 | tee -a "$LOG"
fi
else
echo "/etc/default/grub does not exist"
@@ -137,7 +113,7 @@ if [[ $response =~ ^[Yy]$ ]]; then
fi
fi
else
- printf "${NOTE} Skipping nouveau blacklisting.\n"
+ printf "${NOTE} Skipping nouveau blacklisting.\n" 2>&1 | tee -a "$LOG"
fi
clear
diff --git a/install-scripts/paru.sh b/install-scripts/paru.sh
old mode 100644
new mode 100755
index 78cf3d9..cf9cbc2
--- a/install-scripts/paru.sh
+++ b/install-scripts/paru.sh
@@ -1,25 +1,27 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Paru AUR Helper #
+# NOTE: If yay is already installed, paru will not be installed #
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
+# Determine the directory where the script is located
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+# Change the working directory to the parent directory of the script
+PARENT_DIR="$SCRIPT_DIR/.."
+cd "$PARENT_DIR" || exit 1
+
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_paru.log"
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_paru.log"
# Check for AUR helper and install if not found
ISAUR=$(command -v yay || command -v paru)
if [ -n "$ISAUR" ]; then
- printf "\n%s - AUR helper was located, moving on.\n" "${OK}"
+ printf "\n%s - AUR helper already installed, moving on..\n" "${OK}"
else
printf "\n%s - AUR helper was NOT located\n" "$WARN"
printf "\n%s - Installing paru from AUR\n" "${NOTE}"
diff --git a/install-scripts/pipewire.sh b/install-scripts/pipewire.sh
old mode 100644
new mode 100755
index b938577..3ea0232
--- a/install-scripts/pipewire.sh
+++ b/install-scripts/pipewire.sh
@@ -1,4 +1,6 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Pipewire and Pipewire Audio Stuff #
pipewire=(
pipewire
@@ -10,43 +12,20 @@ pipewire=(
############## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##############
# Set some colors for output messages
-OK=$(tput setaf 2)[OK]$(tput sgr0)
-ERROR=$(tput setaf 1)[ERROR]$(tput sgr0)
-NOTE=$(tput setaf 3)[NOTE]$(tput sgr0)
-WARN=$(tput setaf 166)[WARN]$(tput sgr0)
-CAT=$(tput setaf 6)[ACTION]$(tput sgr0)
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+# Determine the directory where the script is located
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+# Change the working directory to the parent directory of the script
+PARENT_DIR="$SCRIPT_DIR/.."
+cd "$PARENT_DIR" || exit 1
+
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_bluetooth.log"
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_pipewire.log"
ISAUR=$(command -v yay || command -v paru)
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if the package is already installed
- if $ISAUR -Q "$1" &>>/dev/null; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure the package is installed
- if $ISAUR -Q "$1" &>>/dev/null; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
- else
- # Something is missing, exiting to review the log
- echo -e "\e[1A\e[K${ERROR} $1 failed to install. Please check the install.log. You may need to install manually! Sorry I have tried :("
- exit 1
- fi
- fi
-}
-
# Removal of pulseaudio
printf "${YELLOW}Removing pulseaudio stuff...${RESET}\n"
for pulseaudio in pulseaudio pulseaudio-alsa pulseaudio-bluetooth; do
@@ -54,7 +33,7 @@ for pulseaudio in pulseaudio pulseaudio-alsa pulseaudio-bluetooth; do
done
# Disabling pulseaudio to avoid conflicts
-systemctl --user disable --now pulseaudio.socket pulseaudio.service 2>&1 | tee -a "$LOG"
+systemctl --user disable --now pulseaudio.socket pulseaudio.service 2>/dev/null && tee -a "$LOG"
# Pipewire
printf "${NOTE} Installing Pipewire Packages...\n"
@@ -67,4 +46,5 @@ printf "Activating Pipewire Services...\n"
systemctl --user enable --now pipewire.socket pipewire-pulse.socket wireplumber.service 2>&1 | tee -a "$LOG"
systemctl --user enable --now pipewire.service 2>&1 | tee -a "$LOG"
-clear
+
+clear
\ No newline at end of file
diff --git a/install-scripts/rog.sh b/install-scripts/rog.sh
old mode 100644
new mode 100755
index 5b3b658..fad133d
--- a/install-scripts/rog.sh
+++ b/install-scripts/rog.sh
@@ -1,8 +1,8 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Asus ROG Laptops #
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
-
-
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
# Determine the directory where the script is located
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
@@ -10,55 +10,24 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
PARENT_DIR="$SCRIPT_DIR/.."
cd "$PARENT_DIR" || exit 1
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_rog.log"
-
-ISAUR=$(command -v yay || command -v paru)
-
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if package is already installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
- else
- # Something is missing, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
- exit 1
- fi
- fi
-}
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_rog.log"
### Install software for Asus ROG laptops ###
- printf " Installing ASUS ROG packages...\n"
- for ASUS in asusctl supergfxctl rog-control-center; do
- install_package "$ASUS" 2>&1 | tee -a "$LOG"
- if [ $? -ne 0 ]; then
- echo -e "\e[1A\e[K${ERROR} - $ASUS install had failed, please check the install.log"
- exit 1
- fi
- done
- printf " Activating ROG services...\n"
- sudo systemctl enable --now supergfxd 2>&1 | tee -a "$LOG"
+printf " Installing ASUS ROG packages...\n"
+for ASUS in asusctl supergfxctl rog-control-center; do
+install_package "$ASUS" 2>&1 | tee -a "$LOG"
+ if [ $? -ne 0 ]; then
+ echo -e "\e[1A\e[K${ERROR} - $ASUS install had failed, please check the install.log"
+ exit 1
+ fi
+done
+
+printf " Activating ROG services...\n"
+sudo systemctl enable --now supergfxd 2>&1 | tee -a "$LOG"
+
+clear
-clear
\ No newline at end of file
diff --git a/install-scripts/sddm.sh b/install-scripts/sddm.sh
old mode 100644
new mode 100755
index a68891f..a72e95e
--- a/install-scripts/sddm.sh
+++ b/install-scripts/sddm.sh
@@ -1,4 +1,6 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# SDDM Log-in Manager #
sddm=(
qt5-graphicaleffects
@@ -7,7 +9,7 @@ sddm=(
sddm-git
)
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
# Determine the directory where the script is located
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
@@ -16,43 +18,10 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
PARENT_DIR="$SCRIPT_DIR/.."
cd "$PARENT_DIR" || exit 1
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_sddm.log"
-
-ISAUR=$(command -v yay || command -v paru)
-
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if package is already installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
- else
- # Something is missing, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
- exit 1
- fi
- fi
-}
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_sddm.log"
# SDDM
@@ -112,7 +81,7 @@ while [ "$valid_input" != true ]; do
echo -e "\e[1A\e[K${OK} - Removed existing 'simple-sddm' directory from the current location." 2>&1 | tee -a "$LOG"
fi
- if git clone https://github.com/JaKooLit/simple-sddm.git 2>&1 | tee -a "$LOG"; then
+ if git clone https://github.com/JaKooLit/simple-sddm.git; then
while [ ! -d "simple-sddm" ]; do
sleep 1
done
@@ -125,7 +94,7 @@ while [ "$valid_input" != true ]; do
sudo mv simple-sddm /usr/share/sddm/themes/
echo -e "[Theme]\nCurrent=simple-sddm" | sudo tee "$sddm_conf_dir/10-theme.conf" &>> "$LOG"
else
- echo -e "\e[1A\e[K${ERROR} - Failed to clone the theme repository. Please check your internet connection or repository availability." | tee -a "$LOG" >&2
+ echo -e "\e[1A\e[K${ERROR} - Failed to clone the theme repository. Please check your internet connection" | tee -a "$LOG" >&2
fi
valid_input=true
elif [[ $install_sddm_theme =~ ^[Nn]$ ]]; then
@@ -136,6 +105,4 @@ while [ "$valid_input" != true ]; do
fi
done
-
-
-clear
\ No newline at end of file
+clear
diff --git a/install-scripts/thunar.sh b/install-scripts/thunar.sh
old mode 100644
new mode 100755
index 293fb16..04f9524
--- a/install-scripts/thunar.sh
+++ b/install-scripts/thunar.sh
@@ -1,4 +1,6 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# Thunar #
thunar=(
thunar
@@ -8,7 +10,7 @@ ffmpegthumbnailer
thunar-archive-plugin
)
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
# Determine the directory where the script is located
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
@@ -17,65 +19,29 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
PARENT_DIR="$SCRIPT_DIR/.."
cd "$PARENT_DIR" || exit 1
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_thunar.log"
-
-
-ISAUR=$(command -v yay || command -v paru)
-
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if package is already installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
- else
- # Something is missing, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
- exit 1
- fi
- fi
-}
-
-# Bluetooth
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_thunar.log"
+# Thunar
printf "${NOTE} Installing Thunar Packages...\n"
for THUNAR in "${thunar[@]}"; do
install_package "$THUNAR" 2>&1 | tee -a "$LOG"
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $THUNAR install had failed, please check the install.log"; exit 1; }
done
- # Check for existing config folders and backup
- for DIR1 in Thunar xfce4; do
- DIRPATH=~/.config/$DIR1
- if [ -d "$DIRPATH" ]; then
- echo -e "${NOTE} Config for $DIR1 found, backing up."
- mv $DIRPATH $DIRPATH-back-up 2>&1 | tee -a "$LOG"
- echo -e "${NOTE} Backed up $DIR1 to $DIRPATH-back-up."
- fi
- done
-
-# copying from assets
-cp -r assets/xfce4 ~/.config/ && echo "Copy xfce4 completed!" || echo "Error: Failed to copy xfce4 config files." 2>&1 | tee -a "$LOG"
-cp -r assets/Thunar ~/.config/ && echo "Copy Thunar completed!" || echo "Error: Failed to copy Thunar config files." 2>&1 | tee -a "$LOG"
+ # Check for existing configs and copy if does not exist
+for DIR1 in Thunar xfce4; do
+ DIRPATH=~/.config/$DIR1
+ if [ -d "$DIRPATH" ]; then
+ echo -e "${NOTE} Config for $DIR1 found, no need to copy." 2>&1 | tee -a "$LOG"
+ else
+ echo -e "${NOTE} Config for $DIR1 not found, copying from assets." 2>&1 | tee -a "$LOG"
+ cp -r assets/$DIR1 ~/.config/ && echo "Copy $DIR1 completed!" || echo "Error: Failed to copy $DIR1 config files." 2>&1 | tee -a "$LOG"
+ fi
+done
clear
+
+
diff --git a/install-scripts/xdph.sh b/install-scripts/xdph.sh
old mode 100644
new mode 100755
index 80b8a9e..3a2ee1a
--- a/install-scripts/xdph.sh
+++ b/install-scripts/xdph.sh
@@ -1,84 +1,69 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# XDG-Desktop-Portals #
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
+xdg=(
+xdg-desktop-portal-hyprland
+xdg-desktop-portal-gtk
+)
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+# Determine the directory where the script is located
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+# Change the working directory to the parent directory of the script
+PARENT_DIR="$SCRIPT_DIR/.."
+cd "$PARENT_DIR" || exit 1
+
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_xdph.log"
-
-ISAUR=$(command -v yay || command -v paru)
-
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if package is already installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
- else
- # Something is missing, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
- exit 1
- fi
- fi
-}
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_xdph.log"
# XDG-DESKTOP-PORTAL-HYPRLAND
-
-for xdph in xdg-desktop-portal-hyprland; do
- install_package "$xdph" 2>&1 | tee -a "$LOG"
+for xdgs in "${xdg[@]}"; do
+ install_package "$xdgs" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then
echo -e "\e[1A\e[K${ERROR} - $xdph install had failed, please check the install.log"
exit 1
fi
done
+
+printf "\n"
printf "${NOTE} Checking for other XDG-Desktop-Portal-Implementations....\n"
sleep 1
printf "\n"
-printf "${NOTE} XDG-desktop-portal-KDE (if installed) should be manually disabled or removed! I can't remove it... sorry...\n"
-read -rp "${CAT} Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n) " XDPH1
-echo
-sleep 1
+printf "${NOTE} XDG-desktop-portal-KDE & GNOME (if installed) should be manually disabled or removed! I can't remove it... sorry...\n"
+while true; do
+ read -rp "${CAT} Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n) " XDPH1
+ echo
+ sleep 1
-if [[ $XDPH1 =~ ^[Yy]$ ]]; then
- # Clean out other portals
- printf "${NOTE} Clearing any other xdg-desktop-portal implementations...\n"
- # Check if packages are installed and uninstall if present
- if pacman -Qs xdg-desktop-portal-gnome > /dev/null ; then
- echo "Removing xdg-desktop-portal-gnome..."
- sudo pacman -R --noconfirm xdg-desktop-portal-gnome 2>&1 | tee -a $LOG
- fi
- if pacman -Qs xdg-desktop-portal-gtk > /dev/null ; then
- echo "Removing xdg-desktop-portal-gtk..."
- sudo pacman -R --noconfirm xdg-desktop-portal-gtk 2>&1 | tee -a $LOG
- fi
- if pacman -Qs xdg-desktop-portal-wlr > /dev/null ; then
- echo "Removing xdg-desktop-portal-wlr..."
- sudo pacman -R --noconfirm xdg-desktop-portal-wlr 2>&1 | tee -a $LOG
- fi
- if pacman -Qs xdg-desktop-portal-lxqt > /dev/null ; then
- echo "Removing xdg-desktop-portal-lxqt..."
- sudo pacman -R --noconfirm xdg-desktop-portal-lxqt 2>&1 | tee -a $LOG
- fi
-fi
+ case $XDPH1 in
+ [Yy])
+ # Clean out other portals
+ printf "${NOTE} Clearing any other xdg-desktop-portal implementations...\n"
+ # Check if packages are installed and uninstall if present
+ if pacman -Qs xdg-desktop-portal-wlr > /dev/null ; then
+ echo "Removing xdg-desktop-portal-wlr..."
+ sudo pacman -R --noconfirm xdg-desktop-portal-wlr 2>&1 | tee -a "$LOG"
+ fi
+ if pacman -Qs xdg-desktop-portal-lxqt > /dev/null ; then
+ echo "Removing xdg-desktop-portal-lxqt..."
+ sudo pacman -R --noconfirm xdg-desktop-portal-lxqt 2>&1 | tee -a "$LOG"
+ fi
+ break
+ ;;
+ [Nn])
+ echo "no other XDG-implementations will be removed." >> "$LOG"
+ break
+ ;;
+ *)
+ echo "Invalid input. Please enter 'y' for yes or 'n' for no."
+ ;;
+ esac
+done
-clear
\ No newline at end of file
+clear
diff --git a/install-scripts/yay.sh b/install-scripts/yay.sh
old mode 100644
new mode 100755
index 0083a06..fb1f910
--- a/install-scripts/yay.sh
+++ b/install-scripts/yay.sh
@@ -1,26 +1,27 @@
#!/bin/bash
-
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
+# 💫 https://github.com/JaKooLit 💫 #
+# Yay AUR Helper #
+# NOTE: If paru is already installed, yay will not be installed #
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
+# Determine the directory where the script is located
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+# Change the working directory to the parent directory of the script
+PARENT_DIR="$SCRIPT_DIR/.."
+cd "$PARENT_DIR" || exit 1
+
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_yay.log"
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_yay.log"
# Check for AUR helper and install if not found
ISAUR=$(command -v yay || command -v paru)
if [ -n "$ISAUR" ]; then
- printf "\n%s - AUR helper yay was located, moving on.\n" "${OK}"
+ printf "\n%s - AUR helper already installed, moving on.\n" "${OK}"
else
printf "\n%s - AUR helper was NOT located\n" "$WARN"
printf "\n%s - Installing yay from AUR\n" "${NOTE}"
diff --git a/install-scripts/zsh.sh b/install-scripts/zsh.sh
old mode 100644
new mode 100755
index cbc6f4c..cbbf853
--- a/install-scripts/zsh.sh
+++ b/install-scripts/zsh.sh
@@ -1,23 +1,14 @@
#!/bin/bash
+# 💫 https://github.com/JaKooLit 💫 #
+# zsh and oh my zsh including pokemon-color-scripts#
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
-
-# Set some colors for output messages
-OK="$(tput setaf 2)[OK]$(tput sgr0)"
-ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
-NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
-WARN="$(tput setaf 166)[WARN]$(tput sgr0)"
-CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
-ORANGE=$(tput setaf 166)
-YELLOW=$(tput setaf 3)
-RESET=$(tput sgr0)
-
-# Set the name of the log file to include the current date and time
-LOG="install-$(date +%d-%H%M%S)_zsh.log"
+zsh=(
+zsh
+zsh-completions
+)
-############## WARNING DO NOT EDIT BEYOND THIS LINE if you dont know what you are doing! ######################################
-
+## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
# Determine the directory where the script is located
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
@@ -25,47 +16,33 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
PARENT_DIR="$SCRIPT_DIR/.."
cd "$PARENT_DIR" || exit 1
+source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
-ISAUR=$(command -v yay || command -v paru)
-
-# Set the script to exit on error
-set -e
-
-# Function for installing packages
-install_package() {
- # Checking if package is already installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "${OK} $1 is already installed. Skipping..."
- else
- # Package not installed
- echo -e "${NOTE} Installing $1 ..."
- $ISAUR -S --noconfirm "$1" 2>&1 | tee -a "$LOG"
- # Making sure package is installed
- if $ISAUR -Q "$1" &>> /dev/null ; then
- echo -e "\e[1A\e[K${OK} $1 was installed."
- else
- # Something is missing, exiting to review log
- echo -e "\e[1A\e[K${ERROR} $1 failed to install :( , please check the install.log. You may need to install manually! Sorry I have tried :("
- exit 1
- fi
- fi
-}
-
-
-# Check if the oh-my-zsh directory exists
-if [ -d "$HOME/.oh-my-zsh" ]; then
- printf "${NOTE} Oh My Zsh found. Creating a backup before uninstalling...${RESET}\n"
- # Perform backup using cp -r and create a backup directory with -backup suffix
- cp -r "$HOME/.oh-my-zsh" "$HOME/.oh-my-zsh-backup" || true
- mv "$HOME/.zshrc" "$HOME/.zshrc-backup" || true
-
- printf "${NOTE} Backup created....${RESET}\n"
-fi
+# Set the name of the log file to include the current date and time
+LOG="Install-Logs/install-$(date +%d-%H%M%S)_zsh.log"
+## Optional Pokemon color scripts
+while true; do
+ read -p "${CAT} OPTIONAL - Do you want to add Pokemon color scripts? (y/n): " choice
+ case "$choice" in
+ [Yy]*)
+ zsh+=('pokemon-colorscripts-git')
+ sed -i '/#pokemon-colorscripts --no-title -s -r/s/^#//' assets/.zshrc
+ break
+ ;;
+ [Nn]*)
+ echo "${NOTE}Skipping Pokemon color scripts installation.${RESET}" 2>&1 | tee -a "$LOG"
+ break
+ ;;
+ *)
+ echo "${WARN}Please enter 'y' for yes or 'n' for no.${RESET}"
+ ;;
+ esac
+done
# Installing zsh packages
printf "${NOTE} Installing core zsh packages...${RESET}\n"
-for ZSH in zsh zsh-completions pokemon-colorscripts-git; do
+for ZSH in "${zsh[@]}"; do
install_package "$ZSH" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then
echo -e "\e[1A\e[K${ERROR} - $ZSH install had failed, please check the install.log"
@@ -79,34 +56,42 @@ if command -v zsh >/dev/null; then
if [ ! -d "$HOME/.oh-my-zsh" ]; then
sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended || true
else
- echo "Directory .oh-my-zsh already exists. Skipping re-installation."
+ echo "Directory .oh-my-zsh already exists. Skipping re-installation." 2>&1 | tee -a "$LOG"
fi
# Check if the directories exist before cloning the repositories
- if [ ! -d "$HOME/.oh-my-zsh/custom}/plugins/zsh-autosuggestions" ]; then
+ if [ ! -d "$HOME/.oh-my-zsh/custom/plugins/zsh-autosuggestions" ]; then
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/plugins/zsh-autosuggestions || true
else
- echo "Directory zsh-autosuggestions already exists. Skipping cloning."
+ echo "Directory zsh-autosuggestions already exists. Skipping cloning." 2>&1 | tee -a "$LOG"
fi
- if [ ! -d "$HOME/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting" ]; then
+ if [ ! -d "$HOME/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting" ]; then
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting || true
else
- echo "Directory zsh-syntax-highlighting already exists. Skipping cloning."
+ echo "Directory zsh-syntax-highlighting already exists. Skipping cloning." 2>&1 | tee -a "$LOG"
+ fi
+
+ # Check if ~/.zshrc and .zprofile exists, create a backup, and copy the new configuration
+ if [ -f "$HOME/.zshrc" ]; then
+ cp -b "$HOME/.zshrc" "$HOME/.zshrc-backup" || true
fi
+ if [ -f "$HOME/.zprofile" ]; then
+ cp -b "$HOME/.zprofile" "$HOME/.zprofile-backup" || true
+ fi
+
+ # Copying the preconfigured zsh themes and profile
cp -r 'assets/.zshrc' ~/
cp -r 'assets/.zprofile' ~/
printf "${NOTE} Changing default shell to zsh...\n"
while ! chsh -s $(which zsh); do
- echo "${ERROR} Authentication failed. Please enter the correct password."
+ echo "${ERROR} Authentication failed. Please enter the correct password." 2>&1 | tee -a "$LOG"
sleep 1
done
printf "${NOTE} Shell changed successfully to zsh.\n" 2>&1 | tee -a "$LOG"
fi
- printf "\n\n\n\n"
-
-clear
\ No newline at end of file
+clear
diff --git a/install.sh b/install.sh
old mode 100644
new mode 100755
index 7203f41..43acbde
--- a/install.sh
+++ b/install.sh
@@ -31,7 +31,12 @@ if [ "$proceed" != "y" ]; then
exit 1
fi
+source install-scripts/Global_functions.sh
+# Create Directory for Install Logs
+if [ ! -d Install-Logs ]; then
+ mkdir Install-Logs
+fi
# Set some colors for output messages
OK="$(tput setaf 2)[OK]$(tput sgr0)"
@@ -43,6 +48,7 @@ ORANGE=$(tput setaf 166)
YELLOW=$(tput setaf 3)
RESET=$(tput sgr0)
+
# Function to colorize prompts
colorize_prompt() {
local color="$1"
@@ -116,7 +122,7 @@ execute_script() {
printf "\n"
ask_custom_option "-Type AUR helper" "paru or yay" aur_helper
printf "\n"
-ask_yes_no "-Do you have nvidia gpu?" nvidia
+ask_yes_no "-Do you have any nvidia gpu in your system?" nvidia
printf "\n"
ask_yes_no "-Install GTK themes (required for Dark/Light function)?" gtk_themes
printf "\n"
@@ -124,22 +130,24 @@ ask_yes_no "-Do you want to configure Bluetooth?" bluetooth
printf "\n"
ask_yes_no "-Do you want to install Thunar file manager?" thunar
printf "\n"
-ask_yes_no "-Installing in Asus ROG Laptops?" rog
-printf "\n"
-ask_yes_no "-Install and configure SDDM log-in Manager?" sddm
+ask_yes_no "-Install & configure SDDM log-in Manager w/ (Optional) SDDM Theme?" sddm
printf "\n"
ask_yes_no "-Install XDG-DESKTOP-PORTAL-HYPRLAND? (For proper Screen Share ie OBS)" xdph
printf "\n"
-ask_yes_no "-Install zsh, oh-my-zsh & pokemon-colorscripts?" zsh
+ask_yes_no "-Install zsh, oh-my-zsh & (Optional) pokemon-colorscripts?" zsh
printf "\n"
-ask_yes_no "-Do you want to copy Hyprland dotfiles?" dots
+ask_yes_no "-Installing in a Asus ROG Laptops?" rog
printf "\n"
+ask_yes_no "-Do you want to download pre-configured Hyprland dotfiles?" dots
+printf "\n"
+
# Ensuring all in the scripts folder are made executable
chmod +x install-scripts/*
-# Execute AUR helper script based on user choice
+# Ensuring base-devel is installed
execute_script "00-base.sh"
+# Execute AUR helper script based on user choice
if [ "$aur_helper" == "paru" ]; then
execute_script "paru.sh"
elif [ "$aur_helper" == "yay" ]; then
@@ -172,10 +180,6 @@ if [ "$thunar" == "Y" ]; then
execute_script "thunar.sh"
fi
-if [ "$rog" == "Y" ]; then
- execute_script "rog.sh"
-fi
-
if [ "$sddm" == "Y" ]; then
execute_script "sddm.sh"
fi
@@ -190,12 +194,15 @@ fi
execute_script "InputGroup.sh"
+if [ "$rog" == "Y" ]; then
+ execute_script "rog.sh"
+fi
+
if [ "$dots" == "Y" ]; then
execute_script "dotfiles.sh"
fi
-clear
printf "\n${OK} Yey! Installation Completed.\n"
printf "\n"