aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJa.KooLit <85185940+JaKooLit@users.noreply.github.com>2025-03-10 00:45:21 +0900
committerGitHub <noreply@github.com>2025-03-10 00:45:21 +0900
commitfc0f7d79b15bf8fa8a5e49129b15c693dfe5b944 (patch)
tree51e5ec617f16761abc4e93cb2bf8610bf00b859b
parentd7194d37ad76ac3a1b67aa464d3689ec2d0fe20a (diff)
parent05fa6105e16076ea9b0ec21ef7a925177fd3b706 (diff)
Merge pull request #612 from JaKooLit/development
Development to main
-rwxr-xr-xDistro-Hyprland.sh137
-rw-r--r--README.md7
-rwxr-xr-xconfig/hypr/scripts/RofiSearch.sh2
3 files changed, 145 insertions, 1 deletions
diff --git a/Distro-Hyprland.sh b/Distro-Hyprland.sh
new file mode 100755
index 00000000..ff0bae03
--- /dev/null
+++ b/Distro-Hyprland.sh
@@ -0,0 +1,137 @@
+#!/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" = "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"
+ 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
+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
diff --git a/README.md b/README.md
index 193ee3e6..8c0ae111 100644
--- a/README.md
+++ b/README.md
@@ -44,6 +44,13 @@ https://github.com/user-attachments/assets/49bc12b2-abaf-45de-a21c-67aacd9bb872
</details>
+## Auto Distro-Hyprland install scripts cloning
+- NOTE: you need package `curl` for this to work
+
+```bash
+sh <(curl -L https://raw.githubusercontent.com/JaKooLit/Hyprland-Dots/main/Distro-Hyprland.sh)
+```
+
## Installation
### 👁️‍🗨️ My Hyprland install Scripts 👁️‍🗨️
- Automated Hyprland Scripts for Distro of choice which will pull this dotfiles if opted to install these configurations
diff --git a/config/hypr/scripts/RofiSearch.sh b/config/hypr/scripts/RofiSearch.sh
index d0383976..aa20546d 100755
--- a/config/hypr/scripts/RofiSearch.sh
+++ b/config/hypr/scripts/RofiSearch.sh
@@ -1,5 +1,5 @@
#!/bin/bash
-# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##v
+# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ ##
# For Searching via web browsers
# Modify this config file for default search engine
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage