Um sicherzustellen, dass auch Entwicklungspakete (*-git
) bei regelmässigen Updates mit YAY auf dem neuesten Stand bleiben, sind mehrere Schritte erforderlich. Diese Schritte sorgen dafür, dass YAY die installierten Entwicklungspakete erkennt und bei jedem Update automatisch auf neue Versionen prüft.
Falls du bereits Entwicklungspakete (zum Beispiel *-git
Pakete) installiert hast, die jedoch nicht über YAY, sondern anderweitig installiert wurden, kann YAY diese möglicherweise nicht automatisch erkennen. Um dies zu beheben, generierst du eine Entwicklungspaket-Datenbank. Dies machst du mit folgendem Befehl:
yay -Y –gendb
Dieser Befehl erstellt eine lokale Datenbank mit allen Entwicklungspaketen, die auf deinem System installiert sind, und stellt sicher, dass YAY sie beim nächsten Update berücksichtigt.
Wichtig: Diesen Befehl brauchst du nur einmal auszuführen, um die Datenbank zu generieren.
Nachdem die Entwicklungspaket-Datenbank erstellt wurde, kannst du alle Pakete (einschliesslich der Entwicklungspakete) mit dem folgenden Befehl aktualisieren:
yay -Syu –devel
Dieser Befehl führt eine vollständige Aktualisierung deines Systems durch und schliesst dabei automatisch die Entwicklungspakete ein, indem es deren Quellcode überprüft und bei Änderungen aktualisiert. Die Option --devel
sorgt dafür, dass YAY alle installierten *-git
Pakete einbezieht.
Um sicherzustellen, dass YAY bei jedem Update-Vorgang automatisch nach neuen Versionen für Entwicklungspakete sucht, kannst du die Konfiguration so anpassen, dass --devel
immer standardmässig aktiviert ist. Das erreichst du mit folgendem Befehl:
yay -Y –devel –save
Dieser Befehl speichert die --devel
Option dauerhaft in der YAY-Konfiguration. Dadurch wird bei jedem zukünftigen Aufruf von
yay
-Syu
automatisch auch nach neuen Versionen der Entwicklungspakete gesucht.
Zusammenfassung:
Erster Schritt: yay
erstellen der Entwicklungspaket-Datenbank (nur einmal notwendig).
-Y --gendb
Zweiter Schritt: yay
aktualisiert das System und schließt Entwicklungspakete ein.
-Syu --devel
Dritter Schritt: yay
speichert die
-Y --devel --save--devel
Option dauerhaft, sodass YAY bei jedem Update automatisch die Entwicklungspakete einbezieht.
Mit dieser Konfiguration brauchst du dich zukünftig nicht mehr um separate Befehle für Entwicklungspakete zu kümmern. Wer Git Pakete benutzt, hat einige Vorteile mit dem Update von Entwicklungspaketen.
Git-Pakete sind spezielle Softwarepakete, die ihren Quellcode direkt aus einem Git-Repository beziehen. Diese Pakete werden nicht als stabile, vorgefertigte Versionen bereitgestellt, sondern sind stets mit der aktuellsten Version des Codes aus dem Git-Repository verknüpft. Das bedeutet, dass Git-Pakete dynamisch immer den neuesten Entwicklungsstand eines Projekts verwenden, anstatt eine fest veröffentlichte Version.
Direkter Zugriff auf den Entwicklungszweig: Git-Pakete wie *-git
Pakete laden den Code aus dem Entwicklungszweig (häufig master
oder main
) des Git-Repositories. Dadurch enthalten sie alle neuesten Änderungen, die möglicherweise noch nicht vollständig getestet sind.
Aktuellste Funktionen und Bugfixes: Da die Git-Versionen den aktuellen Stand des Codes reflektieren, können sie Funktionen enthalten, die in stabilen Releases fehlen, sowie Fixes für bekannte Fehler, die gerade behoben wurden.
Namenskonvention: Git-Pakete werden in Arch Linux und Arch-basierten Systemen oft mit dem Suffix -git
gekennzeichnet, z. B. neovim-git
oder vlc-git
. Das Suffix zeigt an, dass dieses Paket immer die neueste Entwicklerversion verwendet, im Gegensatz zur stabilen, getesteten Version.
Nehmen wir zum Beispiel das Paket neovim
. Es gibt zwei mögliche Installationsoptionen:
neovim: Dies ist das stabile Paket, das eine fest definierte Version enthält. Es wird in regelmässigen Abständen vom Entwicklerteam veröffentlicht und gilt als getestet und stabil.
neovim-git: Dieses Paket enthält den aktuellsten Code direkt aus dem Git-Repository von Neovim. Jede Änderung, die von den Entwicklern gemacht wird, ist sofort in diesem Paket enthalten.
Vorteile:
Frühe Nutzung neuer Features: Man kann neue Funktionen nutzen, noch bevor sie in einer stabilen Version veröffentlicht werden.
Zeitnahe Bugfixes: Fehlerbehebungen, die im Entwicklungszweig implementiert wurden, stehen direkt zur Verfügung.
Risiken:
Instabilität: Da es sich um den „rohen“ Entwicklungsstand handelt, kann es zu Fehlern oder Abstürzen kommen.
Inkompatibilitäten: Git-Pakete können temporär inkompatibel mit anderen Paketen sein, da Abhängigkeiten noch nicht abgestimmt sind.
Git-Pakete sind besonders nützlich für Entwickler, Tester oder für Nutzer, die an neuen Funktionen und Fehlerbehebungen interessiert sind und bereit sind, mögliche Instabilitäten in Kauf zu nehmen. Wer ein stabiles System bevorzugt, sollte eher auf die regulären, stabilen Versionen der Pakete setzen.
Ich empfehle ein Git Paket nur dann einzusetzen wenn es kein Stabiles Paket gibt oder wenn man die neuen Funktionen der Git Version unbedingt benötigt. Je weniger Git Pakete desto besser für die Stabilität des Systems.
Wieso Entwicklungspakete aktualisieren?
Entwicklungspakete wie *-git
, *-svn
, oder *-hg
Pakete beziehen ihre Inhalte direkt aus Quellcode-Repositories, die oft aktiv weiterentwickelt werden. Das bedeutet, dass sie sich dynamisch mit dem neuesten Stand des Codes synchronisieren, anstatt wie normale Pakete eine festgelegte, getestete Version zu installieren. Hier sind die Hauptgründe, warum es sinnvoll sein kann, Entwicklungspakete regelmässig zu aktualisieren:
Entwicklungspakete bieten häufig die neueste Version des Codes, einschliesslich neuer Funktionen, die noch nicht in den stabilen Versionen enthalten sind. Entwickler und Tester nutzen diese Pakete, um frühzeitig neue Features auszuprobieren und so einen Einfluss auf die zukünftige Entwicklung zu nehmen.
Da Entwicklungspakete auf dem neuesten Quellcode basieren, beinhalten sie oft auch die neuesten Bugfixes und Sicherheitsupdates. Entwickler beheben Probleme oft direkt im Hauptzweig, und die Aktualisierung eines Entwicklungspakets kann solche Fixes sofort verfügbar machen, ohne auf die nächste offizielle Version warten zu müssen.
Bei Anwendungen, die in ständiger Weiterentwicklung sind, können sich Abhängigkeiten häufig ändern. Ein regelmässiges Update der Entwicklungspakete stellt sicher, dass sie mit den neuesten Versionen von Bibliotheken und anderen Abhängigkeiten kompatibel bleiben und das System somit stabil und funktional bleibt.
Wenn du als Nutzer eines Entwicklungspakets regelmässig aktualisierst, hilfst du, mögliche Probleme in neuem Code frühzeitig zu erkennen und zu melden. Dieses Feedback ist für Entwickler wichtig, da es die Software im Hinblick auf Stabilität und Nutzerfreundlichkeit verbessert.
Wer an der Entwicklung oder dem Testen von Software beteiligt ist, benötigt oft die allerneueste Version, um sicherzustellen, dass der aktuelle Stand des Codes fehlerfrei und vollständig ist. Die kontinuierliche Aktualisierung von Entwicklungspaketen ist daher gerade in Entwicklungsumgebungen unverzichtbar.
Es ist wichtig zu wissen, dass Entwicklungspakete instabil sein können und möglicherweise neue Fehler oder Inkompatibilitäten einführen. Wer ein stabiles System bevorzugt und nicht ständig die neuesten Änderungen benötigt, sollte daher eher auf die stabilen, getesteten Pakete zurückgreifen und Entwicklungspakete nur gezielt einsetzen.
Mehr Videos findet man auf meinem Youtube Kanal linuxcoach:
https://www.youtube.com/@linuxcoach
Ein weiterer Interessanter Artikel zu diesem Thema:
https://computer-experte.ch/g4music/