From bf378019c92de33e701d58aedd5cba47c509044b Mon Sep 17 00:00:00 2001 From: Elliot Date: Mon, 14 Aug 2023 10:24:34 +0800 Subject: [PATCH] keepmenu: 1.3.1 -> 1.4.0 --- pkgs/applications/misc/keepmenu/default.nix | 39 ++++++++++++++------- 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/pkgs/applications/misc/keepmenu/default.nix b/pkgs/applications/misc/keepmenu/default.nix index 6af41c7209e..1e6735d6561 100644 --- a/pkgs/applications/misc/keepmenu/default.nix +++ b/pkgs/applications/misc/keepmenu/default.nix @@ -1,28 +1,42 @@ -{ lib, python3Packages, fetchPypi, xvfb-run }: +{ lib, python3Packages, fetchFromGitHub, xvfb-run, xdotool, dmenu }: python3Packages.buildPythonApplication rec { pname = "keepmenu"; - version = "1.3.1"; + version = "1.4.0"; + format = "pyproject"; - src = fetchPypi { - inherit pname version; - hash = "sha256-AGuJY7IirzIjcu/nY9CzeOqU1liwcRijYLi8hGN/pRg="; + src = fetchFromGitHub { + owner = "firecat53"; + repo = "keepmenu"; + rev = version; + hash = "sha256-3vFg+9Nw+NhuPJbrmBahXwa13wXlBg5IMYwJ+unn88k="; }; - preConfigure = '' - export HOME=$TMPDIR - mkdir -p $HOME/.config/keepmenu - cp config.ini.example $HOME/.config/keepmenu/config.ini - ''; + nativeBuildInputs = with python3Packages; [ + hatchling + hatch-vcs + ]; + + env.SETUPTOOLS_SCM_PRETEND_VERSION = version; propagatedBuildInputs = with python3Packages; [ pykeepass pynput ]; - nativeCheckInputs = [ xvfb-run ]; + nativeCheckInputs = [ xvfb-run xdotool dmenu ]; + + postPatch = '' + substituteInPlace tests/keepmenu-config.ini tests/tests.py \ + --replace "/usr/bin/dmenu" "dmenu" + ''; + checkPhase = '' - xvfb-run python setup.py test + runHook preCheck + + xvfb-run python tests/tests.py + + runHook postCheck ''; pythonImportsCheck = [ "keepmenu" ]; @@ -32,5 +46,6 @@ python3Packages.buildPythonApplication rec { description = "Dmenu/Rofi frontend for Keepass databases"; license = licenses.gpl3Only; maintainers = with maintainers; [ elliot ]; + platforms = platforms.linux; }; }