Nächste: Paketumwandlungsoptionen, Nach oben: Aufruf von guix build
[Inhalt][Index]
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 guix challenge
aufrufen 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 Nutzung der Auslagerungsfunktionalität). 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, 2 ist wie 1, aber zeigt zusätzlich an, von welcher URL heruntergeladen wird, und 3 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
.
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: Paketumwandlungsoptionen, Nach oben: Aufruf von guix build
[Inhalt][Index]