aboutsummaryrefslogtreecommitdiffstats
path: root/Distro-Hyprland.sh
diff options
context:
space:
mode:
authorJaKooLit <ejhay.games@gmail.com>2025-03-09 23:37:03 +0900
committerJaKooLit <ejhay.games@gmail.com>2025-03-09 23:37:03 +0900
commit9d7c47195acead56a7836be85b86ea5fd1a02165 (patch)
treeafc6a5812013ce7858e37e8602f2a751535c82c5 /Distro-Hyprland.sh
parent6fffb117dd4b241a1b6dad1677cdb9f308de0b06 (diff)
Added Distro-Hyprland.sh
Diffstat (limited to 'Distro-Hyprland.sh')
-rwxr-xr-xDistro-Hyprland.sh141
1 files changed, 141 insertions, 0 deletions
diff --git a/Distro-Hyprland.sh b/Distro-Hyprland.sh
new file mode 100755
index 00000000..b367b013
--- /dev/null
+++ b/Distro-Hyprland.sh
@@ -0,0 +1,141 @@
+#!/bin/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" == "Arch Linux" ]; 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 [ "$distro_name" == "Fedora" ]; 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 [ "$distro_name" == "openSUSE" ]; 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"
+elif [ "$distro_name" == "Debian" ]; 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"
+ 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"
+ 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"
+ echo "${INFO} Ubuntu 25.04 detected. Customizing setup for Ubuntu 25.04."
+ ;;
+ *)
+ Distro="Ubuntu-Hyprland"
+ Github_URL="https://github.com/JaKooLit/$Distro.git"
+ Distro_DIR="$HOME/$Distro"
+ echo "${INFO} Ubuntu version $distro_version detected. Using default Ubuntu setup."
+ ;;
+ esac
+else
+ echo "${ERROR} Unsupported distribution: $distro_name. Exiting."
+ exit 1
+fi
+
+# Check for Git and install if not found
+printf "\n%.0s" {1..1}
+
+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
+printf "\n%.0s" {1..1}
+
+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
+ 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
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage