Some thoughts became code.
What if we could use a plugin in order to install other plugins from a list?
So, I did it.
Wiki Link: https://www.domoticz.com/wiki/Python_Plugin_Manager (Thanks to IDANIT)
Compatibility List:
- Raspberry Pi - Confirmed
- Ubuntu Debian - Confirmed
- USERS TO TEST ON DIFFERENT LINUX FLAVORS WANTED
- Windows - Not Supported
Supported plugins can be found on : https://www.domoticz.com/wiki/Plugins
TO CONTRIBUTE YOUR PLUGINS:
In order to add your plugins to PP-Manager, make a "pull request" with your lines added:
- Increase version at "...author="ycahome" version="1.5.xx"..." in Line 12
- Increase version at "...Python Plugin Manager v.1.5.xx..." in Line 14
- Under 'label="Domoticz Plugin"' in alphabetical order by 'label' and
- Under 'self.plugindata' in alphabetical order by 'pluginText'
RELEASE NOTES
v.1.5.13
Added: "eQ-3 MAX!" plugin (Thanks to @mvzut)
Added: "SmogTok Air Quality monitor" plugin (Thanks to @smogtok)
v.1.5.9
Fix: Error when no exception files found
v.1.5.8
Fixed: Added "git fetch" before update check to fetch repository details
v.1.5.7
Removed: Daikin Airconditioning (BRP069A42) plugin (already on Domoticz Core)
v.1.5.6
Added: Crow Runner Alarm plugin
Added: Daikin Airconditioning (BRP069A42) plugin
Added: IKEA Tradfri plugin
Added: Life 360 Presence plugin
Added: Pioneer AVR plugin
Added: RAVEn Zigbee energy monitor plugin
v.1.5.5
New: Experimental Feature that parsing all installed plugins (only plugin.py) for specific regex (text patterns)
_____Currently enabled only the "IP Pattern". Scan plugins for IPs on the code in order to avoid data leakage....
______There is a file template (secpoluser.orig). Can be copied to "secpoluser.txt" and include all results that should be excluded.
v.1.5.1
New: Exclusion list file (exceptions.txt) implemented to prevent updates for selected plugins (copy exceptions.orig to exceptions.txt)
Changed: Some restructuring on functions
Fix: Some Bugfixes
Fix: Restructuring Defs
v.1.4.18:
Added: Meteo Alarm EU RSS Reader
Added: Mikrotik RouterOS
Added: Moon Phases
v.1.4.17
Added: Denon/Marantz Amplifier
Added: Disc usage
Added: Dutch earthquakes
Added: Hive Active Heating
v.1.4.10
Added: Xiaomi PM2.5 Sensor
Added: Sony Bravia TV (with Kodi remote)
Changed: Selected (NotifyOnly) is now the default option for auto update
v.1.3.2
-self update on onStop() and every day
-option to update all - daily at 12:00 (all plugins installed from GitHub are candidates)
-logging fixed
-some problems sorted out.
Version 1.2.0 .
Supports:
-self update every 24 hours
-update selected plugin (ad-hoc update) every 24 hours
-more plugins added
FEATURES:
This plugin
- supports only plugins located on GitHub
- has a predefined list of plugins to be installed
- performs plugin installation only if plugin directory not exists
- performs plugin installation and prompts you to restart Domoticz in order to activate it.
- Self updates itself on every self.stop() or plugin update
- option to update selected plugin (ad-hoc update) every 24 hours
- check for updates for currently installed plugins and notify admin
To install a plugin: select it on "Domoticz Plugin" field and press update
"Auto Update" Options (After every change press "Update")
- "All": Continuously update all plugins
- "Selected":Continuously update selected plugin (You should first select desired plugin from "Domoticz Plugin" field)
- "All (NotifyOnly)": Check all plugins for updates and generate notification email.
- "Selected (NotifyOnly)":Check selected plugin for updates and generate notification email. (You should first select desired plugin from "Domoticz Plugin" field)
To install another plugin, just select it and press update.
Pending to be implemented:
- Uninstall plugins
- standardise execution of a shell file in order to fulfill individual plugin prerequisites
- check self prerequisites
- implement scripts for Windows installation
INSTALLATION:
You can download and test it from my GitHub bellow:
https://github.com/ycahome/pp-manager
or you can install and test it from GitHub bellow (git tools required):
go to your plugins folder
and execute
Code: Select all
git clone https://github.com/ycahome/pp-manager.git PP-MANAGER
BEWARE, can be used ONLY ON LINUX SYSTEMS and Raspberry Pi!!!!!!
Waiting for your comments!!!!