-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathsetup.sh
More file actions
87 lines (79 loc) · 3.28 KB
/
Copy pathsetup.sh
File metadata and controls
87 lines (79 loc) · 3.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#!/usr/bin/env bash
# AtDork Setup Script
# Installs Python if missing, builds from pyproject.toml, or falls back to requirements.txt
set -e
echo "========================================="
echo " AtDork v1.3.2 - Setup"
echo "========================================="
echo ""
# ── Check Python ──────────────────────────────────────────────────────
if command -v python3 &>/dev/null; then
PYTHON=python3
elif command -v python &>/dev/null; then
PYTHON=python
else
echo "[!] Python not found. Installing Python..."
# Detect OS
if [[ "$OSTYPE" == "linux-gnu"* ]]; then
if command -v apt &>/dev/null; then
sudo apt update && sudo apt install -y python3 python3-pip
elif command -v yum &>/dev/null; then
sudo yum install -y python3 python3-pip
elif command -v dnf &>/dev/null; then
sudo dnf install -y python3 python3-pip
else
echo "[✗] Unsupported Linux distribution. Please install Python manually."
exit 1
fi
elif [[ "$OSTYPE" == "darwin"* ]]; then
if command -v brew &>/dev/null; then
brew install python3
else
echo "[✗] Homebrew not found. Please install Python manually from https://www.python.org/downloads/"
exit 1
fi
elif [[ "$OSTYPE" == "msys" ]] || [[ "$OSTYPE" == "cygwin" ]]; then
echo "[✗] Windows detected. Please install Python manually from https://www.python.org/downloads/"
exit 1
else
echo "[✗] Unknown OS. Please install Python manually."
exit 1
fi
PYTHON=python3
fi
echo "[✓] Python found: $($PYTHON --version)"
echo ""
# ── Check pip ─────────────────────────────────────────────────────────
if ! $PYTHON -m pip --version &>/dev/null; then
echo "[!] pip not found. Installing pip..."
$PYTHON -m ensurepip --upgrade
fi
echo "[✓] pip found: $($PYTHON -m pip --version | head -1)"
echo ""
# ── Install from pyproject.toml ───────────────────────────────────────
echo "[*] Attempting to install AtDork from pyproject.toml..."
if $PYTHON -m pip install . --quiet 2>/dev/null; then
echo "[✓] AtDork installed successfully from pyproject.toml!"
echo ""
echo " You can now run: atdork --version"
echo ""
else
echo "[!] Could not install from pyproject.toml."
echo "[*] Falling back to requirements.txt..."
echo ""
# ── Fallback: install dependencies only ────────────────────────────
if [ -f "requirements.txt" ]; then
$PYTHON -m pip install -r requirements.txt
echo ""
echo "[✓] Dependencies installed from requirements.txt."
echo ""
echo " You can run: $PYTHON atdork.py --version"
else
echo "[✗] requirements.txt not found. Please check your installation."
exit 1
fi
fi
echo ""
echo "========================================="
echo " Setup Complete!"
echo "========================================="