1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 click, 6 pytestCheckHook, 7 pytest-click, 8 setuptools, 9 writableTmpDirAsHomeHook, 10}: 11 12buildPythonPackage rec { 13 pname = "click-shell"; 14 version = "2.1"; 15 pyproject = true; 16 17 src = fetchFromGitHub { 18 owner = "clarkperkins"; 19 repo = "click-shell"; 20 tag = version; 21 hash = "sha256-4QpQzg0yFuOFymGiTI+A8o6LyX78iTJMqr0ernYbilI="; 22 }; 23 24 build-system = [ setuptools ]; 25 26 dependencies = [ click ]; 27 28 nativeCheckInputs = [ 29 pytest-click 30 pytestCheckHook 31 writableTmpDirAsHomeHook 32 ]; 33 34 pythonImportsCheck = [ "click_shell" ]; 35 36 meta = with lib; { 37 description = "Extension to click that easily turns your click app into a shell utility"; 38 longDescription = '' 39 This is an extension to click that easily turns your click app into a 40 shell utility. It is built on top of the built in python cmd module, 41 with modifications to make it work with click. It adds a 'shell' mode 42 with command completion to any click app. 43 ''; 44 homepage = "https://github.com/clarkperkins/click-shell"; 45 changelog = "https://github.com/clarkperkins/click-shell/releases/tag/${src.tag}"; 46 license = licenses.bsd3; 47 maintainers = with maintainers; [ binsky ]; 48 }; 49}