私は nix 式を初めて使用します。nix-shell で使用したい 2 つの構成ファイルを見つけました。
残念ながら、nix 式の知識が不足していたため、マージできませんでした。常に構文エラーが発生します。
.nix の場合はカスタム設定用ですshellHook
。ここでは設定のみを簡略化しています$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.nixPythonのオーバーライド用です。ジェダイ・ヴィム仕事。
with import <nixpkgs> {};
( pkgs.python3.buildEnv.override {
extraLibs = with pkgs.python3Packages; [ jedi pyyaml ];
}).env
構造は理解していますa.nix
が、構文がb.nix
異なります。
どうすればいいでしょうか?
nixos以外にもっと簡単に勉強できるリソースはありますか?マニュアル?
答え1
解決済み以下の構成で。
{ 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\]"
'';
}
まだコードを完全に理解していないが、どういうわけか希望のプロンプトが表示され、jedi-vim
今は見ることができるyaml