| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 | 
							- { config, pkgs, ... }:
 
- let
 
-   buildBinPackage = options: pkgs.stdenv.mkDerivation {
 
-     inherit (options) pname version;
 
-     src = pkgs.fetchurl {
 
-       inherit (options) url sha256;
 
-     };
 
-     unpackPhase = if options ? "binPath" then "unpackFile $src" else ":";
 
-     installPhase = let
 
-       binPath = if options ? "binPath" then options.binPath else "$src";
 
-       completionCommands = if options ? hasCompletion then ''
 
-         $out/bin/${options.pname} completion bash > $out/share/bash-completion/completions/${options.pname}
 
-         $out/bin/${options.pname} completion zsh > $out/share/zsh/site-functions/_${options.pname}
 
-       '' else "";
 
-     in ''
 
-       mkdir -p $out/bin $out/share/bash-completion/completions $out/share/zsh/site-functions
 
-       cp ${binPath} $out/bin/${options.pname}
 
-       chmod +x $out/bin/${options.pname}
 
-       ${completionCommands}
 
-     '';
 
-   };
 
-   argocd = buildBinPackage rec {
 
-     pname = "argocd";
 
-     version = "1.3.0";
 
-     url = "https://github.com/argoproj/argo-cd/releases/download/v${version}/argocd-linux-amd64";
 
-     sha256 = "1mspgjipalngbjl9rdi2pyvq3g8nh4w2sq5isz87l7fkj4cy4qvk";
 
-     hasCompletion = true;
 
-   };
 
-   helm = buildBinPackage rec {
 
-     pname = "helm";
 
-     version = "3.0.0";
 
-     url = "https://get.helm.sh/helm-v${version}-linux-amd64.tar.gz";
 
-     sha256 = "10e1fdcca263062b1d7b2cb93a924be1ef3dd6c381263d8151dd1a20a3d8c0dc";
 
-     binPath = "linux-amd64/helm";
 
-     hasCompletion = true;
 
-   };
 
-   eksctl = buildBinPackage rec {
 
-     pname = "eksctl";
 
-     version = "0.10.2";
 
-     url = "https://github.com/weaveworks/eksctl/releases/download/${version}/eksctl_Linux_amd64.tar.gz";
 
-     sha256 = "d3e70cd101ca4756ca9b2fbbeb6edcf580ae4783d80004c8847fa177e7d32e03";
 
-     binPath = "eksctl";
 
-     hasCompletion = true;
 
-   };
 
-   k9s = buildBinPackage rec {
 
-     pname = "k9s";
 
-     version = "0.9.3";
 
-     url = "https://github.com/derailed/k9s/releases/download/${version}/k9s_${version}_Linux_x86_64.tar.gz";
 
-     sha256 = "af3608517684e59de94573ad123486edd6f392c8c319ddbde6223d3ac2d37bd9";
 
-     binPath = "k9s";
 
-   };
 
-   kustomize = buildBinPackage rec {
 
-     pname = "kustomize";
 
-     version = "3.2.1";
 
-     url = "https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize/v${version}/kustomize_kustomize.v${version}_linux_amd64";
 
-     sha256 = "a91b38778945e8a63fe70bc7522703a94c1d572d5dcee245e96647359e1fd04b";
 
-   };
 
-   kubectl-argo-rollouts = buildBinPackage rec {
 
-     pname = "kubectl-argo-rollouts";
 
-     version = "0.6.0";
 
-     url = "https://github.com/argoproj/argo-rollouts/releases/download/v${version}/kubectl-argo-rollouts-linux-amd64";
 
-     sha256 = "1cad7038l2jpmkr1gn8293f3vg4jbypqxilix6qcvfdqkxda602p";
 
-   };
 
-   velero = buildBinPackage rec {
 
-     pname = "velero";
 
-     version = "1.2.0";
 
-     url = "https://github.com/vmware-tanzu/velero/releases/download/v${version}/velero-v${version}-linux-amd64.tar.gz";
 
-     sha256 = "4080a37b487a859b5bba8391e965267cd0fe29cd67fd070b6f695fed45619e2c";
 
-     binPath = "velero-v${version}-linux-amd64/velero";
 
-   };
 
- in {
 
-   environment.systemPackages = with pkgs; [
 
-     kubectl
 
-     kubectx
 
-     kops
 
-     argocd
 
-     helm
 
-     eksctl
 
-     k9s
 
-     kustomize
 
-     kubectl-argo-rollouts
 
-     aws-iam-authenticator
 
-     velero
 
-   ];
 
- }
 
 
  |