about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/tools/hcloud/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/tools/hcloud/default.nix')
-rw-r--r--nixpkgs/pkgs/development/tools/hcloud/default.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/tools/hcloud/default.nix b/nixpkgs/pkgs/development/tools/hcloud/default.nix
new file mode 100644
index 000000000000..fd05e12b4d55
--- /dev/null
+++ b/nixpkgs/pkgs/development/tools/hcloud/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "hcloud-${version}";
+  version = "1.11.0";
+  
+  goPackagePath = "github.com/hetznercloud/cli";
+
+  src = fetchFromGitHub {
+    owner = "hetznercloud";
+    repo = "cli";
+    rev = "v${version}";
+    sha256 = "0iknw14728l2mynrvb3fiqm7y893ppp22gbb3mppi6iy3as94f1f";
+  };
+
+  goDeps = ./deps.nix;
+
+  buildFlagsArray = [ "-ldflags=" "-w -X github.com/hetznercloud/cli/cli.Version=${version}" ];
+
+  postInstall = ''
+    mkdir -p \
+      $bin/etc/bash_completion.d \
+      $bin/share/zsh/vendor-completions
+
+    # Add bash completions
+    $bin/bin/hcloud completion bash > "$bin/etc/bash_completion.d/hcloud"
+
+    # Add zsh completions
+    echo "#compdef hcloud" > "$bin/share/zsh/vendor-completions/_hcloud"
+    $bin/bin/hcloud completion zsh >> "$bin/share/zsh/vendor-completions/_hcloud"
+  '';
+
+  meta = {
+    description = "A command-line interface for Hetzner Cloud, a provider for cloud virtual private servers";
+    homepage = https://github.com/hetznercloud/cli;
+    license = stdenv.lib.licenses.mit;
+    platforms = stdenv.lib.platforms.all;
+    maintainers = [ stdenv.lib.maintainers.zauberpony ];
+  };
+}