Was ist in Gentoo der Unterschied zwischen amd64, ~ amd64 und ~ amd64-linux?


9

Beim Ausführen equery depgraph www-client/chromium-10.0.648.151sind nicht alle Abhängigkeiten verfügbar. Einige Shows M[package.mask], während andere Shows [missing keyword]. Mein ACCEPT_KEYWORDSist ~amd64-linuxlaut emerge --info. Ich habe mit verschiedenen experimentiert ACCEPT_KEYWORDS(als Umgebungsvariable, an die übergeben wurde eqeury) und alle haben unterschiedliche fehlende Abhängigkeiten. Unter allen möglichen Kombinationen kann nur mit ACCEPT_KEYWORDS='amd64 ~amd64 ~amd64-linux'allen Abhängigkeiten gleichzeitig erfüllt werden.

Hier sind meine Fragen:

  1. Ist ACCEPT_KEYWORDS='amd64 ~amd64 ~amd64-linux'eine gültige Konfiguration?
  2. Ich habe aus der Dokumentation gelernt, dass amd64stabil und ~amd64instabil bedeutet. Was ist mit ~amd64-linux?
  3. Wenn ich auswähle ~amd64, equerywerden die verfügbaren Pakete nicht nur für verwendet amd64, was zu fehlenden Abhängigkeiten führt. Wird das erwartet? Wenn ja, sollten instabile Tester zumindest ACCEPT_KEYWORDS='amd64 ~amd64'anstelle von verwenden ACCEPT_KEYWORDS='~amd64'?
  4. Ist die Reihenfolge der Schlüsselwörter wichtig?

Zusätzliche Informationen: Ich habe Gentoo Prefix gemäß dieser Anleitung installiert . Standardmäßig $EPREFIX/etc/make.profileist ein Symlink zu $EPREFIX/usr/portage/profiles/prefix/linux/amd64und enthält ein make.defaults, das hat ACCEPT_KEYWORDS="-amd64 ~amd64-linux". Weder $EPREFIX/etc/make.confnoch $EPREFIX/etc/make.globalsist ACCEPT_KEYWORDSkonfiguriert. Entsprechend eselect profile listist kein Profil ausgewählt.

Antworten:


8

1. Ist ACCEPT_KEYWORDS = 'amd64 ~ amd64 ~ amd64-linux' eine gültige Konfiguration?

Von man make.conf:

ACCEPT_KEYWORDS = [durch Leerzeichen getrennte Liste von KEYWORDS]

Ist ACCEPT_KEYWORDS='amd64 ~amd64 ~amd64-linux'also eine gültige Kombination.

2. Was ist mit ~ amd64-linux?

amd64-linuxist eine Präfixsache. Ich weiß nicht viel über Präfix, aber ich kann amd64-linuxin der Liste der gültigen Schlüsselwörter unter /usr/portage/profiles/arch.listim Abschnitt "Präfix-Schlüsselwörter" sehen. ~amd64-linuxist nur das Testgegenstück von amd64-linux.

3. ACCEPT_KEYWORDS='amd64 ~amd64'vs nur~amd64

Wenn Sie ~amd64in Ihrem haben ACCEPT_KEYWORDS, verwendet Portage die neuesten Ebuilds, die oft eine Menge instabiler Dinge enthalten. Ich denke, deshalb sind fehlende Abhängigkeiten zu erwarten. Dies kann beispielsweise passieren, wenn Sie installieren möchten software-a, und das neueste im Testzweig ist software-a-2.3.4, was erfordert library-b-5.6.7, dass noch kein Ebuild vorhanden ist. In Bezug auf amd64 ~amd64und nur ~amd64, sie sind die gleichen, wirklich, denn wenn Ihre Architektur ist amd64 Sie haben amd64in ACCEPT_KEYWORDS, nein , was Materie.

4. Ist die Reihenfolge der Schlüsselwörter wichtig?

Nein, denn es geht nur darum, ob Ihre ACCEPT_KEYWORDSVariable ein bestimmtes Schlüsselwort enthält oder nicht. Es ist wie ein Set (ungeordnet).

Nachdem ich Gentoo eine Weile benutzt habe, traue ich mich immer noch nicht, ~amd64meine einzubauen ACCEPT_KEYWORDS. Es ist so instabil, dass es wirklich nicht empfohlen wird. Das erstmalige Einrichten garantiert viel Bruch.


danke für die sehr klare erklärung. in meinem Fall, habe ich noch hatte in ~ amd64 setzen die neuesten zu bekommen xtables-addons. aber da meine Gentoo-Box als reine Firewall dient, bin ich nicht wirklich besorgt über die Stabilität anderer Pakete :)
pepoluan

2
@pepoluan Wenn ~amd64nur zu haben xtables-addonsist, sollten Sie es in /etc/portage/package.keywordsoder /etc/portage/package.accept_keywordsanstelle des instabilen Testzweigs setzen . Weitere Informationen man portagefinden Sie unter oder stellen Sie hier eine andere Frage.
Phunehehe

Meine Güte, du hast Recht>. <... Ich entschuldige mich, es scheint, dass meine N00Bness durchscheint: P ... sowieso bin ich nicht das Originalplakat, nur ein eigensinniger Kommentator :)
Pepoluan

@pololuan Ich bin froh, dass ich geholfen habe. Jeder ist irgendwann ein Noob :)
Phunehehe

Vielen Dank für Ihre ausführliche Antwort. Ich verstehe nicht warum, aber das Standardschlüsselwort ist ~amd64-linux(mit amd64explizit entfernt). Bisher läuft es gut =)
netvope

3

Mit der Umgebungsvariablen ACCEPT_KEYWORDS können "alle" noch nicht markierten stabilen Pakete / Versionen für die aktuelle Architektur erstellt werden.

Das ~ vor einem Bogen bedeutet instabil (nicht "vollständig" getestet).

Der oft bessere Ansatz besteht darin, /etc/portage/package.keywords zu verwenden und das Paket dort mit dem Schlüsselwort ~ amd64 aufzulisten, wenn Sie wirklich den neuesten Build benötigen.

Übrigens: amd64 Firewall, definiert Wikipedia Overkill nicht so?

  1. Ja
  2. Ich habe noch nie von "~ amd64-linux" gehört, aber das ~ bedeutet "instabil".
  3. Nein, es wird nicht erwartet, dass "~ amd64" "amd64" ausschließt.
  4. Nein.
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.