Die Paket-Gruppe base-devel wurde durch ein Meta-Paket mit selben Namen ersetzt. Falls die Gruppe vor dieser Änderung installiert wurde, so kann das neue Paket base-devel expliziet installiert werden:
pacman -Syu --needed base-devel

Hallo Pierre
Was heißt das konkret?
Auf den meisten Installationen dürfte base-devel schon lange installiert sein.
Gibt es hier einen Handlungsbedarf bei Alt- Installationen?

  • Martin-MS hat auf diesen Beitrag geantwortet.

    Korrekt. Durch das --needed kann der Befehl ohne Nebenwirkungen auch dann ausgeführt werden, falls dies nicht nötig sein sollte.

    Natürlich ist base-devel weiterhin optional und benötigt man nur, wenn man z.B. selbst Dinge kompilieren oder Pakete bauen möchte.

    HansHiasl Auf den meisten Installationen dürfte base-devel schon lange installiert sein.

    Eher nicht. Die Ankündigung auf der Mailingliste ist diesbezüglich etwas ausführlicher:

    People that had the "base-devel" package group installed (meaning people that installed "base-devel" before February 2nd) have to explicitly re-install it to get the new base-devel" package installed on their system

    Das Paket base-devel gibt es auch erst seit dem 16.01.23 und dürfte folglich kaum jemand haben

    HansHiasl Gibt es hier einen Handlungsbedarf bei Alt- Installationen?

    Wer vorher die Gruppe base-devel installiert hatte, sollte jetzt gemäß der Ankündigung das Paket base-devel installieren.

    Es erschließt sich mir allerdings nicht so recht der Nutzen dieser Maßnahme. Ein Meta-Paket enthält keine Dateien sondern nur gesetzte Abhängigkeiten, die eine Installation der abhängigen Pakete nach sich zieht mit dem kleinen Unterschied, dass dadurch der Status "Installiert als Abhängigkeit eines anderen Pakets" für die Pakete gesetzt wird, während es bei einer Installation durch eine Paketgruppe für jedes Paket der Status "Ausdrücklich installiert" ist.

    Wenn jetzt also das Paket base-devel installiert wird, ändert sich nicht der Status der vorher schon durch die Paketgruppe installiertten Pakete was zur Folge hat, dass bei einer De-Installation des Pakets base-devel inklusiv seiner Abhängigkeiten keins der davon abhängigen Pakete de-installiert würde, weil sie ausdrücklich installiert wurden und dadurch die Abhängigkeit nicht zu erkennen ist. In sofern verstehe ich die Aufforderung nicht, wozu ein Benutzer, der schon die Paketgruppe installiert hat, jetzt noch das Meta-Paket installieren soll.

    Man möge mich korrigieren wenn ich falsch liege, aber nach meiner Einschätzung wäre im Nachgang einer solchen Installation die Korrektur des Status aller vom Meta-Paket abhängigen und schon installierten Pakete mit pacman -D --asdeps <Pakete> notwendig, weil auch nur dann bei einer De-Installation des Pakets base-devel inklusiv seiner Abhängigkeiten auch die anhängigen Pakete de-installiert würden, wenn es darauf keine weiteren Abhängigkeiten anderer Pakete gibt.

      Martin-MS Es erschließt sich mir allerdings nicht so recht der Nutzen dieser Maßnahme.

      Dito. Meta-Pakete sind eigentlich Hacks für Edge-Cases, wo Gruppen nicht so recht funktionieren.
      Gruppen einfach durch Meta-Pakete, wie auch bereits mit base geschehen, zu ersetzen, führt das Konzept der Gruppen ad absurdum.

      base-devel schön und gut, 10 Pakete mehr von mir aus, aber sudo? Da fehlt ja nur noch emacs in den Abhängigkeiten...

      • Dirk hat auf diesen Beitrag geantwortet.
      • Dirk gefällt das.

        Martin-MS Eher nicht. Die Ankündigung auf der Mailingliste ist diesbezüglich etwas ausführlicher:

        Ich meinte natürlich die Paketgruppe.
        Trotz allem weiß ich jetzt immer noch nicht, ob ich Handlungsbedarf habe? Es erschließt sich mir einfach nicht.
        Muss ich denn das nun das neue Paket base-devel installieren, wenn ich bereits die Paketgruppe base-devel installiert habe habe?

        • Martin-MS hat auf diesen Beitrag geantwortet.

          Du MUSST natürlich gar nichts, aber du SOLLTEST so vorgehen, wie von Pierre oben beschrieben, wenn du künftig keine Probleme, wenn du auch weiterhin AUR nutzen WILLST.

          Insbesondere, wenn du dir unsicher bist - tu's einfach (ohne lange Erklärung).

          frostschutz 10 Pakete mehr von mir aus, aber sudo? Da fehlt ja nur noch emacs in den Abhängigkeiten

          Das ist wie mit diesem unsäglichen sysvcompat-Paket, das selbst 11 Jahre nach dem Wechsel auf Systemd noch als zwangsweise Abhängigkeit bei der Standardinstallation mitinstalliert wird.

          Manche Entscheidungen sind halt einfach nicht nachvollziehbar und wohl nur den persönlichen Vorlieben des jeweiligen Maintainers geschuldet. Wie damals, als das Installationsimage plötzlich zsh mit der grml-Config als Standard-Shell bekommen hat, was jetzt erst mit 2023.02 wieder zurückgenommen wurde.

          HansHiasl Trotz allem weiß ich jetzt immer noch nicht, ob ich Handlungsbedarf habe?

          Wenn du schon alle Pakete installiert hast, die als Abhängigkeit des base-devel-Pakets gesetzt sind, besteht erst einmal kein Handlungsbedarf, denn durch die Installation des Paket ändert sich nichts. Dennoch würde ich es installieren, denn es können ja in Zukunft weitere Pakete für den Build-Prozess nötig sein, von denen du ohne das Paket nichts erfährst und die dir dann fehlen werden.

          Genau an der Stelle hinkt bei sorgfältigerer Betrachtung auch das Konzept der Gruppen, denn einmal installiert sind sie statisch und selbst wenn neue Pakete in die Gruppe aufgenommen würden, bekommt man das nicht mehr mit. Außerdem besteht bei den Gruppen immer die Gefahr, dass essentielle Pakete vom Benutzer bei der Installation abgewählt werden weil er glaubt sie nicht brauchen zu müssen, und in der Folge funktioniert dann etwas nicht wie erwartet. Da sehe ich ein Meta-Paket dann doch im Vorteil. Mittlerweile wurden auch schon die Gruppenzugehörigkeiten der ersten Pakete wie sudo, fakeroot oder file aufgehoben.

          HansHiasl Muss ich denn das nun das neue Paket base-devel installieren, wenn ich bereits die Paketgruppe base-devel installiert habe habe?

          Ich habe es gemacht, und danach wie gestern schon beschrieben den Installationsstatus der abhängigen Pakete korrigiert. Das bleibt aber jedem selber überlassen, mir erscheint es nur plausibel und für die spätere Systempflege auch unerlässlich, wenn ein als Abhängigkeit installiertes Paket auch als solches gekennzeichnet ist.

          Ich sehe es so:

          Eine Ansammlung von Paketen, die ALLE installiert werden müssen, um eine gewisse Voraussetzung zu erfüllen, machen als Meta-Paket Sinn (z.B. eben base-devel). [edit] Hier sind all diese Pakete als Abhängigkeiten installiert, neue Pakete, die in base-devel aufgenommen werden, werden automatisch nachinstalliert und welche, die herausfallen, tauchen bei pacman -Qdt als nicht mehr benötigte Abhängigkeiten auf und können via pacman -Rns $(pacman -Qdtq) automatisch deinstalliert werden. Falls man ein so deinstalliertes Paket explizit behalten möchte, kann man es neu installieren oder den Status von einem als Abhängigkeit zu einem explizit installierten Paket ändern (wie, weiß ich gerade nicht mehr). [/edit]

          Eine Ansammlung von Paketen, die alle etwas gemeinsam haben (z.B. ähnliche Funktionalität usw.) machen als Gruppe Sinn, weil man dann beim Installieren einen Überblick bekommt, was es alles gibt.

          Für mich ist der Schritt komplett sinnvoll und ich empfinde ihn als längst überfällig 🙂

            23 Tage später

            Wäre es nicht besser gewesen man hätte dem Paket base und jetzt dem Paket base-devel noch ein "-meta" beim Namen spendiert? Auch könnte man den Paketguppen analog ein "-group" an den Namen anhängen.

            Zum einen wäre es damit besser kenntlich gemacht und zum anderen gäbe es dann auch die Möglichkeit, sowohl ein "base-devel-meta" als auch ein "base-devel-group" Paket zu haben.

            Das -meta Paket umfasst dann die kleinste Menge an Paketen die eine bestimmte Funktion sicherstellt, während die -group eine Sammlung darstellt, die auch weitere Elemente enthält, aus der dann jeweils ausgewählt werden kann.

            Bei KDE und Plasma wäre es jedenfalls sehr gut wenn die ganzen Meta Pakete jeweils auch als Paketgruppe zur Verfügung stünden. Wer es nicht glaubt kann ja mal ein pacman -S kde-applications-meta durchführen. 😉