update checking config file
This commit is contained in:
parent
9aea6152f6
commit
32d1f68bdf
|
@ -3,7 +3,7 @@
|
|||
<!DOCTYPE PLUGIN [
|
||||
<!ENTITY name "NerdPack">
|
||||
<!ENTITY author "dmacias72">
|
||||
<!ENTITY version "2016.02.23">
|
||||
<!ENTITY version "2016.03.14">
|
||||
<!ENTITY launch "Settings/&name;">
|
||||
<!ENTITY gitURL "https://raw.githubusercontent.com/&author;/unRAID-plugins/master">
|
||||
<!ENTITY pluginURL "&gitURL;/plugins/&name;.plg">
|
||||
|
@ -16,6 +16,9 @@
|
|||
<PLUGIN name="&name;" author="&author;" version="&version;" launch="&launch;" pluginURL="&pluginURL;">
|
||||
|
||||
<CHANGES>
|
||||
###2016.03.14
|
||||
- update plugin for unRAID 6.2 compatibility
|
||||
- update packages for 6.2
|
||||
###2016.02.23
|
||||
- fix: search for a partial match of packages used in other plugins
|
||||
###2016.02.17
|
||||
|
@ -138,10 +141,11 @@ The 'tablesorter' package file.
|
|||
|
||||
<!--
|
||||
The Github repo packages file.
|
||||
-->
|
||||
|
||||
<FILE Name="&plgpath;/packages/packages.json">
|
||||
<URL>&gitURL;/plugins/packages.json</URL>
|
||||
</FILE>
|
||||
-->
|
||||
|
||||
<!--
|
||||
The package description file.
|
||||
|
@ -171,7 +175,8 @@ The 'install' script.
|
|||
<INLINE>
|
||||
#Verify unRAID Version
|
||||
source /etc/unraid-version
|
||||
if [[ ${version:0:3} == 6.0 ]]; then
|
||||
VER=${version:0:3}
|
||||
if [[ $VER == 6.0 ]]; then
|
||||
echo "unRAID version 6.1 or higher is required"
|
||||
exit 1
|
||||
fi
|
||||
|
@ -180,23 +185,26 @@ fi
|
|||
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 \
|
||||
&plgpath;/&plgname;.md5
|
||||
exit 1
|
||||
echo "Wrong 'plugin' package md5 hash."
|
||||
rm &plgpath;/&plgname;.txz \
|
||||
&plgpath;/&plgname;.md5
|
||||
exit 1
|
||||
else
|
||||
upgradepkg --install-new &plgpath;/&plgname;.txz
|
||||
fi
|
||||
if [ ! -d &plgpath;/packages/$VER ]; then
|
||||
mkdir &plgpath;/packages/$VER
|
||||
fi
|
||||
|
||||
if [ ! -d &plgpath;/packages ]; then
|
||||
mkdir &plgpath;/packages
|
||||
fi
|
||||
if [[ ${version:0:3} == 6.1 ]]; then
|
||||
mv &plgpath;/packages/*txz &plgpath;/packages/6.1
|
||||
fi
|
||||
|
||||
/usr/sbin/packagemanager
|
||||
upgradepkg --install-new &plgpath;/&plgname;.txz
|
||||
|
||||
# Cleaning old source files
|
||||
find &plgpath;/ -type f -iname "&name;*.txz" ! -iname "*&version;*" -delete
|
||||
find &plgpath;/ -type f -iname "&name;*.md5" ! -iname "*&version;*" -delete
|
||||
/usr/sbin/packagemanager
|
||||
|
||||
# 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 "-----------------------------------------------------------"
|
||||
|
@ -206,6 +214,7 @@ echo " Copyright 2016, &author;, eschultz"
|
|||
echo " Version: &version;"
|
||||
echo "-----------------------------------------------------------"
|
||||
echo ""
|
||||
fi
|
||||
</INLINE>
|
||||
</FILE>
|
||||
|
||||
|
|
|
@ -27,6 +27,7 @@ foreach ($pkgs_github_array as $pkg_github) {
|
|||
|
||||
$pkg_pattern = '/^'.$pkg_name.'.*/'; // search patter for packages
|
||||
|
||||
// check all plugins for package dependency
|
||||
$plugins = [];
|
||||
exec("cd /boot/config/plugins ; find *.plg | xargs grep '${pkg_name}-${pkg_version}' -sl",$plugins);
|
||||
$pkg_plgs = '--';
|
||||
|
@ -35,7 +36,20 @@ foreach ($pkgs_github_array as $pkg_github) {
|
|||
$pkg_plgs .= pathinfo($plugin, PATHINFO_FILENAME).', ';
|
||||
}
|
||||
$pkg_plgs = substr($pkg_plgs, 2, -2);
|
||||
}
|
||||
}
|
||||
|
||||
// get package preference from config file
|
||||
$pkg_set = "no";
|
||||
foreach ($pkg_cfg as $pkg_key => $pkg_line) {
|
||||
if (preg_match('/^'.$pkg_name.'.*/',$pkg_key)){
|
||||
if(sizeof(array_diff(split('-', $pkg_key), split('-', $pkg_name))) < 2 ){
|
||||
$pkg_set = $pkg_line;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//isset($pkg_cfg[$pkg_nver]) ? $pkg_cfg[$pkg_nver] : 'no'
|
||||
|
||||
$pkg = [
|
||||
'name' => $pkg_github['name'], // add full package name
|
||||
|
@ -47,8 +61,8 @@ foreach ($pkgs_github_array as $pkg_github) {
|
|||
'installeq' => in_array(pathinfo($pkg_github['name'], PATHINFO_FILENAME), $pkgs_installed) ? 'yes' : 'no', // checks if package installed equals github exactly
|
||||
'downloaded' => preg_grep($pkg_pattern, $pkgs_downloaded) ? 'yes' : 'no', // checks if package name is downloaded
|
||||
'downloadeq' => in_array($pkg_github['name'], $pkgs_downloaded) ? 'yes' : 'no', // checks if package downloaded equals github exactly
|
||||
'config' => isset($pkg_cfg[$pkg_nver]) ? $pkg_cfg[$pkg_nver] : 'no', // checks config for install preference
|
||||
'plugins' => $pkg_plgs, // checks plugins dependency on package
|
||||
'config' => $pkg_set, // install preference
|
||||
'plugins' => $pkg_plgs, // plugins dependency on package
|
||||
'desc' => $pkgs_desc_array[$pkg_name]
|
||||
];
|
||||
|
||||
|
|
|
@ -54,7 +54,7 @@ logger('Processing Packages...');
|
|||
foreach ($pkg_cfg as $pkg_name => $pkg_pref) { // get preferences for each package
|
||||
$pkg_cmd = '';
|
||||
$pkg_name = str_replace('_', '.', $pkg_name); // replace "_" with "." in package names
|
||||
$pkg_pattern = '/^'.$pkg_name.'.*/'; // search patter for packages
|
||||
$pkg_pattern = '/^'.$pkg_name.'.*/'; // search pattern for packages
|
||||
$pkg_install_status = preg_grep($pkg_pattern, $pkgs_installed); // check install status
|
||||
$pkg_download_status = preg_grep($pkg_pattern, $pkgs_downloaded); // check package download status
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user