at master 819 B view raw
1{ 2 config, 3 pkgs, 4 lib, 5 ... 6}: 7 8let 9 10 cfg = config.programs._1password; 11 12in 13{ 14 imports = [ 15 (lib.mkRemovedOptionModule [ "programs" "_1password" "gid" ] '' 16 A preallocated GID will be used instead. 17 '') 18 ]; 19 20 options = { 21 programs._1password = { 22 enable = lib.mkEnableOption "the 1Password CLI tool"; 23 24 package = lib.mkPackageOption pkgs "1Password CLI" { 25 default = [ "_1password-cli" ]; 26 }; 27 }; 28 }; 29 30 config = lib.mkIf cfg.enable { 31 environment.systemPackages = [ cfg.package ]; 32 users.groups.onepassword-cli.gid = config.ids.gids.onepassword-cli; 33 34 security.wrappers = { 35 "op" = { 36 source = "${cfg.package}/bin/op"; 37 owner = "root"; 38 group = "onepassword-cli"; 39 setuid = false; 40 setgid = true; 41 }; 42 }; 43 }; 44}