Next: Ejecución de tareas programadas, Up: Servicios [Contents][Index]
El módulo (gnu services base)
proporciona definiciones para los
servicios básicos que se esperan en el sistema. Los servicios exportados por
este módulo se enumeran a continuación.
Esta variable contiene una lista de servicios básicos (see Tipos de servicios y servicios, para más información sobre los objetos servicio) que se pueden esperar en el sistema: un servicio de ingreso al sistema (mingetty) en cada tty, syslogd, el daemon de la caché del servicio de nombres (nscd), el gestor de dispositivos udev, y más.
Este es el valor predeterminado del campo services
de las
declaraciones operating-system
. De manera habitual, cuando se
personaliza el sistema, es deseable agregar servicios a
%base-services
, de esta forma:
El servicio que establece “archivos especiales” como /bin/sh; una
instancia suya es parte de %base-services
.
El valor asociado con servicios special-file-service-type
debe ser
una lista de tuplas donde el primer elemento es el “archivo especial” y el
segundo elemento es su destino. El valor predeterminado es:
`(("/bin/sh" ,(file-append bash "/bin/sh")) ("/usr/bin/env" ,(file-append coreutils "/bin/env")))
If you want to add, say, /bin/bash
to your system, you can change it
to:
`(("/bin/sh" ,(file-append bash "/bin/sh")) ("/usr/bin/env" ,(file-append coreutils "/bin/env")) ("/bin/bash" ,(file-append bash "/bin/bash")))
Ya que es parte de %base-services
, puede usar modify-services
para personalizar el conjunto de archivos especiales (see modify-services
). Pero una forma simple de añadir un
archivo especial es usar el procedimiento extra-special-file
(véase a
continuación).
Usa destino como el “archivo especial” archivo.
Por ejemplo, la adición de las siguientes líneas al campo services
de
su declaración de sistema operativo genera /usr/bin/env como un
enlace simbólico:
(extra-special-file "/usr/bin/env"
(file-append coreutils "/bin/env"))
Devuelve un servicio que establece el nombre de máquina a nombre.
Instala las tipografías proporcionadas en las consolas virtuales (tty)
especificados (las tipografías se asocian a cada consola virtual con el
núcleo Linux). El valor de este servicio es una lista de pares
tty/tipografía. La tipografía puede ser el nombre de alguna de las
proporcionadas por el paquete kbd
o cualquier parámetro válido para
la orden setfont
, como en este ejemplo:
`(("tty1" . "LatGrkCyr-8x16") ("tty2" . ,(file-append font-tamzen "/share/kbd/consolefonts/TamzenForPowerline10x20.psf")) ("tty3" . ,(file-append font-terminus "/share/consolefonts/ter-132n"))) ; para HDPI
Devuelve un servicio para ejecutar el ingreso al sistema de acuerdo con
config, un objeto <login-configuration>
, que especifica el
mensaje del día, entre otras cosas.
Este es el tipo de datos que representa la configuración del ingreso al sistema.
motd
¶Un objeto tipo-archivo que contiene el “mensaje del día”.
allow-empty-passwords?
(predeterminado: #t
)Permite contraseñas vacías por defecto para que las primeras usuarias puedan ingresar en el sistema cuando la cuenta de “root” está recién creada.
Devuelve un servicio para ejecutar mingetty de acuerdo con config, un
objeto <mingetty-configuration>
, que especifica el tty a ejecutar
entre otras cosas.
Este es el tipo de datos que representa la configuración de Mingetty, el cual proporciona la implementación predeterminada de ingreso al sistema en las consolas virtuales.
tty
El nombre de la consola en la que se ejecuta este Mingetty—por ejemplo,
"tty1"
.
auto-login
(predeterminado: #f
)Cuando sea verdadero, este campo debe ser una cadena que denote el nombre de
usuaria bajo el cual el sistema ingresa automáticamente. Cuando es
#f
, se deben proporcionar un nombre de usuaria y una contraseña para
ingresar en el sistema.
login-program
(predeterminado: #f
)Debe ser #f
, en cuyo caso se usa el programa predeterminado de
ingreso al sistema (login
de las herramientas Shadow), o una
expresión-G que determine el nombre del programa de ingreso al sistema.
login-pause?
(predeterminado: #f
)Cuando es #t
en conjunción con auto-login, la usuaria deberá
presionar una tecla para lanzar el shell de ingreso al sistema.
clear-on-logout?
(default: #t
)When set to #t
, the screen will be cleared after logout.
mingetty
(predeterminado: mingetty)El paquete Mingetty usado.
Devuelve un servicio para ejecutar agetty de acuerdo con config, un
objeto <agetty-configuration>
, que especifica el tty a ejecutar entre
otras cosas.
Este es el tipo de datos que representa la configuración de agetty, que
implementa el ingreso al sistema en las consolas virtuales y serie. Véase la
página de manual agetty(8)
para más información.
tty
El nombre de la consola en la que se ejecuta este agetty, como una
cadena—por ejemplo, "ttyS0"
. Este parámetro es opcional, su valor
predeterminado es un puerto serie razonable usado por el núcleo Linux.
Para ello, si hay un valor para una opción agetty.tty
en la línea de
órdenes del núcleo, agetty extraerá el nombre del dispositivo del puerto
serie de allí y usará dicho valor.
Si no y hay un valor para la opción console
con un tty en la línea de
órdenes de Linux, agetty extraerá el nombre del dispositivo del puerto serie
de allí y usará dicho valor.
En ambos casos, agetty dejará el resto de configuración de dispositivos serie (tasa de transmisión, etc.) sin modificar—con la esperanza de que Linux haya proporcionado ya los valores correctos.
baud-rate
(predeterminado: #f
)Una cadena que contenga una lista separada por comas de una o más tasas de transmisión, en orden descendiente.
term
(predeterminado: #f
)Una cadena que contiene el valor usado para la variable de entorno
TERM
.
eight-bits?
(predeterminado: #f
)En caso de ser #t
, se asume que el tty permite el paso de 8 bits, y
la detección de paridad está desactivada.
auto-login
(predeterminado: #f
)Cuando se proporciona un nombre de ingreso al sistema, como una cadena, la usuaria especificada ingresará automáticamente sin solicitar su nombre de ingreso ni su contraseña.
no-reset?
(predeterminado: #f
)En caso de ser #t
, no reinicia los modos de control del terminal
(cflags).
host
(predeterminado: #f
)Acepta una cadena que contenga el “nombre_de_máquina_de_ingreso”, que será escrito en el archivo /var/run/utmpx.
remote?
(predeterminado: #f
)Cuando se fija a #t
en conjunción con host, se añadirá una
opción -r
"fakehost" a la línea de órdenes del programa de ingreso al
sistema especificado en login-program.
flow-control?
(predeterminado: #f
)Cuando es #t
, activa el control de flujo hardware (RTS/CTS).
no-issue?
(predeterminado: #f
)Cuando es #t
, el contenido del archivo /etc/issue no se
mostrará antes de presentar el mensaje de ingreso al sistema.
init-string
(predeterminada: #f
)Esto acepta una cadena que se enviará al tty o módem antes de mandar nada más. Puede usarse para inicializar un modem.
no-clear?
(predeterminado: #f
)Cuando es #t
, agetty no limpiará la pantalla antes de mostrar el
mensaje de ingreso al sistema.
login-program
(predeterminado: (file-append shadow "/bin/login"))Esto debe ser o bien una expresión-g que denote el nombre del programa de
ingreso al sistema, o no debe proporcionarse, en cuyo caso el valor
predeterminado es login
del conjunto de herramientas Shadow.
local-line
(predeterminado: #f
)Control the CLOCAL line flag. This accepts one of three symbols as
arguments, 'auto
, 'always
, or 'never
. If #f
,
the default value chosen by agetty is 'auto
.
extract-baud?
(predeterminado: #f
)Cuando es #t
, instruye a agetty para extraer la tasa de transmisión
de los mensajes de estado producidos por ciertos tipos de módem.
skip-login?
(predeterminado: #f
)Cuando es #t
, no solicita el nombre de la usuaria para el ingreso al
sistema. Puede usarse con el campo login-program para usar sistemas de
ingreso no estándar.
no-newline?
(predeterminado: #f
)Cuando es #t
, no imprime una nueva línea antes de imprimir el archivo
/etc/issue.
login-options
(predeterminadas: #f
)Esta opción acepta una cadena que contenga opciones para proporcionar al programa de ingreso al sistema. Cuando se use con login-program, sea consciente de que una usuaria con malas intenciones podría intentar introducir un nombre que contuviese opciones embebidas que serían procesadas por el programa de ingreso.
login-pause
(predeterminada: #f
)Cuando es #t
, espera la pulsación de cualquier tecla antes de mostrar
el mensaje de ingreso al sistema. Esto puede usarse en conjunción con
auto-login para ahorrar memoria lanzando cada shell cuando sea
necesario.
chroot
(predeterminado: #f
)Cambia la raíz al directorio especificado. Esta opción acepta una ruta de directorio como una cadena.
hangup?
(predeterminado: #f
)Usa la llamada del sistema Linux vhangup
para colgar de forma virtual
el terminal especificado.
keep-baud?
(predeterminado: #f
)Cuando es #t
, prueba a mantener la tasa de transmisión existente. Las
tasas de transmisión de baud-rate se usan cuando agetty recibe un
carácter BREAK.
timeout
(predeterminado: #f
)Cuando sea un valor entero, termina si no se pudo leer ningún nombre de usuaria en timeout segundos.
detect-case?
(predeterminado: #f
)Cuando es #t
, activa la detección de terminales únicamente con
mayúsculas. ESta configuración detectará un nombre de ingreso que contenga
únicamente letras mayúsculas como un indicativo de un terminal con letras
únicamente mayúsculas y activará las conversiones de mayúscula a
minúscula. Tenga en cuenta que esto no permitirá caracteres Unicode.
wait-cr?
(predeterminado: #f
)Cuando es #t
, espera hasta que la usuaria o el modem envíen un
carácter de retorno de carro o de salto de línea antes de mostrar
/etc/issue o el mensaje de ingreso. Se usa de forma típica junto a la
opción init-string.
no-hints?
(predeterminado: #f
)Cuando es #t
, no imprime avisos sobre el bloqueo numérico, las
mayúsculas o el bloqueo del desplazamiento.
no-hostname?
(predeterminado: #f
)El nombre de la máquina se imprime de forma predeterminada. Cuando esta
opción es #t
, no se mostrará ningún nombre de máquina.
long-hostname?
(predeterminado: #f
)El nombre de máquina se imprime de forma predeterminada únicamente hasta el
primer punto. Cuando esta opción es #t
, se muestra el nombre
completamente cualificado de la máquina mostrado por gethostname
o
getaddrinfo
.
erase-characters
(predeterminado: #f
)Esta opción acepta una cadena de caracteres adicionales que deben interpretarse como borrado del carácter anterior cuando la usuaria introduce su nombre de ingreso.
kill-characters
(predeterminado: #f
)Esta opción acepta una cadena de que debe ser interpretada como “ignora todos los caracteres anteriores” (también llamado carácter “kill”) cuando la usuaria introduce su nombre de ingreso.
chdir
(predeterminado: #f
)Esta opción acepta, como una cadena, una ruta de directorio que a la que se cambiará antes del ingreso al sistema.
delay
(predeterminado: #f
)Esta opción acepta, como un entero, el número de segundos a esperar antes de abrir el tty y mostrar el mensaje de ingreso al sistema.
nice
(predeterminado: #f
)Esta opción acepta, como un entero, el valor “nice” con el que se
ejecutará el programa login
.
extra-options
(predeterminadas: '()
)Esta opción proporciona una “trampilla de escape” para que la usuaria
proporcione parámetros de línea de órdenes adicionales a agetty
como una lista de cadenas.
shepherd-requirement
(default: '()
)The option can be used to provides extra shepherd requirements (for example
'syslogd
) to the respective 'term-
* shepherd service.
Devuelve un servicio que ejecuta
kmscon de acuerdo a
config, un objeto <kmscon-configuration>
, que especifica el tty
sobre el que se ejecutará, entre otras cosas.
Este es el tipo de datos que representa la configuración de Kmscon, que implementa el ingreso al sistema en consolas virtuales.
virtual-terminal
El nombre de la consola en la que se ejecuta este Kmscon—por ejemplo,
"tty1"
.
login-program
(predeterminado: #~(string-append #$shadow "/bin/login")
)A gexp denoting the name of the log-in program. The default log-in program
is login
from the Shadow tool suite.
login-arguments
(predeterminados: '("-p")
)Una lista de parámetros para proporcionar a login
.
auto-login
(predeterminado: #f
)Cuando se proporciona un nombre de ingreso al sistema, como una cadena, la usuaria especificada ingresará automáticamente sin solicitar su nombre de ingreso ni su contraseña.
hardware-acceleration?
(predeterminado: #f)Determina si se usará aceleración hardware.
font-engine
(default: "pango"
)Font engine used in Kmscon.
font-size
(default: 12
)Font size used in Kmscon.
keyboard-layout
(predeterminada: #f
)If this is #f
, Kmscon uses the default keyboard layout—usually US
English (“qwerty”) for a 105-key PC keyboard.
Otherwise this must be a keyboard-layout
object specifying the
keyboard layout. See Distribución de teclado, for more information on how to
specify the keyboard layout.
kmscon
(predeterminado: kmscon)El paquete Kmscon usado.
Devuelve un servicio que ejecuta el daemon de la caché del servicio de
nombres (nscd) con la configuración proporcionada—un objeto
<nscd-configuration>
. See Selector de servicios de nombres, para un ejemplo.
Por conveniencia, el servicio ncsd de Shepherd proporciona las siguientes acciones:
invalidate
¶Esto invalida la caché dada. Por ejemplo, ejecutar:
herd invalidate nscd hosts
invalida la caché de búsqueda de nombres de máquinas de nscd.
statistics
Ejecutar herd statistics nscd
muestra información del uso nscd y
la caché.
El valor del <ncsd-configuration>
predeterminado (véase a
continuación) usado por nscd-service
. Usa los espacios de caché
definidos por %nscd-default-caches
; véase a continuación.
Este tipo de datos representa la configuración del daemon de caché del servicio de nombres (nscd).
name-services
(predeterminados: '()
)Lista de paquetes que indican los servicios de nombres que serán
visibles al nscd—por ejemplo, (list nss-mdns)
.
glibc
(predeterminada: glibc)Paquete que denota la biblioteca C de GNU que proporciona la orden
nscd
.
log-file
(predeterminado: "/var/log/nscd.log"
)Nombre del archivo de registro de nscd. Aquí es donde se almacena la salida
de depuración cuando debug-level
es estrictamente positivo.
debug-level
(predeterminado: 0
)Entero que indica el nivel de depuración. Números mayores significan que se registra más salida de depuración.
caches
(predeterminado: %nscd-default-caches
)Lista de objetos <nscd-cache>
que indican cosas a mantener en caché;
véase a continuación.
Tipo de datos que representa una base de datos de caché de nscd y sus parámetros.
base de datos
Es un símbolo que representa el nombre de la base de datos de la que se
actúa como caché. Se aceptan los valores passwd
, group
,
hosts
y services
, que designan las bases de datos NSS
correspondientes (see NSS Basics in The GNU C Library Reference
Manual).
positive-time-to-live
negative-time-to-live
(predeterminado: 20
)Un número que representa el número de segundos durante los que una búsqueda positiva o negativa permanece en la caché.
check-files?
(predeterminado: #t
)Si se comprobará en busca de actualizaciones los archivos que correspondan con database.
Por ejemplo, cuando database es hosts
, la activación de esta
opción instruye a nscd para comprobar actualizaciones en /etc/hosts y
tenerlas en cuenta.
persistent?
(predeterminada: #t
)Determina si la caché debe almacenarse de manera persistente en disco.
shared?
(predeterminado: #t
)Determina si la caché debe compartirse entre las usuarias.
max-database-size
(predeterminado: 32 MiB)Tamaño máximo en bytes de la caché de la base de datos.
Lista de objetos <nscd-cache>
usados por omisión por
nscd-configuration
(véase en la sección previa)
Activa el almacenamiento en caché persistente y agresivo de búsquedas de servicios y nombres de máquina. La última proporciona un mejor rendimiento en la búsqueda de nombres de máquina, resilencia en caso de nombres de servidor no confiables y también mejor privacidad—a menudo el resultado de las búsquedas de nombres de máquina está en la caché local, por lo que incluso ni es necesario consultar servidores de nombres externos.
Este tipo de datos representa la configuración del daemon syslog.
syslogd
(predeterminado: #~(string-append #$inetutils "/libexec/syslogd")
)El daemon syslog usado.
config-file
(predeterminado: %default-syslog.conf
)El archivo de configuración de syslog usado.
Devuelve un servicio que ejecuta el daemon de syslog de acuerdo a config.
See syslogd invocation in GNU Inetutils, para más información sobre la sintaxis del archivo de configuración.
El tipo de servicio que ejecuta el daemon de construcción,
guix-daemon
(see Invocación de guix-daemon
). Su valor debe ser un
registro guix-configuration
como se describe a continuación.
Este tipo de datos representa la configuración del daemon de construcción de
Guix. See Invocación de guix-daemon
, para más información.
guix
(predeterminado: guix)El paquete Guix usado.
build-group
(predeterminado: "guixbuild"
)El nombre del grupo de las cuentas de usuarias de construcción.
build-accounts
(predeterminadas: 10
)Número de cuentas de usuarias de construcción a crear.
authorize-key?
(predeterminado: #t
) ¶Whether to authorize the substitute keys listed in
authorized-keys
—by default that of
ci.guix.gnu.org
and bordeaux.guix.gnu.org
(see Sustituciones).
Cuando authorize-key?
es verdadero, /etc/guix/acl no se puede
cambiar a través de guix archive --authorize
. En vez de eso debe
ajustar guix-configuration
como desee y reconfigurar el sistema. Esto
asegura que la configuración de su sistema operativo es auto-contenida.
Nota: Cuando arranque o reconfigure a un sistema donde
authorize-key?
sea verdadero, se crea una copia de seguridad del archivo /etc/guix/acl existente como /etc/guix/acl.bak si se determina que el archivo se ha modificado de manera manual. Esto facilita la migración desde versiones anteriores, en las que se permitían las modificaciones directas del archivo /etc/guix/acl.
authorized-keys
(predeterminadas: %default-authorized-guix-keys
)The list of authorized key files for archive imports, as a list of
string-valued gexps (see Invocación de guix archive
). By default, it
contains that of ci.guix.gnu.org
and
bordeaux.guix.gnu.org
(see Sustituciones). See
substitute-urls
below for an example on how to change it.
use-substitutes?
(predeterminado: #t
)Determina si se usarán sustituciones.
substitute-urls
(predeterminado: %default-substitute-urls
)La lista de URLs donde se buscarán sustituciones por defecto.
Suppose you would like to fetch substitutes from guix.example.org
in
addition to ci.guix.gnu.org
. You will need to do two
things: (1) add guix.example.org
to substitute-urls
, and (2)
authorize its signing key, having done appropriate checks (see Autorización de servidores de sustituciones). The configuration below does exactly that:
(guix-configuration
(substitute-urls
(append (list "https://guix.example.org")
%default-substitute-urls))
(authorized-keys
(append (list (local-file "./guix.example.org-clave.pub"))
%default-authorized-guix-keys)))
Este ejemplo asume que el archivo ./guix.example.org-clave.pub
contiene la clave pública que guix.example.org
usa para firmar las
sustituciones.
generate-substitute-key?
(default: #t
)Whether to generate a substitute key pair under /etc/guix/signing-key.pub and /etc/guix/signing-key.sec if there is not already one.
This key pair is used when exporting store items, for instance with
guix publish
(see Invocación de guix publish
) or guix
archive
(see Invocación de guix archive
). Generating a key pair takes a few
seconds when enough entropy is available and is only done once; you might
want to turn it off for instance in a virtual machine that does not need it
and where the extra boot time is a problem.
max-silent-time
(predeterminado: 0
)timeout
(predeterminado: 0
)El número de segundos de silencio y el número de segundos de actividad respectivamente, tras los cuales el proceso de construcción supera el plazo. Un valor de cero proporciona plazos ilimitados.
log-compression
(default: 'gzip
)El tipo de compresión usado en los log de construcción—o bien gzip
,
o bien bzip2
o none
.
discover?
(default: #f
)Whether to discover substitute servers on the local network using mDNS and DNS-SD.
extra-options
(predeterminadas: '()
)Lista de opciones de línea de órdenes adicionales para
guix-daemon
.
log-file
(predeterminado: "/var/log/guix-daemon.log"
)Archivo al que se escriben la salida estándar y la salida estándar de error
de guix-daemon
.
http-proxy
(predeterminado: #f
)La URL de los proxy HTTP y HTTPS que se usa para la descarga de derivaciones de salida fija y sustituciones.
También es posible cambiar la pasarela del daemon en tiempo te ejecución con
la acción set-http-proxy
, la cual lo reinicia:
herd set-http-proxy guix-daemon http://localhost:8118
Para desactivar el uso actual de una pasarela ejecute:
herd set-http-proxy guix-daemon
tmpdir
(predeterminado: #f
)Una ruta de directorio donde guix-daemon
realiza las
construcciones.
This data type represents the parameters of the Guix build daemon that are extendable. This is the type of the object that must be used within a guix service extension. See Composición de servicios, for more information.
authorized-keys
(predeterminadas: '()
)A list of file-like objects where each element contains a public key.
substitute-urls
(default: '()
)A list of strings where each element is a substitute URL.
chroot-directories
(default: '()
)A list of file-like objects or strings pointing to additional directories the build daemon can use.
'()
]Ejecuta udev, que gestiona el contenido del directorio /dev de
forma dinámica. Se pueden proporcionar reglas de udev como una lista de
archivos a través de la variable rules. Los procedimientos
udev-rule
, udev-rules-service
y file->udev-rule
de
(gnu services base)
simplifican la creación de dichos archivos de
reglas.
The herd rules udev
command, as root, returns the name of the
directory containing all the active udev rules.
Devuelve un archivo de reglas de udev con nombre nombre-archivo que contiene las reglas definidas en el literal contenido.
En el ejemplo siguiente se define una regla para un dispositivo USB que será almacenada en el archivo 90-usb-cosa.rules. Esta regla ejecuta un script cuando se detecta un dispositivo USB con un identificador de producto dado.
(define %regla-ejemplo-udev
(udev-rule
"90-usb-cosa.rules"
(string-append "ACTION==\"add\", SUBSYSTEM==\"usb\", "
"ATTR{product}==\"Ejemplo\", "
"RUN+=\"/ruta/al/ejecutable\"")))
Devuelve un servicio que extiende udev-service-type
con reglas
y account-service-type
con grupos como grupos del sistema. Esto
funciona creando una instancia única del tipo de servicio
nombre-udev-rules
, del cual el servicio devuelto es una
instancia.
A continuación se muestra cómo se puede usar para extender
udev-service-type
con la regla %regla-ejemplo-udev
definida
previamente.
(operating-system
;; …
(services
(cons (udev-rules-service 'usb-thing %regla-ejemplo-udev)
%desktop-services)))
Devuelve un archivo de udev con nombre nombre-archivo que contiene las reglas definidas en archivo, un objeto tipo-archivo.
El ejemplo siguiente muestra cómo podemos usar un archivo de reglas existente.
(use-modules (guix download) ;para url-fetch (guix packages) ;para origin …) (define %reglas-android-udev (file->udev-rule "51-android-udev.rules" (let ((version "20170910")) (origin (method url-fetch) (uri (string-append "https://raw.githubusercontent.com/M0Rf30/" "android-udev-rules/" version "/51-android.rules")) (sha256 (base32 "0lmmagpyb6xsq6zcr2w1cyx9qmjqmajkvrdbhjx32gqf1d9is003"))))))
Adicionalmente, las definiciones de paquete Gui pueden ser incluidas en
rules para extender las reglas udev con las definiciones encontradas
bajo su subdirectorio lib/udev/rules.d. En vez del ejemplo previo de
file->udev-rule, podíamos haber usado el paquete
android-udev-rules que existe en Guix en el módulo (gnu packages
android)
.
El siguiente ejemplo muestra cómo usar el paquete android-udev-rules
para que la herramienta de Android adb
pueda detectar dispositivos
sin privilegios de “root”. También detalla como crear el grupo
adbusers
, el cual se requiere para el funcionamiento correcto de las
reglas definidas dentro del paquete android-udev-rules
. Para crear
tal grupo, debemos definirlo tanto como parte de supplementary-groups
de la declaración de nuestra cuenta de usuaria en user-account, así
como en el parámetro groups del procedimiento
udev-rules-service
.
(use-modules (gnu packages android) ;para android-udev-rules (gnu system shadow) ;para user-group …) (operating-system ;; … (users (cons (user-account ;; … (supplementary-groups '("adbusers" ;for adb "wheel" "netdev" "audio" "video"))))) ;; … (services (cons (udev-rules-service 'android android-udev-rules #:groups '("adbusers")) %desktop-services)))
Almacena alguna entropía en %random-seed-file
para alimentar
/dev/urandom cuando se reinicia. También intenta alimentar
/dev/urandom con /dev/hwrng durante el arranque, si
/dev/hwrng existe y se tienen permisos de lectura.
Es el nombre del archivo donde algunos bytes aleatorios son almacenados por el servicio urandom-seed-service para alimentar /dev/urandom durante el reinicio. Su valor predeterminado es /var/lib/random-seed.
Este es el tipo de servicio que ejecuta GPM, el daemon de ratón de propósito general, que permite el uso del ratón en la consola Linux. GPM permite a las usuarias el uso del ratón en la consola, notablemente la selección, copia y pegado de texto.
El valor para servicios de este tipo debe ser un objeto
gpm-configuration
(véase a continuación). Este servicio no es parte
de %base-services
.
Tipo de datos que representa la configuración de GPM.
opciones
(predeterminadas: %default-gpm-options
)Opciones de línea de órdenes proporcionadas a gpm
. El conjunto
predeterminado de opciones instruye a gpm
para esperar eventos de
ratón en /dev/input/mice. See Command Line in gpm manual,
para más información.
gpm
(predeterminado: gpm
)El paquete GPM usado.
Este es el tipo de servicio para guix publish
(see Invocación de guix publish
). Su valor debe ser un objeto
guix-publish-configuration
, como se describe a continuación.
Se asume que /etc/guix ya contiene el par de claves de firma como
guix archive --generate-key
lo crea (see Invocación de guix archive
). Si no es el caso, el servicio fallará al arrancar.
Tipo de datos que representa la configuración del servicio guix
publish
.
guix
(predeterminado: guix
)El paquete Guix usado.
port
(predeterminado: 80
)El puerto TCP en el que se esperan conexiones.
host
(predeterminado: "localhost"
)La dirección de red (y, por tanto, la interfaz de red) en la que se
esperarán conexiones. Use "0.0.0.0"
para aceptar conexiones por todas
las interfaces de red.
advertise?
(default: #f
)When true, advertise the service on the local network via the DNS-SD protocol, using Avahi.
This allows neighboring Guix devices with discovery on (see
guix-configuration
above) to discover this guix publish
instance and to automatically download substitutes from it.
compression
(default: '(("gzip" 3) ("zstd" 3))
)Es una lista de tuplas método de compresión/nivel usadas para la compresión de sustituciones. Por ejemplo, para comprimir todas las sustituciones tanto con lzip a nivel 8 como con gzip a nivel 9, escriba:
'(("lzip" 7) ("gzip" 9))
Level 9 achieves the best compression ratio at the expense of increased CPU
usage, whereas level 1 achieves fast compression. See Invocación de guix publish
, for more information on the available compression methods and the
tradeoffs involved.
Una lista vacía desactiva completamente la compresión.
nar-path
(predeterminado: "nar"
)La ruta URL de la que se pueden obtener “nars”. See --nar-path, para más detalles.
cache
(predeterminado: #f
)Cuando es #f
, desactiva la caché y genera los archivos bajo
demanda. De otro modo, debería ser el nombre de un directorio—por ejemplo,
"/var/cache/guix/publish"
—donde guix pubish
almacena los
archivos y metadatos en caché listos para ser enviados. See --cache, para más información sobre sus ventajas e
inconvenientes.
workers
(predeterminado: #f
)Cuando es un entero, es el número de hilos de trabajo usados para la caché;
cuando es #f
, se usa el número de procesadores. See --workers, para más información.
cache-bypass-threshold
(predeterminado: 10 MiB)Cuando cache
es verdadero, su valor indica el tamaño máximo en bytes
de un elemento del almacén hasta el cual guix publish
puede
ignorar un fallo de caché y realizar la petición directamente.
See --cache-bypass-threshold para obtener
más información.
ttl
(predeterminado: #f
)Cuando es un entero, denota el tiempo de vida en segundos de los archivos publicados. See --ttl, para más información.
negative-ttl
(default: #f
)When it is an integer, this denotes the time-to-live in seconds for the negative lookups. See --negative-ttl, for more information.
Devuelve un servicio que ejecuta el programa rngd
de
rng-tools para añadir device a la fuente de entropía del
núcleo. El servicio emitirá un fallo si device no existe.
'()
]Return a service that installs a configuration file for the
pam_limits
module. The procedure optionally takes a list of
pam-limits-entry
values, which can be used to specify ulimit
limits and nice
priority limits to user sessions.
Las siguientes definiciones de límites establecen dos límites “hard” y
“soft” para todas las sesiones de ingreso al sistema de usuarias
pertenecientes al grupo realtime
:
(pam-limits-service
(list
(pam-limits-entry "@realtime" 'both 'rtprio 99)
(pam-limits-entry "@realtime" 'both 'memlock 'unlimited)))
La primera entrada incrementa la prioridad máxima de tiempo real para procesos sin privilegios; la segunda entrada elimina cualquier restricción sobre el espacio de direcciones que puede bloquearse en memoria. Estas configuraciones se usan habitualmente para sistemas de sonido en tiempo real.
Another useful example is raising the maximum number of open file descriptors that can be used:
(pam-limits-service
(list
(pam-limits-entry "*" 'both 'nofile 100000)))
In the above example, the asterisk means the limit should apply to any
user. It is important to ensure the chosen value doesn’t exceed the maximum
system value visible in the /proc/sys/fs/file-max file, else the
users would be prevented from login in. For more information about the
Pluggable Authentication Module (PAM) limits, refer to the ‘pam_limits’
man page from the linux-pam
package.
greetd
is a minimal
and flexible login manager daemon, that makes no assumptions about what you
want to launch.
If you can run it from your shell in a TTY, greetd can start it. If it can be taught to speak a simple JSON-based IPC protocol, then it can be a geeter.
greetd-service-type
provides necessary infrastructure for logging in
users, including:
greetd
PAM service
pam-mount
to mount XDG_RUNTIME_DIR
Here is example of switching from mingetty-service-type
to
greetd-service-type
, and how different terminals could be:
(append
(modify-services %base-services
;; greetd-service-type provides "greetd" PAM service
(delete login-service-type)
;; and can be used in place of mingetty-service-type
(delete mingetty-service-type))
(list
(service greetd-service-type
(greetd-configuration
(terminals
(list
;; we can make any terminal active by default
(greetd-terminal-configuration (terminal-vt "1") (terminal-switch #t))
;; we can make environment without XDG_RUNTIME_DIR set
;; even provide our own environment variables
(greetd-terminal-configuration
(terminal-vt "2")
(default-session-command
(greetd-agreety-session
(extra-env '(("MY_VAR" . "1")))
(xdg-env? #f))))
;; we can use different shell instead of default bash
(greetd-terminal-configuration
(terminal-vt "3")
(default-session-command
(greetd-agreety-session (command (file-append zsh "/bin/zsh")))))
;; we can use any other executable command as greeter
(greetd-terminal-configuration
(terminal-vt "4")
(default-session-command (program-file "my-noop-greeter" #~(exit))))
(greetd-terminal-configuration (terminal-vt "5"))
(greetd-terminal-configuration (terminal-vt "6"))))))
;; mingetty-service-type can be used in parallel
;; if needed to do so, do not (delete login-service-type)
;; as illustrated above
#| (service mingetty-service-type (mingetty-configuration (tty "tty8"))) |#))
Configuration record for the greetd-service-type
.
motd
Un objeto tipo-archivo que contiene el “mensaje del día”.
allow-empty-passwords?
(predeterminado: #t
)Permite contraseñas vacías por defecto para que las primeras usuarias puedan ingresar en el sistema cuando la cuenta de “root” está recién creada.
terminals
(default: '()
)List of greetd-terminal-configuration
per terminal for which
greetd
should be started.
greeter-supplementary-groups
(default: '()
)List of groups which should be added to greeter
user. For instance:
(greeter-supplementary-groups '("seat" "video"))
Note that this example will fail if seat
group does not exist.
Configuration record for per terminal greetd daemon service.
greetd
(default: greetd
)The greetd package to use.
config-file-name
Configuration file name to use for greetd daemon. Generally, autogenerated
derivation based on terminal-vt
value.
log-file-name
Log file name to use for greetd daemon. Generally, autogenerated name based
on terminal-vt
value.
terminal-vt
(default: ‘"7"’)The VT to run on. Use of a specific VT with appropriate conflict avoidance is recommended.
terminal-switch
(default: #f
)Make this terminal active on start of greetd
.
default-session-user
(default: ‘"greeter"’)The user to use for running the greeter.
default-session-command
(default: (greetd-agreety-session)
)Can be either instance of greetd-agreety-session
configuration or
gexp->script
like object to use as greeter.
Configuration record for the agreety greetd greeter.
agreety
(default: greetd
)The package with /bin/agreety
command.
command
(default: (file-append bash "/bin/bash")
)Command to be started by /bin/agreety
on successful login.
command-args
(default: '("-l")
)Command arguments to pass to command.
extra-env
(default: '()
)Extra environment variables to set on login.
xdg-env?
(default: #t
)If true XDG_RUNTIME_DIR
and XDG_SESSION_TYPE
will be set
before starting command. One should note that, extra-env
variables
are set right after mentioned variables, so that they can be overriden.
Generic configuration record for the wlgreet greetd greeter.
wlgreet
(default: wlgreet
)The package with the /bin/wlgreet
command.
command
(default: (file-append sway "/bin/sway")
)Command to be started by /bin/wlgreet
on successful login.
command-args
(default: '()
)Command arguments to pass to command.
output-mode
(default: "all"
)Option to use for outputMode
in the TOML configuration file.
scale
(default: 1
)Option to use for scale
in the TOML configuration file.
background
(default: '(0 0 0 0.9)
)RGBA list to use as the background colour of the login prompt.
headline
(default: '(1 1 1 1)
)RGBA list to use as the headline colour of the UI popup.
prompt
(default: '(1 1 1 1)
)RGBA list to use as the prompt colour of the UI popup.
prompt-error
(default: '(1 1 1 1)
)RGBA list to use as the error colour of the UI popup.
border
(default: '(1 1 1 1)
)RGBA list to use as the border colour of the UI popup.
extra-env
(default: '()
)Extra environment variables to set on login.
Sway-specific configuration record for the wlgreet greetd greeter.
wlgreet-session
(default: (greetd-wlgreet-session)
)A greetd-wlgreet-session
record for generic wlgreet configuration, on
top of the Sway-specific greetd-wlgreet-sway-session
.
sway
(default: sway
)The package providing the /bin/sway
command.
sway-configuration
(default: #f)File-like object providing an additional Sway configuration file to be prepended to the mandatory part of the configuration.
Here is an example of a greetd configuration that uses wlgreet and Sway:
(greetd-configuration
;; We need to give the greeter user these permissions, otherwise
;; Sway will crash on launch.
(greeter-supplementary-groups (list "video" "input" "seat"))
(terminals
(list (greetd-terminal-configuration
(terminal-vt "1")
(terminal-switch #t)
(default-session-command
(greetd-wlgreet-sway-session
(sway-configuration
(local-file "sway-greetd.conf"))))))))
Next: Ejecución de tareas programadas, Up: Servicios [Contents][Index]