1{ lib
2, python3Packages
3, fetchFromGitHub
4, nixosTests
5}:
6
7python3Packages.buildPythonApplication rec {
8 pname = "stratis-cli";
9 version = "3.6.2";
10 pyproject = true;
11
12 src = fetchFromGitHub {
13 owner = "stratis-storage";
14 repo = pname;
15 rev = "refs/tags/v${version}";
16 hash = "sha256-f2Bjv7Z7+FZejS5plUGKTlGUixgF2pGN1SeszTDh4Ko=";
17 };
18
19 nativeBuildInputs = with python3Packages; [
20 setuptools
21 ];
22
23 propagatedBuildInputs = with python3Packages; [
24 dbus-client-gen
25 dbus-python-client-gen
26 justbytes
27 packaging
28 psutil
29 python-dateutil
30 wcwidth
31 ];
32
33 nativeCheckInputs = with python3Packages; [
34 pytestCheckHook
35 ];
36
37 disabledTestPaths = [
38 # tests below require dbus daemon
39 "tests/whitebox/integration"
40 ];
41
42 pythonImportsCheck = [ "stratis_cli" ];
43
44 passthru.tests = nixosTests.stratis;
45
46 meta = with lib; {
47 description = "CLI for the Stratis project";
48 homepage = "https://stratis-storage.github.io";
49 license = licenses.asl20;
50 maintainers = with maintainers; [ nickcao ];
51 mainProgram = "stratis";
52 };
53}