Supongamos que busco un paquete para instalar usando nix-env
la --query
operación de:
$ nix-env -qa 'aspell.*en'
aspell-dict-en-7.1-0
Escribo este nombre de paquete en /etc/nixos/configuration.nix
el archivo de configuración principal de NixOS :
environment.systemPackages = with pkgs; [
aspell-dict-en
];
Sin embargo, si ejecuto sudo nixos-rebuild switch
, el comando NixOS para actualizar la configuración e instalar todos los paquetes de todo el sistema especificados por declarative , aborta con un error:
error: undefined variable ‘aspell-dict-en’ at /etc/nixos/configuration.nix:44:5
Sé que para muchos paquetes, aunque no todos, el nombre que se nix-env
devuelve y el nombre que se debe especificar en la environment.systemPackages
opción de configuración son diferentes, pero no entiendo la lógica. ¿Cómo instalo un paquete que encontré nix-env
?
-P
opción no funciona--installed
, como se puede ver connix-env -q --installed -P | grep terminus
qué impresiones enterminus-font
lugar determinus_font
. La solución consiste en el usonix-env -qaP | grep terminus-font
, sino que significa que no se puede volcar fácilmente la salida denix-env -q --installed
alconfiguration.nix
.En caso de que esté utilizando NixOS para Data Science:
Módulos de Python :
o
O si está buscando especialmente paquetes / bibliotecas R
alternativamente, obtienes paquetes ig npm con:
También hay un sitio web para buscar pkgs
fuente
Guardaría el resultado
nix-env -v -qaP '*'
en un archivo (ya que generalmente demora un tiempo en regresar).Tenga en cuenta que nix-env parece ignorar las cosas debajo
haskellPackages
(y posiblemente otras).La búsqueda de nix-env es actualmente bastante frustrante ya que tomará más de 5 segundos y luego regresará con un
error: regex error
...fuente
Adicional a las opciones de Mirzhans: puedes marcar
/nix/store
comogrep -irw "programm-name" /nix/store
. Pero esto podría ser un poco confuso. También en su directorio de inicio, puede consultar el directorio.local/share
de programas / aplicaciones instalados.fuente