Page 1 of 2
Python Plugin Store
Posted: Monday 11 May 2026 11:12
by domovincent
I’m excited to announce the release of PyPluginStore! This is a fork of the original Python Plugin Manager (pp-manager),
(Python 3.13+ compatible).

The Star of the Show: A Brand New Plugin Store UI
We’ve added a responsive web interface right inside the Domoticz Custom menu.
* 1-Click Management: Install, update, or remove plugins effortlessly—no more SSH or manual folder dropping!
* Search & Filter: Snappy type-ahead search and an "Installed" toggle make finding what you need a breeze.
* Direct Repo Links: Check out a plugin’s source code instantly right from its card.

- store.png (116.5 KiB) Viewed 7198 times

Other Major Upgrades:
* Bulletproof Dependencies: Safely isolates dependencies in a .shared_deps folder without requiring sudo or global pip. Uses uv for blazing-fast installs (if possible).
* Smarter Security: The built-in AST scanner has been overhauled to better catch malicious code while vastly reducing false positives (like ignoring private IPs).
* Auto-Updating: Let the store automatically update your plugins, or just notify you when updates are ready.
* Decoupled Registry: The plugin list syncs dynamically from GitHub every month, meaning you get new plugins in your store without needing to update the manager itself!

Quick Install (Linux/Raspberry Pi):
Simply clone it into your plugins folder as 00-PyPluginStore. (Note: Existing users using 00-PP-MANAGER don't need to rename their folder, the code is fully backwards compatible!)
1 cd domoticz/plugins
2 git clone
https://github.com/adrighem/PyPluginStore.git 00-PyPluginStore
3 sudo systemctl restart domoticz.service
Check out the full details and screenshots on the GitHub Repository (
https://github.com/adrighem/PyPluginStore).
I'd love to hear your feedback on the new interface. Happy automating!


Re: Python Plugin Store
Posted: Monday 11 May 2026 17:54
by Thorgal789
Ha yes, the first real plugin store ^^.
I can't make return yet, because I don't work on y test machine.
Code: Select all
2026-05-11 17:51:12.279 Error: Store: Windows Platform NOT YET SUPPORTED!!
And the raspbian host is not yet available.
But the interface is clear, I realy like simple UI.
Re: Python Plugin Store
Posted: Sunday 31 May 2026 11:15
by Menno
I installed this, following the instructions.
I don't see a plugin store, nor do I have a "Custom" menu item (only custom icons).
Do I somehow have to enable this menu?
Running 2026.1 on Raspberry Pi.
Re: Python Plugin Store
Posted: Sunday 31 May 2026 15:50
by madpatrick
Great initaitive.
I've send a PR with my additions
Maybe remove the word "Domoticz" infornt of every name
Make it easier to read the plugins in the overview
For the install directoory is it also better because it will be a long path
Re: Python Plugin Store
Posted: Monday 01 June 2026 17:18
by Thorgal789
Menno wrote: Sunday 31 May 2026 11:15
I don't see a plugin store, nor do I have a "Custom" menu item (only custom icons).
Do I somehow have to enable this menu?
Yes, this tab can be optional, you have it on Settings/User
Re: Python Plugin Store
Posted: Monday 01 June 2026 23:41
by Menno
Yes, I have the option now.
However, the store remains empty and I see errors in my log:
Code: Select all
2026-06-01 23:35:08.263 Error: Plugin Store: Expected: myVar = Domoticz.Device(Name="myDevice", Unit=0, TypeName="", Type=0, SubType=0, SwitchType=0, Image=0, Options={}, Used=1). Note: Parameter names are case-insensitive.
2026-06-01 23:35:08.263 Error: Plugin Store: Call to function 'CDevice_init' failed, exception details:
2026-06-01 23:35:08.298 Error: Plugin Store: Exception: 'TypeError: 'protected' is an invalid keyword argument for this function'. No traceback available.
2026-06-01 23:35:08.298 Error: Device creation failed, Device object is not associated with a plugin.
2026-06-01 23:35:08.298 Error: Plugin Store: Expected: myVar = Domoticz.Device(Name="myDevice", Unit=0, TypeName="", Type=0, SubType=0, SwitchType=0, Image=0, Options={}, Used=1). Note: Parameter names are case-insensitive.
2026-06-01 23:35:08.298 Error: Plugin Store: Call to function 'CDevice_init' failed, exception details:
2026-06-01 23:35:08.298 Error: Plugin Store: Exception: 'TypeError: 'protected' is an invalid keyword argument for this function'. No traceback available.
2026-06-01 23:35:08.298 Error: Device creation failed, Device object is not associated with a plugin.
Re: Python Plugin Store
Posted: Tuesday 02 June 2026 8:13
by madpatrick
Menno wrote: Monday 01 June 2026 23:41
Yes, I have the option now.
However, the store remains empty and I see errors in my log:
Code: Select all
2026-06-01 23:35:08.263 Error: Plugin Store: Expected: myVar = Domoticz.Device(Name="myDevice", Unit=0, TypeName="", Type=0, SubType=0, SwitchType=0, Image=0, Options={}, Used=1). Note: Parameter names are case-insensitive.
2026-06-01 23:35:08.263 Error: Plugin Store: Call to function 'CDevice_init' failed, exception details:
2026-06-01 23:35:08.298 Error: Plugin Store: Exception: 'TypeError: 'protected' is an invalid keyword argument for this function'. No traceback available.
2026-06-01 23:35:08.298 Error: Device creation failed, Device object is not associated with a plugin.
2026-06-01 23:35:08.298 Error: Plugin Store: Expected: myVar = Domoticz.Device(Name="myDevice", Unit=0, TypeName="", Type=0, SubType=0, SwitchType=0, Image=0, Options={}, Used=1). Note: Parameter names are case-insensitive.
2026-06-01 23:35:08.298 Error: Plugin Store: Call to function 'CDevice_init' failed, exception details:
2026-06-01 23:35:08.298 Error: Plugin Store: Exception: 'TypeError: 'protected' is an invalid keyword argument for this function'. No traceback available.
2026-06-01 23:35:08.298 Error: Device creation failed, Device object is not associated with a plugin.
Check out PR #10
https://github.com/adrighem/PyPluginStore/pull/10
This solved for me the issue
You can download the files manually if it has not merged
Or via my forked git until it has been merged in the original git
https://github.com/MadPatrick/PyPluginStore
Re: Python Plugin Store
Posted: Friday 12 June 2026 14:54
by madpatrick
Hi DomoVincent
Is it possible to add a button "restart Domoticz"
When you install or update a plugin you need to restart domoticz, but this has to be done from the command line
And how do you update the PluginStore plugin from his own menu ?
When a update is avaialble you will get a message.
Is it possible to change the color of the update button of the plugin which can can be updated ?
Now they are al green

- 2026-06-12 16_20_30-Greenshot.png (23.75 KiB) Viewed 6183 times
Re: Python Plugin Store
Posted: Sunday 14 June 2026 8:40
by domovincent
Menno wrote: Monday 01 June 2026 23:41
Yes, I have the option now.
However, the store remains empty and I see errors in my log:
Code: Select all
2026-06-01 23:35:08.263 Error: Plugin Store: Expected: myVar = Domoticz.Device(Name="myDevice", Unit=0, TypeName="", Type=0, SubType=0, SwitchType=0, Image=0, Options={}, Used=1). Note: Parameter names are case-insensitive.
2026-06-01 23:35:08.263 Error: Plugin Store: Call to function 'CDevice_init' failed, exception details:
2026-06-01 23:35:08.298 Error: Plugin Store: Exception: 'TypeError: 'protected' is an invalid keyword argument for this function'. No traceback available.
2026-06-01 23:35:08.298 Error: Device creation failed, Device object is not associated with a plugin.
2026-06-01 23:35:08.298 Error: Plugin Store: Expected: myVar = Domoticz.Device(Name="myDevice", Unit=0, TypeName="", Type=0, SubType=0, SwitchType=0, Image=0, Options={}, Used=1). Note: Parameter names are case-insensitive.
2026-06-01 23:35:08.298 Error: Plugin Store: Call to function 'CDevice_init' failed, exception details:
2026-06-01 23:35:08.298 Error: Plugin Store: Exception: 'TypeError: 'protected' is an invalid keyword argument for this function'. No traceback available.
2026-06-01 23:35:08.298 Error: Device creation failed, Device object is not associated with a plugin.
Yeah, this was a kindof dumb one on my side. It's fixed now and should be working as expected.
Re: Python Plugin Store
Posted: Friday 26 June 2026 15:45
by domovincent
Another <insert time unit here>, another release. Initial Windows Support was added. Hope you all like it.
Re: Python Plugin Store
Posted: Friday 26 June 2026 16:18
by pfloryann
It would be nice if the plugin would scan the domoticz plugins folder to check if there are any plugins installed before there are any Python Plugin Store. For example, there are already several plugins installed before, and the Plugin Store does not detect them and offers the possibility of reinstalling them.
Re: Python Plugin Store
Posted: Friday 26 June 2026 17:15
by domovincent

Guess what?
Implemented.
Re: Python Plugin Store
Posted: Friday 26 June 2026 19:25
by madpatrick
due the update now some installed plugins are not visible any more as installed
Even after reinstalling
See git issue
Re: Python Plugin Store
Posted: Friday 26 June 2026 19:52
by pfloryann
I have 2 plugins installed for several years, xiaomi-mi-robot-vacuum and broadlink, and they do not appear installed in the Plugin Store, which is what I sent.
Re: Python Plugin Store
Posted: Saturday 27 June 2026 9:03
by domovincent
I have released a new version of the Plugin Store that should detect all of the local installs that are still alive on github.
If yours aren't detected, then please open an issue on github that contains the folder name, if it's a git clone or a zip install, which github repo it is supposed to be, and how old it is.
Re: Python Plugin Store
Posted: Saturday 27 June 2026 11:08
by eddieb
does not show as menu on older domoticz 2025.1 (build 16682)
Re: Python Plugin Store
Posted: Saturday 27 June 2026 11:09
by mvveelen
Hi great plugin! I just installed it and saw I had an update for the Volvo plugin and updated via the plugin.
But is it just me or does the "restart Domoticz" button not work?
Re: Python Plugin Store
Posted: Saturday 27 June 2026 13:54
by domovincent
Thanks!
About the restart: there is a bit (maybe not enough?) about it in the readme. It requires sudo rights to do the restart on Linux, or system right via domoticz on windows. Read the readme, and let's see if that helps.
If not, open an issue on github and we'll investigate. Maybe documentation needs improvement, or maybe we need to change logging, or maybe there's an actual bug to solve.
Re: Python Plugin Store
Posted: Saturday 27 June 2026 14:12
by mvveelen
Ah, I see.
In the log I see:
Code: Select all
[2026-06-27T11:01:00] restart requested
[2026-06-27T11:01:00] launching Python restart helper: /usr/bin/python3
[2026-06-27T11:01:00] restart helper started
[2026-06-27T11:01:02] trying command group 1
[2026-06-27T11:01:02] running: sudo -n systemctl restart domoticz.service
[2026-06-27T11:01:02] return code: 1
[2026-06-27T11:01:02] stderr: sudo: een wachtwoord is verplicht
[2026-06-27T11:01:02] trying command group 2
[2026-06-27T11:01:02] running: systemctl restart domoticz.service
[2026-06-27T11:01:02] return code: 4
[2026-06-27T11:01:02] stderr: Failed to restart domoticz.service: Access denied
See system logs and 'systemctl status domoticz.service' for details.
[2026-06-27T11:01:02] trying command group 3
[2026-06-27T11:01:02] running: sudo -n service domoticz restart
[2026-06-27T11:01:02] return code: 1
[2026-06-27T11:01:02] stderr: sudo: een wachtwoord is verplicht
[2026-06-27T11:01:02] trying command group 4
[2026-06-27T11:01:02] running: service domoticz restart
[2026-06-27T11:01:02] return code: 4
[2026-06-27T11:01:02] stderr: Failed to restart domoticz.service: Access denied
Do you think this is an issue I must raise?
Running Domoticz on a NUC with Linux btw.
Re: Python Plugin Store
Posted: Saturday 27 June 2026 17:38
by domovincent
mvveelen wrote: Saturday 27 June 2026 14:12
Ah, I see.
In the log I see:
<snip>log
Do you think this is an issue I must raise?
Running Domoticz on a NUC with Linux btw.
No need to raise an issue. The log is clear and I'll improve the store restart logic to be a bit more explicit. This log is correct behaviour by the plugin. And the system prevents the restart as expected because nothing has been setup to allow this.
The README has been updated and now contains extensive documentation on how to allow the restart to succeed:
https://github.com/adrighem/PyPluginSto ... art-button
Either implement the sudo or the polkit variant, depending on personal taste or platform support. This is quite technical, but doable. After that, the restart will function as expected.