Initial commit from template
This commit is contained in:
86
.claude/skills/semgrep-security/install-semgrep.sh
Executable file
86
.claude/skills/semgrep-security/install-semgrep.sh
Executable file
@@ -0,0 +1,86 @@
|
||||
#!/bin/bash
|
||||
# Installiert Semgrep basierend auf dem Betriebssystem
|
||||
|
||||
set -e
|
||||
|
||||
echo "Pruefe Semgrep Installation..."
|
||||
|
||||
# Pruefen ob bereits installiert
|
||||
if command -v semgrep &> /dev/null; then
|
||||
echo "Semgrep ist bereits installiert: $(semgrep --version)"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "Semgrep nicht gefunden. Starte Installation..."
|
||||
|
||||
# OS erkennen
|
||||
OS_TYPE=$(uname -s)
|
||||
|
||||
case "$OS_TYPE" in
|
||||
"Darwin")
|
||||
# macOS
|
||||
echo "macOS erkannt - nutze Homebrew"
|
||||
if command -v brew &> /dev/null; then
|
||||
brew install semgrep
|
||||
else
|
||||
echo "Homebrew nicht gefunden - nutze pip3"
|
||||
pip3 install semgrep
|
||||
fi
|
||||
;;
|
||||
|
||||
"Linux")
|
||||
echo "Linux erkannt"
|
||||
|
||||
# Versuche verschiedene Paketmanager
|
||||
if command -v apt-get &> /dev/null; then
|
||||
echo "Nutze apt-get..."
|
||||
# Semgrep via Python da apt Version oft veraltet
|
||||
pip3 install semgrep
|
||||
|
||||
elif command -v apk &> /dev/null; then
|
||||
echo "Alpine erkannt - nutze pip3"
|
||||
apk add --no-cache python3 py3-pip
|
||||
pip3 install semgrep
|
||||
|
||||
elif command -v yum &> /dev/null; then
|
||||
echo "RHEL/CentOS erkannt - nutze pip3"
|
||||
pip3 install semgrep
|
||||
|
||||
else
|
||||
echo "Nutze pip3 als Fallback"
|
||||
pip3 install semgrep
|
||||
fi
|
||||
;;
|
||||
|
||||
"MINGW"*|"MSYS"*|"CYGWIN"*)
|
||||
# Windows
|
||||
echo "Windows erkannt"
|
||||
if command -v choco &> /dev/null; then
|
||||
choco install semgrep -y
|
||||
elif command -v pip3 &> /dev/null; then
|
||||
pip3 install semgrep
|
||||
elif command -v pip &> /dev/null; then
|
||||
pip install semgrep
|
||||
else
|
||||
echo "Bitte installiere Python und pip: https://www.python.org/downloads/"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Unbekanntes OS: $OS_TYPE - nutze pip3"
|
||||
pip3 install semgrep
|
||||
;;
|
||||
esac
|
||||
|
||||
# Verifizieren
|
||||
if command -v semgrep &> /dev/null; then
|
||||
echo ""
|
||||
echo "Installation erfolgreich!"
|
||||
semgrep --version
|
||||
else
|
||||
echo ""
|
||||
echo "Installation fehlgeschlagen."
|
||||
echo "Bitte manuell installieren: https://semgrep.dev/docs/getting-started/"
|
||||
exit 1
|
||||
fi
|
||||
Reference in New Issue
Block a user