home-assistant: 2025.5.3 -> 2025.6.0 (#415930)

This commit is contained in:
Martin Weinelt
2025-06-12 21:41:01 +02:00
committed by GitHub
58 changed files with 375 additions and 215 deletions
@@ -26,7 +26,7 @@
buildPythonPackage rec {
pname = "aioesphomeapi";
version = "30.2.0";
version = "32.2.1";
pyproject = true;
disabled = pythonOlder "3.9";
@@ -35,7 +35,7 @@ buildPythonPackage rec {
owner = "esphome";
repo = "aioesphomeapi";
tag = "v${version}";
hash = "sha256-2mH1+/58DSWYWl/mTBsCp6r77OUNWV5rR+4mnbKV9PE=";
hash = "sha256-1ZepZJdJosPPdFhx8PwArIaoz415GfA1vfc3JJ77LNo=";
};
build-system = [
@@ -10,14 +10,14 @@
buildPythonPackage rec {
pname = "apsystems-ez1";
version = "2.6.0";
version = "2.7.0";
pyproject = true;
src = fetchFromGitHub {
owner = "SonnenladenGmbH";
repo = "APsystems-EZ1-API";
tag = version;
hash = "sha256-/dseMzi92qlual+L6v6Cl5Xd4U9c7SPdclmTSQTVor0=";
hash = "sha256-ry3sQPkYnH0asmE41lEQA5G2tk07eTpsBiuJbVIjrXU=";
};
build-system = [ poetry-core ];
@@ -16,7 +16,7 @@
buildPythonPackage rec {
pname = "bluetooth-auto-recovery";
version = "1.5.1";
version = "1.5.2";
pyproject = true;
disabled = pythonOlder "3.9";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "Bluetooth-Devices";
repo = "bluetooth-auto-recovery";
tag = "v${version}";
hash = "sha256-p8xuYmU0gXQYnPdTzzJTyQTYuShzPa/twD8r5HNEsN4=";
hash = "sha256-9FwQNauWnWQ7BQoKMwYEEc96/iP6iH9SfvHxlZtePOQ=";
};
build-system = [ poetry-core ];
@@ -2,43 +2,43 @@
lib,
buildPythonPackage,
fetchFromGitHub,
fetchpatch2,
appdirs,
pytz,
geojson,
hatchling,
requests,
pytestCheckHook,
requests-mock,
pythonOlder,
setuptools,
versioningit,
}:
buildPythonPackage rec {
pname = "datapoint";
version = "0.9.9";
version = "0.12.1";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "ejep";
owner = "EJEP";
repo = "datapoint-python";
tag = "v${version}";
hash = "sha256-zUvwfBwJe8SaB96/Jz7Qeanz1mHmLVp2JW9qkR2dRnY=";
tag = version;
hash = "sha256-caIbz/tMQbFKK5UVhYiEnGv3EoI3H2y5V4EDASQ253o=";
};
patches = [
(fetchpatch2 {
# Hardcode version (instead of using versioneer)
url = "https://github.com/EJEP/datapoint-python/commit/57e649b26ecf39fb11f507eb920b1d059d433721.patch";
hash = "sha256-trOPtwlaJDeA4Kau4fwZCxqJiw96+T/le461t09O8io=";
})
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail 'dynamic = ["version"]' 'version = "${version}"'
'';
build-system = [
hatchling
versioningit
];
nativeBuildInputs = [ setuptools ];
propagatedBuildInputs = [
dependencies = [
appdirs
pytz
geojson
requests
];
@@ -47,14 +47,12 @@ buildPythonPackage rec {
requests-mock
];
pytestFlagsArray = [ "tests/unit" ];
pythonImportsCheck = [ "datapoint" ];
meta = {
description = "Python interface to the Met Office's Datapoint API";
homepage = "https://github.com/ejep/datapoint-python";
changelog = "https://github.com/EJEP/datapoint-python/blob/v${version}/CHANGELOG.md";
homepage = "https://github.com/EJEP/datapoint-python";
changelog = "https://github.com/EJEP/datapoint-python/blob/${src.tag}/CHANGELOG.md";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ dotlambda ];
};
@@ -20,7 +20,7 @@
buildPythonPackage rec {
pname = "deebot-client";
version = "13.2.1";
version = "13.3.0";
pyproject = true;
disabled = pythonOlder "3.13";
@@ -29,12 +29,12 @@ buildPythonPackage rec {
owner = "DeebotUniverse";
repo = "client.py";
tag = version;
hash = "sha256-6R9ihxe63YMVgVk+5R9pDNT3a/c9lK28wNleVb5NcRA=";
hash = "sha256-dnh+3/viaaxlx3H0ceDH1N72kC1HBC7Szz+Gb6ryUJM=";
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit pname version src;
hash = "sha256-GNqoP/Zz5xHl2cLz7AqRKXsfLXgdLbgXSK8EdBWtOAU=";
hash = "sha256-v8FtW1gPoPfOpcxUrM7g0LKR8k0VPR13hsHCPT8uLzs=";
};
pythonRelaxDeps = [
@@ -20,7 +20,7 @@
buildPythonPackage rec {
pname = "env-canada";
version = "0.10.2";
version = "0.11.2";
pyproject = true;
disabled = pythonOlder "3.11";
@@ -28,8 +28,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "michaeldavie";
repo = "env_canada";
tag = version;
hash = "sha256-OguS5oRo7wNQUvT33k6+Sg8GE4GipFo84F/13TADUpw=";
tag = "v${version}";
hash = "sha256-r0a2bMgWY6dH88aOJoNpmcSyQi207XDI3Ehu37kU9hY=";
};
build-system = [ setuptools ];
@@ -64,6 +64,8 @@ buildPythonPackage rec {
"test_get_ec_sites"
"test_ecradar"
"test_historical_number_values"
"test_basemap_caching_behavior"
"test_layer_image_caching"
];
pythonImportsCheck = [ "env_canada" ];
@@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "go2rtc-client";
version = "0.1.2";
version = "0.2.1";
pyproject = true;
disabled = pythonOlder "3.12";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "home-assistant-libs";
repo = "python-go2rtc-client";
tag = version;
hash = "sha256-t4ewL4YvxdeDBBKDYapvDUK/Mt6zQ/hhOpVtW3dlmSg=";
hash = "sha256-d5N9IEmxCDKqDv4lD9tYyTPWtR6d86iCZzucx3Pbx7Y=";
};
postPatch = ''
@@ -19,7 +19,7 @@
buildPythonPackage rec {
pname = "habiticalib";
version = "0.3.7";
version = "0.4.0";
pyproject = true;
disabled = pythonOlder "3.12";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
owner = "tr4nt0r";
repo = "habiticalib";
tag = "v${version}";
hash = "sha256-i2yGPTZiinErWK7vX/3mwBtO4rjUhoEORhnXkFplUcM=";
hash = "sha256-RYtTJavfw5gQTo0m/Dgkv/6ghv+T5SSaaweiI370OOA=";
};
build-system = [
@@ -64,7 +64,7 @@ buildPythonPackage rec {
meta = {
description = "Library for the Habitica API";
homepage = "https://github.com/tr4nt0r/habiticalib";
changelog = "https://github.com/tr4nt0r/habiticalib/releases/tag/v${version}";
changelog = "https://github.com/tr4nt0r/habiticalib/releases/tag/${src.tag}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
};
@@ -21,7 +21,7 @@
buildPythonPackage rec {
pname = "habluetooth";
version = "3.48.2";
version = "3.49.0";
pyproject = true;
disabled = pythonOlder "3.11";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
owner = "Bluetooth-Devices";
repo = "habluetooth";
tag = "v${version}";
hash = "sha256-zhvsw8b4IkD0hB0Mhn/AKEYhFyPbOMbouEbpHbwNTo8=";
hash = "sha256-+jv6345Qfay66hl4KBy93B3AMg4lwN/DtjohuFvh9+M=";
};
build-system = [
@@ -23,7 +23,7 @@
buildPythonPackage rec {
pname = "hass-nabucasa";
version = "0.96.0";
version = "0.101.0";
pyproject = true;
disabled = pythonOlder "3.13";
@@ -32,13 +32,16 @@ buildPythonPackage rec {
owner = "nabucasa";
repo = "hass-nabucasa";
tag = version;
hash = "sha256-U6rxX1VgSpOkmd/kyf2thYF/0TtsguWbVxXaeuq/wvs=";
hash = "sha256-AxkLvSXGCs31rDcoo0PWqG8p/CC2/oj4XzZ2j882Ma4=";
};
pythonRelaxDeps = [ "acme" ];
build-system = [ setuptools ];
pythonRelaxDeps = [
"acme"
"josepy"
];
dependencies = [
acme
aiohttp
@@ -14,14 +14,14 @@
buildPythonPackage rec {
pname = "hdate";
version = "1.1.0";
version = "1.1.1";
pyproject = true;
src = fetchFromGitHub {
owner = "py-libhdate";
repo = "py-libhdate";
tag = "v${version}";
hash = "sha256-NNaspGNfrtZqo9sUOJVyYlJT7dhr/nzueuaqewUMlpM=";
hash = "sha256-75nccnGUA9sZbJKy+vgJhPFxCJvxBz9u9ni5Y4vNu4A=";
};
pythonRelaxDeps = [
@@ -16,7 +16,7 @@
buildPythonPackage rec {
pname = "homematicip";
version = "2.0.1.1";
version = "2.0.4";
pyproject = true;
disabled = pythonOlder "3.12";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "hahn-th";
repo = "homematicip-rest-api";
tag = version;
hash = "sha256-klDyrbIJeAm3C7sCo4Z4OKDvm5+V8mfwYbyS22CKVQU=";
hash = "sha256-AevInggDGEz3FcIwO1tk1lXI4m9g8MF92lc24f3AGgM=";
};
build-system = [
@@ -12,21 +12,16 @@
buildPythonPackage rec {
pname = "lektricowifi";
version = "0.0.43";
version = "0.1";
pyproject = true;
src = fetchFromGitHub {
owner = "Lektrico";
repo = "lektricowifi";
tag = "v.${version}";
hash = "sha256-NwM1WpH6tS0iAVpG2gSFJpDPPn9nECHAzpOnWzeYPH4=";
hash = "sha256-GkRZ+fBjLtiZ3dPsn/xeJ7c0cVMY6SHIs+wqhmXXOTk=";
};
postPatch = ''
substituteInPlace tests/test_mocked_devices.py \
--replace-fail "from asyncmock import AsyncMock" "from unittest.mock import AsyncMock"
'';
build-system = [ setuptools ];
pythonRelaxDeps = [
@@ -4,39 +4,29 @@
buildPythonPackage,
dnspython,
fetchFromGitHub,
poetry-core,
poetry-dynamic-versioning,
hatchling,
pytest-asyncio,
pytest-cov-stub,
pytest-rerunfailures,
pytestCheckHook,
pythonOlder,
typing-extensions,
}:
buildPythonPackage rec {
pname = "mcstatus";
version = "11.1.1";
version = "12.0.1";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "py-mine";
repo = "mcstatus";
tag = "v${version}";
hash = "sha256-P8Su5P/ztyoXZBVvm5uCMDn4ezeg11oRSQ0QCyIJbVw=";
hash = "sha256-FSXELbEQYUUu2maWBFb5Fj7Y3zXqwmFQRAu+nNco0lQ=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace " --cov=mcstatus --cov-append --cov-branch --cov-report=term-missing -vvv --no-cov-on-fail" ""
'';
build-system = [ hatchling ];
nativeBuildInputs = [
poetry-core
poetry-dynamic-versioning
];
propagatedBuildInputs = [
dependencies = [
asyncio-dgram
dnspython
];
@@ -45,26 +35,30 @@ buildPythonPackage rec {
nativeCheckInputs = [
pytest-asyncio
pytest-cov-stub
pytest-rerunfailures
pytestCheckHook
typing-extensions
];
pythonImportsCheck = [ "mcstatus" ];
disabledTests = [
# DNS features are limited in the sandbox
"test_query"
"test_query_retry"
"test_resolve_localhost"
"test_async_resolve_localhost"
"test_java_server_with_query_port"
];
meta = with lib; {
meta = {
description = "Python library for checking the status of Minecraft servers";
mainProgram = "mcstatus";
homepage = "https://github.com/py-mine/mcstatus";
changelog = "https://github.com/py-mine/mcstatus/releases/tag/v${version}";
license = with licenses; [ asl20 ];
maintainers = with maintainers; [ fab ];
license = with lib.licenses; [ asl20 ];
maintainers = with lib.maintainers; [
fab
perchun
];
};
}
@@ -16,14 +16,14 @@
buildPythonPackage rec {
pname = "midea-local";
version = "6.2.0";
version = "6.3.0";
pyproject = true;
src = fetchFromGitHub {
owner = "midea-lan";
repo = "midea-local";
tag = "v${version}";
hash = "sha256-zXOxgPFX6TRdFnQ0OqqEu1sy9MmlfxEg7KedQWxYv48=";
hash = "sha256-J044JyRrpig2RmX39tvxBbjFExFouK3++0mvaPN+8To=";
};
build-system = [ setuptools ];
@@ -9,11 +9,12 @@
pytestCheckHook,
pythonOlder,
setuptools,
syrupy,
}:
buildPythonPackage rec {
pname = "py-synologydsm-api";
version = "2.7.2";
version = "2.7.3";
pyproject = true;
disabled = pythonOlder "3.9";
@@ -22,7 +23,7 @@ buildPythonPackage rec {
owner = "mib1185";
repo = "py-synologydsm-api";
tag = "v${version}";
hash = "sha256-I9Ew3rBmgG+FuT66e8VgMa0WzAwr+ng5R8uYMzSyYyg=";
hash = "sha256-LaeqAY+8WfoMwrZhwZUEcuafGvv+7reuxEh8zQ7j5S4=";
};
build-system = [ setuptools ];
@@ -36,6 +37,7 @@ buildPythonPackage rec {
nativeCheckInputs = [
pytest-asyncio
pytestCheckHook
syrupy
];
pythonImportsCheck = [ "synology_dsm" ];
@@ -1,6 +1,7 @@
{
lib,
aiohttp,
anyio,
buildPythonPackage,
fetchFromGitHub,
oauthlib,
@@ -17,7 +18,7 @@
buildPythonPackage rec {
pname = "pyatmo";
version = "9.0.0";
version = "9.2.1";
pyproject = true;
disabled = pythonOlder "3.11";
@@ -26,7 +27,7 @@ buildPythonPackage rec {
owner = "jabesq";
repo = "pyatmo";
tag = "v${version}";
hash = "sha256-DGtfXM0Bfo5iyJ66/Bm5rQB2/ZYA+ZhlkUci1viynWY=";
hash = "sha256-vSyZsWhqyQqKFukD6GbtkAJd3QBmRwdmRIYD19DXQW0=";
};
pythonRelaxDeps = [
@@ -45,6 +46,7 @@ buildPythonPackage rec {
];
nativeCheckInputs = [
anyio
pytest-asyncio
pytest-mock
pytestCheckHook
@@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "pydrawise";
version = "2025.3.0";
version = "2025.6.0";
pyproject = true;
disabled = pythonOlder "3.10";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "dknowles2";
repo = "pydrawise";
tag = version;
hash = "sha256-sstHydNXoz7fwNrN/9gIRg+9H6vF8WR6sGL04RatTkw=";
hash = "sha256-9WwVhA5dJTApjbSVLDGzfyzFXWFx/YJaUSRmaLkh2L0=";
};
build-system = [
@@ -1,54 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
paho-mqtt,
pandas,
pycryptodome,
pythonOlder,
requests,
setuptools,
xmltodict,
}:
buildPythonPackage rec {
pname = "pyezviz";
version = "0.2.2.4a";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "baqs";
repo = "pyEzviz";
tag = version;
hash = "sha256-OgDplQ6TrK2CZbNgJpoYC8TkK1sG73HdpUyHE+2ZTLk=";
};
build-system = [ setuptools ];
dependencies = [
paho-mqtt
pandas
pycryptodome
requests
xmltodict
];
# Project has no tests. test_cam_rtsp.py is more a sample for using the module
doCheck = false;
pythonImportsCheck = [ "pyezviz" ];
# renamed to pyezvizapi
passthru.skipBulkUpdate = true;
meta = with lib; {
description = "Python interface for for Ezviz cameras";
homepage = "https://github.com/baqs/pyEzviz/";
changelog = "https://github.com/BaQs/pyEzviz/releases/tag/${version}";
license = with licenses; [ asl20 ];
maintainers = with maintainers; [ fab ];
mainProgram = "pyezviz";
};
}
@@ -9,14 +9,14 @@
buildPythonPackage rec {
pname = "pymiele";
version = "0.4.3";
version = "0.5.2";
pyproject = true;
disabled = pythonOlder "3.13";
src = fetchPypi {
inherit pname version;
hash = "sha256-o3G8+TdjPzctlq/CHYsac7aEx0hVLo1M1JLos3S9ek0=";
hash = "sha256-pU1PC1DXoXjZVkml3OFPhKgLVqhB9LbPPE1NzphyOSk=";
};
build-system = [ setuptools ];
@@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "pypck";
version = "0.8.5";
version = "0.8.6";
pyproject = true;
disabled = pythonOlder "3.11";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "alengwenus";
repo = "pypck";
tag = version;
hash = "sha256-0CoADS76Ed2ICc8Y/LvtRhbG7mFQDWBsNQAnIUGK8m0=";
hash = "sha256-Us6CkRt6s/Dfw2k1R4WLWfl9ekhSwTL54BJg2hToOYY=";
};
postPatch = ''
@@ -0,0 +1,53 @@
{
aiohttp,
buildPythonPackage,
docker,
fetchFromGitHub,
lib,
msgpack,
orjson,
poetry-core,
pytest-asyncio,
pytestCheckHook,
requests,
websockets,
}:
buildPythonPackage rec {
pname = "pysignalr";
version = "1.3.0";
pyproject = true;
src = fetchFromGitHub {
owner = "baking-bad";
repo = "pysignalr";
tag = version;
hash = "sha256-3VZuS5q4b85Kuk2B00AeVpLGO232GN8tlfu6UaGmzjE=";
};
build-system = [ poetry-core ];
dependencies = [
aiohttp
msgpack
orjson
websockets
];
pythonImportsCheck = [ "pysignalr" ];
nativeCheckInputs = [
docker
pytest-asyncio
pytestCheckHook
requests
];
meta = {
changelog = "https://github.com/baking-bad/pysignalr/blob/${src.tag}/CHANGELOG.md";
description = "Modern, reliable and async-ready client for SignalR protocol";
homepage = "https://github.com/baking-bad/pysignalr";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ dotlambda ];
};
}
@@ -0,0 +1,42 @@
{
aiohttp,
buildPythonPackage,
fetchFromGitHub,
flit-core,
jsonpickle,
lib,
pysignalr,
}:
buildPythonPackage rec {
pname = "pysmarlaapi";
version = "0.8.2";
pyproject = true;
src = fetchFromGitHub {
owner = "Explicatis-GmbH";
repo = "pysmarlaapi";
tag = version;
hash = "sha256-R+LoMXd+8I16ARgEz5us6VSRa64Ov4VKZ4KysTApk7c=";
};
build-system = [ flit-core ];
pythonRelaxDeps = true;
dependencies = [
aiohttp
jsonpickle
pysignalr
];
pythonImportsCheck = [ "pysmarlaapi" ];
meta = {
changelog = "https://github.com/Explicatis-GmbH/pysmarlaapi/releases/tag/${src.tag}";
description = "Swing2Sleep Smarla API";
homepage = "https://github.com/Explicatis-GmbH/pysmarlaapi";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ dotlambda ];
};
}
@@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "pysmartthings";
version = "3.2.3";
version = "3.2.4";
pyproject = true;
disabled = pythonOlder "3.12";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "andrewsayre";
repo = "pysmartthings";
tag = "v${version}";
hash = "sha256-Bi/BHOvECzXhIBe+SK6wTmFnDbt1T28QAs7QETPH/YE=";
hash = "sha256-ObLoLL0BRnDfyrHYcQVD3pH00AdUWvwMIQ8vI2n3ZSc=";
};
build-system = [ poetry-core ];
@@ -16,7 +16,7 @@
buildPythonPackage rec {
pname = "pyswitchbot";
version = "0.62.2";
version = "0.65.0";
pyproject = true;
disabled = pythonOlder "3.8";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "Danielhiversen";
repo = "pySwitchbot";
tag = version;
hash = "sha256-kYk1mMY73RKW7OkKyK5idN+ib8OsIoMiGB5i/trgMZc=";
hash = "sha256-PxTkX0e3idwKR+3b5u6/71QN0YeJdmNmZx1vscAtfik=";
};
build-system = [ setuptools ];
@@ -15,14 +15,14 @@
buildPythonPackage rec {
pname = "python-linkplay";
version = "0.2.10";
version = "0.2.11";
pyproject = true;
src = fetchFromGitHub {
owner = "Velleman";
repo = "python-linkplay";
tag = "v${version}";
hash = "sha256-mXCeMz7j6fyotKIwAq2M82U92Yvu+VFFacptMtw28qU=";
hash = "sha256-/AXhbcaP3itLO8xiIOoLtHvc5wNs7o+fHH0nN+OoGNs=";
};
build-system = [ setuptools ];
@@ -12,14 +12,14 @@
buildPythonPackage rec {
pname = "python-tado";
version = "0.18.14";
version = "0.18.15";
pyproject = true;
src = fetchFromGitHub {
owner = "wmalgadey";
repo = "PyTado";
tag = version;
hash = "sha256-ubaYa/TC0hctqjuv7QBi/dlIJjWrvo4i9AjAtOIqviU=";
hash = "sha256-FUnD5JVS816XQYqXGSDnypqcYuKVhEeFIFcENf8BkcU=";
};
build-system = [ setuptools ];
@@ -9,7 +9,7 @@
buildPythonPackage rec {
pname = "switchbot-api";
version = "2.3.1";
version = "2.4.0";
pyproject = true;
disabled = pythonOlder "3.10";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
owner = "SeraphicCorp";
repo = "py-switchbot-api";
tag = "v${version}";
hash = "sha256-SVVFz+8LjPOJNjEREkKE4yyrDPE5Gf5qKY3ftsx3SyI=";
hash = "sha256-b5g/ha+/W/L4P7l89Nh6oec55njG9UuDA/zQtpLPf6o=";
};
build-system = [ poetry-core ];
@@ -33,7 +33,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "Asynchronous library to use Switchbot API";
homepage = "https://github.com/SeraphicCorp/py-switchbot-api";
changelog = "https://github.com/SeraphicCorp/py-switchbot-api/releases/tag/v${version}";
changelog = "https://github.com/SeraphicCorp/py-switchbot-api/releases/tag/${src.tag}";
license = licenses.mit;
maintainers = with maintainers; [ fab ];
};
@@ -8,14 +8,14 @@
buildPythonPackage rec {
pname = "teslemetry-stream";
version = "0.7.7";
version = "0.7.9";
pyproject = true;
src = fetchFromGitHub {
owner = "Teslemetry";
repo = "python-teslemetry-stream";
tag = "v${version}";
hash = "sha256-0gFX6tNBqqA7vh4d5zi38F2C1NqKjblc/8lz3DEBEJ8=";
hash = "sha256-qfe73wLj4CGfHU4MyQfUfM/P+R52Hd6FLr39wbIGg9Y=";
};
build-system = [ setuptools ];
@@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "tinytuya";
version = "1.16.1";
version = "1.17.1";
pyproject = true;
disabled = pythonOlder "3.10";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "jasonacox";
repo = "tinytuya";
tag = "v${version}";
hash = "sha256-+ReTNPKMYUXNA5tu7kZM8/7Bh4XjHSjZTiW8ROHkk5M=";
hash = "sha256-ivtd61r68kUP/OOIkdTjVI5FiD7QsYe6eSr2WiVF7OI=";
};
build-system = [ setuptools ];
@@ -40,7 +40,7 @@
buildPythonPackage rec {
pname = "uiprotect";
version = "7.6.0";
version = "7.11.0";
pyproject = true;
disabled = pythonOlder "3.10";
@@ -49,7 +49,7 @@ buildPythonPackage rec {
owner = "uilibs";
repo = "uiprotect";
tag = "v${version}";
hash = "sha256-jFRBupuP0T/6e07qdJmzcz7P/IAYbY1+QxF6ErsFox0=";
hash = "sha256-K3Yk9ZMCMlclUYElnEjdTG8EwwUSzYhTcRrPuAG5Olc=";
};
build-system = [ poetry-core ];
@@ -0,0 +1,45 @@
{
aiohttp,
buildPythonPackage,
fetchFromGitHub,
hatchling,
lib,
pydantic,
pytest-asyncio,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "wsdot";
version = "0.0.1";
pyproject = true;
src = fetchFromGitHub {
owner = "ucodery";
repo = "wsdot";
tag = "v${version}";
hash = "sha256-ZmQXa/C5AxqzAdmxqStWnCLrm3AJb/krxbDhtLYMWPw=";
};
build-system = [ hatchling ];
dependencies = [
aiohttp
pydantic
];
pythonImportsCheck = [ "wsdot" ];
nativeCheckInputs = [
pytest-asyncio
pytestCheckHook
];
meta = {
changelog = "https://github.com/ucodery/wsdot/releases/tag/${src.tag}";
description = "Python wrapper of the wsdot.wa.gov APIs";
homepage = "https://github.com/ucodery/wsdot";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ dotlambda ];
};
}
@@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "zha-quirks";
version = "0.0.137";
version = "0.0.138";
pyproject = true;
disabled = pythonOlder "3.12";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "zigpy";
repo = "zha-device-handlers";
tag = version;
hash = "sha256-LieMWqUp4bOWMmFyQ04O2SyxxsBzKxWqatQUnh6Wx9M=";
hash = "sha256-lN7u8ve3s3xQg6JiltnsyVRob1vbnzurjp/FUYy10pc=";
};
postPatch = ''
@@ -27,7 +27,7 @@
buildPythonPackage rec {
pname = "zha";
version = "0.0.57";
version = "0.0.59";
pyproject = true;
disabled = pythonOlder "3.12";
@@ -36,7 +36,7 @@ buildPythonPackage rec {
owner = "zigpy";
repo = "zha";
tag = version;
hash = "sha256-eaOVQQ5GbWjJuK+30r3bcBMAFdVY9K9bwn+rd/qQ+Ow=";
hash = "sha256-wddMeXFKk8HBz8Hle5kbRaOkZLOr98HoiHYYlBtuxSA=";
};
postPatch = ''
@@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "zigpy-deconz";
version = "0.24.2";
version = "0.25.0";
pyproject = true;
disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "zigpy";
repo = "zigpy-deconz";
tag = version;
hash = "sha256-el29EqCK9p3AII9LsMw+ikplHfDKNUIhaU3HJI0gfu8=";
hash = "sha256-aZRLfvAnJ1yO+d3LUx2ouqWPuwsIk51v+TSUkFfBbQA=";
};
postPatch = ''
@@ -25,14 +25,14 @@
buildPythonPackage rec {
pname = "zigpy";
version = "0.79.0";
version = "0.80.1";
pyproject = true;
src = fetchFromGitHub {
owner = "zigpy";
repo = "zigpy";
tag = version;
hash = "sha256-4bvVn9Pv37zngsiwy54g+z05uej5Bfwpt3mC9cxF2hk=";
hash = "sha256-OHwX2bwM6XYPGs2n7X5OQ3lW1lsD0RaaPNSFXOX+C/Q=";
};
postPatch = ''
@@ -2,7 +2,7 @@
# Do not edit!
{
version = "2025.5.3";
version = "2025.6.0";
components = {
"3_day_blinds" =
ps: with ps; [
@@ -182,6 +182,10 @@
ps: with ps; [
pyturbojpeg
];
"alexa_devices" =
ps: with ps; [
aioamazondevices
];
"alpha_vantage" =
ps: with ps; [
alpha-vantage
@@ -1163,6 +1167,7 @@
aiodhcpwatcher
aiodiscover
cached-ipaddress
ifaddr
];
"diagnostics" =
ps: with ps; [
@@ -1635,7 +1640,7 @@
"ezviz" =
ps: with ps; [
ha-ffmpeg
pyezviz
pyezvizapi
];
"faa_delays" =
ps: with ps; [
@@ -2593,6 +2598,10 @@
ps: with ps; [
imgw-pib
];
"immich" =
ps: with ps; [
aioimmich
];
"improv_ble" =
ps: with ps; [
aioesphomeapi
@@ -2840,6 +2849,9 @@
ps: with ps; [
pyjvcprojector
];
"kaiser_nienhaus" =
ps: with ps; [
];
"kaiterra" =
ps: with ps; [
]; # missing inputs: kaiterra-async-client
@@ -4320,6 +4332,9 @@
ps: with ps; [
home-assistant-frontend
];
"paperless_ngx" =
ps: with ps; [
]; # missing inputs: pypaperless
"pcs_lighting" =
ps: with ps; [
];
@@ -4486,6 +4501,33 @@
pyspeex-noise
zeroconf
];
"probe_plus" =
ps: with ps; [
aioesphomeapi
aiohasupervisor
aioruuvigateway
aioshelly
aiousbwatcher
bleak
bleak-esphome
bleak-retry-connector
bluetooth-adapters
bluetooth-auto-recovery
bluetooth-data-tools
dbus-fast
esphome-dashboard-api
ha-ffmpeg
habluetooth
hassil
home-assistant-intents
ifaddr
mutagen
pymicro-vad
pyprobeplus
pyserial
pyspeex-noise
zeroconf
];
"profiler" =
ps: with ps; [
guppy3
@@ -4813,7 +4855,8 @@
"remote_rpi_gpio" =
ps: with ps; [
gpiozero
]; # missing inputs: pigpio
pigpio
];
"renault" =
ps: with ps; [
renault-api
@@ -4924,11 +4967,6 @@
"rtorrent" =
ps: with ps; [
];
"rtsp_to_webrtc" =
ps: with ps; [
pyturbojpeg
rtsp-to-webrtc
];
"ruckus_unleashed" =
ps: with ps; [
aioruckus
@@ -5327,6 +5365,10 @@
ps: with ps; [
pysmappee
];
"smarla" =
ps: with ps; [
pysmarlaapi
];
"smart_blinds" =
ps: with ps; [
];
@@ -5573,7 +5615,10 @@
];
"suez_water" =
ps: with ps; [
fnv-hash-fast
psutil-home-assistant
pysuezv2
sqlalchemy
];
"sun" =
ps: with ps; [
@@ -6475,6 +6520,7 @@
];
"wsdot" =
ps: with ps; [
wsdot
];
"wyoming" =
ps: with ps; [
@@ -6691,6 +6737,10 @@
"ziggo_mediabox_xl" =
ps: with ps; [
]; # missing inputs: ziggo-mediabox-xl
"zimi" =
ps: with ps; [
zcc-helper
];
"zodiac" =
ps: with ps; [
];
@@ -6749,6 +6799,7 @@
"alarmdecoder"
"alert"
"alexa"
"alexa_devices"
"amberelectric"
"ambient_network"
"ambient_station"
@@ -6854,6 +6905,7 @@
"cover"
"cpuspeed"
"crownstone"
"cups"
"daikin"
"datadog"
"date"
@@ -6879,6 +6931,8 @@
"directv"
"discord"
"discovergy"
"dlib_face_detect"
"dlib_face_identify"
"dlna_dmr"
"dlna_dms"
"dnsip"
@@ -6902,6 +6956,7 @@
"econet"
"ecovacs"
"ecowitt"
"eddystone_temperature"
"edl21"
"efergy"
"eheimdigital"
@@ -7081,6 +7136,7 @@
"imap"
"imeon_inverter"
"imgw_pib"
"immich"
"improv_ble"
"incomfort"
"influxdb"
@@ -7310,6 +7366,7 @@
"p1_monitor"
"palazzetti"
"panasonic_viera"
"pandora"
"panel_custom"
"peblar"
"peco"
@@ -7331,6 +7388,7 @@
"powerfox"
"powerwall"
"private_ble_device"
"probe_plus"
"profiler"
"prometheus"
"prosegur"
@@ -7352,6 +7410,7 @@
"qld_bushfire"
"qnap"
"qnap_qsw"
"quantum_gateway"
"qwikswitch"
"rabbitair"
"rachio"
@@ -7396,7 +7455,6 @@
"rova"
"rpi_power"
"rss_feed_template"
"rtsp_to_webrtc"
"ruckus_unleashed"
"russound_rio"
"ruuvi_gateway"
@@ -7446,6 +7504,7 @@
"slimproto"
"sma"
"smappee"
"smarla"
"smart_meter_texas"
"smartthings"
"smarttub"
@@ -7654,6 +7713,7 @@
"zerproc"
"zeversolar"
"zha"
"zimi"
"zodiac"
"zone"
"zwave_js"
@@ -7,13 +7,13 @@
buildHomeAssistantComponent rec {
owner = "nielsfaber";
domain = "alarmo";
version = "1.10.8";
version = "1.10.9";
src = fetchFromGitHub {
owner = "nielsfaber";
repo = "alarmo";
tag = "v${version}";
hash = "sha256-XfeUjZ9icgWFfeJabib1KlrGuGJKuoOZuJH/OFMw/4M=";
hash = "sha256-eNAtHAa6Ye20Em/2i6+k6OMODTulKprywz1dVZHF4Vc=";
};
postPatch = ''
@@ -7,13 +7,13 @@
buildHomeAssistantComponent rec {
owner = "jwillemsen";
domain = "daikin_onecta";
version = "4.2.6";
version = "4.2.8";
src = fetchFromGitHub {
owner = "jwillemsen";
repo = "daikin_onecta";
tag = "v${version}";
hash = "sha256-JBo2205wHeC+5+kontzqgRLTss2Naht/TbkuEAs2nSQ=";
hash = "sha256-ozOJQDoE/t2FhnsVCnP+WCrFr/l19+onr488JN2fSE0=";
};
meta = {
@@ -8,13 +8,13 @@
buildHomeAssistantComponent rec {
owner = "magico13";
domain = "emporia_vue";
version = "0.10.2-pre";
version = "0.11.1";
src = fetchFromGitHub {
owner = "magico13";
repo = "ha-emporia-vue";
rev = "v${version}";
hash = "sha256-mXzgd0dFwnwFCG0+9825uOrYhv2SNuLAOO1Unq6Kw/w=";
hash = "sha256-XyGF7tVPPIMjzYXKpiF2lqQiCpPkJ/cOjZZCB2XMDYU=";
};
dependencies = [
@@ -41,6 +41,14 @@ buildHomeAssistantComponent rec {
++ (homeassistant.getPackages "mqtt" homeassistant.python.pkgs)
++ (homeassistant.getPackages "stream" homeassistant.python.pkgs);
disabledTests = [
# https://github.com/blakeblackshear/frigate-hass-integration/issues/922
"test_frigate_camera_setup"
"test_frigate_camera_setup_birdseye"
"test_frigate_camera_setup_webrtc"
"test_frigate_camera_setup_birdseye_webrtc"
];
disabledTestPaths = [
# https://github.com/blakeblackshear/frigate-hass-integration/issues/907
"tests/test_media_source.py"
@@ -8,13 +8,13 @@
buildHomeAssistantComponent rec {
owner = "wuwentao";
domain = "midea_ac_lan";
version = "0.6.7";
version = "0.6.8";
src = fetchFromGitHub {
inherit owner;
repo = domain;
tag = "v${version}";
hash = "sha256-L1dlj7gOH/VpwayoyQGbwu/4IIDW1tTxmnTQNTwfxUw=";
hash = "sha256-y78Leb+XxEpijP7XbmjDGSD2RArfxlSgdtXkeYggxto=";
};
dependencies = [ midea-local ];
@@ -12,13 +12,13 @@
buildHomeAssistantComponent rec {
owner = "amitfin";
domain = "oref_alert";
version = "2.21.1";
version = "2.22.1";
src = fetchFromGitHub {
owner = "amitfin";
repo = "oref_alert";
tag = "v${version}";
hash = "sha256-ov/smP7rflRfQMqYduTxDAYj5xQkpZJSzIQZrP0YADQ=";
hash = "sha256-OO3My8U8SCmhaJQI7y0kxVKj/stvfp3pdqhFdTCcIWs=";
};
dependencies = [
@@ -11,13 +11,13 @@
buildHomeAssistantComponent rec {
owner = "ollo69";
domain = "samsungtv_smart";
version = "0.13.5";
version = "0.13.6";
src = fetchFromGitHub {
owner = "ollo69";
repo = "ha-samsungtv-smart";
tag = "v${version}";
hash = "sha256-12wx8HaTEFQZOnxfcuAKFOXPdDpfAl608N1E6gmWqBI=";
hash = "sha256-4tBluCKt8e5tyUkv79t+pW/KNZUTEIeTY012x7CLN38=";
};
dependencies = [
@@ -8,13 +8,13 @@
buildHomeAssistantComponent rec {
owner = "wills106";
domain = "solax_modbus";
version = "2025.04.4";
version = "2025.06.1";
src = fetchFromGitHub {
owner = "wills106";
repo = "homeassistant-solax-modbus";
tag = version;
hash = "sha256-fgvhF+1fz3pNOZJQjf/iF2Lh9j6mMkUXjgLyCja84K0=";
hash = "sha256-aKbd/eNzROHF4evFS4sH8+dJwj5f3xZsF4qjTzHIu9g=";
};
postPatch = ''
@@ -7,13 +7,13 @@
buildHomeAssistantComponent rec {
owner = "pnbruckner";
domain = "sun2";
version = "3.3.5";
version = "3.4.0b0";
src = fetchFromGitHub {
inherit owner;
repo = "ha-sun2";
tag = version;
hash = "sha256-aR9tQw1d64RWuwc9QLhTP0z4TdaKeRfN0p7lMdWUpgw=";
hash = "sha256-yPqsbwabEcYhHFp5wzXf70SaEi0bfXw0IdFe0UahsEU=";
};
meta = rec {
@@ -11,13 +11,13 @@
buildHomeAssistantComponent rec {
owner = "make-all";
domain = "tuya_local";
version = "2025.4.0";
version = "2025.6.0";
src = fetchFromGitHub {
inherit owner;
repo = "tuya-local";
tag = version;
hash = "sha256-lvDiB/kVlPsKI28muv03B8j/0RD7U4I4ZNiucji8/e4=";
hash = "sha256-2Fvb2WcFNGSFxYHoxxL89DcbcIFa+OFyGodoop0KauA=";
};
dependencies = [
@@ -8,13 +8,13 @@
buildHomeAssistantComponent rec {
owner = "jmcollin78";
domain = "versatile_thermostat";
version = "7.3.1";
version = "7.3.2";
src = fetchFromGitHub {
inherit owner;
repo = domain;
rev = "refs/tags/${version}";
hash = "sha256-sRmf+6rOWnbLZaO5kJw+9Udsyj6fX2BeFh8tN9xkZRk=";
hash = "sha256-kUA9ApJsrKIqo7M9HPI3DLh+vzOwdSuDrdycUvrzhxU=";
};
passthru.updateScript = gitUpdater { ignoredVersions = "(Alpha|Beta|alpha|beta).*"; };
@@ -7,13 +7,13 @@
buildHomeAssistantComponent rec {
owner = "thomasddn";
domain = "volvo_cars";
version = "1.5.3";
version = "1.5.4";
src = fetchFromGitHub {
owner = "thomasddn";
repo = "ha-volvo-cars";
tag = "v${version}";
hash = "sha256-f7+RBAOkNUVJ4P/B/cMK7eGFrTnn8TGsC26vfSHc8Z4=";
hash = "sha256-oAGUa8KxLbzZs7xw/P9kwwG/ija03HXJ4jACluUd048=";
};
meta = with lib; {
@@ -6,18 +6,18 @@
buildNpmPackage rec {
pname = "universal-remote-card";
version = "4.5.4";
version = "4.5.5";
src = fetchFromGitHub {
owner = "Nerwyn";
repo = "android-tv-card";
rev = version;
hash = "sha256-WRDeHUp+uLBbPRNvIuRNXhm+yAgG1hwZiO0S0FLDOFY=";
hash = "sha256-qAJ7+xiSN04MhAkoWqITg+lrk9uHkN1BKtgPpv3UHSo=";
};
patches = [ ./dont-call-git.patch ];
npmDepsHash = "sha256-F1j7/QvP3rJTFLdOdF2/0Jf6sVLZ2EUwkbtNB5/6OBE=";
npmDepsHash = "sha256-XDCP/X/JdMI8/vuMbd+BRxkwsQT1RCSPZi7aXoh08yM=";
installPhase = ''
runHook preInstall
+4 -3
View File
@@ -386,7 +386,7 @@ let
extraBuildInputs = extraPackages python.pkgs;
# Don't forget to run update-component-packages.py after updating
hassVersion = "2025.5.3";
hassVersion = "2025.6.0";
in
python.pkgs.buildPythonApplication rec {
@@ -407,13 +407,13 @@ python.pkgs.buildPythonApplication rec {
owner = "home-assistant";
repo = "core";
tag = version;
hash = "sha256-qqPO7dr+Sb1RKYoOV7MhT2E1FcW7lAKTTB0T+UzLwzk=";
hash = "sha256-SSMubMXk6lasj0CwgPVQRzW7yzkN3lWaoJJDf51zIGQ=";
};
# Secondary source is pypi sdist for translations
sdist = fetchPypi {
inherit pname version;
hash = "sha256-8WusUfZEyoBPltVrDpDQVkbIFEHn1GGdA4Pt0Zb1+Fo=";
hash = "sha256-3PiRVBtboqWVU5da8EeOkRWAGumrLENNSMD4cD7/MOU=";
};
build-system = with python.pkgs; [
@@ -448,6 +448,7 @@ python.pkgs.buildPythonApplication rec {
dependencies = with python.pkgs; [
# Only packages required in pyproject.toml
aiodns
aiofiles
aiohasupervisor
aiohttp
aiohttp-asyncmdnsresolver
+2 -2
View File
@@ -8,7 +8,7 @@ buildPythonPackage rec {
# the frontend version corresponding to a specific home-assistant version can be found here
# https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
pname = "home-assistant-frontend";
version = "20250516.0";
version = "20250531.2";
format = "wheel";
src = fetchPypi {
@@ -16,7 +16,7 @@ buildPythonPackage rec {
pname = "home_assistant_frontend";
dist = "py3";
python = "py3";
hash = "sha256-KyZE9SmEoAKgaZMRvs83BK73Yo3fqD8O+vMBO4JE+Ng=";
hash = "sha256-i77uNNUHwPW+A4RkweqcvOdJofKSWhzoeup5HQFwMzQ=";
};
# there is nothing to strip in this package
+2 -2
View File
@@ -22,7 +22,7 @@
buildPythonPackage rec {
pname = "home-assistant-intents";
version = "2025.5.7";
version = "2025.6.10";
pyproject = true;
disabled = pythonOlder "3.9";
@@ -32,7 +32,7 @@ buildPythonPackage rec {
repo = "intents-package";
rev = "refs/tags/${version}";
fetchSubmodules = true;
hash = "sha256-803TTK8wT00uZjXl6EfNMNveRBeKPQIgRXIawg68tEU=";
hash = "sha256-MCObny6x3rgKz2KcMBanGOCaPw/4wHYsdzFIKhqeosw=";
};
build-system = [
@@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "pytest-homeassistant-custom-component";
version = "0.13.246";
version = "0.13.251";
pyproject = true;
disabled = pythonOlder "3.13";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "MatthewFlamm";
repo = "pytest-homeassistant-custom-component";
rev = "refs/tags/${version}";
hash = "sha256-FTEDKnVVr6rNvUoSxOkyZrDfNYIUQGKmFt6eNKHI8FM=";
hash = "sha256-S+BC3ohAsY11SdZZdlETskCAopKeohgb16vMpko01YY=";
};
build-system = [ setuptools ];
+2 -2
View File
@@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "homeassistant-stubs";
version = "2025.5.3";
version = "2025.6.0";
pyproject = true;
disabled = python.version != home-assistant.python.version;
@@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "KapJI";
repo = "homeassistant-stubs";
tag = version;
hash = "sha256-9RL6p68L3lvH5h/kBekiu1pqJ1mXEUB6nmp+qe0sAsg=";
hash = "sha256-CjMNxzX2w6mFdQ0RyEq7rHUC4U+EyVeaupREwtuts3Y=";
};
build-system = [
+4
View File
@@ -63,6 +63,10 @@ let
};
extraDisabledTests = {
conversation = [
# intent fixture mismatch
"test_error_no_device_on_floor"
];
forecast_solar = [
# language fixture mismatch
"test_enabling_disable_by_default"
+1
View File
@@ -535,6 +535,7 @@ mapAliases ({
pydns = py3dns; # added 2024-10-25
pydrive = throw "pydrive is broken and deprecated and has been replaced with pydrive2."; # added 2022-06-01
pyephember = throw "pyephember was removed because Home Assistant switched to pyephember2"; # added 2025-05-07
pyezviz = throw "pyeziz has been removed in favor of pyevizapi, where development continues"; # added 2025-06-11
pyjet = throw "pyjet is deprecated, use fastjet instead"; # added 2023-05-10
pygame_sdl2 = pygame-sdl2; # added 2024-01-07
pygogo = throw "pygogo has been removed, since it is abandoned and had no maintainer"; # added 2024-07-27
+6 -2
View File
@@ -12513,8 +12513,6 @@ self: super: with self; {
pyexploitdb = callPackage ../development/python-modules/pyexploitdb { };
pyezviz = callPackage ../development/python-modules/pyezviz { };
pyezvizapi = callPackage ../development/python-modules/pyezvizapi { };
pyface = callPackage ../development/python-modules/pyface { };
@@ -13638,6 +13636,8 @@ self: super: with self; {
pysignalclirestapi = callPackage ../development/python-modules/pysignalclirestapi { };
pysignalr = callPackage ../development/python-modules/pysignalr { };
pysigset = callPackage ../development/python-modules/pysigset { };
pysilero-vad = callPackage ../development/python-modules/pysilero-vad { };
@@ -13660,6 +13660,8 @@ self: super: with self; {
pysmappee = callPackage ../development/python-modules/pysmappee { };
pysmarlaapi = callPackage ../development/python-modules/pysmarlaapi { };
pysmart = callPackage ../development/python-modules/pysmart { };
pysmartapp = callPackage ../development/python-modules/pysmartapp { };
@@ -19320,6 +19322,8 @@ self: super: with self; {
wsdiscovery = callPackage ../development/python-modules/wsdiscovery { };
wsdot = callPackage ../development/python-modules/wsdot { };
wsgi-intercept = callPackage ../development/python-modules/wsgi-intercept { };
wsgidav = callPackage ../development/python-modules/wsgidav { };