Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Scripts/global_fn.sh
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ print_log() {
shift 2
;; # critical
-warn)
echo -ne "WARNING :: \e[97;43m $2 \e[0m :: "
echo -ne "WARNING :: \e[30;43m $2 \e[0m :: "
shift 2
;; # warning
+)
Expand Down
29 changes: 20 additions & 9 deletions Scripts/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -68,10 +68,18 @@ Usage: $0 [options]
d : install hyprland [d]efaults without configs --noconfirm
r : [r]estore config files
s : enable system [s]ervices
n : ignore/[n]o [n]vidia actions
n : ignore/[n]o [n]vidia actions (-irsn to ignore nvidia)
h : re-evaluate S[h]ell
m : no the[m]e reinstallations
t : [t]est run without executing (-irst to dry run all)

NOTE:
running without args is equivalent to -irs
to ignore nvidia, run -irsn

WRONG:
install.sh -n # This will not work

EOF
exit 1
;;
Expand Down Expand Up @@ -128,10 +136,11 @@ EOF
cp "${scrDir}/pkg_core.lst" "${scrDir}/install_pkg.lst"
trap 'mv "${scrDir}/install_pkg.lst" "${cacheDir}/logs/${HYDE_LOG}/install_pkg.lst"' EXIT

echo -e "\n#user packages" >>"${scrDir}/install_pkg.lst" # Add a marker for user packages
if [ -f "${custom_pkg}" ] && [ -n "${custom_pkg}" ]; then
cat "${custom_pkg}" >>"${scrDir}/install_pkg.lst"
fi
echo -e "\n#user packages" >>"${scrDir}/install_pkg.lst" # Add a marker for user packages

#--------------------------------#
# add nvidia drivers to the list #
#--------------------------------#
Expand All @@ -142,7 +151,7 @@ EOF
done
nvidia_detect --drivers >>"${scrDir}/install_pkg.lst"
else
print_log -warn "Nvidia" " :: " "Nvidia GPU detected but ignored..."
print_log -warn "Nvidia" "Nvidia GPU detected but ignored..."
fi
fi
nvidia_detect --verbose
Expand Down Expand Up @@ -219,7 +228,7 @@ EOF
#--------------------------------#
# install packages from the list #
#--------------------------------#
[ ${flg_DryRun} -eq 1 ] || "${scrDir}/install_pkg.sh" "${scrDir}/install_pkg.lst"
"${scrDir}/install_pkg.sh" "${scrDir}/install_pkg.lst"
fi

#---------------------------#
Expand All @@ -228,7 +237,7 @@ fi
if [ ${flg_Restore} -eq 1 ]; then
cat <<"EOF"

_ _d
_ _
___ ___ ___| |_ ___ ___|_|___ ___
| _| -_|_ -| _| . | _| | | . |
|_| |___|___|_| |___|_| |_|_|_|_ |
Expand Down Expand Up @@ -298,13 +307,15 @@ EOF
fi

if [ $flg_Install -eq 1 ]; then
print_log -stat "\nInstallation" "completed"
echo ""
print_log -g "Installation" " :: " "COMPLETED!"
fi
print_log -stat "Log" "View logs at ${cacheDir}/logs/${HYDE_LOG}"
print_log -b "Log" " :: " -y "View logs at ${cacheDir}/logs/${HYDE_LOG}"
if [ $flg_Install -eq 1 ] ||
[ $flg_Restore -eq 1 ] ||
[ $flg_Service -eq 1 ]; then
print_log -stat "HyDE" "It is recommended to reboot the system after installing or upgrading HyDE. Do you want to reboot the system now? (y/N)"
[ $flg_Service -eq 1 ] &&
[ $flg_DryRun -ne 1 ]; then
print_log -stat "HyDE" "It is not recommended to use newly installed or upgraded HyDE without rebooting the system. Do you want to reboot the system? (y/N)"
read -r answer

if [[ "$answer" == [Yy] ]]; then
Expand Down
4 changes: 3 additions & 1 deletion Scripts/install_aur.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,12 @@ fi

# shellcheck disable=SC2154
if chk_list "aurhlpr" "${aurList[@]}"; then
print_log -sec "AUR" -stat "detected" "${aurhlpr}"
print_log -sec "AUR" -stat "Detected" "${aurhlpr}"
exit 0
fi

echo "llego aqui :O"
exit 1
aurhlpr="${1:-yay-bin}"

if [ -d "$HOME/Clone" ]; then
Expand Down
34 changes: 22 additions & 12 deletions Scripts/install_pkg.sh
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,11 @@ while read -r pkg deps; do
if pkg_installed "${pkg}"; then
print_log -y "[skip] " "${pkg}"
elif pkg_available "${pkg}"; then
repo=$(pacman -Si "${pkg}" | awk -F ': ' '/Repository / {print $2}')
print_log -b "[queue] " -g "${repo}" -b "::" "${pkg}"
repo=$(pacman -Si "${pkg}" | awk -F ': ' '/Repository / {print $2}' | tr '\n' ' ')
print_log -b "[queue] " "${pkg}" -b " :: " -g "${repo}"
archPkg+=("${pkg}")
elif aur_available "${pkg}"; then
print_log -b "[queue] " -g "aur" -b "::" "${pkg}"
print_log -b "[queue] " "${pkg}" -b " :: " -g "aur"
aurhPkg+=("${pkg}")
else
print_log -r "[error] " "unknown package ${pkg}..."
Expand All @@ -72,14 +72,24 @@ done < <(cut -d '#' -f 1 "${listPkg}")

IFS=${ofs}

if [ "${flg_DryRun}" -ne 1 ]; then
if [[ ${#archPkg[@]} -gt 0 ]]; then
print_log -b "[install] " "arch packages..."
sudo pacman ${use_default:+"$use_default"} -S "${archPkg[@]}"
fi
install_packages() {
local -n pkg_array=$1
local pkg_type=$2
local install_cmd=$3

if [[ ${#aurhPkg[@]} -gt 0 ]]; then
print_log -b "[install] " "aur packages..."
"${aurhlpr}" ${use_default:+"$use_default"} -S "${aurhPkg[@]}"
if [[ ${#pkg_array[@]} -gt 0 ]]; then
print_log -b "[install] " "$pkg_type packages..."
if [ "${flg_DryRun}" -eq 1 ]; then
for pkg in "${pkg_array[@]}"; do
print_log -b "[pkg] " "${pkg}"
done
else
$install_cmd ${use_default:+"$use_default"} -S "${pkg_array[@]}"
fi
fi
fi
}

echo ""
install_packages archPkg "arch" "sudo pacman"
echo ""
install_packages aurhPkg "aur" "${aurhlpr}"
52 changes: 32 additions & 20 deletions Scripts/install_pre.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,20 +15,24 @@ flg_DryRun=${flg_DryRun:-0}

# grub
if pkg_installed grub && [ -f /boot/grub/grub.cfg ]; then
print_log -sec "bootloader" -stat "detected" "grub..."
print_log -sec "bootloader" -b "detected :: " "grub..."

if [ ! -f /etc/default/grub.hyde.bkp ] && [ ! -f /boot/grub/grub.hyde.bkp ]; then
print_log -g "[bootloader] " -b "configure :: " "grub"
sudo cp /etc/default/grub /etc/default/grub.hyde.bkp
sudo cp /boot/grub/grub.cfg /boot/grub/grub.hyde.bkp
[ "${flg_DryRun}" -eq 1 ] || sudo cp /etc/default/grub /etc/default/grub.hyde.bkp
[ "${flg_DryRun}" -eq 1 ] || sudo cp /boot/grub/grub.cfg /boot/grub/grub.hyde.bkp

# Only if the nvidia installation doesn't skip
if nvidia_detect; then
print_log -g "[bootloader] " -b "configure :: " "nvidia detected, adding nvidia_drm.modeset=1 to boot option..."
gcld=$(grep "^GRUB_CMDLINE_LINUX_DEFAULT=" "/etc/default/grub" | cut -d'"' -f2 | sed 's/\b nvidia_drm.modeset=.\b//g')
sudo sed -i "/^GRUB_CMDLINE_LINUX_DEFAULT=/c\GRUB_CMDLINE_LINUX_DEFAULT=\"${gcld} nvidia_drm.modeset=1\"" /etc/default/grub
if [ ${flg_Nvidia} -eq 1 ]; then
print_log -g "[bootloader] " -b "configure :: " "nvidia detected, adding nvidia_drm.modeset=1 to boot option..."
gcld=$(grep "^GRUB_CMDLINE_LINUX_DEFAULT=" "/etc/default/grub" | cut -d'"' -f2 | sed 's/\b nvidia_drm.modeset=.\b//g')
[ "${flg_DryRun}" -eq 1 ] || sudo sed -i "/^GRUB_CMDLINE_LINUX_DEFAULT=/c\GRUB_CMDLINE_LINUX_DEFAULT=\"${gcld} nvidia_drm.modeset=1\"" /etc/default/grub
else
print_log -g "[bootloader] " -b "skip :: " "nvidia detected, skipping nvidia_drm.modeset=1 to boot option..."
fi
fi

print_log -r "[bootloader] " -b " :: " "Select grub theme:" -r "\n[1]" -b " Retroboot (dark)" -r "\n[2]" -b " Pochita (light)"
print_log -g "[bootloader] " "Select grub theme:" -y "\n[1]" -y " Retroboot (dark)" -y "\n[2]" -y " Pochita (light)"
read -r -p " :: Press enter to skip grub theme <or> Enter option number : " grubopt
case ${grubopt} in
1) grubtheme="Retroboot" ;;
Expand All @@ -37,20 +41,21 @@ if pkg_installed grub && [ -f /boot/grub/grub.cfg ]; then
esac

if [ "${grubtheme}" == "None" ]; then
print_log -g "[bootloader] " -b "skip :: " "grub theme..."
sudo sed -i "s/^GRUB_THEME=/#GRUB_THEME=/g" /etc/default/grub
print_log -g "[bootloader] " -b "skip :: " "grub theme selection skipped..."
echo ""
else
print_log -g "[bootloader] " -b "set :: " "grub theme // ${grubtheme}"
echo ""
# shellcheck disable=SC2154
sudo tar -xzf "${cloneDir}/Source/arcs/Grub_${grubtheme}.tar.gz" -C /usr/share/grub/themes/
sudo sed -i "/^GRUB_DEFAULT=/c\GRUB_DEFAULT=saved
[ "${flg_DryRun}" -eq 1 ] || sudo tar -xzf "${cloneDir}/Source/arcs/Grub_${grubtheme}.tar.gz" -C /usr/share/grub/themes/
[ "${flg_DryRun}" -eq 1 ] || sudo sed -i "/^GRUB_DEFAULT=/c\GRUB_DEFAULT=saved
/^GRUB_GFXMODE=/c\GRUB_GFXMODE=1280x1024x32,auto
/^GRUB_THEME=/c\GRUB_THEME=\"/usr/share/grub/themes/${grubtheme}/theme.txt\"
/^#GRUB_THEME=/c\GRUB_THEME=\"/usr/share/grub/themes/${grubtheme}/theme.txt\"
/^#GRUB_SAVEDEFAULT=true/c\GRUB_SAVEDEFAULT=true" /etc/default/grub
[ "${flg_DryRun}" -eq 1 ] || sudo grub-mkconfig -o /boot/grub/grub.cfg
fi

sudo grub-mkconfig -o /boot/grub/grub.cfg
else
print_log -y "[bootloader] " -b "exist :: " "grub is already configured..."
fi
Expand All @@ -62,11 +67,13 @@ if pkg_installed systemd && nvidia_detect && [ "$(bootctl status 2>/dev/null | a

if [ "$(find /boot/loader/entries/ -type f -name '*.conf.hyde.bkp' 2>/dev/null | wc -l)" -ne "$(find /boot/loader/entries/ -type f -name '*.conf' 2>/dev/null | wc -l)" ]; then
print_log -g "[bootloader] " -b " :: " "nvidia detected, adding nvidia_drm.modeset=1 to boot option..."
find /boot/loader/entries/ -type f -name "*.conf" | while read -r imgconf; do
sudo cp "${imgconf}" "${imgconf}.hyde.bkp"
sdopt=$(grep -w "^options" "${imgconf}" | sed 's/\b quiet\b//g' | sed 's/\b splash\b//g' | sed 's/\b nvidia_drm.modeset=.\b//g')
sudo sed -i "/^options/c${sdopt} quiet splash nvidia_drm.modeset=1" "${imgconf}"
done
if [[ "${flg_DryRun}" -ne 1 ]]; then
find /boot/loader/entries/ -type f -name "*.conf" | while read -r imgconf; do
sudo cp "${imgconf}" "${imgconf}.hyde.bkp"
sdopt=$(grep -w "^options" "${imgconf}" | sed 's/\b quiet\b//g' | sed 's/\b splash\b//g' | sed 's/\b nvidia_drm.modeset=.\b//g')
sudo sed -i "/^options/c${sdopt} quiet splash nvidia_drm.modeset=1" "${imgconf}"
done
fi
else
print_log -y "[bootloader] " -stat "skipped" "systemd-boot is already configured..."
fi
Expand Down Expand Up @@ -113,7 +120,12 @@ else
;;
esac
if [ "${is_chaotic_aur}" == true ]; then
sudo pacman-key --init
sudo "${scrDir}/chaotic_aur.sh" --install
print_log -sec "Chaotic-aur" -stat "Installation" "Installing Chaotic AUR..."
if [[ "${flg_DryRun}" -ne 1 ]]; then
sudo pacman-key --init
sudo "${scrDir}/chaotic_aur.sh" --install
fi
else
print_log -sec "Chaotic-aur" -stat "Skipped" "Chaotic AUR installation skipped..."
fi
fi
28 changes: 17 additions & 11 deletions Scripts/install_pst.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,13 @@ if ! source "${scrDir}/global_fn.sh"; then
fi

cloneDir="${cloneDir:-$CLONE_DIR}"
flg_DryRun=${flg_DryRun:-0}

# sddm
if pkg_installed sddm; then
print_log -c "[DISPLAYMANAGER] " -b "detected :: " "sddm"
if [ ! -d /etc/sddm.conf.d ]; then
sudo mkdir -p /etc/sddm.conf.d
[ ${flg_DryRun} -eq 1 ] || sudo mkdir -p /etc/sddm.conf.d
fi
if [ ! -f /etc/sddm.conf.d/backup_the_hyde_project.conf ] || [ "${HYDE_INSTALL_SDDM}" = true ]; then
print_log -g "[DISPLAYMANAGER] " -b " :: " "configuring sddm..."
Expand All @@ -29,10 +30,14 @@ if pkg_installed sddm; then
*) sddmtheme="Corners" ;;
esac

sudo tar -xzf "${cloneDir}/Source/arcs/Sddm_${sddmtheme}.tar.gz" -C /usr/share/sddm/themes/
sudo touch /etc/sddm.conf.d/the_hyde_project.conf
sudo cp /etc/sddm.conf.d/the_hyde_project.conf /etc/sddm.conf.d/backup_the_hyde_project.conf
sudo cp /usr/share/sddm/themes/${sddmtheme}/the_hyde_project.conf /etc/sddm.conf.d/
if [[ ${flg_DryRun} -ne 1 ]]; then
sudo tar -xzf "${cloneDir}/Source/arcs/Sddm_${sddmtheme}.tar.gz" -C /usr/share/sddm/themes/
sudo touch /etc/sddm.conf.d/the_hyde_project.conf
sudo cp /etc/sddm.conf.d/the_hyde_project.conf /etc/sddm.conf.d/backup_the_hyde_project.conf
sudo cp /usr/share/sddm/themes/${sddmtheme}/the_hyde_project.conf /etc/sddm.conf.d/
fi

print_log -g "[DISPLAYMANAGER] " -b " :: " "sddm configured with ${sddmtheme} theme..."
else
print_log -y "[DISPLAYMANAGER] " -b " :: " "sddm is already configured..."
fi
Expand All @@ -53,25 +58,26 @@ if pkg_installed dolphin && pkg_installed xdg-utils; then
print_log -g "[FILEMANAGER] " -b " :: " "setting $(xdg-mime query default "inode/directory") as default file explorer..."

else
print_log -y "[FILEMANAGER] " -b " :: " "dolphin is not installed..."
print_log -y "[FILEMANAGER] " -b " :: " "Setting $(xdg-mime query default "inode/directory") as default file explorer..."
print_log -y "[FILEMANAGER]" -b " :: " "dolphin is not installed..."
print_log -y "[FILEMANAGER]" -b " :: " "Setting $(xdg-mime query default "inode/directory") as default file explorer..."
fi

# shell
"${scrDir}/restore_shl.sh"

# flatpak
if ! pkg_installed flatpak; then
print_log -r "[FLATPAK]" -b "list :: " "flatpak application"
echo ""
print_log -g "[FLATPAK]" -b " list :: " "flatpak application"
awk -F '#' '$1 != "" {print "["++count"]", $1}' "${scrDir}/extra/custom_flat.lst"
prompt_timer 60 "Install these flatpaks? [Y/n]"
fpkopt=${PROMPT_INPUT,,}

if [ "${fpkopt}" = "y" ]; then
print_log -g "[FLATPAK]" -b "install :: " "flatpaks"
"${scrDir}/extra/install_fpk.sh"
print_log -g "[FLATPAK]" -b " install :: " "flatpaks"
[ ${flg_DryRun} -eq 1 ] || "${scrDir}/extra/install_fpk.sh"
else
print_log -y "[FLATPAK]" -b "skip :: " "flatpak installation"
print_log -y "[FLATPAK]" -b " skip :: " "flatpak installation"
fi

else
Expand Down
11 changes: 6 additions & 5 deletions Scripts/restore_cfg.sh
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ deploy_psv() {
# Call the function pkg_installed with the argument pkg_chk. If the function returns false (the package is not installed), then...
if ! pkg_installed "${pkg_chk}"; then
# Print a message stating that the current configuration is being skipped because a dependency is not installed
print_log -y "[skip] " -r "missing" -b " :: " "${pth}/${cfg} " -c "missing dependency" "'${pkg_chk}' as dependency"
print_log -y "[skip] " -r "missing" -b " :: " -y "missing dependency" -g " '${pkg_chk}'" -r " --> " "${pth}/${cfg}"
# Skip the rest of the current loop iteration and proceed to the next iteration
continue 2
fi
Expand Down Expand Up @@ -137,7 +137,7 @@ deploy_psv() {
"O")
[ "${flg_DryRun}" -ne 1 ] && mv "${pth}/${cfg_chk}" "${BkpDir}${tgt}"
[ "${flg_DryRun}" -ne 1 ] && cp -r "${CfgDir}${tgt}/${cfg_chk}" "${pth}"
print_log -r "[move to backup]" " > " -r "[overwrite]" -b " :: " "${pth}" -r " <-- " "${CfgDir}${tgt}/${cfg_chk}"
print_log -r "[move to backup]" " > " -r "[overwrite]" -b " :: " "${pth}" -r " <-- " "${CfgDir}${tgt}/${cfg_chk}"
;;
"S")
[ "${flg_DryRun}" -ne 1 ] && cp -r "${pth}/${cfg_chk}" "${BkpDir}${tgt}"
Expand All @@ -147,9 +147,9 @@ deploy_psv() {
"P")
[ "${flg_DryRun}" -ne 1 ] && cp -r "${pth}/${cfg_chk}" "${BkpDir}${tgt}"
if ! [ "${flg_DryRun}" -ne 1 ] && cp -rn "${CfgDir}${tgt}/${cfg_chk}" "${pth}" 2>/dev/null; then
print_log -g "[copy to backup]" " > " -g "[populate]" -b " :: " "${pth}${tgt}/${cfg_chk}"
print_log -g "[copy to backup]" " > " -y "[populate]" -b " :: " "${pth}${tgt}/${cfg_chk}"
else
print_log -g "[copy to backup]" " > " -g "[preserved]" -b " :: " "${pth}" + 208 " <-- " "${CfgDir}${tgt}/${cfg_chk}"
print_log -g "[copy to backup]" " > " -y "[preserved]" -b " :: " "${pth}" + 208 " <-- " "${CfgDir}${tgt}/${cfg_chk}"
fi
;;
esac
Expand Down Expand Up @@ -200,7 +200,7 @@ fi

file_extension="${CfgLst##*.}"
echo ""
print_log -g "[file extension]" -b "::" "${file_extension}"
print_log -g "[file extension]" -b " :: " "${file_extension}"
case "${file_extension}" in
"lst")
deploy_list "${CfgLst}"
Expand All @@ -212,3 +212,4 @@ json)
deploy_json "${CfgLst}"
;;
esac
echo ""
Loading