Compare commits

..

No commits in common. "7613ab90e7330f722738eba67895f73fd9911b60" and "7707ec2c4eb764bdadfd366c77530e854ca4d9ec" have entirely different histories.

15 changed files with 234 additions and 389 deletions

View File

@ -2,14 +2,8 @@
## 10 December 2025 ## 10 December 2025
- Updated: - Updated Hyprland Build to v0.52.2
- Hyprland Build to v0.52.2
- Thanks entirely to @sdegler - Thanks entirely to @sdegler
- Fixed:
- `qt5-style-kvantum-themes` failed to install
- Wrong package name it's `qt-style-kvantume-themes`
- `libdisplay-info2` failed to install
- New package name: `libdisplay-info3`
## 10 October 2025 ## 10 October 2025

View File

@ -2,14 +2,13 @@
# You can edit these values or let update-hyprland.sh manage them. # You can edit these values or let update-hyprland.sh manage them.
# Each module script reads its TAG from these environment variables if set. # Each module script reads its TAG from these environment variables if set.
HYPRLAND_TAG=v0.52.2 HYPRLAND_TAG=v0.51.1
AQUAMARINE_TAG=v0.10.0 AQUAMARINE_TAG=v0.9.3
HYPRUTILS_TAG=v0.10.4 HYPRUTILS_TAG=v0.8.3
HYPRLANG_TAG=v0.6.7 HYPRLANG_TAG=v0.6.4
HYPRGRAPHICS_TAG=v0.4.0 HYPRGRAPHICS_TAG=v0.1.5
HYPRTOOLKIT_TAG=v0.4.1
HYPRWAYLAND_SCANNER_TAG=v0.4.5 HYPRWAYLAND_SCANNER_TAG=v0.4.5
HYPRLAND_PROTOCOLS_TAG=v0.7.0 HYPRLAND_PROTOCOLS_TAG=v0.6.4
HYPRLAND_QT_SUPPORT_TAG=v0.1.0 HYPRLAND_QT_SUPPORT_TAG=v0.1.0
HYPRLAND_GUIUTILS_TAG=v0.2.0 HYPRLAND_QTUTILS_TAG=v0.1.4
WAYLAND_PROTOCOLS_TAG=1.46 WAYLAND_PROTOCOLS_TAG=1.45

View File

@ -5,150 +5,146 @@
# packages neeeded # packages neeeded
dependencies=( dependencies=(
build-essential build-essential
cmake cmake
cmake-extras cmake-extras
curl curl
findutils findutils
gawk gawk
gettext gettext
gir1.2-graphene-1.0 gir1.2-graphene-1.0
git git
glslang-tools glslang-tools
gobject-introspection gobject-introspection
golang golang
hwdata hwdata
jq jq
libavcodec-dev libavcodec-dev
libavformat-dev libavformat-dev
libavutil-dev libavutil-dev
libcairo2-dev libcairo2-dev
libdeflate-dev libdeflate-dev
libdisplay-info-dev libdisplay-info-dev
libdrm-dev libdrm-dev
libegl-dev libegl-dev
libegl1-mesa-dev libegl1-mesa-dev
libgbm-dev libgbm-dev
libgdk-pixbuf-2.0-dev libgdk-pixbuf-2.0-dev
libgdk-pixbuf2.0-bin libgdk-pixbuf2.0-bin
libgirepository1.0-dev libgirepository1.0-dev
libgl1-mesa-dev libgl1-mesa-dev
libgraphene-1.0-0 libgraphene-1.0-0
libgraphene-1.0-dev libgraphene-1.0-dev
libgtk-3-dev libgtk-3-dev
libgulkan-0.15-0t64 libgulkan-0.15-0t64
libgulkan-dev libgulkan-dev
libinih-dev libinih-dev
libiniparser-dev libinput-dev
libinput-dev libjbig-dev
libjbig-dev libjpeg-dev
libjpeg-dev libjpeg62-turbo-dev
libjpeg62-turbo-dev liblerc-dev
liblerc-dev libliftoff-dev
libliftoff-dev liblzma-dev
liblzma-dev libnotify-bin
libnotify-bin libpam0g-dev
libpam0g-dev libpango1.0-dev
libpango1.0-dev libpipewire-0.3-dev
libpipewire-0.3-dev libqt6svg6
libqt6svg6 libsdbus-c++-dev
libsdbus-c++-dev libseat-dev
libseat-dev libstartup-notification0-dev
libstartup-notification0-dev libswresample-dev
libswresample-dev libsystemd-dev
libsystemd-dev libtiff-dev
libtiff-dev libtiffxx6
libtiffxx6 libtomlplusplus-dev
libtomlplusplus-dev libudev-dev
libudev-dev libvkfft-dev
libvkfft-dev libvulkan-dev
libvulkan-dev libvulkan-volk-dev
libvulkan-volk-dev libwayland-dev
libwayland-dev libwebp-dev
libwebp-dev libxcb-composite0-dev
libxcb-composite0-dev libxcb-cursor-dev
libxcb-cursor-dev libxcb-dri3-dev
libxcb-dri3-dev libxcb-ewmh-dev
libxcb-ewmh-dev libxcb-icccm4-dev
libxcb-icccm4-dev libxcb-present-dev
libxcb-present-dev libxcb-render-util0-dev
libxcb-render-util0-dev libxcb-res0-dev
libxcb-res0-dev libxcb-util-dev
libxcb-util-dev libxcb-xinerama0-dev
libxcb-xinerama0-dev libxcb-xinput-dev
libxcb-xinput-dev libxcb-xkb-dev
libxcb-xkb-dev libxkbcommon-dev
libxkbcommon-dev libxkbcommon-x11-dev
libxkbcommon-x11-dev libxkbregistry-dev
libxkbregistry-dev libxml2-dev
libxml2-dev libxxhash-dev
libxxhash-dev meson
meson ninja-build
ninja-build openssl
openssl psmisc
psmisc python3-mako
python3-mako python3-markdown
python3-markdown python3-markupsafe
python3-markupsafe python3-pyquery
python3-pyquery python3-yaml
python3-yaml qt6-base-dev
qt6-base-dev scdoc
scdoc seatd
seatd spirv-tools
spirv-tools unzip
unzip vulkan-utility-libraries-dev
vulkan-utility-libraries-dev vulkan-validationlayers
vulkan-validationlayers wayland-protocols
wayland-protocols xdg-desktop-portal
xdg-desktop-portal xwayland
xwayland
) )
# hyprland dependencies # hyprland dependencies
hyprland_dep=( hyprland_dep=(
bc bc
binutils binutils
libc6 libc6
libcairo2-dev libcairo2-dev
libdisplay-info3 libdisplay-info2
libdrm2 libdrm2
libjpeg-dev libjpeg-dev
libjxl-dev libjxl-dev
libmagic-dev libmagic-dev
libpixman-1-dev libpixman-1-dev
libpugixml-dev libpugixml-dev
libre2-dev libre2-dev
librsvg2-dev librsvg2-dev
libspng-dev libspng-dev
libtomlplusplus-dev libtomlplusplus-dev
libwebp-dev libwebp-dev
libzip-dev libzip-dev
libpam0g-dev libpam0g-dev
libxcursor-dev libxcursor-dev
qt6-declarative-dev qt6-declarative-dev
qt6-base-private-dev qt6-base-private-dev
qt6-wayland-dev qt6-wayland-dev
qt6-wayland-private-dev qt6-wayland-private-dev
) )
build_dep=( build_dep=(
wlroots wlroots
) )
## 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! ##
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 # Change the working directory to the parent directory of the script
PARENT_DIR="$SCRIPT_DIR/.." PARENT_DIR="$SCRIPT_DIR/.."
cd "$PARENT_DIR" || { cd "$PARENT_DIR" || { echo "${ERROR} Failed to change directory to $PARENT_DIR"; exit 1; }
echo "${ERROR} Failed to change directory to $PARENT_DIR"
exit 1
}
# Source the global functions script # Source the global functions script
if ! source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"; then if ! source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"; then
echo "Failed to source Global_functions.sh" echo "Failed to source Global_functions.sh"
exit 1 exit 1
fi fi
# Set the name of the log file to include the current date and time # Set the name of the log file to include the current date and time
@ -158,13 +154,13 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_dependencies.log"
printf "\n%s - Installing ${SKY_BLUE}main dependencies....${RESET} \n" "${NOTE}" printf "\n%s - Installing ${SKY_BLUE}main dependencies....${RESET} \n" "${NOTE}"
for PKG1 in "${dependencies[@]}" "${hyprland_dep[@]}"; do for PKG1 in "${dependencies[@]}" "${hyprland_dep[@]}"; do
install_package "$PKG1" "$LOG" install_package "$PKG1" "$LOG"
done done
printf "\n%.0s" {1..1} printf "\n%.0s" {1..1}
for PKG1 in "${build_dep[@]}"; do for PKG1 in "${build_dep[@]}"; do
build_dep "$PKG1" "$LOG" build_dep "$PKG1" "$LOG"
done done
printf "\n%.0s" {1..2} printf "\n%.0s" {1..2}

View File

@ -12,82 +12,79 @@ Extra=(
# packages needed # packages needed
hypr_package=( hypr_package=(
cliphist cliphist
grim grim
gvfs gvfs
gvfs-backends gvfs-backends
inxi inxi
imagemagick imagemagick
kitty kitty
nano nano
pavucontrol pavucontrol
playerctl playerctl
polkit-kde-agent-1 polkit-kde-agent-1
python3-requests python3-requests
python3-pip python3-pip
qt5ct qt5ct
qt5-style-kvantum qt5-style-kvantum
qt-style-kvantum-themes qt5-style-kvantum-themes
qt6ct qt6ct
slurp slurp
swappy swappy
sway-notification-center sway-notification-center
unzip unzip
waybar waybar
wget wget
wl-clipboard wl-clipboard
wlogout wlogout
xdg-user-dirs xdg-user-dirs
xdg-utils xdg-utils
yad yad
) )
# the following packages can be deleted. however, dotfiles may not work properly # the following packages can be deleted. however, dotfiles may not work properly
hypr_package_2=( hypr_package_2=(
brightnessctl brightnessctl
btop btop
cava cava
fastfetch fastfetch
loupe loupe
gnome-system-monitor gnome-system-monitor
mousepad mousepad
mpv mpv
mpv-mpris mpv-mpris
nwg-look nwg-look
nwg-displays nwg-displays
nvtop nvtop
pamixer pamixer
qalculate-gtk qalculate-gtk
) )
# packages to force reinstall # packages to force reinstall
force=( force=(
imagemagick imagemagick
wayland-protocols wayland-protocols
) )
# List of packages to uninstall as it conflicts with swaync or causing swaync to not function properly # List of packages to uninstall as it conflicts with swaync or causing swaync to not function properly
uninstall=( uninstall=(
dunst dunst
mako mako
rofi rofi
cargo cargo
) )
## 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! ##
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 # Change the working directory to the parent directory of the script
PARENT_DIR="$SCRIPT_DIR/.." PARENT_DIR="$SCRIPT_DIR/.."
cd "$PARENT_DIR" || { cd "$PARENT_DIR" || { echo "${ERROR} Failed to change directory to $PARENT_DIR"; exit 1; }
echo "${ERROR} Failed to change directory to $PARENT_DIR"
exit 1
}
# Source the global functions script # Source the global functions script
if ! source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"; then if ! source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"; then
echo "Failed to source Global_functions.sh" echo "Failed to source Global_functions.sh"
exit 1 exit 1
fi fi
# Set the name of the log file to include the current date and time # Set the name of the log file to include the current date and time
@ -97,14 +94,14 @@ LOG="Install-Logs/install-$(date +%d-%H%M%S)_hypr-pkgs.log"
overall_failed=0 overall_failed=0
printf "\n%s - ${SKY_BLUE}Removing some packages${RESET} as it conflicts with KooL's Hyprland Dots \n" "${NOTE}" printf "\n%s - ${SKY_BLUE}Removing some packages${RESET} as it conflicts with KooL's Hyprland Dots \n" "${NOTE}"
for PKG in "${uninstall[@]}"; do for PKG in "${uninstall[@]}"; do
uninstall_package "$PKG" 2>&1 | tee -a "$LOG" uninstall_package "$PKG" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
overall_failed=1 overall_failed=1
fi fi
done done
if [ $overall_failed -ne 0 ]; then if [ $overall_failed -ne 0 ]; then
echo -e "${ERROR} Some packages failed to uninstall. Please check the log." echo -e "${ERROR} Some packages failed to uninstall. Please check the log."
fi fi
printf "\n%.0s" {1..1} printf "\n%.0s" {1..1}
@ -113,24 +110,24 @@ printf "\n%.0s" {1..1}
printf "\n%s - Installing ${SKY_BLUE}KooL's hyprland necessary packages${RESET} .... \n" "${NOTE}" printf "\n%s - Installing ${SKY_BLUE}KooL's hyprland necessary packages${RESET} .... \n" "${NOTE}"
for PKG1 in "${hypr_package[@]}" "${hypr_package_2[@]}" "${Extra[@]}"; do for PKG1 in "${hypr_package[@]}" "${hypr_package_2[@]}" "${Extra[@]}"; do
install_package "$PKG1" "$LOG" install_package "$PKG1" "$LOG"
done done
printf "\n%.0s" {1..1} printf "\n%.0s" {1..1}
for PKG2 in "${force[@]}"; do for PKG2 in "${force[@]}"; do
re_install_package "$PKG2" "$LOG" re_install_package "$PKG2" "$LOG"
done done
printf "\n%.0s" {1..1} printf "\n%.0s" {1..1}
# install YAD from assets. NOTE This is downloaded from SID repo and sometimes # install YAD from assets. NOTE This is downloaded from SID repo and sometimes
# Trixie is removing YAD for some strange reasons # Trixie is removing YAD for some strange reasons
# Check if yad is installed # Check if yad is installed
if ! command -v yad &>/dev/null; then if ! command -v yad &> /dev/null; then
echo "${INFO} Installing ${YELLOW}YAD from assets${RESET} ..." echo "${INFO} Installing ${YELLOW}YAD from assets${RESET} ..."
sudo dpkg -i assets/yad_0.40.0-1+b2_amd64.deb sudo dpkg -i assets/yad_0.40.0-1+b2_amd64.deb
sudo apt install -f -y sudo apt install -f -y
echo "${INFO} ${YELLOW}YAD from assets${RESET} succesfully installed ..." echo "${INFO} ${YELLOW}YAD from assets${RESET} succesfully installed ..."
fi fi
printf "\n%.0s" {1..2} printf "\n%.0s" {1..2}
@ -144,4 +141,3 @@ source "$HOME/.cargo/env"
sudo chmod +s $(which brightnessctl) 2>&1 | tee -a "$LOG" || true sudo chmod +s $(which brightnessctl) 2>&1 | tee -a "$LOG" || true
printf "\n%.0s" {1..2} printf "\n%.0s" {1..2}

View File

@ -5,7 +5,7 @@
#specific branch or release #specific branch or release
tag="v0.10.0" tag="v0.9.3"
# Allow environment override # Allow environment override
if [ -n "${AQUAMARINE_TAG:-}" ]; then tag="$AQUAMARINE_TAG"; fi if [ -n "${AQUAMARINE_TAG:-}" ]; then tag="$AQUAMARINE_TAG"; fi
@ -45,7 +45,7 @@ fi
printf "${INFO} Installing ${YELLOW}aquamarine $tag${RESET} ...\n" printf "${INFO} Installing ${YELLOW}aquamarine $tag${RESET} ...\n"
if git clone --recursive -b $tag https://github.com/hyprwm/aquamarine.git; then if git clone --recursive -b $tag https://github.com/hyprwm/aquamarine.git; then
cd aquamarine || exit 1 cd aquamarine || exit 1
cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr/local -S . -B ./build cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr -S . -B ./build
cmake --build ./build --config Release --target all -j`nproc 2>/dev/null || getconf NPROCESSORS_CONF` cmake --build ./build --config Release --target all -j`nproc 2>/dev/null || getconf NPROCESSORS_CONF`
if [ $DO_INSTALL -eq 1 ]; then if [ $DO_INSTALL -eq 1 ]; then
if sudo cmake --install ./build 2>&1 | tee -a "$MLOG" ; then if sudo cmake --install ./build 2>&1 | tee -a "$MLOG" ; then

View File

@ -8,7 +8,7 @@ hyprgraphics=(
) )
#specific branch or release #specific branch or release
tag="v0.4.0" tag="v0.1.5"
# Allow environment override # Allow environment override
if [ -n "${HYPRGRAPHICS_TAG:-}" ]; then tag="$HYPRGRAPHICS_TAG"; fi if [ -n "${HYPRGRAPHICS_TAG:-}" ]; then tag="$HYPRGRAPHICS_TAG"; fi

View File

@ -5,7 +5,7 @@
#specific branch or release #specific branch or release
tag="v0.7.0" tag="v0.6.4"
# Allow environment override # Allow environment override
if [ -n "${HYPRLAND_PROTOCOLS_TAG:-}" ]; then tag="$HYPRLAND_PROTOCOLS_TAG"; fi if [ -n "${HYPRLAND_PROTOCOLS_TAG:-}" ]; then tag="$HYPRLAND_PROTOCOLS_TAG"; fi

View File

@ -1,9 +1,9 @@
#!/bin/bash #!/bin/bash
# 💫 https://github.com/JaKooLit 💫 # # 💫 https://github.com/JaKooLit 💫 #
# Hypr Ecosystem # # Hypr Ecosystem #
# hypland-guiutils # # hypland-qtutils #
guiutils=( qtutils=(
libqt6core5compat6 libqt6core5compat6
qt6-base-dev qt6-base-dev
qt6-wayland-dev qt6-wayland-dev
@ -17,9 +17,9 @@ guiutils=(
) )
#specific branch or release #specific branch or release
tag="v0.2.0" tag="v0.1.4"
# Allow environment override # Allow environment override
if [ -n "${HYPRLAND_GUIUTILS_TAG:-}" ]; then tag="$HYPRLAND_GUIUTILS_TAG"; fi if [ -n "${HYPRLAND_QTUTILS_TAG:-}" ]; then tag="$HYPRLAND_QTUTILS_TAG"; fi
# Dry-run support # Dry-run support
DO_INSTALL=1 DO_INSTALL=1
@ -42,13 +42,13 @@ if ! source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"; then
fi fi
# Set the name of the log file to include the current date and time # Set the name of the log file to include the current date and time
LOG="Install-Logs/install-$(date +%d-%H%M%S)_hyprland-guiutils.log" LOG="Install-Logs/install-$(date +%d-%H%M%S)_hyprland-qtutils.log"
MLOG="install-$(date +%d-%H%M%S)_hyprland-guiutils2.log" MLOG="install-$(date +%d-%H%M%S)_hyprland-qtutils2.log"
# Installation of dependencies # Installation of dependencies
printf "\n%s - Installing ${YELLOW}hyprland-guiutils dependencies${RESET} .... \n" "${INFO}" printf "\n%s - Installing ${YELLOW}hyprland-qtutils dependencies${RESET} .... \n" "${INFO}"
for PKG1 in "${guiutils[@]}"; do for PKG1 in "${qtutils[@]}"; do
re_install_package "$PKG1" 2>&1 | tee -a "$LOG" re_install_package "$PKG1" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
echo -e "\e[1A\e[K${ERROR} - ${YELLOW}$PKG1${RESET} Package installation failed, Please check the installation logs" echo -e "\e[1A\e[K${ERROR} - ${YELLOW}$PKG1${RESET} Package installation failed, Please check the installation logs"
@ -58,31 +58,31 @@ done
printf "\n%.0s" {1..1} printf "\n%.0s" {1..1}
# Check if hyprland-guiutils directory exists and remove it # Check if hyprland-qtutils directory exists and remove it
if [ -d "hyprland-guiutils" ]; then if [ -d "hyprland-qtutils" ]; then
rm -rf "hyprland-guiutils" rm -rf "hyprland-qtutils"
fi fi
# Clone and build # Clone and build
printf "${INFO} Installing ${YELLOW}hyprland-guiutils $tag${RESET} ...\n" printf "${INFO} Installing ${YELLOW}hyprland-qtutils $tag${RESET} ...\n"
if git clone --recursive -b $tag https://github.com/hyprwm/hyprland-guiutils.git; then if git clone --recursive -b $tag https://github.com/hyprwm/hyprland-qtutils.git; then
cd hyprland-guiutils || exit 1 cd hyprland-qtutils || exit 1
cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr -S . -B ./build cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr -S . -B ./build
cmake --build ./build --config Release --target all -j`nproc 2>/dev/null || getconf NPROCESSORS_CONF` cmake --build ./build --config Release --target all -j`nproc 2>/dev/null || getconf NPROCESSORS_CONF`
if [ $DO_INSTALL -eq 1 ]; then if [ $DO_INSTALL -eq 1 ]; then
if sudo cmake --install ./build 2>&1 | tee -a "$MLOG" ; then if sudo cmake --install ./build 2>&1 | tee -a "$MLOG" ; then
printf "${OK} ${MAGENTA}hyprland-guiutils $tag${RESET} installed successfully.\n" 2>&1 | tee -a "$MLOG" printf "${OK} ${MAGENTA}hyprland-qtutils $tag${RESET} installed successfully.\n" 2>&1 | tee -a "$MLOG"
else else
echo -e "${ERROR} Installation failed for ${YELLOW}hyprland-guiutils $tag${RESET}" 2>&1 | tee -a "$MLOG" echo -e "${ERROR} Installation failed for ${YELLOW}hyprland-qtutils $tag${RESET}" 2>&1 | tee -a "$MLOG"
fi fi
else else
echo "${NOTE} DRY RUN: Skipping installation of hyprland-guiutils $tag." echo "${NOTE} DRY RUN: Skipping installation of hyprland-qtutils $tag."
fi fi
#moving the addional logs to Install-Logs directory #moving the addional logs to Install-Logs directory
[ -f "$MLOG" ] && mv "$MLOG" ../Install-Logs/ [ -f "$MLOG" ] && mv "$MLOG" ../Install-Logs/
cd .. cd ..
else else
echo -e "${ERROR} Download failed for ${YELLOW}hyprland-guiutils $tag${RESET}" 2>&1 | tee -a "$LOG" echo -e "${ERROR} Download failed for ${YELLOW}hyprland-qtutils $tag${RESET}" 2>&1 | tee -a "$LOG"
fi fi
printf "\n%.0s" {1..2} printf "\n%.0s" {1..2}

View File

@ -3,7 +3,7 @@
# Main Hyprland Package# # Main Hyprland Package#
#specific branch or release #specific branch or release
tag="v0.52.2" tag="v0.51.1"
# Allow environment override # Allow environment override
if [ -n "${HYPRLAND_TAG:-}" ]; then tag="$HYPRLAND_TAG"; fi if [ -n "${HYPRLAND_TAG:-}" ]; then tag="$HYPRLAND_TAG"; fi

View File

@ -5,7 +5,7 @@
#specific branch or release #specific branch or release
tag="v0.6.7" tag="v0.6.4"
# Allow environment override # Allow environment override
if [ -n "${HYPRLANG_TAG:-}" ]; then tag="$HYPRLANG_TAG"; fi if [ -n "${HYPRLANG_TAG:-}" ]; then tag="$HYPRLANG_TAG"; fi

View File

@ -1,65 +0,0 @@
#!/bin/bash
# 💫 https://github.com/JaKooLit 💫 #
# Hypr Ecosystem #
# hyprtoolkit #
#specific branch or release
tag="v0.4.1"
# Allow environment override
if [ -n "${HYPRTOOLKIT_TAG:-}" ]; then tag="$HYPRTOOLKIT_TAG"; fi
# Dry-run support
DO_INSTALL=1
if [ "$1" = "--dry-run" ] || [ "${DRY_RUN}" = "1" ] || [ "${DRY_RUN}" = "true" ]; then
DO_INSTALL=0
echo "${NOTE} DRY RUN: install step will be skipped."
fi
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
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" || { echo "${ERROR} Failed to change directory to $PARENT_DIR"; exit 1; }
# Source the global functions script
if ! source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"; then
echo "Failed to source Global_functions.sh"
exit 1
fi
# Set the name of the log file to include the current date and time
LOG="Install-Logs/install-$(date +%d-%H%M%S)_hyprtoolkit.log"
MLOG="install-$(date +%d-%H%M%S)_hyprtoolkit2.log"
# Clone, build, and install using Cmake
printf "${NOTE} Cloning hyprtoolkit...\n"
# Check if hyprtoolkit folder exists and remove it
if [ -d "hyprtoolkit" ]; then
printf "${NOTE} Removing existing hyprtoolkit folder...\n"
rm -rf "hyprtoolkit" 2>&1 | tee -a "$LOG"
fi
if git clone -b $tag "https://github.com/hyprwm/hyprtoolkit.git"; then
cd "hyprtoolkit" || exit 1
cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr/local -S . -B ./build
cmake --build ./build --config Release --target all -j`nproc 2>/dev/null || getconf _NPROCESSORS_CONF`
if [ $DO_INSTALL -eq 1 ]; then
if sudo cmake --install build 2>&1 | tee -a "$MLOG"; then
printf "${OK} hyprtoolkit installed successfully.\n" 2>&1 | tee -a "$MLOG"
else
echo -e "${ERROR} Installation failed for hyprtoolkit." 2>&1 | tee -a "$MLOG"
fi
else
echo "${NOTE} DRY RUN: Skipping installation of hyprtoolkit $tag."
fi
[ -f "$MLOG" ] && mv "$MLOG" ../Install-Logs/
cd ..
else
echo -e "${ERROR} Download failed for hyprtoolkit" 2>&1 | tee -a "$LOG"
fi
printf "\n%.0s" {1..2}

View File

@ -4,7 +4,7 @@
# hyprutils # # hyprutils #
#specific branch or release #specific branch or release
tag="v0.10.4" tag="v0.8.2"
# Allow environment override # Allow environment override
if [ -n "${HYPRUTILS_TAG:-}" ]; then tag="$HYPRUTILS_TAG"; fi if [ -n "${HYPRUTILS_TAG:-}" ]; then tag="$HYPRUTILS_TAG"; fi

View File

@ -1,69 +0,0 @@
#!/bin/bash
# 💫 https://github.com/JaKooLit 💫 #
# Hypr Ecosystem #
# xkbcommon #
xkbcommon=(
bison
libzip-dev
librsvg2-dev
)
#specific branch or release
tag="xkbcommon-1.13.1"
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
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" || { echo "${ERROR} Failed to change directory to $PARENT_DIR"; exit 1; }
# Source the global functions script
if ! source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"; then
echo "Failed to source Global_functions.sh"
exit 1
fi
# Set the name of the log file to include the current date and time
LOG="Install-Logs/install-$(date +%d-%H%M%S)_xkbcommon.log"
MLOG="install-$(date +%d-%H%M%S)_xkbcommon.log"
# Installation of dependencies
printf "\n%s - Installing xkbcommon dependencies.... \n" "${NOTE}"
for PKG1 in "${xkbcommon[@]}"; do
install_package "$PKG1" 2>&1 | tee -a "$LOG"
if [ $? -ne 0 ]; then
echo -e "\e[1A\e[K${ERROR} - $PKG1 Package installation failed, Please check the installation logs"
exit 1
fi
done
# Check if xkbcommon folder exists and remove it
if [ -d "libxkbcommon" ]; then
printf "${NOTE} Removing existing libxkbcommon folder...\n"
rm -rf "libxkbcommon"
fi
# Clone and build
printf "${NOTE} Installing xkbcommon...\n"
if git clone --recursive -b $tag https://github.com/xkbcommon/libxkbcommon.git; then
cd libxkbcommon || exit 1
meson setup build --libdir=/usr/local/lib
meson compile -C build
if sudo meson install -C build 2>&1 | tee -a "$MLOG" ; then
printf "${OK} xkbcommon installed successfully.\n" 2>&1 | tee -a "$MLOG"
else
echo -e "${ERROR} Installation failed for xkbcommon." 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 xkbcommon." 2>&1 | tee -a "$LOG"
fi
printf "\n%.0s" {1..2}

View File

@ -400,17 +400,13 @@ execute_script "aquamarine.sh"
sleep 1 sleep 1
execute_script "hyprland-qt-support.sh" execute_script "hyprland-qt-support.sh"
sleep 1 sleep 1
execute_script "hyprtoolkit.sh" execute_script "hyprland-qtutils.sh"
sleep 1
execute_script "hyprland-guiutils.sh"
sleep 1 sleep 1
execute_script "hyprland-protocols.sh" execute_script "hyprland-protocols.sh"
sleep 1 sleep 1
# Ensure wayland-protocols (from source) is installed to satisfy Hyprland's >= 1.45 requirement # Ensure wayland-protocols (from source) is installed to satisfy Hyprland's >= 1.45 requirement
execute_script "wayland-protocols-src.sh" execute_script "wayland-protocols-src.sh"
sleep 1 sleep 1
execute_script "xkbcommon.sh"
sleep 1
execute_script "hyprland.sh" execute_script "hyprland.sh"
sleep 1 sleep 1
execute_script "hyprpolkitagent.sh" execute_script "hyprpolkitagent.sh"

View File

@ -33,17 +33,15 @@ SUMMARY_LOG="$LOG_DIR/update-hypr-$TS.log"
# Default module order (core first, then Hyprland) # Default module order (core first, then Hyprland)
DEFAULT_MODULES=( DEFAULT_MODULES=(
xkbcommon
hyprutils hyprutils
hyprlang hyprlang
hyprtoolkit
wayland-protocols-src wayland-protocols-src
aquamarine aquamarine
hyprgraphics hyprgraphics
hyprwayland-scanner hyprwayland-scanner
hyprland-protocols hyprland-protocols
hyprland-qt-support hyprland-qt-support
hyprland-guiutils hyprland-qtutils
hyprland hyprland
) )