Impossible d'installer les dépendances sous Debian 12

Bonjour,

L’installation des dépendances échoue pour le plugin-klf200 sous Debian 12.

********************************************************
  10/08/2026 19:37:53 Installation des dépendances
********************************************************
Hit:1 http://deb.debian.org/debian bookworm InRelease
Get:2 http://security.debian.org/debian-security bookworm-security InRelease [34.8 kB]
Hit:3 http://deb.debian.org/debian bookworm-updates InRelease
Hit:4 https://deb.nodesource.com/node_22.x nodistro InRelease
Fetched 34.8 kB in 0s (77.9 kB/s)
Reading package lists...
Installation des dépendances apt
Reading package lists...
Building dependency tree...
Reading state information...
python3-venv is already the newest version (3.11.2-1+b1).
python3-dev is already the newest version (3.11.2-1+b1).
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
WARNING: The directory '/var/www/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
Collecting pyvlx
  Downloading pyvlx-0.2.36-py3-none-any.whl (98 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 98.0/98.0 kB 3.2 MB/s eta 0:00:00
Collecting PyYAML<7.0,>=6.0
  Downloading pyyaml-6.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (806 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 806.6/806.6 kB 23.1 MB/s eta 0:00:00
Collecting zeroconf>=0.148
  Downloading zeroconf-0.150.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.2 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.2/2.2 MB 104.1 MB/s eta 0:00:00
Collecting ifaddr>=0.1.7
  Downloading ifaddr-0.2.0-py3-none-any.whl (12 kB)
Installing collected packages: ifaddr, zeroconf, PyYAML, pyvlx
Successfully installed PyYAML-6.0.3 ifaddr-0.2.0 pyvlx-0.2.36 zeroconf-0.150.0
WARNING: The directory '/var/www/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
Collecting aiohttp==3.7.4.post0
  Downloading aiohttp-3.7.4.post0.tar.gz (1.1 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 17.0 MB/s eta 0:00:00
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting attrs>=17.3.0
  Downloading attrs-26.1.0-py3-none-any.whl (67 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 67.5/67.5 kB 187.7 MB/s eta 0:00:00
Collecting chardet<5.0,>=2.0
  Downloading chardet-4.0.0-py2.py3-none-any.whl (178 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 178.7/178.7 kB 201.8 MB/s eta 0:00:00
Collecting multidict<7.0,>=4.5
  Downloading multidict-6.7.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (246 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 246.3/246.3 kB 107.7 MB/s eta 0:00:00
Collecting async_timeout<4.0,>=3.0
  Downloading async_timeout-3.0.1-py3-none-any.whl (8.2 kB)
Collecting yarl<2.0,>=1.0
  Downloading yarl-1.24.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (111 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 111.9/111.9 kB 186.1 MB/s eta 0:00:00
Collecting typing_extensions>=3.6.5
  Downloading typing_extensions-4.16.0-py3-none-any.whl (45 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 45.6/45.6 kB 228.9 MB/s eta 0:00:00
Collecting idna>=2.0
  Downloading idna-3.18-py3-none-any.whl (65 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 65.5/65.5 kB 159.3 MB/s eta 0:00:00
Collecting propcache>=0.2.1
  Downloading propcache-0.5.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (58 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 58.9/58.9 kB 302.2 MB/s eta 0:00:00
Building wheels for collected packages: aiohttp
  Building wheel for aiohttp (pyproject.toml): started
  Building wheel for aiohttp (pyproject.toml): finished with status 'done'
  Created wheel for aiohttp: filename=aiohttp-3.7.4.post0-py3-none-any.whl size=452018 sha256=53a3a5cef9917dc0682a996ef057e672c20dfedf691cf0e2df76baf916c3579c
  Stored in directory: /tmp/pip-ephem-wheel-cache-l7571krt/wheels/7d/7b/9d/c546075bedb890bf465cab871738d110c6fc0d5459ca695cf0
Successfully built aiohttp
Installing collected packages: typing_extensions, propcache, multidict, idna, chardet, attrs, async_timeout, yarl, aiohttp
Successfully installed aiohttp-3.7.4.post0 async_timeout-3.0.1 attrs-26.1.0 chardet-4.0.0 idna-3.18 multidict-6.7.1 propcache-0.5.2 typing_extensions-4.16.0 yarl-1.24.5
WARNING: The directory '/var/www/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
Collecting PyYAML==5.4.1
  Downloading PyYAML-5.4.1.tar.gz (175 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 175.1/175.1 kB 5.2 MB/s eta 0:00:00
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'error'
  error: subprocess-exited-with-error
  
  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [68 lines of output]
      /tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/wheel/bdist_wheel.py:4: FutureWarning: The 'wheel' package is no longer the canonical location of the 'bdist_wheel' command, and will be removed in a future release. Please update to setuptools v70.1 or later which contains an integrated version of this command.
        warn(
      /tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated.
      !!
      
              ********************************************************************************
              Please consider removing the following classifiers in favor of a SPDX license expression:
      
              License :: OSI Approved :: MIT License
      
              See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
              ********************************************************************************
      
      !!
        self._finalize_license_expression()
      running egg_info
      writing lib3/PyYAML.egg-info/PKG-INFO
      writing dependency_links to lib3/PyYAML.egg-info/dependency_links.txt
      writing top-level names to lib3/PyYAML.egg-info/top_level.txt
      Traceback (most recent call last):
        File "/var/www/html/plugins/klf200/resources/venv/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/var/www/html/plugins/klf200/resources/venv/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/var/www/html/plugins/klf200/resources/venv/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
          return hook(config_settings)
                 ^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 333, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=[])
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 301, in _get_build_requires
          self.run_setup()
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 317, in run_setup
          exec(code, locals())  # noqa: S102 # exec is intentional here
          ^^^^^^^^^^^^^^^^^^^^
        File "<string>", line 271, in <module>
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/__init__.py", line 117, in setup
          return distutils.core.setup(**attrs)  # type: ignore[return-value]
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 168, in setup
          return run_commands(dist)
                 ^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 184, in run_commands
          dist.run_commands()
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1028, in run_commands
          self.run_command(cmd)
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/dist.py", line 1106, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 1047, in run_command
          cmd_obj.run()
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 342, in run
          self.find_sources()
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 350, in find_sources
          mm.run()
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 572, in run
          self.add_defaults()
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/command/egg_info.py", line 610, in add_defaults
          sdist.add_defaults(self)
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/command/sdist.py", line 113, in add_defaults
          super().add_defaults()
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 256, in add_defaults
          self._add_defaults_ext()
        File "/tmp/pip-build-env-5uifh9bk/overlay/lib/python3.11/site-packages/setuptools/_distutils/command/sdist.py", line 341, in _add_defaults_ext
          self.filelist.extend(build_ext.get_source_files())
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "<string>", line 201, in get_source_files
      AttributeError: 'build_ext' object has no attribute 'cython_sources'
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.
WARNING: The directory '/var/www/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
Collecting bottle
  Downloading bottle-0.13.4-py2.py3-none-any.whl (103 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 103.8/103.8 kB 3.7 MB/s eta 0:00:00
Installing collected packages: bottle
Successfully installed bottle-0.13.4
********************************************************
  10/08/2026 19:38:13 Installation terminée
********************************************************

D’après ce que je comprends, il y aurait un souci avec la version de wheel/setuptools.

Le plugin semble installer la version 66.1.1 de setuptools dans son venv mais je ne vois pas wheel.

/var/www/html/plugins/klf200/resources# /var/www/html/plugins/klf200/resources/venv/bin/pip3 list installed
Package           Version
----------------- -----------
aiohttp           3.7.4.post0
async-timeout     3.0.1
attrs             26.1.0
bottle            0.13.4
chardet           4.0.0
idna              3.18
ifaddr            0.2.0
multidict         6.7.1
pip               23.0.1
propcache         0.5.2
pyvlx             0.2.36
PyYAML            6.0.3
setuptools        66.1.1
typing_extensions 4.16.0
yarl              1.24.5
zeroconf          0.150.0

Y-a-t-il moyen de corriger cela ?

La page Santé :

Le plugin en NOK est le plugin-klf200

J’ai tenté avec la version Beta du plugin et j’ai le même souci.

Salut,

Hum déja de base tu as visiblement un pb de permissions.

Commence déjà depuis Réglages > Système > Configuration > Onglet OS/DB par lancer :

  • une vérification générale
  • un rétablissement des droits

Et poste ici le résultat de ces actions.

Pour la vérification générale, voici ce que cela donne :

[START CONSISTENCY]
[START CHECK AND FIX DB]
[END CHECK AND FIX DB]
Check jeedom package...OK
Check jeedom database...OK
Check crons...
Check filesystem right...
OK
Check jeedom object...
OK
Check jeedom cmd...    OK
Set cache hour...OK
Check composer...OK
Check nodejs...
npm warn using --force Recommended protections disabled.
Hit:1 http://deb.debian.org/debian bookworm InRelease
Hit:2 http://security.debian.org/debian-security bookworm-security InRelease
Hit:3 http://deb.debian.org/debian bookworm-updates InRelease
Hit:4 https://deb.nodesource.com/node_22.x nodistro InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
lsb-release is already the newest version (12.0-1).
build-essential is already the newest version (12.9).
apt-utils is already the newest version (2.6.1).
git is already the newest version (1:2.39.5-0+deb12u3).
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
[Check Version NodeJS actuelle : v22.23.2 : [  OK  ]
[Check Prefix : /usr and sudo prefix : /usr and www-data prefix : /usr : [  OK  ]
Clean npm cache
OK
Check apache security file...[END CONSISTENCY]

Pour le rétablissement des droits, j’avais déjà tenté avant mon message mais cela n’a rien changé.

Néanmoins, le plugin semble quand même fonctionner après avoir fait la modification indiquée ici KLF 200 Demon non OK - #11 par jpty même si ce n’est pas lié.