Nixを使ってシェルプラグインを設定する

1Passwordマニュアル|Nixを使ってシェルを管理する方法について詳しく解説します。

Nixを使ってシェルプラグインを設定する

Nixを使ってシェル設定を管理している場合は、Nix設定内で1Password Shellプラグインをネイティブに設定できます。

  • 1. 1Password Shell Plugins フレークをフレーク入力に追加します。

  • {

  • description = "My NixOS system flake";

  • inputs = {

  • nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";

  • # import the 1Password Shell Plugins Flake

  • _1password-shell-plugins.url = "github:1Password/shell-plugins";

  • # the rest of your flake inputs here

  • };

  • outputs = inputs@{ nixpkgs, ... }: {

  • # the rest of your flake here

  • }

  • }

  • 2. flakeの出力設定のどこかに適切なモジュールをインポートして使います。

    • ホームマネージャーなしの NixOS

  • {

  • # import the NixOS module

  • imports = [ inputs._1password-shell-plugins.nixosModules.default ];

  • programs._1password-shell-plugins = {

  • # enable 1Password shell plugins for bash, zsh, and fish shell

  • enable = true;

  • # the specified packages as well as 1Password CLI will be

  • # automatically installed and configured to use shell plugins

  • plugins = with pkgs; [ gh awscli2 cachix ];

  • };

  • # this can also be `programs.bash` or `programs.fish`

  • programs.zsh = {

  • enable = true;

  • # the rest of your shell configuration here

  • };

  • }

    • ホームマネージャーありのNix

  • {

  • # import the home-manager module

  • imports = [ inputs._1password-shell-plugins.hmModules.default ];

  • programs._1password-shell-plugins = {

  • # enable 1Password shell plugins for bash, zsh, and fish shell

  • enable = true;

  • # the specified packages as well as 1Password CLI will be

  • # automatically installed and configured to use shell plugins

  • plugins = with pkgs; [ gh awscli2 cachix ];

  • };

  • # this can also be `programs.bash` or `programs.fish`

  • programs.zsh = {

  • enable = true;

  • # the rest of your shell configuration here

  • };

  • }

  • 3. 更新された設定を適用します。

    • NixOS(NixOS モジュールとしてホームマネージャーを含む)

  • ~/path/to/flake/directory/はflake.nixファイルを含むディレクトリーへのパスであり、my-computerはシステム設定として使うflake出力の名前です。

  • sudo nixos-rebuild switch --flake "~/path/to/flake/directory/.#my-computer"

    • スタンドアロンのホームマネージャーありのNix

  • ~/path/to/flake/directory/はflake.nixファイルを含むディレクトリーへのパスであり、my-computerはシステム設定として使うflake出力の名前です。

  • $ home-manager switch --flake "~/path/to/flake/directory/.#my-computer"