mirror of
https://github.com/JaKooLit/Debian-Hyprland.git
synced 2025-12-21 10:20:12 +01:00
Merge pull request #144 from JaKooLit/development
Development to Main - Refactor of Debian-Hyprland Script
This commit is contained in:
commit
4ca3bffc86
@ -1,5 +1,8 @@
|
||||
## Changelogs
|
||||
|
||||
## 22 Aug 2024
|
||||
- refactor Debian-Hyprland script. As Hyprland is now in official repo
|
||||
|
||||
## 07 Jul 2024
|
||||
- added eza (ls replacement for tty). Note only on .zshrc
|
||||
|
||||
|
||||
30
README.md
30
README.md
@ -1,5 +1,3 @@
|
||||
# ⚠️ NOTE: 08-08-2024 - Hyprland is on Debian Trixie and SID official repo. Including Ubuntu universe repo. However, because I am busy with work and travelling, I cannot adjust the script. Estimated by the End of Aug 2024 that I can adjust Debian and Ubuntu Install-Scripts
|
||||
|
||||
<div align="center">
|
||||
<br>
|
||||
<a href="#--ubuntu-2404-lts-noble-numbat-hyprland-install-script-branch-"><kbd> <br> Ubuntu 24.04 LTS <br> </kbd></a>  
|
||||
@ -131,10 +129,11 @@ sudo nano /etc/apt/sources.list
|
||||
</details>
|
||||
|
||||
### 🪧🪧🪧 ANNOUNCEMENT 🪧🪧🪧
|
||||
- This Repo does not contain Hyprland Dots or configs! Dotfiles can be checked here [`Hyprland-Dots`](https://github.com/JaKooLit/Hyprland-Dots) . During installation, if you opt to copy pre-configured dots, it will be downloaded from that centralized repo.
|
||||
- This Repo does not contain Hyprland Dots or configs! Pre-configured Dotfiles are on [`Hyprland-Dots`](https://github.com/JaKooLit/Hyprland-Dots) . During installation, if you opt to copy pre-configured dots, it will be downloaded from that centralized repo.
|
||||
|
||||
- Hyprland-Dots use are constantly evolving / improving. you can check CHANGELOGS here [`Hyprland-Dots-Changelogs`](https://github.com/JaKooLit/Hyprland-Dots/wiki/Changelogs)
|
||||
- Since the Hyprland-Dots are evolving, some of the screenshots maybe old
|
||||
- the wallpaper offered to be downloaded towards the end is from this [`REPO`](https://github.com/JaKooLit/Wallpaper-Bank)
|
||||
- the wallpaper offered to be downloaded towards the end is from this [`WALLPAPER-REPO`](https://github.com/JaKooLit/Wallpaper-Bank)
|
||||
|
||||
#### ✨ Some notes on this installer / Prerequisites
|
||||
- This script is meant to install in Debian Testing (Trixie) and Debian Unstable (SID). This script Will NOT work with Bookworm
|
||||
@ -155,6 +154,7 @@ sudo nano /etc/apt/sources.list
|
||||
|
||||
#### 🔔 NOTICE TO NVIDIA OWNERS ###
|
||||
- by default it is installing the latest and newest nvidia drivers. If you have an older nvidia-gpu (GTX 800 series and older), check out nvidia-debian website [`LINK`](https://wiki.debian.org/NvidiaGraphicsDrivers) and edit nvidia.sh in install-scripts directory to install proper gpu driver
|
||||
|
||||
> [!IMPORTANT]
|
||||
> If you want to use nouveau driver, choose N when asked if you have nvidia gpu. This is because the nvidia installer part, it will blacklist nouveau. Hyprland will still be installed but it will skip blacklisting nouveau.
|
||||
|
||||
@ -198,25 +198,21 @@ source ~/.zshrc
|
||||
|
||||
#### ✨ TO DO once installation done and dotfiles copied
|
||||
- SUPER H for HINT or click on the waybar HINT! Button
|
||||
- Head over to [FAQ](https://github.com/JaKooLit/Hyprland-Dots/wiki/FAQ) and [TIPS](https://github.com/JaKooLit/Hyprland-Dots/wiki/TIPS)
|
||||
- Head over to [`FAQ`](https://github.com/JaKooLit/Hyprland-Dots/wiki/FAQ) and [`TIPS`](https://github.com/JaKooLit/Hyprland-Dots/wiki/TIPS)
|
||||
|
||||
|
||||
- if you installed in your laptop and Brightness and Keyboard brightness does not work you can execute this command `sudo chmod +s $(which brightnessctl)`
|
||||
|
||||
#### ✨ Packages that are manually downloaded and build. These packages will not be updated by apt and have to be manually updated
|
||||
- Hyprland [`LINK`](https://github.com/hyprwm/Hyprland)
|
||||
- nwg-look [`LINK`](https://github.com/nwg-piotr/nwg-look)
|
||||
- Asus ROG asusctl [`LINK`](https://gitlab.com/asus-linux/asusctl) and superfxctl [`LINK`](https://gitlab.com/asus-linux/supergfxctl)
|
||||
- swww [`LINK`](https://github.com/Horus645/swww)
|
||||
- hyprlock [`LINK`](https://github.com/hyprwm/hyprlock)
|
||||
- hypridle [`LINK`](https://github.com/hyprwm/hypridle)
|
||||
- hyprlang [`LINK`](https://github.com/hyprwm/hyprlang)
|
||||
- hyprcursor [`LINK`](https://github.com/hyprwm/hyprcursor)
|
||||
- swappy [`LINK`](https://github.com/jtheoof/swappy)
|
||||
- hyprlock [`LINK`](https://github.com/hyprwm/hyprlock) #22 Aug 2024 - still not on repo
|
||||
- hypridle [`LINK`](https://github.com/hyprwm/hypridle) #22 Aug 2024 - still not on repo
|
||||
- xdg-desktop-portal-hyprland [`LINK`](https://github.com/hyprwm/xdg-desktop-portal-hyprland)
|
||||
- rofi-wayland [`LINK`](https://github.com/lbonn/rofi)
|
||||
- wallust [`LINK`](https://codeberg.org/explosion-mental/wallust)
|
||||
- waybar [`LINK`](https://github.com/Alexays/Waybar) - as of 13 May 2024. This was because Hyprland v0.40.0 requires Waybar v0.10.3 and Trixie still has waybar v0.10.3
|
||||
- Imagemagick [`LINK`](https://github.com/ImageMagick/ImageMagick) - as of 23 AUG 2024, version 7 still not on official repo, hence needed to build from source
|
||||
|
||||
> [!TIP]
|
||||
> To update to latest packages, re-running this script will auto update all. Script is configured to pull latest packages build for you.
|
||||
@ -236,7 +232,7 @@ source ~/.zshrc
|
||||
- [`SEE HERE`](https://github.com/JaKooLit/Hyprland-Dots/discussions/123#discussion-6035205)
|
||||
|
||||
#### 🙋 Got a questions regarding the Hyprland Dots configurations? 🙋
|
||||
- Head over to wiki Link [`WIKI`](https://github.com/JaKooLit/Hyprland-Dots/wiki)
|
||||
- Head over to Hyprland-Dots wiki Link [`KooL's DOTS WIKI`](https://github.com/JaKooLit/Hyprland-Dots/wiki)
|
||||
|
||||
#### ⌨ Keybinds
|
||||
- Keybinds [`CLICK`](https://github.com/JaKooLit/Hyprland-Dots/wiki/Keybinds)
|
||||
@ -246,11 +242,11 @@ source ~/.zshrc
|
||||
- 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 directory
|
||||
- CD into Debian-Hyprland Folder and then ran the below command.
|
||||
- i.e. `./install-scripts/gtk-themes.sh` - For reinstall GTK Themes or
|
||||
- `./install-scripts/sddm.sh` - For reinstall sddm
|
||||
- CD into Debian-Hyprland DIrectory and then ran the below command.
|
||||
- i.e. `./install-scripts/gtk-themes.sh` - to reinstall GTK Themes or
|
||||
- `./install-scripts/sddm.sh` - to reinstall sddm
|
||||
> [!IMPORTANT]
|
||||
> DO NOT cd into install-scripts directory as script will most likely to fail
|
||||
> DO NOT CD into install-scripts directory as script as it will fail. Scripts are designed to ran outside install-scripts directory for installation logging purposes.
|
||||
|
||||
#### 🛣️ Roadmap:
|
||||
- [ ] possibly adding gruvbox themes, cursors, icons
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# main dependencies #
|
||||
# 22 Aug 2024 - NOTE will trim this more down
|
||||
|
||||
|
||||
# packages neeeded
|
||||
dependencies=(
|
||||
@ -10,74 +12,12 @@ dependencies=(
|
||||
curl
|
||||
gawk
|
||||
gettext
|
||||
gir1.2-graphene-1.0
|
||||
git
|
||||
glslang-tools
|
||||
gobject-introspection
|
||||
golang
|
||||
hwdata
|
||||
jq
|
||||
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
|
||||
@ -88,8 +28,6 @@ dependencies=(
|
||||
python3-yaml
|
||||
python3-pyquery
|
||||
qt6-base-dev
|
||||
scdoc
|
||||
seatd
|
||||
spirv-tools
|
||||
vulkan-validationlayers
|
||||
vulkan-utility-libraries-dev
|
||||
@ -122,12 +60,4 @@ for PKG1 in "${dependencies[@]}"; do
|
||||
fi
|
||||
done
|
||||
|
||||
# Install dependencies for wlroots
|
||||
sudo apt build-dep wlroots
|
||||
export PATH=$PATH:/usr/local/go/bin
|
||||
|
||||
# Install Rust
|
||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
||||
source $HOME/.cargo/env
|
||||
|
||||
clear
|
||||
|
||||
@ -46,6 +46,7 @@ hypr_package_2=(
|
||||
btop
|
||||
cava
|
||||
eog
|
||||
fastfetch
|
||||
gnome-system-monitor
|
||||
mousepad
|
||||
mpv
|
||||
|
||||
49
install-scripts/01-pre-cleanup.sh
Normal file
49
install-scripts/01-pre-cleanup.sh
Normal file
@ -0,0 +1,49 @@
|
||||
#!/bin/bash
|
||||
|
||||
# This script is cleaning up previous manual installation files / directories
|
||||
|
||||
# 22 Aug 2024
|
||||
# Files to be removed rom /usr/local/bin
|
||||
|
||||
TARGET_DIR="/usr/local/bin"
|
||||
|
||||
# Define packages to manually remove (was manually installed previously)
|
||||
PACKAGES=(
|
||||
hyprctl
|
||||
hyprpm
|
||||
hyprland
|
||||
Hyprland
|
||||
cliphist
|
||||
pypr
|
||||
swappy
|
||||
waybar
|
||||
)
|
||||
|
||||
## 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-Logs/install-$(date +%d-%H%M%S)_pre-clean-up.log"
|
||||
|
||||
# Loop through the list of packages
|
||||
for PKG_NAME in "${PACKAGES[@]}"; do
|
||||
# Construct the full path to the file
|
||||
FILE_PATH="$TARGET_DIR/$PKG_NAME"
|
||||
|
||||
# Check if the file exists
|
||||
if [[ -f "$FILE_PATH" ]]; then
|
||||
# Delete the file
|
||||
sudo rm "$FILE_PATH"
|
||||
echo "Deleted: $FILE_PATH" 2>&1 | tee -a "$LOG"
|
||||
else
|
||||
echo "File not found: $FILE_PATH" 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
done
|
||||
|
||||
@ -3,16 +3,16 @@
|
||||
# Aylur's GTK Shell #
|
||||
|
||||
ags=(
|
||||
node-typescript
|
||||
npm
|
||||
meson
|
||||
libgjs-dev
|
||||
gjs
|
||||
libgtk-layer-shell-dev
|
||||
libgtk-3-dev
|
||||
libpulse-dev
|
||||
libdbusmenu-gtk3-dev
|
||||
libsoup-3.0-dev
|
||||
node-typescript
|
||||
npm
|
||||
meson
|
||||
libgjs-dev
|
||||
gjs
|
||||
libgtk-layer-shell-dev
|
||||
libgtk-3-dev
|
||||
libpulse-dev
|
||||
libdbusmenu-gtk3-dev
|
||||
libsoup-3.0-dev
|
||||
)
|
||||
|
||||
# specific tags to download
|
||||
@ -30,7 +30,7 @@ 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)_ags.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_ags.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_ags2.log"
|
||||
|
||||
# Installing ags Dependencies
|
||||
for PKG1 in "${ags[@]}"; do
|
||||
|
||||
@ -3,8 +3,8 @@
|
||||
# Bluetooth #
|
||||
|
||||
blue=(
|
||||
bluez
|
||||
blueman
|
||||
bluez
|
||||
blueman
|
||||
)
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
|
||||
@ -3,11 +3,11 @@
|
||||
# Fonts Required #
|
||||
|
||||
fonts=(
|
||||
fonts-firacode
|
||||
fonts-font-awesome
|
||||
fonts-noto
|
||||
fonts-noto-cjk
|
||||
fonts-noto-color-emoji
|
||||
fonts-firacode
|
||||
fonts-font-awesome
|
||||
fonts-noto
|
||||
fonts-noto-cjk
|
||||
fonts-noto-color-emoji
|
||||
)
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
|
||||
@ -1,46 +0,0 @@
|
||||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# This is to be use for installing hyprland plugins
|
||||
# Hyprland plugins: pyprland
|
||||
|
||||
pypr_depend=(
|
||||
python3-aiofiles
|
||||
python-is-python3
|
||||
)
|
||||
|
||||
## 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-Logs/install-$(date +%d-%H%M%S)_hypr_eco.log"
|
||||
|
||||
# Pyprland
|
||||
printf "${NOTE} Installing Pyprland Dependencies...\n"
|
||||
for PYPR in "${pypr_depend[@]}"; do
|
||||
install_package "$PYPR" 2>&1 | tee -a "$LOG"
|
||||
[ $? -ne 0 ] && { echo -e "\e[1A\e[K${ERROR} - $PYPR Package installation failed, Please check the installation logs"; exit 1; }
|
||||
done
|
||||
|
||||
|
||||
# Check if the file exists and delete it
|
||||
pypr="/usr/local/bin/pypr"
|
||||
if [ -f "$pypr" ]; then
|
||||
sudo rm "$pypr"
|
||||
fi
|
||||
|
||||
# Hyprland Plugins
|
||||
# pyprland https://github.com/hyprland-community/pyprland installing using python
|
||||
printf "${NOTE} Installing pyprland\n"
|
||||
|
||||
curl https://raw.githubusercontent.com/hyprland-community/pyprland/main/scripts/get-pypr | sh 2>&1 | tee -a "$LOG"
|
||||
|
||||
pip install pyprland --break-system-packages 2>&1 | tee -a "$LOG"
|
||||
|
||||
|
||||
@ -1,64 +0,0 @@
|
||||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# hyprcursor #
|
||||
|
||||
cursor=(
|
||||
libzip-dev
|
||||
librsvg2-dev
|
||||
)
|
||||
|
||||
#specific branch or release
|
||||
cursor_tag="v0.1.9"
|
||||
|
||||
## 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-Logs/install-$(date +%d-%H%M%S)_hyprcursor.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_hyprcursor.log"
|
||||
|
||||
# Installation of dependencies
|
||||
printf "\n%s - Installing hyprcursor dependencies.... \n" "${NOTE}"
|
||||
|
||||
for PKG1 in "${cursor[@]}"; 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 hyprcursor folder exists and remove it
|
||||
if [ -d "hyprcursor" ]; then
|
||||
printf "${NOTE} Removing existing hyprcursor folder...\n"
|
||||
rm -rf "hyprcursor"
|
||||
fi
|
||||
|
||||
# Clone and build
|
||||
printf "${NOTE} Installing hyprcursor...\n"
|
||||
if git clone --recursive -b $cursor_tag https://github.com/hyprwm/hyprcursor.git; then
|
||||
cd hyprcursor || exit 1
|
||||
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`
|
||||
if sudo cmake --install ./build 2>&1 | tee -a "$MLOG" ; then
|
||||
printf "${OK} hyprcursor installed successfully.\n" 2>&1 | tee -a "$MLOG"
|
||||
else
|
||||
echo -e "${ERROR} Installation failed for hyprcursor." 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 hyprcursor." 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
clear
|
||||
|
||||
|
||||
@ -3,7 +3,8 @@
|
||||
# hypidle #
|
||||
|
||||
idle=(
|
||||
libsdbus-c++-dev
|
||||
libsdbus-c++-dev
|
||||
libhyprlang-dev
|
||||
)
|
||||
|
||||
#specific branch or release
|
||||
@ -21,7 +22,7 @@ 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)_hypridle.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_hypridle.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_hypridle2.log"
|
||||
|
||||
# Installation of dependencies
|
||||
printf "\n%s - Installing hypridle dependencies.... \n" "${NOTE}"
|
||||
|
||||
@ -1,15 +1,18 @@
|
||||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Main Hyprland Package#
|
||||
# Main Hyprland Package #
|
||||
|
||||
#specific branch or release
|
||||
hyprland_tag="v0.41.2"
|
||||
|
||||
hyprland=(
|
||||
libxcb-errors-dev
|
||||
hypr=(
|
||||
libhyprutils0
|
||||
libhyprlang-dev
|
||||
hyprwayland-scanner
|
||||
hyprland-protocols
|
||||
hyprland-dev
|
||||
hyprland
|
||||
)
|
||||
|
||||
## 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,49 +20,16 @@ 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"
|
||||
|
||||
# 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}"
|
||||
source "$(dirname "$(readlink -f "$0")")/Global_functions.sh"
|
||||
|
||||
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
|
||||
# Hyprland
|
||||
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 Package installation failed, Please check the installation logs"; exit 1; }
|
||||
done
|
||||
|
||||
# Clone, build, and install Hyprland using Cmake
|
||||
printf "${NOTE} Cloning Hyprland...\n"
|
||||
|
||||
# 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
|
||||
|
||||
|
||||
@ -1,51 +0,0 @@
|
||||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# hyprlang - hyprland and xdg-desktop-portal- dependencies #
|
||||
|
||||
#specific branch or release
|
||||
lang_tag="v0.5.2"
|
||||
|
||||
## 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-Logs/install-$(date +%d-%H%M%S)_hyprlang.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_hyprlang2.log"
|
||||
|
||||
##
|
||||
printf "${NOTE} Installing hyprlang...\n"
|
||||
|
||||
# Check if hyprlang folder exists and remove it
|
||||
if [ -d "hyprlang" ]; then
|
||||
printf "${NOTE} Removing existing hyprlang folder...\n"
|
||||
rm -rf "hyprlang"
|
||||
fi
|
||||
|
||||
# Clone and build hyprlang
|
||||
printf "${NOTE} Installing hyprlang...\n"
|
||||
if git clone --recursive -b $lang_tag https://github.com/hyprwm/hyprlang.git; then
|
||||
cd hyprlang || exit 1
|
||||
cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX:PATH=/usr -S . -B ./build
|
||||
cmake --build ./build --config Release --target hyprlang -j`nproc 2>/dev/null || getconf NPROCESSORS_CONF`
|
||||
if sudo cmake --install ./build 2>&1 | tee -a "$MLOG" ; then
|
||||
printf "${OK} hyprlang installed successfully.\n" 2>&1 | tee -a "$MLOG"
|
||||
else
|
||||
echo -e "${ERROR} Installation failed for hyprlang." 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 hyprlang." 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
|
||||
clear
|
||||
|
||||
@ -3,7 +3,9 @@
|
||||
# hyprlock #
|
||||
|
||||
lock=(
|
||||
libmagic-dev
|
||||
libmagic-dev
|
||||
libhyprlang-dev
|
||||
libhyprutils-dev
|
||||
)
|
||||
|
||||
#specific branch or release
|
||||
@ -21,7 +23,7 @@ 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)_hyprlock.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_hyprlock.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_hyprlock2.log"
|
||||
|
||||
# Installation of dependencies
|
||||
printf "\n%s - Installing hyprlock dependencies.... \n" "${NOTE}"
|
||||
|
||||
@ -1,48 +0,0 @@
|
||||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# Hypr Ecosystem #
|
||||
# hyprutils #
|
||||
|
||||
#specific branch or release
|
||||
hyprutils_tag="v0.1.5"
|
||||
|
||||
## 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-Logs/install-$(date +%d-%H%M%S)_hyprutils.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_hyprutils2.log"
|
||||
|
||||
# Clone, build, and install using Cmake
|
||||
printf "${NOTE} Cloning hyprutils...\n"
|
||||
|
||||
# Check if hyprutils folder exists and remove it
|
||||
if [ -d "hyprutils" ]; then
|
||||
printf "${NOTE} Removing existing hyprutils folder...\n"
|
||||
rm -rf "hyprutils" 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
if git clone -b $hyprutils_tag "https://github.com/hyprwm/hyprutils.git"; then
|
||||
cd "hyprutils" || exit 1
|
||||
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`
|
||||
if sudo cmake --install build 2>&1 | tee -a "$MLOG"; then
|
||||
printf "${OK} hyprutils installed successfully.\n" 2>&1 | tee -a "$MLOG"
|
||||
else
|
||||
echo -e "${ERROR} Installation failed for hyprutils." 2>&1 | tee -a "$MLOG"
|
||||
fi
|
||||
mv $MLOG ../Install-Logs/ || true
|
||||
cd ..
|
||||
else
|
||||
echo -e "${ERROR} Download failed for hyprutils" 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
|
||||
|
||||
@ -1,64 +0,0 @@
|
||||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# hyprwayland-scanner - One depency from Hyprland v0.40.0#
|
||||
|
||||
scan_depend=(
|
||||
libpugixml-dev
|
||||
)
|
||||
#specific branch or release
|
||||
scan_tag="v0.4.0"
|
||||
|
||||
## 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-Logs/install-$(date +%d-%H%M%S)_hyprwayland-scanner.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_hyprwayland-scanner2.log"
|
||||
|
||||
##
|
||||
# Installation of dependencies
|
||||
printf "\n%s - Installing hyprwayland-scanner dependencies.... \n" "${NOTE}"
|
||||
|
||||
for PKG1 in "${scan_depend[@]}"; 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
|
||||
|
||||
printf "${NOTE} Installing hyprwayland-scanner...\n"
|
||||
|
||||
# Check if hyprwayland-scanner folder exists and remove it
|
||||
if [ -d "hyprwayland-scanner" ]; then
|
||||
printf "${NOTE} Removing existing hyprwayland-scanner folder...\n"
|
||||
rm -rf "hyprwayland-scanner"
|
||||
fi
|
||||
|
||||
# Clone and build hyprlang
|
||||
printf "${NOTE} Installing hyprwayland-scanner...\n"
|
||||
if git clone --recursive -b $scan_tag https://github.com/hyprwm/hyprwayland-scanner.git; then
|
||||
cd hyprwayland-scanner || exit 1
|
||||
cmake -DCMAKE_INSTALL_PREFIX=/usr -B build
|
||||
cmake --build build -j `nproc`
|
||||
if sudo cmake --install build 2>&1 | tee -a "$MLOG" ; then
|
||||
printf "${OK} hyprwayland-scanner installed successfully.\n" 2>&1 | tee -a "$MLOG"
|
||||
else
|
||||
echo -e "${ERROR} Installation failed for hyprwayland-scanner." 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 hyprwayland-scanner. Please check log." 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
clear
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
# imagemagick from source #
|
||||
|
||||
depend=(
|
||||
build-essential
|
||||
build-essential
|
||||
)
|
||||
|
||||
|
||||
@ -19,7 +19,7 @@ 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)_image.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_image.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_image2.log"
|
||||
|
||||
# Installing depencies
|
||||
for PKG1 in "${depend[@]}"; do
|
||||
|
||||
@ -11,6 +11,17 @@ rofi=(
|
||||
libmpdclient-dev
|
||||
libnl-3-dev
|
||||
libasound2-dev
|
||||
libstartup-notification0-dev
|
||||
libxcb-ewmh-dev
|
||||
libxcb-cursor-dev
|
||||
libxcb-icccm4-dev
|
||||
libxcb-randr0-dev
|
||||
libxcb-render-util0-dev
|
||||
libxcb-util-dev
|
||||
libxcb-xkb-dev
|
||||
libxcb-xinerama0-dev
|
||||
libxkbcommon-dev
|
||||
libxkbcommon-x11-dev
|
||||
)
|
||||
|
||||
|
||||
|
||||
@ -3,8 +3,8 @@
|
||||
# SWWW - Wallpaper Utility #
|
||||
|
||||
swww=(
|
||||
cargo
|
||||
liblz4-dev
|
||||
cargo
|
||||
liblz4-dev
|
||||
)
|
||||
|
||||
#specific branch or release
|
||||
@ -21,8 +21,8 @@ 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-Logs/install-$(date +%d-%H%M%S)_swww2.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_swww.log"
|
||||
LOG="Install-Logs/install-$(date +%d-%H%M%S)_swww.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_swww2.log"
|
||||
|
||||
# Installation of swww compilation needed
|
||||
printf "\n%s - Installing swww dependencies.... \n" "${NOTE}"
|
||||
|
||||
@ -3,13 +3,13 @@
|
||||
# Thunar #
|
||||
|
||||
thunar=(
|
||||
ffmpegthumbnailer
|
||||
file-roller
|
||||
thunar
|
||||
thunar-volman
|
||||
tumbler
|
||||
thunar-archive-plugin
|
||||
xarchiver
|
||||
ffmpegthumbnailer
|
||||
file-roller
|
||||
thunar
|
||||
thunar-volman
|
||||
tumbler
|
||||
thunar-archive-plugin
|
||||
xarchiver
|
||||
)
|
||||
|
||||
## WARNING: DO NOT EDIT BEYOND THIS LINE IF YOU DON'T KNOW WHAT YOU ARE DOING! ##
|
||||
|
||||
@ -3,12 +3,10 @@
|
||||
# wallust - pywal colors replacment #
|
||||
|
||||
depend=(
|
||||
librust-jpeg-decoder-dev
|
||||
rustup
|
||||
librust-jpeg-decoder-dev
|
||||
rust
|
||||
)
|
||||
|
||||
#specific branch or release
|
||||
wal_tag="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
|
||||
@ -22,7 +20,7 @@ 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)_wallust.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_wallust.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_wallust2.log"
|
||||
|
||||
# Installing depencies
|
||||
for PKG1 in "${depend[@]}"; do
|
||||
@ -44,7 +42,7 @@ fi
|
||||
|
||||
# Clone and build wallust
|
||||
printf "${NOTE} Installing wallust...\n"
|
||||
if git clone --depth 1 -b $wal_tag https://codeberg.org/explosion-mental/wallust.git; then
|
||||
if git clone --depth 1 https://codeberg.org/explosion-mental/wallust.git; then
|
||||
cd wallust || exit 1
|
||||
make
|
||||
if sudo make install 2>&1 | tee -a "$MLOG" ; then
|
||||
|
||||
@ -1,82 +0,0 @@
|
||||
#!/bin/bash
|
||||
# 💫 https://github.com/JaKooLit 💫 #
|
||||
# waybar - from source #
|
||||
|
||||
waybar=(
|
||||
cmake
|
||||
meson
|
||||
scdoc
|
||||
wayland-protocols
|
||||
clang-tidy
|
||||
gobject-introspection
|
||||
libdbusmenu-gtk3-dev
|
||||
libevdev-dev
|
||||
libfmt-dev
|
||||
libgirepository1.0-dev
|
||||
libgtk-3-dev
|
||||
libgtkmm-3.0-dev
|
||||
libinput-dev
|
||||
libjsoncpp-dev
|
||||
libmpdclient-dev
|
||||
libnl-3-dev
|
||||
libnl-genl-3-dev
|
||||
libpulse-dev
|
||||
libsigc++-2.0-dev
|
||||
libspdlog-dev
|
||||
libwayland-dev
|
||||
scdoc
|
||||
upower
|
||||
libxkbregistry-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" || 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-Logs/install-$(date +%d-%H%M%S)_waybar-gt.log"
|
||||
MLOG="install-$(date +%d-%H%M%S)_waybar-git.log"
|
||||
|
||||
# Installation of dependencies
|
||||
printf "\n%s - Installing waybar-git dependencies.... \n" "${NOTE}"
|
||||
|
||||
for PKG1 in "${waybar[@]}"; 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 waybar folder exists and remove it
|
||||
if [ -d "waybar" ]; then
|
||||
printf "${NOTE} Removing existing waybar folder...\n"
|
||||
rm -rf "waybar"
|
||||
fi
|
||||
|
||||
# Clone and build waybar from source
|
||||
printf "${NOTE} Installing waybar...\n"
|
||||
if git clone https://github.com/Alexays/Waybar; then
|
||||
cd Waybar || exit 1
|
||||
meson build
|
||||
if sudo ninja -C build install 2>&1 | tee -a "$MLOG" ; then
|
||||
printf "${OK} waybar-git installed successfully.\n" 2>&1 | tee -a "$MLOG"
|
||||
else
|
||||
echo -e "${ERROR} Installation failed for waybar-git." 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 waybar-git" 2>&1 | tee -a "$LOG"
|
||||
fi
|
||||
|
||||
clear
|
||||
|
||||
12
install.sh
12
install.sh
@ -154,6 +154,9 @@ chmod +x install-scripts/*
|
||||
|
||||
sudo apt update
|
||||
|
||||
# execute pre clean up
|
||||
execute_script "01-pre-cleanup.sh"
|
||||
|
||||
# Install hyprland packages
|
||||
execute_script "00-dependencies.sh"
|
||||
execute_script "00-hypr-pkgs.sh"
|
||||
@ -163,14 +166,9 @@ execute_script "swww.sh"
|
||||
execute_script "rofi-wayland.sh"
|
||||
execute_script "wallust.sh"
|
||||
execute_script "ags.sh"
|
||||
execute_script "hyprutils.sh"
|
||||
execute_script "hyprlang.sh"
|
||||
execute_script "hyprlock.sh"
|
||||
execute_script "hyprcursor.sh"
|
||||
execute_script "hypridle.sh"
|
||||
execute_script "hyprwayland-scanner.sh"
|
||||
execute_script "hyprland.sh"
|
||||
execute_script "hypr-eco.sh"
|
||||
execute_script "hyprlock.sh"
|
||||
execute_script "hypridle.sh"
|
||||
# execute_script "waybar-git.sh" only if waybar on repo is old
|
||||
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user