Files
Hyprland-Dots/Distro-Hyprland.sh
Don Williams 758b466c5f Changed /usr/bin/bash to /usr/bin/env bash
On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   Distro-Hyprland.sh
	modified:   config/hypr/UserScripts/RainbowBorders.sh
	modified:   config/hypr/UserScripts/RofiBeats.sh
	modified:   config/hypr/UserScripts/RofiCalc.sh
	modified:   config/hypr/UserScripts/Tak0-Autodispatch.sh
	modified:   config/hypr/UserScripts/WallpaperAutoChange.sh
	modified:   config/hypr/UserScripts/WallpaperEffects.sh
	modified:   config/hypr/UserScripts/WallpaperRandom.sh
	modified:   config/hypr/UserScripts/WallpaperSelect.sh
	modified:   config/hypr/UserScripts/Weather.sh
	modified:   config/hypr/UserScripts/WeatherWrap.sh
	modified:   config/hypr/UserScripts/ZshChangeTheme.sh
	new file:   config/hypr/configs/Startup_Apps.conf
	new file:   config/hypr/configs/WindowRules.conf
	modified:   config/hypr/hyprland.conf
	modified:   config/hypr/initial-boot.sh
	modified:   config/hypr/scripts/AirplaneMode.sh
	modified:   config/hypr/scripts/Animations.sh
	modified:   config/hypr/scripts/Battery.sh
	modified:   config/hypr/scripts/Brightness.sh
	modified:   config/hypr/scripts/BrightnessKbd.sh
	modified:   config/hypr/scripts/ChangeBlur.sh
	modified:   config/hypr/scripts/ChangeLayout.sh
	modified:   config/hypr/scripts/ClipManager.sh
	new file:   config/hypr/scripts/ComposeHyprConfigs.sh
	modified:   config/hypr/scripts/DarkLight.sh
	modified:   config/hypr/scripts/Distro_update.sh
	modified:   config/hypr/scripts/Dropterminal.sh
	modified:   config/hypr/scripts/GameMode.sh
	modified:   config/hypr/scripts/Hypridle.sh
	modified:   config/hypr/scripts/KeyBinds.sh
	modified:   config/hypr/scripts/KeyHints.sh
	modified:   config/hypr/scripts/KillActiveProcess.sh
	modified:   config/hypr/scripts/Kitty_themes.sh
	modified:   config/hypr/scripts/KooLsDotsUpdate.sh
	modified:   config/hypr/scripts/Kool_Quick_Settings.sh
	modified:   config/hypr/scripts/LockScreen.sh
	modified:   config/hypr/scripts/MediaCtrl.sh
	modified:   config/hypr/scripts/MonitorProfiles.sh
	modified:   config/hypr/scripts/Polkit-NixOS.sh
	modified:   config/hypr/scripts/Polkit.sh
	modified:   config/hypr/scripts/PortalHyprland.sh
	modified:   config/hypr/scripts/Refresh.sh
	modified:   config/hypr/scripts/RefreshNoWaybar.sh
	modified:   config/hypr/scripts/RofiEmoji.sh
	modified:   config/hypr/scripts/RofiSearch.sh
	modified:   config/hypr/scripts/RofiThemeSelector-modified.sh
	modified:   config/hypr/scripts/RofiThemeSelector.sh
	modified:   config/hypr/scripts/ScreenShot.sh
	modified:   config/hypr/scripts/Sounds.sh
	modified:   config/hypr/scripts/SwitchKeyboardLayout.sh
	modified:   config/hypr/scripts/Tak0-Autodispatch.sh
	modified:   config/hypr/scripts/TouchPad.sh
	modified:   config/hypr/scripts/Volume.sh
	modified:   config/hypr/scripts/WallustSwww.sh
	modified:   config/hypr/scripts/WaybarLayout.sh
	modified:   config/hypr/scripts/WaybarScripts.sh
	modified:   config/hypr/scripts/WaybarStyles.sh
	modified:   config/hypr/scripts/Wlogout.sh
	modified:   config/hypr/scripts/sddm_wallpaper.sh
	modified:   copy.sh
	modified:   release.sh
	modified:   upgrade.sh
2025-10-28 17:30:59 -04:00

138 lines
4.6 KiB
Bash
Executable File

#!/usr/bin/env bash
# https://github.com/JaKooLit
# Script design to clone the Distro-Hyprland install scripts
# Set some colors for output messages
OK="$(tput setaf 2)[OK]$(tput sgr0)"
ERROR="$(tput setaf 1)[ERROR]$(tput sgr0)"
NOTE="$(tput setaf 3)[NOTE]$(tput sgr0)"
INFO="$(tput setaf 4)[INFO]$(tput sgr0)"
WARN="$(tput setaf 1)[WARN]$(tput sgr0)"
CAT="$(tput setaf 6)[ACTION]$(tput sgr0)"
MAGENTA="$(tput setaf 5)"
ORANGE="$(tput setaf 214)"
WARNING="$(tput setaf 1)"
YELLOW="$(tput setaf 3)"
GREEN="$(tput setaf 2)"
BLUE="$(tput setaf 4)"
SKY_BLUE="$(tput setaf 6)"
RESET="$(tput sgr0)"
# Detect the current distribution using /etc/os-release
if [ -f /etc/os-release ]; then
. /etc/os-release
distro_name=$NAME
distro_version=$VERSION_ID
else
echo "${ERROR} Unable to detect the distribution. Exiting."
exit 1
fi
# Define package managers, Git install commands, and dynamic variables for each distro
if [ "$distro_name" = "Debian GNU/Linux" ]; then
PACKAGE_MANAGER="apt"
INSTALL_CMD="sudo apt install -y"
GIT_INSTALL_CMD="sudo apt install -y git"
Distro="Debian-Hyprland"
Github_URL="https://github.com/JaKooLit/$Distro.git"
Distro_DIR="$HOME/$Distro"
elif [ "$distro_name" = "Ubuntu" ]; then
PACKAGE_MANAGER="apt"
INSTALL_CMD="sudo apt install -y"
GIT_INSTALL_CMD="sudo apt install -y git"
case "$distro_version" in
"24.04")
Distro="Ubuntu-Hyprland"
Github_URL="https://github.com/JaKooLit/$Distro.git"
Github_URL_branch="24.04"
Distro_DIR="$HOME/$Distro-$Github_URL_branch"
echo "${INFO} Ubuntu 24.04 detected. Customizing setup for Ubuntu 24.04."
;;
"24.10")
Distro="Ubuntu-Hyprland"
Github_URL="https://github.com/JaKooLit/$Distro.git"
Github_URL_branch="24.10"
Distro_DIR="$HOME/$Distro-$Github_URL_branch"
echo "${INFO} Ubuntu 24.10 detected. Customizing setup for Ubuntu 24.10."
;;
"25.04")
Distro="Ubuntu-Hyprland"
Github_URL="https://github.com/JaKooLit/$Distro.git"
Github_URL_branch="25.04"
Distro_DIR="$HOME/$Distro-$Github_URL_branch"
echo "${INFO} Ubuntu 25.04 detected. Customizing setup for Ubuntu 25.04."
;;
*)
Distro="Ubuntu-Hyprland"
echo "${ERROR} Unsupported distribution: $distro_version. Exiting."
exit 1
;;
esac
elif command -v pacman &> /dev/null; then
PACKAGE_MANAGER="pacman"
INSTALL_CMD="sudo pacman -S --noconfirm"
GIT_INSTALL_CMD="sudo pacman -S git --noconfirm"
Distro="Arch-Hyprland"
Github_URL="https://github.com/JaKooLit/$Distro.git"
Distro_DIR="$HOME/$Distro"
elif command -v dnf &> /dev/null; then
PACKAGE_MANAGER="dnf"
INSTALL_CMD="sudo dnf install -y"
GIT_INSTALL_CMD="sudo dnf install -y git"
Distro="Fedora-Hyprland"
Github_URL="https://github.com/JaKooLit/$Distro.git"
Distro_DIR="$HOME/$Distro"
elif command -v zypper &> /dev/null; then
PACKAGE_MANAGER="zypper"
INSTALL_CMD="sudo zypper install -y"
GIT_INSTALL_CMD="sudo zypper install -y git"
Distro="OpenSUSE-Hyprland"
Github_URL="https://github.com/JaKooLit/$Distro.git"
Distro_DIR="$HOME/$Distro"
elif [ "$distro_name" = "NixOS" ]; then
PACKAGE_MANAGER="nix"
INSTALL_CMD="nix-shell"
GIT_INSTALL_CMD="nix-shell -p git curl pciutils"
Distro="NixOS-Hyprland"
Github_URL="https://github.com/JaKooLit/$Distro.git"
Distro_DIR="$HOME/$Distro"
else
echo "${ERROR} Unsupported distribution: $distro_name. Exiting."
exit 1
fi
# Check for Git and install if not found
if ! command -v git &> /dev/null; then
echo "${INFO} Git not found! ${SKY_BLUE}Installing Git...${RESET}"
if ! $GIT_INSTALL_CMD; then
echo "${ERROR} Failed to install Git. Exiting."
exit 1
fi
fi
# Check if the directory already exists and perform clone or update
if [ -d "$Distro_DIR" ]; then
echo "${YELLOW}$Distro_DIR exists. Updating the repository... ${RESET}"
cd "$Distro_DIR"
git stash && git pull
chmod +x install.sh
./install.sh
else
echo "${MAGENTA}$Distro_DIR does not exist. Cloning the repository...${RESET}"
# Clone the specific branch for Ubuntu versions only
if [ "$distro_name" = "Ubuntu" ]; then
echo "${INFO} Cloning from branch ${Github_URL_branch} for Ubuntu $distro_version."
git clone --depth=1 -b "$Github_URL_branch" "$Github_URL" "$Distro_DIR"
else
git clone --depth=1 "$Github_URL" "$Distro_DIR"
fi
cd "$Distro_DIR"
chmod +x install.sh
./install.sh
fi