nix/pkgs/home-assistant-chip: drop this again, it's annoying to maintain :/
This commit is contained in:
parent
5939291d4f
commit
a3d12aeef9
5 changed files with 0 additions and 517 deletions
|
@ -83,8 +83,5 @@
|
||||||
|
|
||||||
freeswitch-sounds = pkgs.callPackage ./freeswitch-sounds.nix { };
|
freeswitch-sounds = pkgs.callPackage ./freeswitch-sounds.nix { };
|
||||||
|
|
||||||
zcl-advanced-platform = pkgs.callPackage ./zcl-advanced-platform { };
|
|
||||||
home-assistant-chip = pkgs.python3.pkgs.callPackage ./home-assistant-chip { inherit zcl-advanced-platform; gn = pkgs.gn1924; };
|
|
||||||
|
|
||||||
lukegb-vscode = pkgs.vscode;
|
lukegb-vscode = pkgs.vscode;
|
||||||
} // (import ./heptapod-runner args)
|
} // (import ./heptapod-runner args)
|
||||||
|
|
|
@ -1,108 +0,0 @@
|
||||||
alabaster==0.7.13
|
|
||||||
appdirs==1.4.4
|
|
||||||
astroid==3.0.2
|
|
||||||
asttokens==2.2.1
|
|
||||||
babel==2.14.0
|
|
||||||
backcall==0.2.0
|
|
||||||
black==23.12.1
|
|
||||||
build==0.8.0
|
|
||||||
cachetools==5.3.2
|
|
||||||
certifi==2022.12.7
|
|
||||||
cffi==1.15.1
|
|
||||||
charset-normalizer==3.0.1
|
|
||||||
click==8.1.3
|
|
||||||
coloredlogs==15.0.1
|
|
||||||
coverage==7.4.0
|
|
||||||
cryptography==39.0.2
|
|
||||||
decorator==5.1.1
|
|
||||||
dill==0.3.7
|
|
||||||
diskcache==5.4.0
|
|
||||||
docutils==0.20.1
|
|
||||||
executing==1.2.0
|
|
||||||
google-api-core==2.15.0
|
|
||||||
google-auth==2.26.1
|
|
||||||
google-cloud-core==2.4.1
|
|
||||||
google-cloud-storage==2.14.0
|
|
||||||
google-crc32c==1.5.0
|
|
||||||
google-resumable-media==2.7.0
|
|
||||||
googleapis-common-protos==1.62.0
|
|
||||||
humanfriendly==10.0
|
|
||||||
idna==3.4
|
|
||||||
imagesize==1.4.1
|
|
||||||
ipython==8.11.0
|
|
||||||
isort==5.13.2
|
|
||||||
jedi==0.18.2
|
|
||||||
jinja2==3.0.3
|
|
||||||
json5==0.9.14
|
|
||||||
lark==1.1.5
|
|
||||||
lockfile==0.12.2
|
|
||||||
markupsafe==2.1.2
|
|
||||||
matplotlib-inline==0.1.6
|
|
||||||
mccabe==0.7.0
|
|
||||||
mobly==1.12.1
|
|
||||||
mypy==0.971
|
|
||||||
mypy-extensions==1.0.0
|
|
||||||
mypy-protobuf==3.5.0
|
|
||||||
packaging==23.0
|
|
||||||
parameterized==0.9.0
|
|
||||||
parso==0.8.3
|
|
||||||
pathspec==0.12.1
|
|
||||||
pep517==0.13.0
|
|
||||||
pexpect==4.8.0
|
|
||||||
pickleshare==0.7.5
|
|
||||||
pip-tools==7.0.0
|
|
||||||
platformdirs==3.0.0
|
|
||||||
portpicker==1.5.2
|
|
||||||
prompt-toolkit==3.0.43
|
|
||||||
protobuf==4.24.4
|
|
||||||
psutil==5.9.4
|
|
||||||
ptpython==3.0.25
|
|
||||||
ptyprocess==0.7.0
|
|
||||||
pure-eval==0.2.2
|
|
||||||
pyasn1==0.5.1
|
|
||||||
pyasn1-modules==0.3.0
|
|
||||||
pycparser==2.21
|
|
||||||
pyelftools==0.30
|
|
||||||
pygments==2.14.0
|
|
||||||
pylint==3.0.3
|
|
||||||
pyperclip==1.8.2
|
|
||||||
pyserial==3.5
|
|
||||||
python-daemon==3.0.1
|
|
||||||
pyyaml==6.0
|
|
||||||
requests==2.28.2
|
|
||||||
rsa==4.9
|
|
||||||
six==1.16.0
|
|
||||||
snowballstemmer==2.2.0
|
|
||||||
sphinx==7.2.6
|
|
||||||
sphinx-argparse==0.4.0
|
|
||||||
sphinx-design==0.5.0
|
|
||||||
sphinxcontrib-applehelp==1.0.7
|
|
||||||
sphinxcontrib-devhelp==1.0.5
|
|
||||||
sphinxcontrib-htmlhelp==2.0.4
|
|
||||||
sphinxcontrib-jsmath==1.0.1
|
|
||||||
sphinxcontrib-mermaid==0.9.2
|
|
||||||
sphinxcontrib-qthelp==1.0.6
|
|
||||||
sphinxcontrib-serializinghtml==1.1.9
|
|
||||||
stack-data==0.6.2
|
|
||||||
stringcase==1.2.0
|
|
||||||
toml==0.10.2
|
|
||||||
tomlkit==0.12.3
|
|
||||||
traitlets==5.9.0
|
|
||||||
types-docutils==0.20.0.20240106
|
|
||||||
types-protobuf==4.24.0.2
|
|
||||||
types-pygments==2.17.0.20240106
|
|
||||||
types-pyserial==3.5.0.20240106
|
|
||||||
types-pyyaml==6.0.12.12
|
|
||||||
types-requests==2.31.0.6
|
|
||||||
types-setuptools==69.0.0.20240106
|
|
||||||
types-six==1.16.21.20240106
|
|
||||||
types-urllib3==1.26.25.14
|
|
||||||
typing-extensions==4.5.0
|
|
||||||
urllib3==1.26.14
|
|
||||||
watchdog==2.3.1
|
|
||||||
wcwidth==0.2.6
|
|
||||||
websockets==10.4
|
|
||||||
wheel==0.38.4 ; sys_platform == "linux"
|
|
||||||
yapf==0.32.0
|
|
||||||
pip==23.2.1
|
|
||||||
setuptools==68.0.0
|
|
|
@ -1,362 +0,0 @@
|
||||||
{ lib
|
|
||||||
, stdenv
|
|
||||||
, buildPythonPackage
|
|
||||||
, fetchFromGitHub
|
|
||||||
, pythonOlder
|
|
||||||
, runCommand
|
|
||||||
, python
|
|
||||||
, git
|
|
||||||
, zcl-advanced-platform
|
|
||||||
, click
|
|
||||||
, setuptools
|
|
||||||
, lark
|
|
||||||
, jinja2
|
|
||||||
, stringcase
|
|
||||||
, clang-tools
|
|
||||||
, gn
|
|
||||||
, pkg-config
|
|
||||||
, libnl
|
|
||||||
, openssl
|
|
||||||
, glib
|
|
||||||
, ninja
|
|
||||||
, pyproject-hooks
|
|
||||||
, cython_0
|
|
||||||
, autoPatchelfHook
|
|
||||||
|
|
||||||
, aenum
|
|
||||||
, coloredlogs
|
|
||||||
, construct
|
|
||||||
, cryptography
|
|
||||||
, dacite
|
|
||||||
, ecdsa
|
|
||||||
, rich
|
|
||||||
, pyyaml
|
|
||||||
, ipdb
|
|
||||||
, deprecation
|
|
||||||
, mobly
|
|
||||||
, pygobject3
|
|
||||||
|
|
||||||
, ipython
|
|
||||||
, dbus-python
|
|
||||||
}:
|
|
||||||
|
|
||||||
let
|
|
||||||
matterVersion = "1.2.0.1"; # check matter_sdk_ref in https://github.com/home-assistant-libs/chip-wheels/blob/main/.github/workflows/build.yaml
|
|
||||||
matterSDKSrc = (fetchFromGitHub {
|
|
||||||
owner = "project-chip";
|
|
||||||
repo = "connectedhomeip";
|
|
||||||
rev = "v${matterVersion}";
|
|
||||||
hash = "sha256-CSOeTd0A95nePjrceCyVntRn36dz2q8Z9b8l2ehxBOQ=";
|
|
||||||
forceFetchGit = true;
|
|
||||||
}).overrideAttrs (old: {
|
|
||||||
# Checkout submodules before .git directories are removed.
|
|
||||||
nativeBuildInputs = old.nativeBuildInputs ++ [
|
|
||||||
python
|
|
||||||
];
|
|
||||||
env.NIX_PREFETCH_GIT_CHECKOUT_HOOK = ''
|
|
||||||
python $dir/scripts/checkout_submodules.py --shallow --platform linux
|
|
||||||
'';
|
|
||||||
});
|
|
||||||
|
|
||||||
zapPregenerated = stdenv.mkDerivation rec {
|
|
||||||
pname = "matter-sdk-zap";
|
|
||||||
version = matterVersion;
|
|
||||||
|
|
||||||
src = matterSDKSrc;
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
python
|
|
||||||
|
|
||||||
click
|
|
||||||
lark
|
|
||||||
jinja2
|
|
||||||
stringcase
|
|
||||||
|
|
||||||
zcl-advanced-platform # zap-cli
|
|
||||||
clang-tools # clang-format
|
|
||||||
];
|
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
patchShebangs --build scripts
|
|
||||||
'';
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
runHook preBuild
|
|
||||||
# Generate ZAP code
|
|
||||||
python scripts/codepregen.py $out
|
|
||||||
runHook postBuild
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
baseline = rec {
|
|
||||||
pname = "home-assistant-chip";
|
|
||||||
version = "2023.12.0";
|
|
||||||
pyproject = false;
|
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "home-assistant-libs";
|
|
||||||
repo = "chip-wheels";
|
|
||||||
rev = version;
|
|
||||||
hash = "sha256-/FUyP+DASaXSRFWuSnhSv+kWFR2bQATJr7QdeMV6kdg=";
|
|
||||||
};
|
|
||||||
|
|
||||||
inherit matterSDKSrc zapPregenerated;
|
|
||||||
|
|
||||||
prePatch = ''
|
|
||||||
cp -R $matterSDKSrc project-chip
|
|
||||||
chmod -R +w project-chip
|
|
||||||
'';
|
|
||||||
|
|
||||||
postPatch = ''
|
|
||||||
pushd project-chip
|
|
||||||
rm ../*-Use-data-as-platform-storage-location.patch
|
|
||||||
for patch in ../*.patch; do
|
|
||||||
patch -p1 < "$patch"
|
|
||||||
done
|
|
||||||
patchShebangs --build scripts
|
|
||||||
sed -i 's,[>=]=[0-9][^;]*,,g' \
|
|
||||||
third_party/pigweed/repo/pw_env_setup/py/pw_env_setup/virtualenv_setup/python_base_requirements.txt
|
|
||||||
popd
|
|
||||||
'';
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
libnl
|
|
||||||
openssl
|
|
||||||
glib
|
|
||||||
];
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
gn # gn
|
|
||||||
ninja # ninja
|
|
||||||
pkg-config # pkg-config
|
|
||||||
];
|
|
||||||
|
|
||||||
gnArgs = [];
|
|
||||||
|
|
||||||
configurePhase = ''
|
|
||||||
runHook preConfigure
|
|
||||||
|
|
||||||
pushd project-chip
|
|
||||||
|
|
||||||
# Empty pigweed_environment
|
|
||||||
echo "# Empty pigweed environment" > build_overrides/pigweed_environment.gni
|
|
||||||
|
|
||||||
# Generate gn build scripts
|
|
||||||
gn gen --check --fail-on-unused-args out --args=" \
|
|
||||||
enable_rtti=true \
|
|
||||||
enable_pylib=true \
|
|
||||||
chip_config_memory_debug_checks=false \
|
|
||||||
chip_config_memory_debug_dmalloc=false \
|
|
||||||
chip_mdns=\"minimal\" \
|
|
||||||
chip_minmdns_default_policy=\"libnl\" \
|
|
||||||
chip_python_version=\"${version}\" \
|
|
||||||
chip_python_package_prefix=\"home-assistant-chip\" \
|
|
||||||
chip_python_platform_tag=\"manylinux_2_31\" \
|
|
||||||
chip_code_pre_generated_directory=\"$zapPregenerated\" \
|
|
||||||
$gnArgs
|
|
||||||
"
|
|
||||||
|
|
||||||
popd
|
|
||||||
|
|
||||||
runHook postConfigure
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
src-wheels = stdenv.mkDerivation (baseline // {
|
|
||||||
pname = "${baseline.pname}-src-wheels";
|
|
||||||
|
|
||||||
gnArgs = [
|
|
||||||
''pw_build_PIP_CONSTRAINTS=["//scripts/setup/constraints.txt","//extra_constraints.txt"]''
|
|
||||||
];
|
|
||||||
|
|
||||||
preConfigure = ''
|
|
||||||
cp ${./compiled_requirements.txt} project-chip/extra_constraints.txt
|
|
||||||
'';
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
runHook preBuild
|
|
||||||
|
|
||||||
pushd project-chip
|
|
||||||
|
|
||||||
export HOME=$NIX_BUILD_TOP/home
|
|
||||||
mkdir $HOME
|
|
||||||
ninja -C out $(gn ls out --as=output '//:matter_build_venv.vendor_wheels')
|
|
||||||
|
|
||||||
popd
|
|
||||||
|
|
||||||
runHook postBuild
|
|
||||||
'';
|
|
||||||
|
|
||||||
nativeBuildInputs = baseline.nativeBuildInputs ++ [
|
|
||||||
setuptools
|
|
||||||
];
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir $out
|
|
||||||
cp -R ./project-chip/out/python/gen/matter_build_venv.vendor_wheels/wheels $out/wheels
|
|
||||||
sed -e 's/#.*//g' -e '/^\s*$/d' project-chip/out/python/gen/matter_build_venv/compiled_requirements.txt > $out/compiled_requirements.txt
|
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
|
|
||||||
outputHashMode = "recursive";
|
|
||||||
outputHashAlgo = "sha256";
|
|
||||||
outputHash = "sha256:11c0v6yc4wxnbkvya0jjf51rpbdfa9dk372ci46mhf0yzb7j5icz";
|
|
||||||
});
|
|
||||||
|
|
||||||
out-wheels = stdenv.mkDerivation (baseline // {
|
|
||||||
pname = "${baseline.pname}-wheels";
|
|
||||||
|
|
||||||
env.NIX_CFLAGS_COMPILE = "-Wno-error=cpp -Wno-cpp";
|
|
||||||
|
|
||||||
gnArgs = [
|
|
||||||
"pw_build_PYTHON_PIP_INSTALL_OFFLINE=true"
|
|
||||||
"pw_build_PYTHON_PIP_INSTALL_DISABLE_CACHE=true"
|
|
||||||
''pw_build_PYTHON_PIP_INSTALL_FIND_LINKS=["//wheels"]''
|
|
||||||
];
|
|
||||||
|
|
||||||
nativeBuildInputs = baseline.nativeBuildInputs ++ [
|
|
||||||
setuptools
|
|
||||||
glib # gdbus-codegen
|
|
||||||
|
|
||||||
pyproject-hooks
|
|
||||||
];
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
runHook preBuild
|
|
||||||
|
|
||||||
pushd project-chip
|
|
||||||
|
|
||||||
ln -s ${src-wheels}/wheels wheels
|
|
||||||
|
|
||||||
export HOME=$NIX_BUILD_TOP/home
|
|
||||||
mkdir $HOME
|
|
||||||
ninja -C out chip-repl
|
|
||||||
|
|
||||||
popd
|
|
||||||
|
|
||||||
runHook postBuild
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir $out
|
|
||||||
|
|
||||||
mkdir $out/wheels
|
|
||||||
cp project-chip/out/controller/python/*.whl $out/wheels
|
|
||||||
|
|
||||||
mkdir $out/wheels-short
|
|
||||||
for f in $out/wheels/*.whl; do
|
|
||||||
basef="''${f##*/}"
|
|
||||||
ln -s "$f" $out/wheels-short/''${basef%%-*}.whl
|
|
||||||
done
|
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
});
|
|
||||||
|
|
||||||
outputWheel = name: overrides: buildPythonPackage ({
|
|
||||||
pname = name;
|
|
||||||
inherit (baseline) version;
|
|
||||||
src = out-wheels;
|
|
||||||
format = "wheel";
|
|
||||||
|
|
||||||
preUnpack = ''
|
|
||||||
src="$(readlink -f "$src/wheels-short/${lib.replaceStrings ["-"] ["_"] name}.whl")"
|
|
||||||
'';
|
|
||||||
} // overrides);
|
|
||||||
in
|
|
||||||
rec {
|
|
||||||
inherit src-wheels;
|
|
||||||
wheels = out-wheels;
|
|
||||||
core = outputWheel "home-assistant-chip-core" {
|
|
||||||
propagatedBuildInputs = [
|
|
||||||
aenum
|
|
||||||
coloredlogs
|
|
||||||
construct
|
|
||||||
cryptography
|
|
||||||
dacite
|
|
||||||
ecdsa
|
|
||||||
rich
|
|
||||||
pyyaml
|
|
||||||
ipdb
|
|
||||||
deprecation
|
|
||||||
mobly
|
|
||||||
pygobject3
|
|
||||||
|
|
||||||
clusters
|
|
||||||
|
|
||||||
cython_0
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [
|
|
||||||
libnl
|
|
||||||
];
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
autoPatchelfHook
|
|
||||||
];
|
|
||||||
|
|
||||||
pythonNamespaces = [
|
|
||||||
"chip"
|
|
||||||
"chip.clusters"
|
|
||||||
];
|
|
||||||
|
|
||||||
pythonImportsCheck = [
|
|
||||||
"chip"
|
|
||||||
"chip.ble"
|
|
||||||
"chip.configuration"
|
|
||||||
"chip.clusters"
|
|
||||||
"chip.discovery"
|
|
||||||
"chip.exceptions"
|
|
||||||
"chip.native"
|
|
||||||
"chip.storage"
|
|
||||||
];
|
|
||||||
|
|
||||||
doCheck = false; # no tests
|
|
||||||
};
|
|
||||||
clusters = outputWheel "home-assistant-chip-clusters" {
|
|
||||||
propagatedBuildInputs = [
|
|
||||||
aenum
|
|
||||||
dacite
|
|
||||||
];
|
|
||||||
|
|
||||||
pythonNamespaces = [
|
|
||||||
"chip"
|
|
||||||
];
|
|
||||||
|
|
||||||
pythonImportsCheck = [
|
|
||||||
"chip.clusters.ClusterObjects"
|
|
||||||
"chip.clusters.enum"
|
|
||||||
"chip.clusters.Objects"
|
|
||||||
"chip.clusters.TestObjects"
|
|
||||||
"chip.clusters.Types"
|
|
||||||
"chip.tlv"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
repl = outputWheel "home-assistant-chip-repl" {
|
|
||||||
propagatedBuildInputs = [
|
|
||||||
core
|
|
||||||
clusters
|
|
||||||
|
|
||||||
coloredlogs
|
|
||||||
ipython
|
|
||||||
rich
|
|
||||||
dbus-python
|
|
||||||
pygobject3
|
|
||||||
];
|
|
||||||
|
|
||||||
pythonNamespaces = [
|
|
||||||
"chip"
|
|
||||||
];
|
|
||||||
|
|
||||||
pythonImportsCheck = [
|
|
||||||
"chip.ChipBluezMgr"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,32 +0,0 @@
|
||||||
{ lib
|
|
||||||
, buildNpmPackage
|
|
||||||
, fetchFromGitHub
|
|
||||||
, python3
|
|
||||||
}:
|
|
||||||
|
|
||||||
buildNpmPackage rec {
|
|
||||||
pname = "zcl-advanced-platform";
|
|
||||||
version = "2023.12.07";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "project-chip";
|
|
||||||
repo = "zap";
|
|
||||||
rev = "v${version}";
|
|
||||||
hash = "sha256-vQ4tlpfh2CUl58l3fhduEK9Gdajf+P28+j/gZPGMcps=";
|
|
||||||
};
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
python3
|
|
||||||
];
|
|
||||||
|
|
||||||
npmDepsHash = "sha256-L7y49Jr9JukHbuzhe3JqpAlKqQYHXKax2uM+RnNiF2o=";
|
|
||||||
|
|
||||||
postInstall = ''
|
|
||||||
ln -s zap $out/bin/zap-cli
|
|
||||||
echo '{"hash": "5f1f3a62b27db9f5293f2bfef3ab01e603751a37", "date": "2023-12-07", "zapVersion": "2023.12.07"}' > $out/lib/node_modules/zap/.version.json
|
|
||||||
'';
|
|
||||||
|
|
||||||
env.ZAP_SKIP_REAL_VERSION = true;
|
|
||||||
env.ELECTRON_SKIP_BINARY_DOWNLOAD = true;
|
|
||||||
env.CYPRESS_INSTALL_BINARY = 0;
|
|
||||||
}
|
|
12
third_party/default.nix
vendored
12
third_party/default.nix
vendored
|
@ -59,18 +59,6 @@ let
|
||||||
nixpkgs = import ./nixpkgs {
|
nixpkgs = import ./nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
config = nixpkgsConfig;
|
config = nixpkgsConfig;
|
||||||
overlays = [(final: prev: {
|
|
||||||
zcl-advanced-platform = final.callPackage ../nix/pkgs/zcl-advanced-platform { };
|
|
||||||
home-assistant = prev.home-assistant.override {
|
|
||||||
packageOverrides = final': prev': {
|
|
||||||
home-assistant-chip = final'.callPackage ../nix/pkgs/home-assistant-chip {
|
|
||||||
gn = final.gn1924;
|
|
||||||
};
|
|
||||||
home-assistant-chip-core = final'.home-assistant-chip.core;
|
|
||||||
home-assistant-chip-clusters = final'.home-assistant-chip.clusters;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
})];
|
|
||||||
};
|
};
|
||||||
crate2nixSrc = nixpkgs.fetchFromGitHub {
|
crate2nixSrc = nixpkgs.fetchFromGitHub {
|
||||||
owner = "kolloch";
|
owner = "kolloch";
|
||||||
|
|
Loading…
Reference in a new issue