mirror of
https://github.com/JaKooLit/Debian-Hyprland.git
synced 2025-12-21 10:20:12 +01:00
initial pushed. Just copied from my old script
This commit is contained in:
parent
d6ff910df5
commit
8d4a214fac
@ -6,21 +6,80 @@
|
||||
|
||||
# packages neeeded
|
||||
dependencies=(
|
||||
build-essential
|
||||
build-essential
|
||||
cmake
|
||||
cmake-extras
|
||||
curl
|
||||
findutils
|
||||
gawk
|
||||
gettext
|
||||
gir1.2-graphene-1.0
|
||||
git
|
||||
glslang-tools
|
||||
gobject-introspection
|
||||
golang
|
||||
hwdata
|
||||
jq
|
||||
libegl-dev
|
||||
libavcodec-dev
|
||||
libavformat-dev
|
||||
libavutil-dev
|
||||
libcairo2-dev
|
||||
libdeflate-dev
|
||||
libdisplay-info-dev
|
||||
libdrm-dev
|
||||
libegl1-mesa-dev
|
||||
libgbm-dev
|
||||
libgdk-pixbuf-2.0-dev
|
||||
libgdk-pixbuf2.0-bin
|
||||
libgirepository1.0-dev
|
||||
libgl1-mesa-dev
|
||||
libgraphene-1.0-0
|
||||
libgraphene-1.0-dev
|
||||
libgtk-3-dev
|
||||
libgulkan-0.15-0t64
|
||||
libgulkan-dev
|
||||
libinih-dev
|
||||
libinput-dev
|
||||
libjbig-dev
|
||||
libjpeg-dev
|
||||
libjpeg62-turbo-dev
|
||||
liblerc-dev
|
||||
libliftoff-dev
|
||||
liblzma-dev
|
||||
libnotify-bin
|
||||
libpam0g-dev
|
||||
libpango1.0-dev
|
||||
libpipewire-0.3-dev
|
||||
libqt6svg6
|
||||
libseat-dev
|
||||
libstartup-notification0-dev
|
||||
libswresample-dev
|
||||
libsystemd-dev
|
||||
libtiff-dev
|
||||
libtiffxx6
|
||||
libtomlplusplus-dev
|
||||
libudev-dev
|
||||
libvkfft-dev
|
||||
libvulkan-dev
|
||||
libvulkan-volk-dev
|
||||
libwayland-dev
|
||||
libwebp-dev
|
||||
libxcb-composite0-dev
|
||||
libxcb-cursor-dev
|
||||
libxcb-dri3-dev
|
||||
libxcb-ewmh-dev
|
||||
libxcb-icccm4-dev
|
||||
libxcb-present-dev
|
||||
libxcb-render-util0-dev
|
||||
libxcb-res0-dev
|
||||
libxcb-util-dev
|
||||
libxcb-xinerama0-dev
|
||||
libxcb-xinput-dev
|
||||
libxcb-xkb-dev
|
||||
libxkbcommon-dev
|
||||
libxkbcommon-x11-dev
|
||||
libxkbregistry-dev
|
||||
libxml2-dev
|
||||
libxxhash-dev
|
||||
meson
|
||||
ninja-build
|
||||
openssl
|
||||
@ -31,8 +90,9 @@ dependencies=(
|
||||
python3-yaml
|
||||
python3-pyquery
|
||||
qt6-base-dev
|
||||
scdoc
|
||||
seatd
|
||||
spirv-tools
|
||||
unzip
|
||||
vulkan-validationlayers
|
||||
vulkan-utility-libraries-dev
|
||||
wayland-protocols
|
||||
|
||||
@ -1,44 +1,64 @@
|
||||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Main Hyprland Package #
|
||||
# Main Hyprland Package#
|
||||
|
||||
hypr=(
|
||||
hyprland-protocols
|
||||
hyprwayland-scanner
|
||||
)
|
||||
#specific branch or release
|
||||
hyprland_tag="v0.41.2"
|
||||
|
||||
# forcing to reinstall. Had experience it says hyprland is already installed
|
||||
f_hypr=(
|
||||
hyprland
|
||||
hyprland=(
|
||||
libxcb-errors-dev
|
||||
)
|
||||
|
||||
## 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" || { echo "${ERROR} Failed to change directory to $PARENT_DIR"; exit 1; }
|
||||
cd "$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
|
||||
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)_hyprland.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_hyprland2.log"
|
||||
|
||||
# Installation of dependencies
|
||||
printf "\n%s - Installing hyprland additional dependencies.... \n" "${NOTE}"
|
||||
|
||||
# Hyprland
|
||||
printf "${NOTE} Installing ${SKY_BLUE}Hyprland packages${RESET} .......\n"
|
||||
for HYPR in "${hypr[@]}"; do
|
||||
install_package "$HYPR" "$LOG"
|
||||
for PKG1 in "${hyprland[@]}"; 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
|
||||
|
||||
# force
|
||||
printf "${NOTE} Reinstalling ${SKY_BLUE}Hyprland packages${RESET} .......\n"
|
||||
for HYPR1 in "${f_hypr[@]}"; do
|
||||
re_install_package "$HYPR1" "$LOG"
|
||||
done
|
||||
# Clone, build, and install Hyprland using Cmake
|
||||
printf "${NOTE} Cloning Hyprland...\n"
|
||||
|
||||
printf "\n%.0s" {1..2}
|
||||
# Check if Hyprland folder exists and remove it
|
||||
if [ -d "Hyprland" ]; then
|
||||
printf "${NOTE} Removing existing Hyprland folder...\n"
|
||||
rm -rf "Hyprland" 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
if git clone --recursive -b $hyprland_tag "https://github.com/hyprwm/Hyprland"; then
|
||||
cd "Hyprland" || exit 1
|
||||
make all
|
||||
if sudo make install 2>&1 | tee -a "$MLOG"; then
|
||||
printf "${OK} Hyprland installed successfully.\n" 2>&1 | tee -a "$MLOG"
|
||||
else
|
||||
echo -e "${ERROR} Installation failed for Hyprland." 2>&1 | tee -a "$MLOG"
|
||||
fi
|
||||
mv $MLOG ../Install-Logs/ || true
|
||||
cd ..
|
||||
else
|
||||
echo -e "${ERROR} Download failed for Hyprland." 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
wayland_sessions_dir=/usr/share/wayland-sessions
|
||||
[ ! -d "$wayland_sessions_dir" ] && { printf "$CAT - $wayland_sessions_dir not found, creating...\n"; sudo mkdir -p "$wayland_sessions_dir" 2>&1 | tee -a "$LOG"; }
|
||||
sudo cp assets/hyprland.desktop "$wayland_sessions_dir/" 2>&1 | tee -a "$LOG"
|
||||
|
||||
clear
|
||||
@ -7,8 +7,6 @@ lock=(
|
||||
libgbm-dev
|
||||
libdrm-dev
|
||||
libmagic-dev
|
||||
libhyprlang-dev
|
||||
libhyprutils-dev
|
||||
)
|
||||
|
||||
#specific branch or release
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user