home-assistant: 2025.1.4 -> 2025.2.0 (#379685)
This commit is contained in:
@@ -12,7 +12,34 @@ let
|
||||
python = python3.override {
|
||||
self = python;
|
||||
packageOverrides = self: super: {
|
||||
aiojellyfin = super.aiojellyfin.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "0.10.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Jc2k";
|
||||
repo = "aiojellyfin";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-A+uvM1/7HntRMIdknfHr0TMGIjHk7BCwsZopXdVoEO8=";
|
||||
};
|
||||
});
|
||||
|
||||
music-assistant-frontend = self.callPackage ./frontend.nix { };
|
||||
|
||||
music-assistant-models = super.music-assistant-models.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "1.1.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "music-assistant";
|
||||
repo = "models";
|
||||
tag = version;
|
||||
hash = "sha256-keig18o32X53q/QcoaPO0o9AT4XTEZ+dQ3L6u6BVkLU=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail "0.0.0" "${version}"
|
||||
'';
|
||||
});
|
||||
};
|
||||
};
|
||||
|
||||
@@ -27,14 +54,14 @@ in
|
||||
|
||||
python.pkgs.buildPythonApplication rec {
|
||||
pname = "music-assistant";
|
||||
version = "2.3.4";
|
||||
version = "2.3.6";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "music-assistant";
|
||||
repo = "server";
|
||||
tag = version;
|
||||
hash = "sha256-HV2R5zMTao8akUNZMGRKbU8BIxWmdjKFLsGMqA5cfBs=";
|
||||
hash = "sha256-CSGpG1E4ou1TGz/S1mXFHyk49p7dStEwxUTB+xxfNEc=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -58,6 +85,7 @@ python.pkgs.buildPythonApplication rec {
|
||||
|
||||
pythonRelaxDeps = [
|
||||
"aiohttp"
|
||||
"certifi"
|
||||
"colorlog"
|
||||
"cryptography"
|
||||
"mashumaro"
|
||||
@@ -111,6 +139,7 @@ python.pkgs.buildPythonApplication rec {
|
||||
aiojellyfin
|
||||
pytest-aiohttp
|
||||
pytest-cov-stub
|
||||
pytest-timeout
|
||||
pytestCheckHook
|
||||
syrupy
|
||||
pytest-timeout
|
||||
@@ -118,8 +147,10 @@ python.pkgs.buildPythonApplication rec {
|
||||
++ lib.flatten (lib.attrValues optional-dependencies);
|
||||
|
||||
pytestFlagsArray = [
|
||||
# blocks in setup
|
||||
"--deselect=tests/server/providers/jellyfin/test_init.py::test_initial_sync"
|
||||
# blocks in poll()
|
||||
"--deselect=tests/providers/jellyfin/test_init.py::test_initial_sync"
|
||||
"--deselect=tests/core/test_server_base.py::test_start_and_stop_server"
|
||||
"--deselect=tests/core/test_server_base.py::test_events"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "music_assistant" ];
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Do not edit manually, run ./update-providers.py
|
||||
|
||||
{
|
||||
version = "2.3.4";
|
||||
version = "2.3.6";
|
||||
providers = {
|
||||
airplay = ps: [
|
||||
];
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aioautomower";
|
||||
version = "2025.1.0";
|
||||
version = "2025.1.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@@ -29,7 +29,7 @@ buildPythonPackage rec {
|
||||
owner = "Thomas55555";
|
||||
repo = "aioautomower";
|
||||
tag = version;
|
||||
hash = "sha256-MEZdYOpBAHmWidzq+7SpEFsHNYlSaIQ4utnGK9Y3/NE=";
|
||||
hash = "sha256-5/NG3VMJfLOCQDqnP1LVRJlT08LDITlZZFb3aYjtm5I=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -16,14 +16,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aiodhcpwatcher";
|
||||
version = "1.0.2";
|
||||
version = "1.1.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bdraco";
|
||||
repo = "aiodhcpwatcher";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-KZL5DejzDmizvvMUNfkFltl1xXz+2jX/3DVj60x6xOk=";
|
||||
hash = "sha256-/4x+FhKCEIpmFSTC5PIEe4QsYojrvx4Wlf7+WUvSHu8=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
@@ -49,7 +49,7 @@ buildPythonPackage rec {
|
||||
description = "Watch for DHCP packets with asyncio";
|
||||
homepage = "https://github.com/bdraco/aiodhcpwatcher";
|
||||
changelog = "https://github.com/bdraco/aiodhcpwatcher/blob/${src.rev}/CHANGELOG.md";
|
||||
license = licenses.gpl3Only;
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ hexa ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
||||
@@ -3,31 +3,37 @@
|
||||
aiohttp,
|
||||
async-timeout,
|
||||
buildPythonPackage,
|
||||
fetchPypi,
|
||||
pythonOlder,
|
||||
fetchFromGitHub,
|
||||
pytest-cov-stub,
|
||||
pytestCheckHook,
|
||||
setuptools,
|
||||
slixmpp,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aioharmony";
|
||||
version = "0.2.10";
|
||||
format = "setuptools";
|
||||
version = "0.4.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-18+38QunEdEGdirQOT+528vYqiqDuUr/CWRQtXKf4rs=";
|
||||
src = fetchFromGitHub {
|
||||
owner = "Harmony-Libs";
|
||||
repo = "aioharmony";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-X7oL4jokomNLhBEp4z8t11Yv/4pNDnqFurPmChXUU3o=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
aiohttp
|
||||
async-timeout
|
||||
slixmpp
|
||||
];
|
||||
|
||||
# aioharmony does not seem to include tests
|
||||
doCheck = false;
|
||||
nativeCheckInputs = [
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"aioharmony.harmonyapi"
|
||||
@@ -35,7 +41,7 @@ buildPythonPackage rec {
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/ehendrix23/aioharmony";
|
||||
homepage = "https://github.com/Harmony-Libs/aioharmony";
|
||||
description = "Python library for interacting the Logitech Harmony devices";
|
||||
mainProgram = "aioharmony";
|
||||
license = licenses.asl20;
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
aiohttp,
|
||||
aioresponses,
|
||||
buildPythonPackage,
|
||||
fetchPypi,
|
||||
fetchFromGitHub,
|
||||
mashumaro,
|
||||
orjson,
|
||||
pytest-aiohttp,
|
||||
@@ -17,18 +17,21 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aiohasupervisor";
|
||||
version = "0.2.2b5";
|
||||
version = "0.3.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.12";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-EFVhR7L+1SVzXO4UpDrXA1EuPdeew55CV4ykO3K5BFI=";
|
||||
src = fetchFromGitHub {
|
||||
owner = "home-assistant-libs";
|
||||
repo = "python-supervisor-client";
|
||||
tag = version;
|
||||
hash = "sha256-72YRaTlgRJ8liQ1q+Hx1iCG8Av7wWk61t306fYT9gss=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail 'version = "0.0.0"' 'version = "${version}"' \
|
||||
--replace-fail "setuptools~=68.0.0" "setuptools>=68.0.0" \
|
||||
--replace-fail "wheel~=0.40.0" "wheel>=0.40.0"
|
||||
'';
|
||||
@@ -56,6 +59,7 @@ buildPythonPackage rec {
|
||||
pythonImportsCheck = [ "aiohasupervisor" ];
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/home-assistant-libs/python-supervisor-client/releases/tag/${src.tag}";
|
||||
description = "Client for Home Assistant Supervisor";
|
||||
homepage = "https://github.com/home-assistant-libs/python-supervisor-client";
|
||||
license = lib.licenses.asl20;
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
{
|
||||
lib,
|
||||
aiodns,
|
||||
aiohttp,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
pytest-asyncio,
|
||||
pytest-cov-stub,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
setuptools,
|
||||
zeroconf,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aiohttp-asyncmdnsresolver";
|
||||
version = "0.0.3";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aio-libs";
|
||||
repo = "aiohttp-asyncmdnsresolver";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-YtBPMhRbilLY0VV1qVIPBYT0w91MbsUo2nbr4ODgCZA=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
aiodns
|
||||
aiohttp
|
||||
zeroconf
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "aiohttp_asyncmdnsresolver" ];
|
||||
|
||||
meta = {
|
||||
description = "Module to resolve mDNS with aiohttp";
|
||||
homepage = "https://github.com/aio-libs/aiohttp-asyncmdnsresolver";
|
||||
changelog = "https://github.com/aio-libs/aiohttp-asyncmdnsresolver/blob/${src.rev}/CHANGES.rst";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ fab ];
|
||||
};
|
||||
}
|
||||
@@ -22,6 +22,12 @@ buildPythonPackage rec {
|
||||
hash = "sha256-Vx51WBjjNPIfLlwMnAuwHnGNljhnjKkU0tWB9M9rjsw=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace aiomodernforms/modernforms.py --replace-fail \
|
||||
"with async_timeout.timeout(self._request_timeout):" \
|
||||
"async with async_timeout.timeout(self._request_timeout):"
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
aiohttp
|
||||
backoff
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
anyio,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
paho-mqtt_2,
|
||||
paho-mqtt,
|
||||
poetry-core,
|
||||
poetry-dynamic-versioning,
|
||||
pytestCheckHook,
|
||||
@@ -31,7 +31,7 @@ buildPythonPackage rec {
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
paho-mqtt_2
|
||||
paho-mqtt
|
||||
typing-extensions
|
||||
];
|
||||
|
||||
@@ -48,6 +48,7 @@ buildPythonPackage rec {
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
broken = lib.versionOlder "paho-mqtt" "2";
|
||||
description = "Idiomatic asyncio MQTT client, wrapped around paho-mqtt";
|
||||
homepage = "https://github.com/sbtinstruments/aiomqtt";
|
||||
changelog = "https://github.com/sbtinstruments/aiomqtt/blob/${src.tag}/CHANGELOG.md";
|
||||
|
||||
@@ -37,6 +37,11 @@ buildPythonPackage rec {
|
||||
pytest-asyncio
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
# these tests get stuck, could be pytest-asyncio compat issue
|
||||
"tests/test_connection.py"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "aiortsp" ];
|
||||
|
||||
meta = with lib; {
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
pytestCheckHook,
|
||||
pythonAtLeast,
|
||||
pythonOlder,
|
||||
pytz,
|
||||
time-machine,
|
||||
}:
|
||||
|
||||
@@ -52,6 +53,7 @@ buildPythonPackage rec {
|
||||
pytest-mockservers
|
||||
pytest-resource-path
|
||||
pytestCheckHook
|
||||
pytz
|
||||
time-machine
|
||||
];
|
||||
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
asyncinotify,
|
||||
pytest-asyncio,
|
||||
pytest-cov-stub,
|
||||
pytestCheckHook,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aiousbwatcher";
|
||||
version = "1.1.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Bluetooth-Devices";
|
||||
repo = "aiousbwatcher";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-M9MUaB3oHELHdtgaWri9nILnVQpF2FJvHrL68jXeOqg=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [ asyncinotify ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "aiousbwatcher" ];
|
||||
|
||||
meta = {
|
||||
description = "Watch for USB devices to be plugged and unplugged";
|
||||
homepage = "https://github.com/Bluetooth-Devices/aiousbwatcher";
|
||||
changelog = "https://github.com/Bluetooth-Devices/aiousbwatcher/blob/${src.tag}/CHANGELOG.md";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ hexa ];
|
||||
};
|
||||
}
|
||||
@@ -4,12 +4,12 @@
|
||||
fetchFromGitHub,
|
||||
pythonOlder,
|
||||
setuptools,
|
||||
websockets,
|
||||
aiohttp,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aiowebostv";
|
||||
version = "0.4.2";
|
||||
version = "0.6.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -18,12 +18,12 @@ buildPythonPackage rec {
|
||||
owner = "home-assistant-libs";
|
||||
repo = "aiowebostv";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-RrSEl/U6UzPoE2151opDe0QRmj6M6wAtsQyF4/dd8ek=";
|
||||
hash = "sha256-x1lpqR/e3itkRc/Cs3opXF4NzOZ17g/IcHZeGo234aM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ setuptools ];
|
||||
build-system = [ setuptools ];
|
||||
|
||||
propagatedBuildInputs = [ websockets ];
|
||||
dependencies = [ aiohttp ];
|
||||
|
||||
# Module doesn't have tests
|
||||
doCheck = false;
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "anthropic";
|
||||
version = "0.43.1";
|
||||
version = "0.45.2";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@@ -33,7 +33,7 @@ buildPythonPackage rec {
|
||||
owner = "anthropics";
|
||||
repo = "anthropic-sdk-python";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-7tDCKFT+j6oRU4EeII4wAM1T5W4qAeg6HbBp3efO81A=";
|
||||
hash = "sha256-/QuAUU0/nNhJZouCP0LVkCFMTiNdeze/fF+SZKD1Jis=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "async-upnp-client";
|
||||
version = "0.42.0";
|
||||
version = "0.43.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@@ -32,7 +32,7 @@ buildPythonPackage rec {
|
||||
owner = "StevenLooman";
|
||||
repo = "async_upnp_client";
|
||||
tag = version;
|
||||
hash = "sha256-xIa7QeflS7JxkPoV8KqFfuLfHPpnrBGLeOFSa17IHyk=";
|
||||
hash = "sha256-oGnWo+QLSq2h6R4Iirwy9kE7U47PLYYSBMjx8/WWA0o=";
|
||||
};
|
||||
|
||||
pythonRelaxDeps = [
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "bellows";
|
||||
version = "0.42.6";
|
||||
version = "0.43.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@@ -27,7 +27,7 @@ buildPythonPackage rec {
|
||||
owner = "zigpy";
|
||||
repo = "bellows";
|
||||
tag = version;
|
||||
hash = "sha256-qMODlsImGSvUkR+0jjrU23jJtM3c7JNJ7lY7Svli+ao=";
|
||||
hash = "sha256-RbhFvoNYR4wHKKbbMKLP4Dsx0pIJnwBOP49waRHg0qk=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "bleak-esphome";
|
||||
version = "2.0.0";
|
||||
version = "2.7.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.10";
|
||||
@@ -26,7 +26,7 @@ buildPythonPackage rec {
|
||||
owner = "bluetooth-devices";
|
||||
repo = "bleak-esphome";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-rN2vpXiOaUjjN6yNZxeEgTpcz0K5soUqKKiDDOhcBtc=";
|
||||
hash = "sha256-AZkSWBMyTl2NgqmhVG4sE/N1AQGd6x4CZVYMgRKxlOQ=";
|
||||
};
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
@@ -10,11 +10,12 @@
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
pytest-asyncio,
|
||||
pytest-cov-stub,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "bleak-retry-connector";
|
||||
version = "3.7.0";
|
||||
version = "3.8.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@@ -23,14 +24,9 @@ buildPythonPackage rec {
|
||||
owner = "Bluetooth-Devices";
|
||||
repo = "bleak-retry-connector";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-+qY8BWi7zznaJBEMXfbDWjNvHEwpKq1h0XBHFum1+4M=";
|
||||
hash = "sha256-Vkmn+CKQm+i+MRx12U6AmDGUyhtagoXbpeC/uou311o=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail " --cov=bleak_retry_connector --cov-report=term-missing:skip-covered" ""
|
||||
'';
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
dependencies = [
|
||||
@@ -42,6 +38,7 @@ buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
myst-parser,
|
||||
poetry-core,
|
||||
pytest-asyncio,
|
||||
pytest-cov-stub,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
sphinx-rtd-theme,
|
||||
@@ -21,7 +22,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "bluetooth-adapters";
|
||||
version = "0.21.0";
|
||||
version = "0.21.4";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -30,14 +31,9 @@ buildPythonPackage rec {
|
||||
owner = "Bluetooth-Devices";
|
||||
repo = "bluetooth-adapters";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-DQaxjSajO3SfmogWtstT6xcsUgUW80jJ5prfIajJW/s=";
|
||||
hash = "sha256-JUh4v9YeqMeecJh/eTpmLMwNsxbc/oqZY2CrEJUO418=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
# Drop pytest arguments (coverage, ...)
|
||||
sed -i '/addopts/d' pyproject.toml
|
||||
'';
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
"doc"
|
||||
@@ -63,6 +59,7 @@ buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
cython,
|
||||
poetry-core,
|
||||
pytest-benchmark,
|
||||
pytest-cov-stub,
|
||||
pytest-codspeed,
|
||||
pytest-cov-stub,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
setuptools,
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "bluetooth-data-tools";
|
||||
version = "1.22.0";
|
||||
version = "1.23.4";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.10";
|
||||
@@ -24,7 +24,7 @@ buildPythonPackage rec {
|
||||
owner = "Bluetooth-Devices";
|
||||
repo = "bluetooth-data-tools";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-ygtpOKrvVaM2rWfzRdKj96Z229+6wPSCuZq3agx+/IY=";
|
||||
hash = "sha256-WYwcczYqUd7JH68zKBQ9xl5sxX1YAHTEpi0gc81k6DY=";
|
||||
};
|
||||
|
||||
# The project can build both an optimized cython version and an unoptimized
|
||||
@@ -41,6 +41,7 @@ buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-benchmark
|
||||
pytest-codspeed
|
||||
pytest-cov-stub
|
||||
pytest-codspeed
|
||||
pytestCheckHook
|
||||
|
||||
@@ -4,16 +4,20 @@
|
||||
aioresponses,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
mashumaro,
|
||||
orjson,
|
||||
pytest-asyncio,
|
||||
pytestCheckHook,
|
||||
python-dotenv,
|
||||
pythonOlder,
|
||||
setuptools,
|
||||
syrupy,
|
||||
yarl,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "bring-api";
|
||||
version = "0.9.1";
|
||||
version = "1.0.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@@ -22,18 +26,26 @@ buildPythonPackage rec {
|
||||
owner = "miaucl";
|
||||
repo = "bring-api";
|
||||
tag = version;
|
||||
hash = "sha256-wPplw1yYJ5xR2CzhDXXjhMFJ7swGf2AARI4a1kE8MRw=";
|
||||
hash = "sha256-1K8CijA2cSyofH/qanOsDRLqnQZyBTqsnrUtvZYBS2c=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [ aiohttp ];
|
||||
dependencies = [
|
||||
# https://github.com/miaucl/bring-api/blob/1.0.0/requirements.txt
|
||||
# pyproject.toml is out of sync
|
||||
aiohttp
|
||||
yarl
|
||||
mashumaro
|
||||
orjson
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
aioresponses
|
||||
pytest-asyncio
|
||||
pytestCheckHook
|
||||
python-dotenv
|
||||
syrupy
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "bring_api" ];
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "bthome-ble";
|
||||
version = "3.11.0";
|
||||
version = "3.12.4";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -24,7 +24,7 @@ buildPythonPackage rec {
|
||||
owner = "Bluetooth-Devices";
|
||||
repo = "bthome-ble";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-TlZyNGfHNKN+6tCKepLS+fbgfq3a1uzeCXl25khl6d8=";
|
||||
hash = "sha256-1Kr+KKL8o1qsu/ncwclsokPcO1QHYadul/f+/Nnv6SQ=";
|
||||
};
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "dbus-fast";
|
||||
version = "2.30.2";
|
||||
version = "2.33.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -26,7 +26,7 @@ buildPythonPackage rec {
|
||||
owner = "Bluetooth-Devices";
|
||||
repo = "dbus-fast";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-DGDmv7zJP5LAa90KmqSU8yJXn5q8MDL2dCQjvmDg+Bw=";
|
||||
hash = "sha256-U6NAEhoEcphAuvaAA2en4Ka4yFHiKPINl5CvtxE7FaI=";
|
||||
};
|
||||
|
||||
# The project can build both an optimized cython version and an unoptimized
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
lib,
|
||||
aiohttp,
|
||||
async-upnp-client,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
pythonOlder,
|
||||
@@ -21,9 +22,12 @@ buildPythonPackage rec {
|
||||
hash = "sha256-HmTiHa7DEmjARaYn7/OoGotnTirE7S7zXLK/TfHdEAg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ setuptools ];
|
||||
build-system = [ setuptools ];
|
||||
|
||||
propagatedBuildInputs = [ aiohttp ];
|
||||
dependencies = [
|
||||
aiohttp
|
||||
async-upnp-client
|
||||
];
|
||||
|
||||
# Module has no tests
|
||||
doCheck = false;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
poetry-core,
|
||||
setuptools,
|
||||
bleak,
|
||||
construct,
|
||||
construct-typing,
|
||||
@@ -22,7 +22,7 @@ buildPythonPackage rec {
|
||||
hash = "sha256-JPmIKj8IL3i7QWiMTmGQzqb4h0VqLlhILPAOqMucsuM=";
|
||||
};
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
bleak
|
||||
|
||||
@@ -27,9 +27,9 @@ buildPythonPackage rec {
|
||||
hash = "sha256-8VUXW6tIX43TV7UIxeforZIxAUqGY9uqpz6WGyH4d8E=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ setuptools ];
|
||||
build-system = [ setuptools ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
dependencies = [
|
||||
aiohttp
|
||||
ical
|
||||
pydantic
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-nest-sdm";
|
||||
version = "7.0.0";
|
||||
version = "7.1.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.10";
|
||||
@@ -27,7 +27,7 @@ buildPythonPackage rec {
|
||||
owner = "allenporter";
|
||||
repo = "python-google-nest-sdm";
|
||||
tag = version;
|
||||
hash = "sha256-j3L0U4dcmU35eHyrB8ZASGso8lWFwSD3PGq5fRSGOg0=";
|
||||
hash = "sha256-hBpAwDRmqRRWW0DiG3aXy+OXZPCXdhPzAP79mXOn1kg=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -21,6 +21,12 @@ buildPythonPackage rec {
|
||||
hash = "sha256-1n5HPFI/E/I4eepnpQg8hhIksr48igVy56gQ0UiMYHU=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
# dont depend on poetry at runtime
|
||||
# https://github.com/Galorhallen/govee-local-api/pull/75/files#r1943826599
|
||||
sed -i '/poetry = "^1.8.5"/d' pyproject.toml
|
||||
'';
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "habluetooth";
|
||||
version = "3.9.0";
|
||||
version = "3.21.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@@ -30,7 +30,7 @@ buildPythonPackage rec {
|
||||
owner = "Bluetooth-Devices";
|
||||
repo = "habluetooth";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-JDmdbqgCcgYuPNDNBlqN/kZLRhm3+C0hf9ZC+OoEbTU=";
|
||||
hash = "sha256-r7pDQ0CoLXpiIMPi0SA/gHByKhFzkEhGCiS52bvhT4c=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
||||
@@ -17,23 +17,23 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "hahomematic";
|
||||
version = "2025.2.0";
|
||||
version = "2025.2.5";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.12";
|
||||
disabled = pythonOlder "3.13";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "SukramJ";
|
||||
repo = "hahomematic";
|
||||
tag = version;
|
||||
hash = "sha256-QuPHSd6GHBu7OILMnnif/sbIuujtk+dGKIn8c6Aitq4=";
|
||||
hash = "sha256-cBj5dwCGJ5++qAZ0JxlqIQKm/Lw3vWVH1DBVVDvkFco=";
|
||||
};
|
||||
|
||||
__darwinAllowLocalNetworking = true;
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail "setuptools==75.6.0" "setuptools" \
|
||||
--replace-fail "setuptools==75.8.0" "setuptools" \
|
||||
'';
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "hass-nabucasa";
|
||||
version = "0.88.1";
|
||||
version = "0.89.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.12";
|
||||
@@ -32,7 +32,7 @@ buildPythonPackage rec {
|
||||
owner = "nabucasa";
|
||||
repo = "hass-nabucasa";
|
||||
tag = version;
|
||||
hash = "sha256-OTUrzpsv4sYLRHw3gvNlVz9h1XdR3YOQTZQZtFvqdiQ=";
|
||||
hash = "sha256-o6VUfg0mtaXw5isF4Q1afCZrOMSW9FSjbOOUcBne+dY=";
|
||||
};
|
||||
|
||||
pythonRelaxDeps = [ "acme" ];
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
let
|
||||
pname = "hassil";
|
||||
version = "2.1.0";
|
||||
version = "2.2.3";
|
||||
in
|
||||
buildPythonPackage {
|
||||
inherit pname version;
|
||||
@@ -27,7 +27,7 @@ buildPythonPackage {
|
||||
owner = "home-assistant";
|
||||
repo = "hassil";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-CGobMgaDHcruvOzVBIc6xS0tuaMT410t62KD3Hg30EY=";
|
||||
hash = "sha256-rP7F0BovD0Klf06lywo+1uFhPf+dS0qbNBZluun8+cE=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
pythonAtLeast,
|
||||
pythonOlder,
|
||||
pytest-aiohttp,
|
||||
pytest-asyncio,
|
||||
pytest-asyncio_0_21,
|
||||
requests,
|
||||
setuptools,
|
||||
setuptools-scm,
|
||||
@@ -48,8 +48,10 @@ buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
aiohttp-wsgi
|
||||
pytest-aiohttp
|
||||
pytest-asyncio
|
||||
(pytest-aiohttp.override {
|
||||
pytest-asyncio = pytest-asyncio_0_21;
|
||||
})
|
||||
pytest-asyncio_0_21
|
||||
pytest7CheckHook
|
||||
];
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
fetchpatch2,
|
||||
setuptools,
|
||||
setuptools-scm,
|
||||
wheel,
|
||||
@@ -23,6 +24,13 @@ buildPythonPackage rec {
|
||||
hash = "sha256-nU8vkmV/WynzQrSrq9+FQXtfAJPVLpMsRSuntU0HWrE=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/florimondmanca/httpx-sse/commit/643938c805e671fa20adcf314b447f862b77bcda.patch?full_index=1";
|
||||
hash = "sha256-V2PyTlleyoLa0DuvdlU8zGNsI9C8bTjMUcLjx81/e5k=";
|
||||
})
|
||||
];
|
||||
|
||||
# pytest-cov configuration is not necessary for packaging
|
||||
postPatch = ''
|
||||
rm setup.cfg
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
{
|
||||
anyio,
|
||||
buildPythonPackage,
|
||||
coreutils,
|
||||
fetchFromGitHub,
|
||||
hatchling,
|
||||
httpx,
|
||||
httpx-sse,
|
||||
lib,
|
||||
pydantic,
|
||||
pydantic-settings,
|
||||
pytest-asyncio,
|
||||
pytestCheckHook,
|
||||
python-dotenv,
|
||||
rich,
|
||||
sse-starlette,
|
||||
starlette,
|
||||
typer,
|
||||
uvicorn,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mcp";
|
||||
version = "1.2.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "modelcontextprotocol";
|
||||
repo = "python-sdk";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-1kTU6YoHAxPdYTeCiPFGw2c0Dno+CA//hvoD9T4Fvwo=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace tests/client/test_stdio.py \
|
||||
--replace '/usr/bin/tee' '${lib.getExe' coreutils "tee"}'
|
||||
'';
|
||||
|
||||
build-system = [ hatchling ];
|
||||
|
||||
pythonRelaxDeps = [
|
||||
"pydantic-settings"
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
anyio
|
||||
httpx
|
||||
httpx-sse
|
||||
pydantic
|
||||
pydantic-settings
|
||||
sse-starlette
|
||||
starlette
|
||||
uvicorn
|
||||
];
|
||||
|
||||
optional-dependencies = {
|
||||
cli = [
|
||||
python-dotenv
|
||||
typer
|
||||
];
|
||||
rich = [
|
||||
rich
|
||||
];
|
||||
};
|
||||
|
||||
pythonImportsCheck = [ "mcp" ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
pytestCheckHook
|
||||
] ++ lib.flatten (lib.attrValues optional-dependencies);
|
||||
|
||||
disabledTests = [
|
||||
# attempts to run the package manager uv
|
||||
"test_command_execution"
|
||||
];
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/modelcontextprotocol/python-sdk/releases/tag/${src.rev}";
|
||||
description = "Official Python SDK for Model Context Protocol servers and clients";
|
||||
homepage = "https://github.com/modelcontextprotocol/python-sdk";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
||||
@@ -13,18 +13,21 @@
|
||||
# tests
|
||||
pytestCheckHook,
|
||||
pytest-cov-stub,
|
||||
|
||||
# reverse dependencies
|
||||
music-assistant-client,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "music-assistant-models";
|
||||
version = "1.1.17";
|
||||
version = "1.1.3"; # Must be compatible with music-assistant-client package
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "music-assistant";
|
||||
repo = "models";
|
||||
tag = version;
|
||||
hash = "sha256-ggP5swX0MWjWqc2H/cbx/sbHhVHLTImJsocX5ZkHB0s=";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-FbnwUfAwCwwBKqEUtb2ZBxHehFwJdr9YkuWKox018BY=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
@@ -48,6 +51,10 @@ buildPythonPackage rec {
|
||||
"music_assistant_models"
|
||||
];
|
||||
|
||||
passthru.tests = {
|
||||
inherit music-assistant-client;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Models used by Music Assistant (shared by client and server";
|
||||
homepage = "https://github.com/music-assistant/models";
|
||||
|
||||
@@ -2,14 +2,15 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
fetchpatch2,
|
||||
setuptools,
|
||||
requests,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "nextcloudmonitor";
|
||||
version = "1.5.2";
|
||||
|
||||
format = "setuptools";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "meichthys";
|
||||
@@ -18,7 +19,17 @@ buildPythonPackage rec {
|
||||
hash = "sha256-9iohznUmDusNY7iJZBcv9yn2wp3X5cS8n3Fbj/G1u0g=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ requests ];
|
||||
patches = [
|
||||
(fetchpatch2 {
|
||||
# https://github.com/meichthys/nextcloud_monitor/pull/10
|
||||
url = "https://github.com/meichthys/nextcloud_monitor/commit/cf6191d148e0494de5ae3cbe8fc5ffdba71b6c21.patch";
|
||||
hash = "sha256-BSTX5dw+k+ItT6qvpjLiDsH9rW1NmkaBeGO9TlNZZis=";
|
||||
})
|
||||
];
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [ requests ];
|
||||
|
||||
# no tests implemented
|
||||
doCheck = false;
|
||||
|
||||
@@ -12,10 +12,11 @@
|
||||
aiodns,
|
||||
audioop-lts,
|
||||
brotli,
|
||||
faust-cchardet,
|
||||
orjson,
|
||||
poetry-core,
|
||||
poetry-dynamic-versioning,
|
||||
pynacl,
|
||||
setuptools,
|
||||
typing-extensions,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
@@ -23,7 +24,7 @@ buildPythonPackage rec {
|
||||
version = "3.0.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
disabled = pythonOlder "3.12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nextcord";
|
||||
@@ -40,8 +41,16 @@ buildPythonPackage rec {
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# disable dynamic versioning
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail 'version = "0.0.0"' 'version = "${version}"' \
|
||||
--replace-fail 'enable = true' 'enable = false'
|
||||
'';
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
poetry-core
|
||||
poetry-dynamic-versioning
|
||||
];
|
||||
|
||||
dependencies =
|
||||
@@ -49,10 +58,9 @@ buildPythonPackage rec {
|
||||
aiodns
|
||||
aiohttp
|
||||
brotli
|
||||
faust-cchardet
|
||||
orjson
|
||||
pynacl
|
||||
setuptools # for pkg_resources, remove with next release
|
||||
typing-extensions
|
||||
]
|
||||
++ lib.optionals (pythonAtLeast "3.13") [
|
||||
audioop-lts
|
||||
|
||||
@@ -8,14 +8,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "nhc";
|
||||
version = "0.3.4";
|
||||
version = "0.3.9";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vandeurenglenn";
|
||||
repo = "nhc";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-TSfOcSeedr0cSDHo1bqftUOZ3AeCW3Zgb80IBv3eerM=";
|
||||
hash = "sha256-OoWRAELy6w+LVfhBJyKReQUYD/yr4POFH+ScOgp3xyU=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "ohme";
|
||||
version = "1.2.3";
|
||||
version = "1.2.8";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@@ -18,7 +18,7 @@ buildPythonPackage rec {
|
||||
owner = "dan-r";
|
||||
repo = "ohmepy";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-hCwaB6YXtNHCNOyjRxDSonBdTpKqX9GmLwFMvrY9UpI=";
|
||||
hash = "sha256-T9xULo1kN/JZGlYKTbTue8/RH2CFOAzuFeDGM6+76rE=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "ollama";
|
||||
version = "0.4.6";
|
||||
version = "0.4.7";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@@ -23,7 +23,7 @@ buildPythonPackage rec {
|
||||
owner = "ollama";
|
||||
repo = "ollama-python";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-VELcw7b+G8aJrFMXX6rIYiR4ExSrDNezOigGznVnoNU=";
|
||||
hash = "sha256-+iinQIVbL0f4kNc9aaS0H4Ua2K5w5uapFAIkpyoMj+E=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
{
|
||||
aiohttp,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
lib,
|
||||
mashumaro,
|
||||
setuptools,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "onedrive-personal-sdk";
|
||||
version = "0.0.8";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zweckj";
|
||||
repo = "onedrive-personal-sdk";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-sA+1yqRcx7WUJFuMIIuPQm7ggVbrlSCufqq0jyhDDdA=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
aiohttp
|
||||
mashumaro
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "onedrive_personal_sdk" ];
|
||||
|
||||
# upstream has no tests
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/zweckj/onedrive-personal-sdk/releases/tag/${src.tag}";
|
||||
description = "Package to interact with the Microsoft Graph API for personal OneDrives";
|
||||
homepage = "https://github.com/zweckj/onedrive-personal-sdk";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
||||
@@ -6,12 +6,13 @@
|
||||
httpx,
|
||||
pythonOlder,
|
||||
setuptools,
|
||||
yarl,
|
||||
zeep,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "onvif-zeep-async";
|
||||
version = "3.2.3";
|
||||
version = "3.2.5";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@@ -20,7 +21,7 @@ buildPythonPackage rec {
|
||||
owner = "openvideolibs";
|
||||
repo = "python-onvif-zeep-async";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-guxep37d/MT9dp+sugfH0Ik2aIiwBSpx8x9Jj7OlNvw=";
|
||||
hash = "sha256-tEJTVdFQXr2nz0DkuIUjNDSSZUdD457SMrNAUqqsiH8=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
@@ -28,8 +29,9 @@ buildPythonPackage rec {
|
||||
dependencies = [
|
||||
ciso8601
|
||||
httpx
|
||||
yarl
|
||||
zeep
|
||||
];
|
||||
] ++ zeep.optional-dependencies.async;
|
||||
|
||||
pythonImportsCheck = [ "onvif" ];
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "openai";
|
||||
version = "1.59.8";
|
||||
version = "1.59.9";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@@ -46,7 +46,7 @@ buildPythonPackage rec {
|
||||
owner = "openai";
|
||||
repo = "openai-python";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-0NiueCUB5w4H1B5cXSyoO641DGB2J2rF2vGwPQSJJPM=";
|
||||
hash = "sha256-khdrpiurp/PigM5+0LJpXfSbG22e2I+2Jwsxo6MJKhQ=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
||||
@@ -21,6 +21,8 @@ buildPythonPackage rec {
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
pythonRelaxDeps = [ "xmltodict" ];
|
||||
|
||||
dependencies = [
|
||||
aiohttp
|
||||
pycryptodome
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchPypi,
|
||||
setuptools,
|
||||
mock,
|
||||
pytestCheckHook,
|
||||
cryptography,
|
||||
@@ -11,7 +12,7 @@
|
||||
buildPythonPackage rec {
|
||||
pname = "py-vapid";
|
||||
version = "1.9.2";
|
||||
format = "setuptools";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
@@ -21,7 +22,9 @@ buildPythonPackage rec {
|
||||
hash = "sha256-PIlzts+DhK0MmuZNYnDMxIDguSxwLY9eoswD5rUSR/k=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ cryptography ];
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [ cryptography ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
mock
|
||||
|
||||
@@ -8,16 +8,16 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pydevccu";
|
||||
version = "0.1.9";
|
||||
version = "0.1.10";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.12";
|
||||
disabled = pythonOlder "3.13";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "SukramJ";
|
||||
repo = "pydevccu";
|
||||
tag = version;
|
||||
hash = "sha256-s1u9+w0sPpXuqAET4k5VPWP+VoPqB08dZa9oY4UFXc8=";
|
||||
hash = "sha256-MUMJjFCBJx1rps+/1Wx8RVmlA3Y4Cgflljs2u4nRMBk=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
mashumaro,
|
||||
orjson,
|
||||
pytest-asyncio,
|
||||
pytest-cov-stub,
|
||||
pytest-httpx,
|
||||
poetry-core,
|
||||
pytestCheckHook,
|
||||
@@ -16,7 +17,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pydiscovergy";
|
||||
version = "3.0.2";
|
||||
version = "3.1.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@@ -25,11 +26,10 @@ buildPythonPackage rec {
|
||||
owner = "jpbede";
|
||||
repo = "pydiscovergy";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-g6KWX7APdqB0dNe7p6WGualxSj5fiw+jRq+0qfqTs4w=";
|
||||
hash = "sha256-OrMuMGN1zB4q6t4fWyZeQ9WRmNZHFyq+wIRq1kG2N30=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
sed -i '/addopts =/d' pyproject.toml
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail 'version = "0.0.0"' 'version = "${version}"'
|
||||
'';
|
||||
@@ -45,6 +45,7 @@ buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
pytest-cov-stub
|
||||
pytest-httpx
|
||||
pytestCheckHook
|
||||
respx
|
||||
|
||||
@@ -10,21 +10,23 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyeconet";
|
||||
version = "0.1.25";
|
||||
format = "pyproject";
|
||||
version = "0.1.26";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "w1ll1am23";
|
||||
repo = pname;
|
||||
repo = "pyeconet";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-qbg8QzzT81fmjFeyEgVPXp3QKGOs3oKjTUUUTHIR8OI=";
|
||||
hash = "sha256-3A37/LHCYkqFjbjP3mtO4kRnWZ8NQiFAS67mT2igvqM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ setuptools ];
|
||||
build-system = [ setuptools ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
pythonRelaxDeps = [ "paho-mqtt" ];
|
||||
|
||||
dependencies = [
|
||||
paho-mqtt
|
||||
aiohttp
|
||||
];
|
||||
@@ -34,11 +36,11 @@ buildPythonPackage rec {
|
||||
|
||||
pythonImportsCheck = [ "pyeconet" ];
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Python interface to the EcoNet API";
|
||||
homepage = "https://github.com/w1ll1am23/pyeconet";
|
||||
changelog = "https://github.com/w1ll1am23/pyeconet/releases/tag/${src.tag}";
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ fab ];
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ fab ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyenphase";
|
||||
version = "1.23.0";
|
||||
version = "1.23.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@@ -29,7 +29,7 @@ buildPythonPackage rec {
|
||||
owner = "pyenphase";
|
||||
repo = "pyenphase";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-nGOxGZxPTlU5/nI2m+MXzzcVA+twxfNL1Jf51xT0XLc=";
|
||||
hash = "sha256-xiwoFfKMZVgpMfh2CjzhkuZPxCD/NC2nK67r6Miu0eg=";
|
||||
};
|
||||
|
||||
pythonRelaxDeps = [ "tenacity" ];
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyezviz";
|
||||
version = "1.0.0.6";
|
||||
version = "0.2.2.4a";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@@ -22,7 +22,7 @@ buildPythonPackage rec {
|
||||
owner = "baqs";
|
||||
repo = "pyEzviz";
|
||||
tag = version;
|
||||
hash = "sha256-KtAqmM4k1o89lG/yb2er1r792zGyNx+TgIQhELr3yTc=";
|
||||
hash = "sha256-OgDplQ6TrK2CZbNgJpoYC8TkK1sG73HdpUyHE+2ZTLk=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
@@ -40,10 +40,13 @@ buildPythonPackage rec {
|
||||
|
||||
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/${src.tag}";
|
||||
changelog = "https://github.com/BaQs/pyEzviz/releases/tag/${version}";
|
||||
license = with licenses; [ asl20 ];
|
||||
maintainers = with maintainers; [ fab ];
|
||||
mainProgram = "pyezviz";
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
paho-mqtt,
|
||||
pandas,
|
||||
pycryptodome,
|
||||
pythonOlder,
|
||||
requests,
|
||||
setuptools,
|
||||
xmltodict,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyezviz";
|
||||
version = "1.0.0.9";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "RenierM26";
|
||||
repo = "pyEzvizApi";
|
||||
tag = version;
|
||||
hash = "sha256-iqTNkfecBrxJ3BwACbMmcHqequ6IUzjL550ip+jNIrs=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
paho-mqtt
|
||||
pandas
|
||||
pycryptodome
|
||||
requests
|
||||
xmltodict
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "pyezvizapi" ];
|
||||
|
||||
# test_cam_rtsp.py is not actually a unit test
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "Python interface for for Ezviz cameras";
|
||||
homepage = "https://github.com/RenierM26/pyEzvizApi";
|
||||
changelog = "https://github.com/RenierM26/pyEzvizApi/releases/tag/${src.tag}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ dotlambda ];
|
||||
mainProgram = "pyezviz";
|
||||
};
|
||||
}
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyfritzhome";
|
||||
version = "0.6.13";
|
||||
version = "0.6.14";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@@ -20,12 +20,12 @@ buildPythonPackage rec {
|
||||
owner = "hthiery";
|
||||
repo = "python-fritzhome";
|
||||
tag = version;
|
||||
hash = "sha256-2piHJkF6S5sMb1ZsYQj7ItdwJt5RkVvTrYa9IUKlYp8=";
|
||||
hash = "sha256-49Ap4SSeEMlqOnzd1/oyQ1wKwFVxsC+apx+FVCWqNVI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ setuptools ];
|
||||
build-system = [ setuptools ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
dependencies = [
|
||||
cryptography
|
||||
requests
|
||||
];
|
||||
|
||||
@@ -5,18 +5,19 @@
|
||||
setuptools,
|
||||
pytest-asyncio,
|
||||
pytestCheckHook,
|
||||
syrupy,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyheos";
|
||||
version = "1.0.0";
|
||||
version = "1.0.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "andrewsayre";
|
||||
repo = "pyheos";
|
||||
tag = version;
|
||||
hash = "sha256-0td3Xv2BwOwcuU0ZlPA86eQd326vRjB7UMysN/RGjMU=";
|
||||
hash = "sha256-2hrWK3nRFnRtv4dfXXELOxKwttG9Oo2I2+eSXcfgUi8=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
@@ -24,6 +25,7 @@ buildPythonPackage rec {
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
pytestCheckHook
|
||||
syrupy
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pypck";
|
||||
version = "0.8.3";
|
||||
version = "0.8.5";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@@ -21,7 +21,7 @@ buildPythonPackage rec {
|
||||
owner = "alengwenus";
|
||||
repo = "pypck";
|
||||
tag = version;
|
||||
hash = "sha256-5MfWFtCIGRHO68dGKDmf++2yWA/wcK3JlM+4o5HKuE8=";
|
||||
hash = "sha256-0CoADS76Ed2ICc8Y/LvtRhbG7mFQDWBsNQAnIUGK8m0=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -8,14 +8,15 @@
|
||||
setuptools-scm,
|
||||
pytest-asyncio,
|
||||
pytest-cases,
|
||||
pytest7CheckHook,
|
||||
pytest-cov-stub,
|
||||
pytestCheckHook,
|
||||
pytz,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pysiaalarm";
|
||||
version = "3.1.1";
|
||||
format = "setuptools";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
@@ -27,11 +28,9 @@ buildPythonPackage rec {
|
||||
postPatch = ''
|
||||
substituteInPlace setup.cfg \
|
||||
--replace "==" ">="
|
||||
substituteInPlace pytest.ini \
|
||||
--replace "--cov pysiaalarm --cov-report term-missing" ""
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ setuptools-scm ];
|
||||
build-system = [ setuptools-scm ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
dataclasses-json
|
||||
@@ -42,7 +41,8 @@ buildPythonPackage rec {
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
pytest-cases
|
||||
pytest7CheckHook
|
||||
pytest-cov-stub
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
|
||||
@@ -13,14 +13,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pysmlight";
|
||||
version = "0.1.5";
|
||||
version = "0.1.7";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "smlight-tech";
|
||||
repo = "pysmlight";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-A/IppL1bTGvgdmPIGQS8rRNGrZIK8YTnEnKUJWAgs5Q=";
|
||||
hash = "sha256-gEqsCHe8U1p1uKarCzzppFAKC5OGNUJk/Hif5VXnojw=";
|
||||
};
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
@@ -3,11 +3,9 @@
|
||||
atomicwrites,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
#, hatchling
|
||||
ruamel-yaml,
|
||||
poetry-core,
|
||||
pytest,
|
||||
pytest-asyncio,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
testfixtures,
|
||||
@@ -16,7 +14,7 @@
|
||||
buildPythonPackage rec {
|
||||
pname = "pytest-golden";
|
||||
version = "0.2.2";
|
||||
format = "pyproject";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
@@ -29,29 +27,26 @@ buildPythonPackage rec {
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace "poetry>=0.12" poetry-core \
|
||||
--replace poetry.masonry.api poetry.core.masonry.api
|
||||
--replace-fail "poetry>=0.12" poetry-core \
|
||||
--replace-fail poetry.masonry.api poetry.core.masonry.api
|
||||
'';
|
||||
|
||||
pythonRelaxDeps = [ "testfixtures" ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
build-system = [
|
||||
# hatchling used for > 0.2.2
|
||||
poetry-core
|
||||
];
|
||||
|
||||
buildInputs = [ pytest ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
dependencies = [
|
||||
atomicwrites
|
||||
ruamel-yaml
|
||||
testfixtures
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
pytestCheckHook
|
||||
];
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
|
||||
pythonImportsCheck = [ "pytest_golden" ];
|
||||
|
||||
|
||||
@@ -3,10 +3,13 @@
|
||||
aiohttp,
|
||||
aresponses,
|
||||
async-timeout,
|
||||
awesomeversion,
|
||||
backoff,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
mashumaro,
|
||||
multidict,
|
||||
orjson,
|
||||
poetry-core,
|
||||
pytest-asyncio,
|
||||
pytest-cov-stub,
|
||||
@@ -17,7 +20,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-homewizard-energy";
|
||||
version = "8.1.0";
|
||||
version = "8.3.2";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -26,7 +29,7 @@ buildPythonPackage rec {
|
||||
owner = "DCSBL";
|
||||
repo = "python-homewizard-energy";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-e1UB9Hegnl4JR1fBQz9/caTeo82LGGQX4qETI0O9OLc=";
|
||||
hash = "sha256-koc82UHwr3TJZAzSX878fEbyRu8vddDLNpNelbnTr/8=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
@@ -39,8 +42,11 @@ buildPythonPackage rec {
|
||||
dependencies = [
|
||||
aiohttp
|
||||
async-timeout
|
||||
awesomeversion
|
||||
backoff
|
||||
mashumaro
|
||||
multidict
|
||||
orjson
|
||||
];
|
||||
|
||||
__darwinAllowLocalNetworking = true;
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-kasa";
|
||||
version = "0.9.1";
|
||||
version = "0.10.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -32,7 +32,7 @@ buildPythonPackage rec {
|
||||
owner = "python-kasa";
|
||||
repo = "python-kasa";
|
||||
tag = version;
|
||||
hash = "sha256-9y0M2CYG7tFdT9nAcQLhgvTKeaxoFHAVihM2Rj+0N34=";
|
||||
hash = "sha256-GqFWQRORU1CBtw+xasvGl0NZlVgD+mV37uWkwhOphF0=";
|
||||
};
|
||||
|
||||
build-system = [ hatchling ];
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
construct,
|
||||
dacite,
|
||||
fetchFromGitHub,
|
||||
freezegun,
|
||||
paho-mqtt,
|
||||
poetry-core,
|
||||
pycryptodome,
|
||||
@@ -21,7 +22,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-roborock";
|
||||
version = "2.9.2";
|
||||
version = "2.11.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.10";
|
||||
@@ -30,7 +31,7 @@ buildPythonPackage rec {
|
||||
owner = "humbertogontijo";
|
||||
repo = "python-roborock";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-TWV28Uok2plDJsG5RsgTp1xzvGJ/zUy1lUcGZApDReE=";
|
||||
hash = "sha256-uFZ+d4MehZbK7xZdmWnZrsbK2f5UsA4J/vVRLZXyI8E=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
@@ -42,7 +43,7 @@ buildPythonPackage rec {
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
dependencies = [
|
||||
aiohttp
|
||||
async-timeout
|
||||
click
|
||||
@@ -55,6 +56,7 @@ buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
aioresponses
|
||||
freezegun
|
||||
pytest-asyncio
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
@@ -2,15 +2,18 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
pytest-cov-stub,
|
||||
pytest-mock,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
requests,
|
||||
responses,
|
||||
setuptools,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-tado";
|
||||
version = "0.18.5";
|
||||
version = "0.18.6";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.5";
|
||||
@@ -19,14 +22,30 @@ buildPythonPackage rec {
|
||||
owner = "wmalgadey";
|
||||
repo = "PyTado";
|
||||
tag = version;
|
||||
hash = "sha256-NW3Au4meVf9QFVqmsx6f2TQus6QxanILx5U5GlVc3TE=";
|
||||
hash = "sha256-pDT159TY1PEG3TLoIaNy5VVpIklclgOvFy4W5HKy7uM=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [ requests ];
|
||||
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
nativeCheckInputs = [
|
||||
pytest-cov-stub
|
||||
pytest-mock
|
||||
pytestCheckHook
|
||||
responses
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
# network access
|
||||
"test_interface_with_tado_api"
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
# network access
|
||||
"tests/test_my_tado.py"
|
||||
"tests/test_my_zone.py"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "PyTado" ];
|
||||
|
||||
|
||||
@@ -1,27 +1,36 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchPypi,
|
||||
fetchFromGitHub,
|
||||
requests,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
pyyaml,
|
||||
setuptools,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyvesync";
|
||||
version = "2.1.15";
|
||||
format = "setuptools";
|
||||
version = "2.1.17";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-iXahtcD5jKP5hRtXxtgA3x0+zxaWu1zo/QrWfFEmB0w=";
|
||||
src = fetchFromGitHub {
|
||||
owner = "webdjoe";
|
||||
repo = "pyvesync";
|
||||
tag = version;
|
||||
hash = "sha256-h5pxoPtIZVfhSHyvCkde2uVMzNjqXEYaMM8+gsNMd/k=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ requests ];
|
||||
build-system = [ setuptools ];
|
||||
|
||||
# Test are not available (not in PyPI tarball and there are no GitHub releases)
|
||||
doCheck = false;
|
||||
dependencies = [ requests ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
pyyaml
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "pyvesync" ];
|
||||
|
||||
|
||||
@@ -8,19 +8,18 @@
|
||||
requests,
|
||||
pytest-cov-stub,
|
||||
pytestCheckHook,
|
||||
simplejson,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyvicare";
|
||||
version = "2.40.0";
|
||||
version = "2.41.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openviess";
|
||||
repo = "PyViCare";
|
||||
tag = version;
|
||||
hash = "sha256-jEnTzCQpJOiWtdaZbBgm4G1OsMXctjSRmU2AY2VZgqA=";
|
||||
hash = "sha256-iNv70l8xHxiF+ifKf0gkJ5W/aOuek/9QYCF8pm6xBiw=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "reolink-aio";
|
||||
version = "0.11.8";
|
||||
version = "0.11.9";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@@ -22,7 +22,7 @@ buildPythonPackage rec {
|
||||
owner = "starkillerOG";
|
||||
repo = "reolink_aio";
|
||||
tag = version;
|
||||
hash = "sha256-G2Q/mstxjmou161ww3bXEmFuyoblfp8Dw3Kq+L7WVaE=";
|
||||
hash = "sha256-hqecKAk3kpm3b9wtQTJtWA3H6WxCNiKl4auaolzrvtI=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -11,19 +11,19 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "restrictedpython";
|
||||
version = "7.4";
|
||||
version = "8.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-gbYpJHE9vSgJF/zq7K8hD+96Sd3fGgjIwhSjYT++tCU=";
|
||||
hash = "sha256-OvIxK8Z+X87Yh/uFsAbImGHackiBKLFVvuqB62oKmyQ=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail "setuptools<74" setuptools
|
||||
--replace-fail "setuptools <= 75.6.0" setuptools
|
||||
'';
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -38,6 +38,10 @@ buildPythonPackage rec {
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace "version=version_from_git()" "version='${version}'"
|
||||
|
||||
substituteInPlace rflinkproxy/__main__.py --replace-fail \
|
||||
"with async_timeout.timeout(CONNECTION_TIMEOUT):" \
|
||||
"async with async_timeout.timeout(CONNECTION_TIMEOUT):"
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "rflink.protocol" ];
|
||||
|
||||
@@ -10,16 +10,16 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "securetar";
|
||||
version = "2025.1.3";
|
||||
version = "2025.1.4";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
disabled = pythonOlder "3.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pvizeli";
|
||||
repo = "securetar";
|
||||
tag = version;
|
||||
hash = "sha256-flsDFXNzpwfNraR4MvjkxOjH6BUNvGqu6g7RXlvl8sU=";
|
||||
hash = "sha256-vI9u8CUf9rdJwx+Q3ypO9XS/jfRxZV5EOjvKSmQSNa0=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -2,7 +2,10 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
cacert,
|
||||
faster-whisper,
|
||||
flac,
|
||||
google-cloud-speech,
|
||||
groq,
|
||||
httpx,
|
||||
openai-whisper,
|
||||
@@ -15,6 +18,7 @@
|
||||
respx,
|
||||
setuptools,
|
||||
soundfile,
|
||||
standard-aifc,
|
||||
typing-extensions,
|
||||
}:
|
||||
|
||||
@@ -43,11 +47,16 @@ buildPythonPackage rec {
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [ typing-extensions ];
|
||||
dependencies = [
|
||||
standard-aifc
|
||||
typing-extensions
|
||||
];
|
||||
|
||||
optional-dependencies = {
|
||||
assemblyai = [ requests ];
|
||||
audio = [ pyaudio ];
|
||||
faster-whisper = [ faster-whisper ];
|
||||
google-cloud = [ google-cloud-speech ];
|
||||
groq = [
|
||||
groq
|
||||
httpx
|
||||
@@ -68,7 +77,12 @@ buildPythonPackage rec {
|
||||
pytestCheckHook
|
||||
pocketsphinx
|
||||
respx
|
||||
] ++ lib.flatten (builtins.attrValues optional-dependencies);
|
||||
] ++ lib.flatten (lib.attrValues optional-dependencies);
|
||||
|
||||
preCheck = ''
|
||||
# httpx since 0.28.0+ depends on SSL_CERT_FILE
|
||||
SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "speech_recognition" ];
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "tesla-fleet-api";
|
||||
version = "0.9.5";
|
||||
version = "0.9.8";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.10";
|
||||
@@ -22,7 +22,7 @@ buildPythonPackage rec {
|
||||
owner = "Teslemetry";
|
||||
repo = "python-tesla-fleet-api";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-45EfV6lqhOn8sorhyzUBKOj6xtd9OzYxB7SLK07IQ08=";
|
||||
hash = "sha256-Bm+euNX0n2proyc0DCyYcc7lUlx/YhRWpPInWPr40CY=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -8,14 +8,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "teslemetry-stream";
|
||||
version = "0.6.6";
|
||||
version = "0.6.10";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Teslemetry";
|
||||
repo = "python-teslemetry-stream";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-6LecUx+5CUJybIHwA4OY57gu2odoE2xq02vp13vDYLk=";
|
||||
hash = "sha256-HYOjmFVyPPQ+NizmEhrse868IELHn0fGfr55MwTpP3w=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
fetchpatch,
|
||||
poetry-core,
|
||||
pytest-asyncio,
|
||||
pytestCheckHook,
|
||||
@@ -13,30 +12,21 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "todoist-api-python";
|
||||
version = "2.1.3";
|
||||
format = "pyproject";
|
||||
version = "2.1.7";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Doist";
|
||||
repo = pname;
|
||||
repo = "todoist-api-python";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-Xi3B/Nl5bMbW0lYwrkEbBgFTEl07YkFyN18kN0WyGyw=";
|
||||
hash = "sha256-qOb9qAwjQ0MqR+mdNEkt7W8SiBhZ8gRf01TsHDkLPS4=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Switch to poetry-core, https://github.com/Doist/todoist-api-python/pull/81
|
||||
(fetchpatch {
|
||||
name = "switch-to-poetry-core.patch";
|
||||
url = "https://github.com/Doist/todoist-api-python/commit/42288e066d2f0c69611ab50cb57ca98b8c6bd1ca.patch";
|
||||
hash = "sha256-yq+VVvjPYywvUn+ydyWVQPkiYPYWe9U6w38G54L2lkE=";
|
||||
})
|
||||
];
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
nativeBuildInputs = [ poetry-core ];
|
||||
|
||||
propagatedBuildInputs = [ requests ];
|
||||
dependencies = [ requests ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-asyncio
|
||||
|
||||
@@ -2,15 +2,18 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
pycryptodome,
|
||||
pyjwt,
|
||||
pytestCheckHook,
|
||||
pythonOlder,
|
||||
requests-mock,
|
||||
setuptools,
|
||||
zeep,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "total-connect-client";
|
||||
version = "2024.12.1";
|
||||
version = "2025.1.4";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.10";
|
||||
@@ -19,14 +22,23 @@ buildPythonPackage rec {
|
||||
owner = "craigjmidwinter";
|
||||
repo = "total-connect-client";
|
||||
tag = version;
|
||||
hash = "sha256-FcPm2Nc6pUGC86K3GLAiQRot0JXYqoZh19dXMCl99eI=";
|
||||
hash = "sha256-zzSYi/qhHmugH30bnYHK9lCBVN5wuv6n9rvaZC/sIag=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [ zeep ];
|
||||
pythonRelaxDeps = [ "pycryptodome" ];
|
||||
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
dependencies = [
|
||||
pycryptodome
|
||||
pyjwt
|
||||
zeep
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
requests-mock
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "total_connect_client" ];
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "uiprotect";
|
||||
version = "7.5.0";
|
||||
version = "7.5.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.10";
|
||||
@@ -49,7 +49,7 @@ buildPythonPackage rec {
|
||||
owner = "uilibs";
|
||||
repo = "uiprotect";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-tOozcXDXQI3l5dMQ8WqBrC7wLVbl5iomsuy/hYL3emE=";
|
||||
hash = "sha256-moGS1hfCU8BCdAzvr0Np7lF32RucigM9YANZI6+sALw=";
|
||||
};
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "velbus-aio";
|
||||
version = "2025.1.0";
|
||||
version = "2025.1.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@@ -23,7 +23,7 @@ buildPythonPackage rec {
|
||||
owner = "Cereal2nd";
|
||||
repo = "velbus-aio";
|
||||
tag = version;
|
||||
hash = "sha256-ZaaHywHX1TScjW0XN/krCYgupHlbH1mRB0fd7YZ2iMY=";
|
||||
hash = "sha256-r6j2C+x7BX7EOFdrQ/N5/NRjHFgyxiQlq/cXnnCg73s=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
||||
@@ -9,14 +9,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "voip-utils";
|
||||
version = "0.2.2";
|
||||
version = "0.3.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "home-assistant-libs";
|
||||
repo = "voip-utils";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-OlvZSVuoGQi0QEusl01nbw3oD75NfMsbpNOPQgWYu+c=";
|
||||
hash = "sha256-43g7ArhIZVyZ+VnzenldrQfr6kjpAxPNrK/vazYED+w=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
{
|
||||
lib,
|
||||
aenum,
|
||||
aiohttp-retry,
|
||||
aiohttp,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
pydantic,
|
||||
@@ -33,6 +35,8 @@ buildPythonPackage rec {
|
||||
|
||||
dependencies = [
|
||||
aenum
|
||||
aiohttp
|
||||
aiohttp-retry
|
||||
pydantic
|
||||
python-dateutil
|
||||
urllib3
|
||||
|
||||
@@ -59,8 +59,8 @@ buildPythonPackage rec {
|
||||
];
|
||||
|
||||
optional-dependencies = {
|
||||
async_require = [ httpx ];
|
||||
xmlsec_require = [ xmlsec ];
|
||||
async = [ httpx ];
|
||||
xmlsec = [ xmlsec ];
|
||||
};
|
||||
|
||||
pythonImportsCheck = [ "zeep" ];
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "zeroconf";
|
||||
version = "0.140.1";
|
||||
version = "0.143.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -26,7 +26,7 @@ buildPythonPackage rec {
|
||||
owner = "jstasiak";
|
||||
repo = "python-zeroconf";
|
||||
tag = version;
|
||||
hash = "sha256-+F0pq6fmfyEtfKS16y5JjjRZl4BeaWi6honZyyHJApY=";
|
||||
hash = "sha256-yN5N+SosNDcwotEH2oyVMRI717LXIRKtzHQ4VI4WoMQ=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
@@ -64,7 +64,7 @@ buildPythonPackage rec {
|
||||
meta = with lib; {
|
||||
description = "Python implementation of multicast DNS service discovery";
|
||||
homepage = "https://github.com/python-zeroconf/python-zeroconf";
|
||||
changelog = "https://github.com/python-zeroconf/python-zeroconf/releases/tag/${src.tag}";
|
||||
changelog = "https://github.com/python-zeroconf/python-zeroconf/blob/${src.tag}/CHANGELOG.md";
|
||||
license = licenses.lgpl21Only;
|
||||
maintainers = with maintainers; [ abbradar ];
|
||||
};
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "zha-quirks";
|
||||
version = "0.0.130";
|
||||
version = "0.0.131";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.12";
|
||||
@@ -21,7 +21,7 @@ buildPythonPackage rec {
|
||||
owner = "zigpy";
|
||||
repo = "zha-device-handlers";
|
||||
tag = version;
|
||||
hash = "sha256-G5q4W9Dxjhjbkt5rcYhseeaSWC73MJCo/pX/OfNlPrQ=";
|
||||
hash = "sha256-MSTlSvZhamWX7lNzJjDGxyo9KfshZ7T1ED8axx1Aghs=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "zha";
|
||||
version = "0.0.45";
|
||||
version = "0.0.47";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.12";
|
||||
@@ -36,7 +36,7 @@ buildPythonPackage rec {
|
||||
owner = "zigpy";
|
||||
repo = "zha";
|
||||
tag = version;
|
||||
hash = "sha256-KeHGuQGEoXQnIJKQ86DrsoufN+Ppp/fyYblXx2iGHgU=";
|
||||
hash = "sha256-BDZqReJWmxodP1w3fdxUHbjY9dL+6hUQZ0YazeiERrM=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "zigpy";
|
||||
version = "0.74.0";
|
||||
version = "0.76.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -36,7 +36,7 @@ buildPythonPackage rec {
|
||||
owner = "zigpy";
|
||||
repo = "zigpy";
|
||||
tag = version;
|
||||
hash = "sha256-B0BjDldIzHGRKR79mqgJHbvYeDGY5EDxFKaD2Q+HMyo=";
|
||||
hash = "sha256-ZPNMlaktdSElOfKf3SmI08RGRSpI5hK2khWoJybtJh4=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -9,13 +9,13 @@
|
||||
buildHomeAssistantComponent rec {
|
||||
owner = "SukramJ";
|
||||
domain = "homematicip_local";
|
||||
version = "1.80.0";
|
||||
version = "1.81.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "SukramJ";
|
||||
repo = "custom_homematic";
|
||||
tag = version;
|
||||
hash = "sha256-smagkEz5ec3Wrv5ldMY9hv+TnSzQ7pbZUURnTKBsF1g=";
|
||||
hash = "sha256-8B1zaU0fMRN2drJvfdifEXM2bXwHBD6PP7/c8lXQPLA=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
callPackage,
|
||||
fetchFromGitHub,
|
||||
fetchPypi,
|
||||
fetchpatch2,
|
||||
python313,
|
||||
substituteAll,
|
||||
ffmpeg-headless,
|
||||
@@ -46,6 +45,17 @@ let
|
||||
];
|
||||
});
|
||||
|
||||
aiomqtt = super.aiomqtt.overridePythonAttrs (rec {
|
||||
version = "2.0.1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "sbtinstruments";
|
||||
repo = "aiomqtt";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-bV1elEO1518LVLwNDN5pzjxRgcG34K1XUsK7fTw8h+8=";
|
||||
};
|
||||
meta.broken = false;
|
||||
});
|
||||
|
||||
aioskybell = super.aioskybell.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "22.7.0";
|
||||
src = fetchFromGitHub {
|
||||
@@ -88,6 +98,37 @@ let
|
||||
];
|
||||
});
|
||||
|
||||
async-timeout = super.async-timeout.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "4.0.3";
|
||||
src = fetchFromGitHub {
|
||||
owner = "aio-libs";
|
||||
repo = "async-timeout";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-gJGVRm7YMWnVicz2juHKW8kjJBxn4/vQ/kc2kQyl1i4=";
|
||||
};
|
||||
});
|
||||
|
||||
eq3btsmart = super.eq3btsmart.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "1.4.1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "EuleMitKeule";
|
||||
repo = "eq3btsmart";
|
||||
tag = version;
|
||||
hash = "sha256-FRnCnSMtsiZ1AbZOMwO/I5UoFWP0xAFqRZsnrHG9WJA=";
|
||||
};
|
||||
build-system = with self; [ poetry-core ];
|
||||
});
|
||||
|
||||
govee-local-api = super.govee-local-api.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "1.5.3";
|
||||
src = fetchFromGitHub {
|
||||
owner = "Galorhallen";
|
||||
repo = "govee-local-api";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-qBT0Xub+eL7rfF+lQWlheBJSahEKWjREGJQD6sHjTPk=";
|
||||
};
|
||||
});
|
||||
|
||||
gspread = super.gspread.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "5.12.4";
|
||||
src = fetchFromGitHub {
|
||||
@@ -101,6 +142,16 @@ let
|
||||
];
|
||||
});
|
||||
|
||||
letpot = super.letpot.overridePythonAttrs (rec {
|
||||
version = "0.3.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "jpelgrom";
|
||||
repo = "python-letpot";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-OFLQ0DV7roqUlm6zJWAzMRpcmAi/oco8lEHbmfqNaVs=";
|
||||
};
|
||||
});
|
||||
|
||||
openhomedevice = super.openhomedevice.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "2.2";
|
||||
src = fetchFromGitHub {
|
||||
@@ -110,6 +161,8 @@ let
|
||||
};
|
||||
});
|
||||
|
||||
paho-mqtt = super.paho-mqtt_1;
|
||||
|
||||
pymelcloud = super.pymelcloud.overridePythonAttrs (oldAttrs: {
|
||||
version = "2.5.9";
|
||||
src = fetchFromGitHub {
|
||||
@@ -205,6 +258,18 @@ let
|
||||
};
|
||||
});
|
||||
|
||||
pyrail = super.pyrail.overridePythonAttrs (rec {
|
||||
version = "0.0.3";
|
||||
src = fetchPypi {
|
||||
pname = "pyrail";
|
||||
inherit version;
|
||||
hash = "sha256-XxcVcRXMjYAKevANAqNJkGDUWfxDaLqgCL6XL9Lhsf4=";
|
||||
};
|
||||
env.CI_JOB_ID = version;
|
||||
build-system = [ self.setuptools ];
|
||||
dependencies = [ self.requests ];
|
||||
});
|
||||
|
||||
# snmp component does not support pysnmp 7.0+
|
||||
pysnmp = super.pysnmp.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "6.2.6";
|
||||
@@ -255,22 +320,6 @@ let
|
||||
doCheck = false;
|
||||
});
|
||||
|
||||
slack-sdk = super.slack-sdk.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "2.5.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "slackapi";
|
||||
repo = "python-slackclient";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-U//HUe6e41wOOzoaDl4yXPnEASCzpGBIScHStWMN8tk=";
|
||||
};
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace-fail "pytest-runner" ""
|
||||
'';
|
||||
pythonImportsCheck = [ "slack" ];
|
||||
doCheck = false; # Tests changed a lot for > 3
|
||||
});
|
||||
|
||||
vulcan-api = super.vulcan-api.overridePythonAttrs (oldAttrs: rec {
|
||||
version = "2.3.2";
|
||||
src = fetchFromGitHub {
|
||||
@@ -320,7 +369,7 @@ let
|
||||
extraBuildInputs = extraPackages python.pkgs;
|
||||
|
||||
# Don't forget to run update-component-packages.py after updating
|
||||
hassVersion = "2025.1.4";
|
||||
hassVersion = "2025.2.0";
|
||||
|
||||
in
|
||||
python.pkgs.buildPythonApplication rec {
|
||||
@@ -341,13 +390,13 @@ python.pkgs.buildPythonApplication rec {
|
||||
owner = "home-assistant";
|
||||
repo = "core";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-QqWF/uvFQbf0tdJMzFV3hAt9Je5sFR5z+aAPtCxycbM=";
|
||||
hash = "sha256-TGlfqvmYUPA5wdvZWD89z6lfvDr+K/1kgu6NjkRpNxs=";
|
||||
};
|
||||
|
||||
# Secondary source is pypi sdist for translations
|
||||
sdist = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-yzX4Wgo468On/WuK32Xdl0O3en/WFRdykvfvHNEU1S0=";
|
||||
hash = "sha256-+dkS6AuqyzvC2NiGCGkDAGxF/kS/LuKkMFXWXjC3I8Y=";
|
||||
};
|
||||
|
||||
build-system = with python.pkgs; [
|
||||
@@ -395,18 +444,15 @@ python.pkgs.buildPythonApplication rec {
|
||||
src = ./patches/ffmpeg-path.patch;
|
||||
ffmpeg = "${lib.getExe ffmpeg-headless}";
|
||||
})
|
||||
|
||||
(fetchpatch2 {
|
||||
# python-matter-server 7.0 compat
|
||||
url = "https://github.com/home-assistant/core/commit/ea4931ca3a91920b66a747a18a2dece2c8215d4f.patch";
|
||||
hash = "sha256-evfMdBdEYsVSu2iDZ5xgNTg/QljJ+MXrV69g9liNcN4=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace tests/test_core_config.py --replace-fail '"/usr"' "\"$NIX_BUILD_TOP/media\""
|
||||
|
||||
sed -i 's/setuptools[~=]/setuptools>/' pyproject.toml
|
||||
|
||||
substituteInPlace tests/components/hassio/test_backup.py \
|
||||
--replace-fail setup_integration setup_backup_integration
|
||||
'';
|
||||
|
||||
dependencies = with python.pkgs; [
|
||||
@@ -414,6 +460,7 @@ python.pkgs.buildPythonApplication rec {
|
||||
aiodns
|
||||
aiohasupervisor
|
||||
aiohttp
|
||||
aiohttp-asyncmdnsresolver
|
||||
aiohttp-cors
|
||||
aiohttp-fast-zlib
|
||||
aiozoneinfo
|
||||
|
||||
@@ -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 = "20250109.2";
|
||||
version = "20250205.0";
|
||||
format = "wheel";
|
||||
|
||||
src = fetchPypi {
|
||||
@@ -16,7 +16,7 @@ buildPythonPackage rec {
|
||||
pname = "home_assistant_frontend";
|
||||
dist = "py3";
|
||||
python = "py3";
|
||||
hash = "sha256-jE8+QzYUftQFuGgJuvFYIzZ9DsEFoNpPS94Wjmk73Ss=";
|
||||
hash = "sha256-9P2OqnPNPydBi4k9iN0hSyGTyBW4PohdgJwQqa8MlYg=";
|
||||
};
|
||||
|
||||
# there is nothing to strip in this package
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "home-assistant-intents";
|
||||
version = "2025.1.1";
|
||||
version = "2025.2.5";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@@ -32,7 +32,7 @@ buildPythonPackage rec {
|
||||
repo = "intents-package";
|
||||
rev = "refs/tags/${version}";
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-OeGupmeZ2KLpQHc0d50itTvlrA5XziKU8cAz9i6ztSw=";
|
||||
hash = "sha256-x6B7UF6l9vMFscD8aPZ05N0HXo5d8XSONrrr6u+Ol3g=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
diff --git a/homeassistant/components/network/__init__.py b/homeassistant/components/network/__init__.py
|
||||
index b3ef88e7ab..b7a8471e1a 100644
|
||||
--- a/homeassistant/components/network/__init__.py
|
||||
+++ b/homeassistant/components/network/__init__.py
|
||||
@@ -30,7 +30,7 @@ async def async_get_source_ip(
|
||||
) -> str:
|
||||
"""Get the source ip for a target ip."""
|
||||
adapters = await async_get_adapters(hass)
|
||||
- all_ipv4s = []
|
||||
+ all_ipv4s = ["127.0.0.1"]
|
||||
for adapter in adapters:
|
||||
if adapter["enabled"] and (ipv4s := adapter["ipv4"]):
|
||||
all_ipv4s.extend([ipv4["address"] for ipv4 in ipv4s])
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pytest-homeassistant-custom-component";
|
||||
version = "0.13.204";
|
||||
version = "0.13.210";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.12";
|
||||
@@ -27,7 +27,7 @@ buildPythonPackage rec {
|
||||
owner = "MatthewFlamm";
|
||||
repo = "pytest-homeassistant-custom-component";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-yYcUQwf9DDeJvnkmPPvESJdXt7VY/TVYD6UoguXta5s=";
|
||||
hash = "sha256-SQCxuMmLYfZ1xzaIko5VJiKtu8LqzJIW4Rk8ze/VSEg=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "homeassistant-stubs";
|
||||
version = "2025.1.4";
|
||||
version = "2025.2.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = python.version != home-assistant.python.version;
|
||||
@@ -19,7 +19,7 @@ buildPythonPackage rec {
|
||||
owner = "KapJI";
|
||||
repo = "homeassistant-stubs";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-ysebkp0wrCGHRuHZMY6P4ftcth3gsHwtRcSGUN/7noI=";
|
||||
hash = "sha256-u9RclA8vtsr34TKdocFgc3e/LjaRjP3fqQC0QjqsOs4=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
||||
@@ -14,6 +14,9 @@ let
|
||||
ibeacon-ble
|
||||
];
|
||||
hassio = getComponentDeps "homeassistant_yellow";
|
||||
homeassistant_hardware = getComponentDeps "zha";
|
||||
homeassistant_sky_connect = getComponentDeps "zha";
|
||||
homeassistant_yellow = getComponentDeps "zha";
|
||||
husqvarna_automower_ble = getComponentDeps "gardena_bluetooth";
|
||||
lovelace = [
|
||||
pychromecast
|
||||
@@ -36,6 +39,7 @@ let
|
||||
songpal = [
|
||||
isal
|
||||
];
|
||||
swiss_public_transport = getComponentDeps "cookidoo";
|
||||
system_log = [
|
||||
isal
|
||||
];
|
||||
@@ -52,6 +56,10 @@ let
|
||||
};
|
||||
|
||||
extraDisabledTestPaths = {
|
||||
overseerr = [
|
||||
# imports broken future module
|
||||
"tests/components/overseerr/test_event.py"
|
||||
];
|
||||
};
|
||||
|
||||
extraDisabledTests = {
|
||||
@@ -59,10 +67,6 @@ let
|
||||
# tries to retrieve file from github
|
||||
"test_non_text_stdout_capture"
|
||||
];
|
||||
sma = [
|
||||
# missing operating_status attribute in entity
|
||||
"test_sensor_entities"
|
||||
];
|
||||
websocket_api = [
|
||||
# AssertionError: assert 'unknown_error' == 'template_error'
|
||||
"test_render_template_with_timeout"
|
||||
@@ -70,46 +74,20 @@ let
|
||||
};
|
||||
|
||||
extraPytestFlagsArray = {
|
||||
conversation = [
|
||||
# Expected: Sorry, I am not aware of any device called missing entity on ground floor
|
||||
# Actually: Sorry, I am not aware of any area called ground floor
|
||||
"--deselect tests/components/conversation/test_default_agent.py::test_error_no_device_on_floor"
|
||||
];
|
||||
dnsip = [
|
||||
# Tries to resolve DNS entries
|
||||
"--deselect tests/components/dnsip/test_config_flow.py::test_options_flow"
|
||||
];
|
||||
honeywell = [
|
||||
# Failed: Unused ignore translations: component.honeywell.config.abort.reauth_successful. Please remove them from the ignore_translations fixture.
|
||||
"--deselect=tests/components/honeywell/test_config_flow.py::test_reauth_flow"
|
||||
];
|
||||
jellyfin = [
|
||||
# AssertionError: assert 'audio/x-flac' == 'audio/flac'
|
||||
"--deselect tests/components/jellyfin/test_media_source.py::test_resolve"
|
||||
"--deselect tests/components/jellyfin/test_media_source.py::test_audio_codec_resolve"
|
||||
# AssertionError: assert [+ received] == [- snapshot]
|
||||
"--deselect tests/components/jellyfin/test_media_source.py::test_music_library"
|
||||
];
|
||||
jewish_calendar = [
|
||||
# Failed: Unused ignore translations: component.jewish_calendar.config.abort.reconfigure_successful. Please remove them from the ignore_translations fixture.
|
||||
"--deselect tests/components/jewish_calendar/test_config_flow.py::test_reconfigure"
|
||||
];
|
||||
modem_callerid = [
|
||||
# aioserial mock produces wrong state
|
||||
"--deselect tests/components/modem_callerid/test_init.py::test_setup_entry"
|
||||
];
|
||||
nina = [
|
||||
# Failed: Unused ignore translations: component.nina.options.error.unknown. Please remove them from the ignore_translations fixture.
|
||||
"--deselect tests/components/nina/test_config_flow.py::test_options_flow_unexpected_exception"
|
||||
];
|
||||
sql = [
|
||||
"-W"
|
||||
"ignore::sqlalchemy.exc.SAWarning"
|
||||
];
|
||||
vicare = [
|
||||
# Snapshot 'test_all_entities[sensor.model0_electricity_consumption_today-entry]' does not exist!
|
||||
"--deselect=tests/components/vicare/test_sensor.py::test_all_entities"
|
||||
];
|
||||
};
|
||||
in
|
||||
lib.listToAttrs (
|
||||
@@ -140,19 +118,6 @@ lib.listToAttrs (
|
||||
++ extraPytestFlagsArray.${component} or [ ]
|
||||
++ [ "tests/components/${component}" ];
|
||||
|
||||
preCheck =
|
||||
old.preCheck
|
||||
+
|
||||
lib.optionalString
|
||||
(builtins.elem component [
|
||||
"emulated_hue"
|
||||
"songpal"
|
||||
"system_log"
|
||||
])
|
||||
''
|
||||
patch -p1 < ${./patches/tests-mock-source-ip.patch}
|
||||
'';
|
||||
|
||||
meta = old.meta // {
|
||||
broken = lib.elem component [ ];
|
||||
# upstream only tests on Linux, so do we.
|
||||
|
||||
@@ -44,7 +44,7 @@ PKG_PREFERENCES = {
|
||||
"ha-av": "av",
|
||||
"numpy": "numpy",
|
||||
"ollama-hass": "ollama",
|
||||
"paho-mqtt": "paho-mqtt_1",
|
||||
"paho-mqtt": "paho-mqtt",
|
||||
"pyhive-integration": "pyhiveapi", # https://github.com/home-assistant/core/pull/135482
|
||||
"pysuezV2": "pysuez",
|
||||
"sentry-sdk": "sentry-sdk",
|
||||
|
||||
@@ -259,6 +259,8 @@ self: super: with self; {
|
||||
|
||||
aiohttp-apispec = callPackage ../development/python-modules/aiohttp-apispec { };
|
||||
|
||||
aiohttp-asyncmdnsresolver = callPackage ../development/python-modules/aiohttp-asyncmdnsresolver { };
|
||||
|
||||
aiohttp-basicauth = callPackage ../development/python-modules/aiohttp-basicauth { };
|
||||
|
||||
aiohttp-client-cache = callPackage ../development/python-modules/aiohttp-client-cache { };
|
||||
@@ -469,6 +471,8 @@ self: super: with self; {
|
||||
|
||||
aiounittest = callPackage ../development/python-modules/aiounittest { };
|
||||
|
||||
aiousbwatcher = callPackage ../development/python-modules/aiousbwatcher { };
|
||||
|
||||
aiovlc = callPackage ../development/python-modules/aiovlc { };
|
||||
|
||||
aiovodafone = callPackage ../development/python-modules/aiovodafone { };
|
||||
@@ -8065,6 +8069,8 @@ self: super: with self; {
|
||||
|
||||
mcdreforged = callPackage ../development/python-modules/mcdreforged { };
|
||||
|
||||
mcp = callPackage ../development/python-modules/mcp { };
|
||||
|
||||
mcstatus = callPackage ../development/python-modules/mcstatus { };
|
||||
|
||||
mcuuid = callPackage ../development/python-modules/mcuuid { };
|
||||
@@ -9684,6 +9690,8 @@ self: super: with self; {
|
||||
|
||||
onecache = callPackage ../development/python-modules/onecache { };
|
||||
|
||||
onedrive-personal-sdk = callPackage ../development/python-modules/onedrive-personal-sdk { };
|
||||
|
||||
onetimepass = callPackage ../development/python-modules/onetimepass { };
|
||||
|
||||
onigurumacffi = callPackage ../development/python-modules/onigurumacffi { };
|
||||
@@ -11837,6 +11845,8 @@ self: super: with self; {
|
||||
|
||||
pyezviz = callPackage ../development/python-modules/pyezviz { };
|
||||
|
||||
pyezvizapi = callPackage ../development/python-modules/pyezvizapi { };
|
||||
|
||||
pyface = callPackage ../development/python-modules/pyface { };
|
||||
|
||||
pyfaidx = callPackage ../development/python-modules/pyfaidx { };
|
||||
|
||||
Reference in New Issue
Block a user