Next: Invocación de guix processes
, Previous: Invocación de guix container
, Up: Utilidades [Contents][Index]
guix weather
Occasionally you’re grumpy because substitutes are lacking and you end up
building packages by yourself (see Sustituciones). The guix
weather
command reports on substitute availability on the specified servers
so you can have an idea of whether you’ll be grumpy today. It can sometimes
be useful info as a user, but it is primarily useful to people running
guix publish
(see Invocación de guix publish
). Sometimes
substitutes are available but they are not authorized on your system;
guix weather
reports it so you can authorize them if you want
(see Obtención de sustiticiones desde otros servidores).
Esta es una ejecución de ejemplo:
$ guix weather --substitute-urls=https://guix.example.org computing 5,872 package derivations for x86_64-linux... looking for 6,128 store items on https://guix.example.org.. updating substitutes from 'https://guix.example.org'... 100.0% https://guix.example.org 43.4% substitutes available (2,658 out of 6,128) 7,032.5 MiB of nars (compressed) 19,824.2 MiB on disk (uncompressed) 0.030 seconds per request (182.9 seconds in total) 33.5 requests per second 9.8% (342 out of 3,470) of the missing items are queued 867 queued builds x86_64-linux: 518 (59.7%) i686-linux: 221 (25.5%) aarch64-linux: 128 (14.8%) build rate: 23.41 builds per hour x86_64-linux: 11.16 builds per hour i686-linux: 6.03 builds per hour aarch64-linux: 6.41 builds per hour
Como puede ver, informa de la fracción de todos los paquetes para los cuales
hay sustituciones en el servidor—independientemente de que las
sustituciones estén activadas, e independientemente de si la clave de firma
del servidor está autorizada. También informa del tamaño de los archivos
comprimidos (“nar”) proporcionados por el servidor, el tamaño que los
elementos correspondientes del almacén ocupan en el almacén (asumiendo que
la deduplicación está apagada) y el caudal de proceso del servidor. La
segunda parte proporciona estadísticas de integración continua (CI), si el
servidor lo permite. Además, mediante el uso de la opción
--coverage, guix weather
puede enumerar sustituciones de
paquetes “importantes” que no se encuentren en el servidor (véase más
adelante).
Para conseguirlo, guix weather
consulta los metadatos HTTP(S)
(narinfos) de todos los elementos relevantes del almacén. Como
guix challenge
, ignora las firmas en esas sustituciones, lo cual
es inocuo puesto que la orden únicamente obtiene estadísticas y no puede
instalar esas sustituciones.
La sintaxis general es:
guix weather opciones… [paquetes…]
Cuando se omite paquetes, guix weather
comprueba la
disponibilidad de sustituciones para todos los paquetes, o para
aquellos especificados con la opción --manifest; en otro caso
considera únicamente los paquetes especificados. También es posible
consultar tipos de sistema específicos con --system. guix
weather
termina con un código de salida distinto a cero cuando la fracción
de sustituciones disponibles se encuentra por debajo del 100%.
Las opciones disponibles se enumeran a continuación.
--substitute-urls=urls
urls is the space-separated list of substitute server URLs to query.
When this option is omitted, the URLs specified with the
--substitute-urls option of guix-daemon
are used or, as a
last resort, the default set of substitute URLs.
--system=sistema
-s sistema
Consulta sustituciones para sistema—por ejemplo,
aarch64-linux
. Esta opción se puede repetir, en cuyo caso
guix weather
consultará las sustituciones para varios tipos de
sistema.
--manifest=archivo
En vez de consultar las sustituciones de todos los paquetes, consulta
únicamente los especificados en archivo. archivo debe contener
un manifiesto, como el usado en la opción -m
de guix
package
(see Invocación de guix package
).
Esta opción puede repetirse varias veces, en cuyo caso los manifiestos se concatenan.
--expression=expr
-e expr
Considera el paquete al que evalúa expr
A typical use case for this option is specifying a package that is hidden and thus cannot be referred to in the usual way, as in this example:
guix weather -e '(@@ (gnu packages rust) rust-bootstrap)'
This option can be repeated.
--coverage[=numero]
-c [numero]
Informa de la cobertura de sustituciones para paquetes: enumera paquetes con al menos número dependientes (cero por omisión) para los cuales no haya sustituciones disponibles. Los paquetes dependientes en sí no se enumeran: si b depende de a y a no tiene sustituciones disponibles, únicamente se muestra a, aunque b normalmente no tenga sustituciones tampoco. El resultado es más o menos así:
$ guix weather --substitute-urls=https://bordeaux.guix.gnu.org https://ci.guix.gnu.org -c 10 computing 8,983 package derivations for x86_64-linux... looking for 9,343 store items on https://bordeaux.guix.gnu.org https://ci.guix.gnu.org... updating substitutes from 'https://bordeaux.guix.gnu.org https://ci.guix.gnu.org'... 100.0% https://bordeaux.guix.gnu.org https://ci.guix.gnu.org 64.7% substitutes available (6,047 out of 9,343) … 2502 packages are missing from 'https://bordeaux.guix.gnu.org https://ci.guix.gnu.org' for 'x86_64-linux', among which: 58 kcoreaddons@5.49.0 /gnu/store/…-kcoreaddons-5.49.0 46 qgpgme@1.11.1 /gnu/store/…-qgpgme-1.11.1 37 perl-http-cookiejar@0.008 /gnu/store/…-perl-http-cookiejar-0.008 …
What this example shows is that kcoreaddons
and presumably the 58
packages that depend on it have no substitutes at
bordeaux.guix.gnu.org
; likewise for qgpgme
and the 46
packages that depend on it.
Si es una desarrolladora Guix, o si se encuentra a cargo de esta granja de construcción, probablemente quiera inspeccionar estos paquetes con más detalle: simplemente puede que su construcción falle.
--display-missing
Muestra los elementos del almacén para los que faltan las sustituciones.
Next: Invocación de guix processes
, Previous: Invocación de guix container
, Up: Utilidades [Contents][Index]