Nächste: , Nach oben: Aufruf von guix build   [Inhalt][Index]


9.1.1 Gemeinsame Erstellungsoptionen

Einige dieser Befehlszeilenoptionen zur Steuerung des Erstellungsprozess haben guix build und andere Befehle, mit denen Erstellungen ausgelöst werden können, wie guix package oder guix archive, gemeinsam. Das sind folgende:

--load-path=Verzeichnis
-L Verzeichnis

Das Verzeichnis vorne an den Suchpfad für Paketmodule anfügen (siehe Paketmodule).

Damit können Nutzer dafür sorgen, dass ihre eigenen selbstdefinierten Pakete für die Befehlszeilenwerkzeuge sichtbar sind.

--keep-failed
-K

Den Verzeichnisbaum, in dem fehlgeschlagene Erstellungen durchgeführt wurden, behalten. Wenn also eine Erstellung fehlschlägt, bleibt ihr Erstellungsbaum in /tmp erhalten. Der Name dieses Unterverzeichnisses wird am Ende dem Erstellungsprotokolls ausgegeben. Dies hilft bei der Suche nach Fehlern in Erstellungen. Der Abschnitt Fehlschläge beim Erstellen untersuchen zeigt Ihnen Hinweise und Tricks, wie Erstellungsfehler untersucht werden können.

Diese Option impliziert --no-offload und sie hat keine Auswirkungen, wenn eine Verbindung zu einem entfernten Daemon über eine guix://-URI verwendet wurde (siehe die GUIX_DAEMON_SOCKET-Variable).

--keep-going
-k

Weitermachen, auch wenn ein Teil der Erstellungen fehlschlägt. Das bedeutet, dass der Befehl erst terminiert, wenn alle Erstellungen erfolgreich oder mit Fehler durchgeführt wurden.

Das normale Verhalten ist, abzubrechen, sobald eine der angegebenen Ableitungen fehlschlägt.

--dry-run
-n

Die Ableitungen nicht erstellen.

--fallback

Wenn das Substituieren vorerstellter Binärdateien fehlschlägt, diese ersatzweise lokal selbst erstellen (siehe Fehler bei der Substitution).

--substitute-urls=URLs

Die urls als durch Leerraumzeichen getrennte Liste von Quell-URLs für Substitute anstelle der vorgegebenen URL-Liste für den guix-daemon verwenden (siehe guix-daemon URLs).

Das heißt, die Substitute dürfen von den urls heruntergeladen werden, sofern sie mit einem durch den Systemadministrator autorisierten Schlüssel signiert worden sind (siehe Substitute).

Wenn als urls eine leere Zeichenkette angegeben wurde, verhält es sich, als wären Substitute abgeschaltet.

--no-substitutes

Benutze keine Substitute für Erstellungsergebnisse. Das heißt, dass alle Objekte lokal erstellt werden müssen, und kein Herunterladen von vorab erstellten Binärdateien erlaubt ist (siehe Substitute).

--no-grafts

Pakete nicht „veredeln“ (engl. „graft“). Praktisch heißt das, dass als Veredelungen verfügbare Paketaktualisierungen nicht angewandt werden. Der Abschnitt Sicherheitsaktualisierungen hat weitere Informationen zu Veredelungen.

--rounds=n

Jede Ableitung n-mal nacheinander erstellen und einen Fehler melden, wenn die aufeinanderfolgenden Erstellungsergebnisse nicht Bit für Bit identisch sind.

Das ist eine nützliche Methode, um nicht-deterministische Erstellungsprozesse zu erkennen. Nicht-deterministische Erstellungsprozesse sind ein Problem, weil Nutzer dadurch praktisch nicht verifizieren können, ob von Drittanbietern bereitgestellte Binärdateien unverfälscht sind. Der Abschnitt Aufruf von guix challenge erklärt dies genauer.

Wenn dies zusammen mit --keep-failed benutzt wird, bleiben die sich unterscheidenden Ausgaben im Store unter dem Namen /gnu/store/…-check. Dadurch können Unterschiede zwischen den beiden Ergebnissen leicht erkannt werden.

--no-offload

Nicht versuchen, an andere Maschinen ausgelagerte Erstellungen zu benutzen (siehe Auslagern des Daemons einrichten). Somit wird lokal erstellt, statt Erstellungen auf entfernte Maschinen auszulagern.

--max-silent-time=Sekunden

Wenn der Erstellungs- oder Substitutionsprozess länger als Sekunden-lang keine Ausgabe erzeugt, wird er abgebrochen und ein Fehler beim Erstellen gemeldet.

Standardmäßig wird die Einstellung für den Daemon benutzt (siehe --max-silent-time).

--timeout=Sekunden

Entsprechend wird hier der Erstellungs- oder Substitutionsprozess abgebrochen und als Fehlschlag gemeldet, wenn er mehr als Sekunden-lang dauert.

Standardmäßig wird die Einstellung für den Daemon benutzt (siehe --timeout).

-v Stufe
--verbosity=Stufe

Die angegebene Ausführlichkeitsstufe verwenden. Als Stufe muss eine ganze Zahl angegeben werden. Wird 0 gewählt, wird keine Ausgabe zur Fehlersuche angezeigt, 1 bedeutet eine knappe Ausgabe und 2 lässt alle Erstellungsprotokollausgaben auf die Standardfehlerausgabe schreiben.

--cores=n
-c n

Die Nutzung von bis zu n Prozessorkernen für die Erstellungen gestatten. Der besondere Wert 0 bedeutet, dass so viele wie möglich benutzt werden.

--max-jobs=n
-M n

Höchstens n gleichzeitige Erstellungsaufträge erlauben. Im Abschnitt --max-jobs finden Sie Details zu dieser Option und der äquivalenten Option des guix-daemon.

--debug=Stufe

Ein Protokoll zur Fehlersuche ausgeben, das vom Erstellungsdaemon kommt. Als Stufe muss eine ganze Zahl zwischen 0 und 5 angegeben werden; höhere Zahlen stehen für ausführlichere Ausgaben. Stufe 4 oder höher zu wählen, kann bei der Suche nach Fehlern, wie der Erstellungs-Daemon eingerichtet ist, helfen.

Intern ist guix build im Kern eine Schnittstelle zur Prozedur package-derivation aus dem Modul (guix packages) und zu der Prozedur build-derivations des Moduls (guix derivations).

Neben auf der Befehlszeile übergebenen Optionen beachten guix build und andere guix-Befehle, die Erstellungen durchführen lassen, die Umgebungsvariable GUIX_BUILD_OPTIONS.

Umgebungsvariable: GUIX_BUILD_OPTIONS

Nutzer können diese Variable auf eine Liste von Befehlszeilenoptionen definieren, die automatisch von guix build und anderen guix-Befehlen, die Erstellungen durchführen lassen, benutzt wird, wie in folgendem Beispiel:

$ export GUIX_BUILD_OPTIONS="--no-substitutes -c 2 -L /foo/bar"

Diese Befehlszeilenoptionen werden unabhängig von den auf der Befehlszeile übergebenen Befehlszeilenoptionen grammatikalisch analysiert und das Ergebnis an die bereits analysierten auf der Befehlszeile übergebenen Befehlszeilenoptionen angehängt.


Nächste: , Nach oben: Aufruf von guix build   [Inhalt][Index]