Soy nuevo en la expresión nix. Encontré dos archivos de configuración que quiero usar en nix-shell.
Desafortunadamente, no pude fusionarlos debido a mi falta de conocimiento sobre expresiones nix. Siempre termina con un error de sintaxis.
a.nixes para configurar personalizado shellHook
. Aquí simplificado solo para configurar$PS1
{ pkgs ? import <nixpkgs> {} }:
with pkgs;
stdenv.mkDerivation {
name = "python3-shell";
buildInputs = [ ];
shellHook = ''
export PS1="\[\033[1;32m\][nix-shell:\w]\n$ \[\033[0m\]"
'';
}
b.nixes para anulación de Python. necesito esto para hacerjedi-vimtrabajar.
with import <nixpkgs> {};
( pkgs.python3.buildEnv.override {
extraLibs = with pkgs.python3Packages; [ jedi pyyaml ];
}).env
Entiendo a.nix
las estructuras pero la sintaxis b.nix
es diferente.
¿Cómo debería hacerlo?
¿Existe algún recurso más sencillo para estudiar además de nixos?manual?
Respuesta1
Resueltocon la siguiente configuración.
{ pkgs ? import <nixpkgs> {} }:
with pkgs;
let py3s = pkgs.python3.buildEnv.override {
extraLibs = with pkgs.python3Packages; [ jedi pyyaml ];
};
in stdenv.mkDerivation {
name = "python3-shell";
buildInputs = [ py3s ];
shellHook = ''
export PS1="\[\033[1;32m\][nix-shell:\w]\n$ \[\033[0m\]"
'';
}
Todavía no entiendo completamente el código, pero de alguna manera recibí el mensaje de deseo y jedi-vim
ahora puedo verlo.yaml