Nixパッケージのストレージパスを参照する方法は?

Nixパッケージのストレージパスを参照する方法は?

awscliコマンド補完関連機能を追加したいです。

私の特別なケースでは、からスクリプトをインポートする必要があります/nix/store/hvx7xqvjz7r08nsb9kssh1d9s302v3sp-awscli-1.16.106/share/zsh/site-functions/aws_zsh_completer.sh

/nix/store/hvx7xqvjz7r08nsb9kssh1d9s302v3sp-awscli-1.16.106package()() の保存パスを取得するにはawscli?なぜなら、私はこの参照をハードコーディングするのが理想的だとは思わないからです。

ベストアンサー1

これを使用して、取得したいファイルを指すconfiguration.nixシンボリックリンクを作成できます。/etcこれで、先ほど話したシンボリックリンクが届きます。たとえば、このようなもの...

構成.nix

environment.etc."zsh/zshrc".source = "${pkgs.awscli}/share/zsh/site-functions/aws_zsh_completer.sh";

/etc/zsh/zshrc...次を指すシンボリックリンクを生成します。/nix/store/hvx7xqvjz7r08nsb9kssh1d9s302v3sp-awscli-1.16.106/share/zsh/site-functions/aws_zsh_completer.sh

これはを通じて行われるため、configuration.nixシステムが構築されるたびにシンボリックリンクが正しいパスに更新されます。

それから/etc/zsh/zshrcこれを~.zshrc

おすすめ記事