update 6.18.7
This commit is contained in:
67
update
Executable file
67
update
Executable file
@@ -0,0 +1,67 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Abbrechen bei Fehlern
|
||||
set -e
|
||||
|
||||
# --- KONFIGURATION ---
|
||||
GIT_REPO_PATH="./git-repo"
|
||||
TARGETS=("linux-tom" "linux-tom-headers" "linux-tom-docs")
|
||||
|
||||
# 1. Pakete bauen
|
||||
# -s: Abhängigkeiten, -f: Überschreiben, -c: Aufräumen
|
||||
echo "Starte Build-Prozess..."
|
||||
makepkg -sfc --noconfirm
|
||||
|
||||
# 2. Version extrahieren
|
||||
VERSION=$(grep '^pkgver=' PKGBUILD | cut -d= -f2)
|
||||
REL=$(grep '^pkgrel=' PKGBUILD | cut -d= -f2)
|
||||
FULL_VER_PATTERN="${VERSION}-${REL}"
|
||||
|
||||
# 3. Git-Verzeichnis vorbereiten
|
||||
mkdir -p "$GIT_REPO_PATH"
|
||||
|
||||
echo "Aktualisiere Dateien in $GIT_REPO_PATH..."
|
||||
FILES_TO_INSTALL=()
|
||||
|
||||
for name in "${TARGETS[@]}"; do
|
||||
found_file=$(ls ${name}-${FULL_VER_PATTERN}-*.pkg.tar.zst 2>/dev/null | head -n 1)
|
||||
|
||||
if [ -f "$found_file" ]; then
|
||||
DEST_FILE="$GIT_REPO_PATH/${name}.pkg.tar.zst"
|
||||
cp "$found_file" "$DEST_FILE"
|
||||
echo "${VERSION}-${REL}" > "$GIT_REPO_PATH/${name}.version"
|
||||
FILES_TO_INSTALL+=("$DEST_FILE")
|
||||
fi
|
||||
done
|
||||
|
||||
# 4. Installation der neuen Pakete
|
||||
if [ ${#FILES_TO_INSTALL[@]} -gt 0 ]; then
|
||||
echo "Installiere Pakete lokal..."
|
||||
sudo pacman -U --noconfirm "${FILES_TO_INSTALL[@]}"
|
||||
else
|
||||
echo "Fehler: Keine Pakete zum Installieren gefunden!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 5. Git-Upload (Commit & Push)
|
||||
cd "$GIT_REPO_PATH"
|
||||
if [ -d ".git" ]; then
|
||||
# Vor dem Push die neuesten Änderungen vom Server holen
|
||||
git pull --rebase
|
||||
|
||||
git add *.pkg.tar.zst *.version
|
||||
|
||||
# Prüfen, ob es Änderungen zum Committen gibt
|
||||
if ! git diff-index --quiet HEAD; then
|
||||
echo "Commit und Push der neuen Version $VERSION-$REL..."
|
||||
git commit -m "Kernel Update: $VERSION-$REL"
|
||||
git push
|
||||
echo "Erfolgreich auf den Server hochgeladen."
|
||||
else
|
||||
echo "Keine Änderungen vorhanden, Push nicht notwendig."
|
||||
fi
|
||||
else
|
||||
echo "Warnung: Kein Git-Repository in $GIT_REPO_PATH gefunden."
|
||||
fi
|
||||
|
||||
echo "Vorgang abgeschlossen."
|
||||
Reference in New Issue
Block a user