Unraid-SlackPack/plugins/wakeonlan.plg
2017-04-09 01:28:10 -06:00

159 lines
4.2 KiB
XML
Executable File

<?xml version='1.0' standalone='yes'?>
<!DOCTYPE PLUGIN [
<!ENTITY name "wakeonlan">
<!ENTITY author "dmacias72">
<!ENTITY version "2017.04.09">
<!ENTITY launch "Settings/Wakeonlan">
<!ENTITY gitURL "https://raw.githubusercontent.com/&author;/unRAID-plugins/master">
<!ENTITY pluginURL "&gitURL;/plugins/&name;.plg">
<!ENTITY pkgURL "&gitURL;/source/packages">
<!ENTITY plgPATH "/boot/config/plugins/&name;">
<!ENTITY plgNAME "&name;-&version;-x86_64-1">
<!ENTITY emhttp "/usr/local/emhttp/plugins/&name;">
]>
<PLUGIN name="&name;" author="&author;" launch="&launch;" version="&version;" pluginURL="&pluginURL;">
<CHANGES>
##&name;
###&version;
- fix empty ip address resulting in failed scan
###2017.01.29a
- harden code for XSS and CSRF vulnerabilities
- update nmap to 7.40
- fix: blank scan.xml causing errors
- misc code improvements
- add: dynamix plugin update api
###2016.10.24
- fix: ip address variable
- fix: scan not working
###2016.10.22
- update ip address variable
- update code formatting
###2016.09.16
- update tablesorter to 2.27.6
###2016.01.16
- minor diplay changes
- add tablesorter as a separate package
###2016.01.09a
- saved mac address cannot be blank
- minor code changes
###2016.01.09
- move repo to unRaid-plugins
- add tablesorter fork for better sorting and sort save
- add separate tab for scanning
- completely update layout and revise code
###2015.11.21
- minor fixes
###2015.03.05a
- fix default ethernet interface
###2015.02.24
- button bindings when editing
###2015.02.21
- added autosave
- added table sorting
- disable scan function caching
- loading gifs
- show scan results only after scan
- scan ip after wake
###2015.02.20
- initial unRAID 6 release.
</CHANGES>
<!--
This plugin uses etherwake for wake on lan
-->
<FILE Name="&plgPATH;/etherwake-1.09-x86_64-5cf.txz" Min="6.1" Run="upgradepkg --install-new">
<URL>&pkgURL;/etherwake-1.09-x86_64-5cf.txz</URL>
<MD5>0b65b7b7ac2262f1a9b998cbb9f913e2</MD5>
</FILE>
<FILE Name="&plgPATH;/libnl-1.1.4-x86_64-1.txz" Min="6.1" Run="upgradepkg --install-new">
<URL>&pkgURL;/libnl-1.1.4-x86_64-1.txz</URL>
<MD5>435837a5bf0401a937d6ec93e458333b</MD5>
</FILE>
<FILE Name="&plgPATH;/nmap-7.40-x86_64-1.txz" Min="6.2" Run="upgradepkg --install-new">
<URL>&pkgURL;/nmap-7.40-x86_64-1.txz</URL>
<MD5>d48d79e1e57aaeb7aee322c78ad9b9a6</MD5>
</FILE>
<FILE Name="&plgPATH;/nmap-6.40-x86_64-1.txz" Min="6.1" Max="6.1.99" Run="upgradepkg --install-new">
<URL>&pkgURL;/nmap-6.40-x86_64-1.txz</URL>
<MD5>462cf835c4475ddfd2bd15cd10e8349d</MD5>
</FILE>
<!--
The 'plugin' package file.
-->
<FILE Name="&plgPATH;/&plgNAME;.txz">
<URL>&gitURL;/archive/&plgNAME;.txz</URL>
</FILE>
<!--
The 'plugin' package MD5 hash.
-->
<FILE Name="&plgPATH;/&plgNAME;.md5">
<URL>&gitURL;/archive/&plgNAME;.md5</URL>
</FILE>
<!--
The 'install' script.
-->
<FILE Run="/bin/bash">
<INLINE>
#Verify unRAID Version
source /etc/unraid-version
if [[ ${version:0:3} == 6.0 ]]; then
echo "unRAID version 6.1 or higher is required"
exit 1
fi
# Verify and install plugin package
sum1=$(/usr/bin/md5sum &plgPATH;/&plgNAME;.txz)
sum2=$(/usr/bin/cat &plgPATH;/&plgNAME;.md5)
if [ "${sum1:0:32}" != "${sum2:0:32}" ]; then
echo "Wrong 'plugin' package md5 hash."
rm &plgPATH;/&plgNAME;.txz
rm &plgPATH;/&plgNAME;.md5
exit 1
else
upgradepkg --install-new &plgPATH;/&plgNAME;.txz
fi
# Cleaning old source files
find &plgPATH;/ -type f -iname "&name;*.txz" ! -iname "*&version;*" -delete
find &plgPATH;/ -type f -iname "&name;*.md5" ! -iname "*&version;*" -delete
echo ""
echo "-----------------------------------------------------------"
echo " &name; has been installed."
echo " This plugin requires Dynamix webGui to operate"
echo " Copyright 2016-2017, &author;"
echo " Version: &version;"
echo "-----------------------------------------------------------"
echo ""
</INLINE>
</FILE>
The 'remove' script.
-->
<FILE Run="/bin/bash" Method="remove">
<INLINE>
removepkg &plgPATH;/&plgNAME;.txz
rm -rf &emhttp;
rm -f &plgPATH;/*.txz \
&plgPATH;/*.md5
echo ""
echo "-----------------------------------------------------------"
echo " &name; has been removed."
echo " Copyright 2016-2017, &author;"
echo " Version: &version;"
echo "-----------------------------------------------------------"
echo ""
</INLINE>
</FILE>
</PLUGIN>