mirror of
https://github.com/acedanger/shell.git
synced 2026-03-24 23:41:50 -07:00
Enhance setup scripts to detect OS and determine package manager
- Improved OS detection in bootstrap.sh and setup.sh to handle unsupported OS cases. - Added a function to determine the package manager (nala, dnf, apt) based on the detected OS. - Updated package installation commands to use the appropriate package manager. - Enhanced user feedback with colored output for better visibility during setup and updates.
This commit is contained in:
@@ -11,10 +11,48 @@ NC='\033[0m' # No Color
|
||||
|
||||
echo -e "${GREEN}Setting up your system...${NC}"
|
||||
|
||||
# Detect OS
|
||||
if [ -f /etc/os-release ]; then
|
||||
. /etc/os-release
|
||||
OS_NAME=$ID
|
||||
OS_VERSION=$VERSION_ID
|
||||
else
|
||||
echo -e "${YELLOW}Unable to detect OS, assuming Debian/Ubuntu...${NC}"
|
||||
OS_NAME="ubuntu"
|
||||
OS_VERSION="22.04"
|
||||
fi
|
||||
|
||||
echo -e "${GREEN}Detected OS: ${OS_NAME} ${OS_VERSION}${NC}"
|
||||
|
||||
# Function to determine the package manager to use
|
||||
determine_pkg_manager() {
|
||||
if command -v nala &> /dev/null; then
|
||||
echo "nala"
|
||||
elif [ "$OS_NAME" = "fedora" ]; then
|
||||
echo "dnf"
|
||||
else
|
||||
echo "apt"
|
||||
fi
|
||||
}
|
||||
|
||||
# Determine which package manager to use
|
||||
PKG_MANAGER=$(determine_pkg_manager)
|
||||
echo -e "${GREEN}Using package manager: $PKG_MANAGER${NC}"
|
||||
|
||||
# Install git if not present
|
||||
if ! command -v git &>/dev/null; then
|
||||
echo -e "${YELLOW}Installing git...${NC}"
|
||||
sudo apt update && sudo apt install -y git
|
||||
case $PKG_MANAGER in
|
||||
nala)
|
||||
sudo nala install -y git
|
||||
;;
|
||||
dnf)
|
||||
sudo dnf install -y git
|
||||
;;
|
||||
apt)
|
||||
sudo apt update && sudo apt install -y git
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# Create shell directory if it doesn't exist
|
||||
|
||||
Reference in New Issue
Block a user