about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/home-assistant/cli.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/home-assistant/cli.nix')
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/cli.nix44
1 files changed, 20 insertions, 24 deletions
diff --git a/nixpkgs/pkgs/servers/home-assistant/cli.nix b/nixpkgs/pkgs/servers/home-assistant/cli.nix
index 18bc9c76da00..32f17178fb33 100644
--- a/nixpkgs/pkgs/servers/home-assistant/cli.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/cli.nix
@@ -1,28 +1,18 @@
 { lib
+, fetchFromGitHub
 , python3
 }:
 
-let
-  python = python3.override {
-    packageOverrides = self: super: {
-      click = super.click.overrideAttrs (oldAttrs: rec {
-        version = "8.0.4";
-        src = oldAttrs.src.override {
-          inherit version;
-          sha256 = "sha256-hFjXsSh8X7EoyQ4jOBz5nc3nS+r2x/9jhM6E1v4JCts=";
-        };
-      });
-    };
-  };
-in
-
-python.pkgs.buildPythonApplication rec {
+python3.pkgs.buildPythonApplication rec {
   pname = "homeassistant-cli";
-  version = "0.9.4";
-
-  src = python3.pkgs.fetchPypi {
-    inherit pname version;
-    sha256 = "03kiyqpp3zf8rg30d12h4fapihh0rqwpv5p8jfxb3iq0chfmjx2f";
+  version = "0.9.6";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "home-assistant-ecosystem";
+    repo = "home-assistant-cli";
+    rev = version;
+    hash = "sha256-4OeHJ7icDZUOC5K4L0F0Nd9lbJPgdW4LCU0wniLvJ1Q=";
   };
 
   postPatch = ''
@@ -30,7 +20,7 @@ python.pkgs.buildPythonApplication rec {
     sed -i "s/'\(.*\)\(==\|>=\).*'/'\1'/g" setup.py
   '';
 
-  propagatedBuildInputs = with python.pkgs; [
+  propagatedBuildInputs = with python3.pkgs; [
     aiohttp
     click
     click-log
@@ -44,19 +34,25 @@ python.pkgs.buildPythonApplication rec {
     tabulate
   ];
 
-  # Completion needs to be ported to work with click > 8.0
-  # https://github.com/home-assistant-ecosystem/home-assistant-cli/issues/367
+  # TODO: Completion needs to be adapted after support for latest click was added
+  # $ source <(_HASS_CLI_COMPLETE=bash_source hass-cli) # for bash
+  # $ source <(_HASS_CLI_COMPLETE=zsh_source hass-cli)  # for zsh
+  # $ eval (_HASS_CLI_COMPLETE=fish_source hass-cli)    # for fish
   #postInstall = ''
   #  mkdir -p "$out/share/bash-completion/completions" "$out/share/zsh/site-functions"
   #  $out/bin/hass-cli completion bash > "$out/share/bash-completion/completions/hass-cli"
   #  $out/bin/hass-cli completion zsh > "$out/share/zsh/site-functions/_hass-cli"
   #'';
 
-  checkInputs = with python.pkgs; [
+  nativeCheckInputs = with python3.pkgs; [
     pytestCheckHook
     requests-mock
   ];
 
+  pythonImportsCheck = [
+    "homeassistant_cli"
+  ];
+
   meta = with lib; {
     description = "Command-line tool for Home Assistant";
     homepage = "https://github.com/home-assistant-ecosystem/home-assistant-cli";