python313Packages.i3ipc: refactor

This commit is contained in:
Tom Hunze
2025-08-30 23:53:35 +02:00
parent 99a5b16b76
commit 3d53ad129b
@@ -2,28 +2,28 @@
lib,
buildPythonPackage,
fetchFromGitHub,
xorg,
pytest,
coreutils,
setuptools,
xlib,
fontconfig,
pytestCheckHook,
pytest-asyncio,
pytest-timeout,
pytest-xvfb,
i3,
xlib,
xdpyinfo,
makeFontsConf,
coreutils,
xorg,
}:
buildPythonPackage rec {
pname = "i3ipc";
version = "2.2.1";
format = "setuptools";
pyproject = true;
src = fetchFromGitHub {
owner = "acrisci";
owner = "altdesktop";
repo = "i3ipc-python";
rev = "v${version}";
sha256 = "13bzs9dcv27czpnnbgz7a037lm8h991c8gk0qzzk5mq5yak24715";
tag = "v${version}";
hash = "sha256-JRwipvIF1zL/x2A+xEJKEFV6BlDnv2Xt/eyIzVrSf40=";
};
patches = [
@@ -33,34 +33,40 @@ buildPythonPackage rec {
./fix-async-tests.patch
];
propagatedBuildInputs = [ xlib ];
fontsConf = makeFontsConf { fontDirectories = [ ]; };
FONTCONFIG_FILE = fontsConf; # Fontconfig error: Cannot load default config file
nativeCheckInputs = [
pytest
pytest-asyncio
xdpyinfo
pytest-timeout
pytest-xvfb
xorg.xvfb
i3
];
postPatch = ''
substituteInPlace test/i3.config \
--replace /bin/true ${coreutils}/bin/true
--replace-fail /bin/true ${coreutils}/bin/true
'';
checkPhase = ''
py.test --ignore=test/aio/test_shutdown_event.py \
--ignore=test/test_shutdown_event.py
'';
build-system = [ setuptools ];
dependencies = [ xlib ];
meta = with lib; {
# Fontconfig error: Cannot load default config file
env.FONTCONFIG_FILE = "${fontconfig.out}/etc/fonts/fonts.conf";
nativeCheckInputs = [
pytestCheckHook
pytest-asyncio
pytest-timeout
pytest-xvfb
i3
xorg.xdpyinfo
xorg.xvfb
];
disabledTestPaths = [
# Timeout
"test/test_shutdown_event.py::TestShutdownEvent::test_shutdown_event_reconnect"
"test/aio/test_shutdown_event.py::TestShutdownEvent::test_shutdown_event_reconnect"
];
pythonImportsCheck = [ "i3ipc" ];
meta = {
description = "Improved Python library to control i3wm and sway";
homepage = "https://github.com/acrisci/i3ipc-python";
license = licenses.bsd3;
maintainers = with maintainers; [ vanzef ];
homepage = "https://github.com/altdesktop/i3ipc-python";
changelog = "https://github.com/altdesktop/i3ipc-python/releases/tag/${src.tag}";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ vanzef ];
};
}