67 lines
2.0 KiB
Markdown
67 lines
2.0 KiB
Markdown
# yay Cache reparieren – AUR-Update schlägt fehl mit „Kein Git-Repository"
|
||
|
||
## Problem
|
||
|
||
Ein AUR-Paket lässt sich mit `yay` nicht aktualisieren, obwohl es im AUR existiert und eine neue Version gemeldet wird:
|
||
|
||
```bash
|
||
yay -Syu <paket>
|
||
```
|
||
|
||
Fehlermeldung (Beispiel `supersonic-desktop`, August 2026):
|
||
|
||
```
|
||
:: (0/1) Es wurde nicht geschafft PKGBUILD zu aktualisieren: supersonic-desktop
|
||
-> Fehler beim Abrufen von supersonic-desktop: Schwerwiegend: Kein Git-Repository
|
||
(oder irgendeines der Elternverzeichnisse): .git
|
||
context: exit status 128
|
||
```
|
||
|
||
---
|
||
|
||
## Ursache
|
||
|
||
Der lokale Klon des AUR-Repos in yays Cache (`~/.cache/yay/<paket>`) ist **korrupt**.
|
||
Typisch: der `.git`-Ordner ist unvollständig (z. B. fehlen `HEAD` oder `config`),
|
||
meist nach einem abgebrochenen Clone/Pull oder einer gestörten Synchronisation.
|
||
|
||
Das AUR-Paket selbst ist in Ordnung – nur die lokale Kopie ist kaputt.
|
||
|
||
---
|
||
|
||
## Diagnose
|
||
|
||
Prüfen, ob der Klon wirklich korrupt ist:
|
||
|
||
```bash
|
||
git -C ~/.cache/yay/<paket> status
|
||
```
|
||
|
||
Kommt dieselbe Meldung („Kein Git-Repository"), obwohl der Ordner existiert → Cache-Klon löschen.
|
||
|
||
---
|
||
|
||
## Lösung
|
||
|
||
Nur den betroffenen Paketordner entfernen und Update erneut ausführen:
|
||
|
||
```bash
|
||
rm -rf ~/.cache/yay/<paket>
|
||
yay -Syu
|
||
```
|
||
|
||
yay klont das PKGBUILD-Repo beim nächsten Lauf frisch – danach funktioniert das Update wieder.
|
||
|
||
---
|
||
|
||
## Allgemein: yay-Cache aufräumen
|
||
|
||
| Vorgehen | Befehl | Folge |
|
||
| --- | --- | --- |
|
||
| Gezielt ein Paket (bevorzugt) | `rm -rf ~/.cache/yay/<paket>` | Nur dieses Paket wird neu geklont |
|
||
| Gesamten Cache löschen | `rm -rf ~/.cache/yay` | Sicher, aber alle AUR-Pakete werden beim nächsten `-Syu` neu geklont **und neu kompiliert** (bei großen Builds langsam) |
|
||
| Alte/unbenutzte Pakete aufräumen | `yay -Sc` | Entfernt alte Caches, aktuelle bleiben erhalten |
|
||
|
||
**Faustregel:** Immer erst den einzelnen Paketordner löschen. Den kompletten Cache nur leeren,
|
||
wenn mehrere Pakete betroffen sind – er enthält nichts Kritisches, kostet aber Rebuild-Zeit.
|