updated xdph installation since it is now in Debian Repo

This commit is contained in:
JaKooLit 2024-09-19 11:46:16 +09:00
parent 0e67ddcd9f
commit a659885466
2 changed files with 17 additions and 55 deletions

View File

@ -1,5 +1,8 @@
## Changelogs ## Changelogs
## 19 Sep 2024
- updated xdph installation since it is now in Debian Repo
## 14 Sep 2024 ## 14 Sep 2024
- Added Essential Packages final check in lieu of errors from Install log files in Install-Logs directory - Added Essential Packages final check in lieu of errors from Install log files in Install-Logs directory
- nwg-look is now in Debian Repo - nwg-look is now in Debian Repo

View File

@ -3,91 +3,51 @@
# XDG-Desktop-Portals for hyprland # # XDG-Desktop-Portals for hyprland #
xdg=( xdg=(
libpipewire-0.3-dev
libspa-0.2-dev
xdg-desktop-portal-gtk xdg-desktop-portal-gtk
xdg-desktop-portal-hyprland
) )
#specific branch or release
xdph_tag="v1.3.3"
## 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! ##
# Determine the directory where the script is located
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
# Change the working directory to the parent directory of the script
PARENT_DIR="$SCRIPT_DIR/.." PARENT_DIR="$SCRIPT_DIR/.."
cd "$PARENT_DIR" || exit 1 cd "$PARENT_DIR" || exit 1
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh" source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
# Set the name of the log file to include the current date and time
LOG="Install-Logs/install-$(date +%d-%H%M%S)_xdph.log" LOG="Install-Logs/install-$(date +%d-%H%M%S)_xdph.log"
MLOG="install-$(date +%d-%H%M%S)_xdph2.log"
## # Check if the file exists and remove it
printf "${NOTE} Installing xdg-desktop-portal-gtk...\n" [[ -f "/usr/lib/xdg-desktop-portal-hyprland" ]] && sudo rm "/usr/lib/xdg-desktop-portal-hyprland"
printf "${NOTE} Installing xdg-desktop-portals...\n"
for portal in "${xdg[@]}"; do for portal in "${xdg[@]}"; do
install_package "$portal" 2>&1 | tee -a "$LOG" install_package "$portal" 2>&1 | tee -a "$LOG"
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $portal Package installation failed, Please check the installation logs"; exit 1; } [ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $portal Package installation failed, Please check the installation logs"; exit 1; }
done done
# Check if xdg-desktop-portal-hyprland folder exists and remove it printf "\n\n${NOTE} Checking for other XDG-Desktop-Portal-Implementations...\n"
if [ -d "xdg-desktop-portal-hyprland" ]; then
printf "${NOTE} Removing existing xdg-desktop-portal-hyprland folder...\n"
rm -rf "xdg-desktop-portal-hyprland"
fi
# Clone and build xdg-desktop-portal-hyprland
printf "${NOTE} Installing xdg-desktop-portal-hyprland...\n"
if git clone --recursive -b $xdph_tag https://github.com/hyprwm/xdg-desktop-portal-hyprland; then
cd xdg-desktop-portal-hyprland || exit 1
cmake -DCMAKE_INSTALL_LIBEXECDIR=/usr/lib -DCMAKE_INSTALL_PREFIX=/usr -B build
cmake --build build
if sudo cmake --install build 2>&1 | tee -a "$MLOG" ; then
printf "${OK} xdg-desktop-portal-hyprland installed successfully.\n" 2>&1 | tee -a "$MLOG"
else
echo -e "${ERROR} Installation failed for xdg-desktop-portal-hyprland." 2>&1 | tee -a "$MLOG"
fi
#moving the addional logs to Install-Logs directory
mv $MLOG ../Install-Logs/ || true
cd ..
else
echo -e "${ERROR} Download failed for xdg-desktop-portal-hyprland." 2>&1 | tee -a "$LOG"
fi
printf "\n\n"
printf "${NOTE} Checking for other XDG-Desktop-Portal-Implementations....\n"
sleep 1 sleep 1
printf "\n"
printf "${NOTE} XDG-desktop-portal-KDE & GNOME (if installed) should be manually disabled or removed! I can't remove it... sorry...\n" 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 while true; do
printf "\n%.0s" {1..2}
read -rp "${CAT} Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n) " XDPH1 read -rp "${CAT} Would you like to try to remove other XDG-Desktop-Portal-Implementations? (y/n) " XDPH1
echo echo
sleep 1 sleep 1
case $XDPH1 in case $XDPH1 in
[Yy]) [Yy])
# Clean out other portals
printf "${NOTE} Clearing any other xdg-desktop-portal implementations...\n" printf "${NOTE} Clearing any other xdg-desktop-portal implementations...\n"
# Check if packages are installed and uninstall if present for portal in xdg-desktop-portal-wlr xdg-desktop-portal-lxqt; do
if sudo apt-get list installed xdg-desktop-portal-wlr &>> /dev/null; then if dpkg -l | grep -q "$portal"; then
echo "Removing xdg-desktop-portal-wlr..." echo "Removing $portal..."
sudo apt-get remove -y xdg-desktop-portal-wlr 2>&1 | tee -a "$LOG" sudo apt-get remove -y "$portal" 2>&1 | tee -a "$LOG"
fi fi
done
if sudo apt-get list installed xdg-desktop-portal-lxqt &>> /dev/null; then
echo "Removing xdg-desktop-portal-lxqt..."
sudo apt-get remove -y xdg-desktop-portal-lxqt 2>&1 | tee -a "$LOG"
fi
break break
;; ;;
[Nn]) [Nn])
echo "no other XDG-implementations will be removed." 2>&1 | tee -a "$LOG" echo "No other XDG-implementations will be removed." 2>&1 | tee -a "$LOG"
break break
;; ;;
*) *)
echo "Invalid input. Please enter 'y' for yes or 'n' for no." echo "Invalid input. Please enter 'y' for yes or 'n' for no."
;; ;;
@ -95,4 +55,3 @@ while true; do
done done
clear clear