22 Commits

Author SHA1 Message Date
4f24d37890 Merge pull request 'onebuttoninstaller/onebuttoninstaller-update_extension.php aktualisiert' (#2) from matthiasberner-patch-1 into master
Reviewed-on: #2
2024-10-09 20:09:41 +02:00
d840baeea2 onebuttoninstaller/onebuttoninstaller-update_extension.php aktualisiert 2024-10-09 20:08:29 +02:00
b85fe5f9e6 Merge pull request 'onebuttoninstaller/extensions.txt aktualisiert' (#1) from matthiasberner-patch-1 into master
Reviewed-on: #1
2024-10-09 19:51:54 +02:00
e65767fd32 onebuttoninstaller/extensions.txt aktualisiert
bastille extension link umgebogen
2024-10-09 19:50:53 +02:00
crestAT
a902200644 mc, htop, ncdu minimum support FreeBSD release 12.1 2020-06-04 09:31:15 +02:00
crestAT
d74178de46 OBI release 0.4.1 2020-06-01 11:53:08 +02:00
crestAT
a559b07deb Update extensions.txt 2020-04-05 12:59:49 +02:00
crestAT
b4ea21f188 add Bastille 1.0, deactive Extended GUI 2019-11-01 18:47:06 +02:00
crestAT
8783c3b9e7 Merge branch 'master' of https://github.com/crestAT/nas4free-onebuttoninstaller 2019-08-26 09:28:50 +02:00
crestAT
055a40fb85 add Themes 1.0 2019-08-26 09:28:31 +02:00
crest
ea6d38e606 Create extensions.txt 2019-08-26 08:36:06 +02:00
crestAT
0b9bce1bbf add Themes 1.0 2019-08-26 08:32:03 +02:00
crest
cdae93c40b Delete extensions.txt 2019-08-26 08:28:08 +02:00
crestAT
4c65214d5e add Themes 1.0 2019-08-26 08:25:41 +02:00
crest
27a345b161 Update extensions.txt 2019-05-01 07:15:55 +02:00
crest
02f3d0e54b Delete extensions.txt.SHA512-CHECKSUM 2019-04-27 07:15:39 +02:00
crest
634baa08f7 PyTivo 0.1.x 2019-04-27 07:14:21 +02:00
crestAT
67fef6d504 Telegraf 0.3.x 2018-11-25 04:31:22 +02:00
crestAT
c160148867 Rclone 1.0 2018-11-05 11:10:58 +02:00
crestAT
6fc28413a4 add Rclone 2018-10-30 17:54:06 +02:00
crestAT
537e47d185 v0.4.0.2 2018-10-18 09:11:22 +02:00
crestAT
436cdc8007 add MySQL v0.1b2 2018-09-21 08:08:03 +02:00
37 changed files with 358 additions and 52 deletions

View File

@@ -1,6 +1,6 @@
BSD 2-Clause License
Copyright (c) 2015 - 2018 Andreas Schmidhuber
Copyright (c) 2015 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without

View File

@@ -2,7 +2,7 @@
/*
OBI.php
Copyright (c) 2015 - 2018 Andreas Schmidhuber
Copyright (c) 2015 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without

View File

@@ -0,0 +1,44 @@
<?php
/*
htop-start.php
Copyright (c) 2018 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
require_once("config.inc");
require_once("/usr/local/www/ext/onebuttoninstaller/extension-lib.inc");
$rootfolder = dirname(__FILE__);
$return_val = 0;
$pkgName = "htop";
$pkgFileNameNeeded = $pkgName;
$manifest = ext_load_package($pkgName, $pkgFileNameNeeded, $rootfolder);
$return_val += mwexec("mkdir -p /usr/local/share/pixmaps", true);
$return_val += mwexec("ln -sf '{$rootfolder}/bin/{$pkgName}/usr/local/bin/htop' /usr/local/bin", true);
$return_val += mwexec("ln -sf '{$rootfolder}/bin/{$pkgName}/usr/local/share/pixmaps/htop.png' /usr/local/share/pixmaps", true);
if ($return_val == 0) mwexec("logger {$pkgName}-extension: started successfully");
else mwexec("logger {$pkgName}-extension: error(s) during startup, failed with return value = {$return_val}");
echo "RETVAL = {$return_val}\n";
?>

View File

@@ -0,0 +1,70 @@
<?php
/*
universal postinit file for CLI extensions
Copyright (c) 2015 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
require_once("config.inc");
$appName = "Htop";
$command = "htop-start.php";
$cmd = dirname(__FILE__)."/{$command}";
// remove start/stop commands
// remove existing old rc format entries
if (is_array($config['rc']) && is_array($config['rc']['postinit']) && is_array( $config['rc']['postinit']['cmd'])) {
$rc_param_count = count($config['rc']['postinit']['cmd']);
for ($i = 0; $i < $rc_param_count; $i++) {
if (preg_match("/{$command}/", $config['rc']['postinit']['cmd'][$i])) unset($config['rc']['postinit']['cmd'][$i]);
}
}
// remove existing entries for new rc format
if (is_array($config['rc']) && is_array($config['rc']['param']['0'])) {
$rc_param_count = count($config['rc']['param']);
for ($i = 0; $i < $rc_param_count; $i++) {
if (preg_match("/{$command}/", $config['rc']['param'][$i]['value'])) unset($config['rc']['param'][$i]);
}
}
// check FreeBSD release
$release = explode("-", exec("uname -r"));
if ($release[0] >= 11.0) { // new rc format
// postinit command
$rc_param = [];
$rc_param['uuid'] = uuid();
$rc_param['name'] = "{$appName} Extension";
$rc_param['value'] = "php {$cmd}";
$rc_param['comment'] = "Start {$appName}";
$rc_param['typeid'] = '2';
$rc_param['enable'] = true;
$config['rc']['param'][] = $rc_param;
}
else {
$config['rc']['postinit']['cmd'][] = "php {$cmd}";
}
write_config();
require_once($cmd);
?>

View File

@@ -0,0 +1,67 @@
<?php
/*
mc-start.php
Copyright (c) 2018 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
require_once("config.inc");
require_once("/usr/local/www/ext/onebuttoninstaller/extension-lib.inc");
$rootfolder = dirname(__FILE__);
$return_val = 0;
$pkgName = "mc";
$pkgFileNameNeeded = "free Norton Commander";
$manifest = ext_load_package($pkgName, $pkgFileNameNeeded, $rootfolder);
$return_val += mwexec("ln -sf '{$rootfolder}/bin/{$pkgName}/usr/local/share/mc' /usr/local/share", true);
$return_val += mwexec("ln -sf '{$rootfolder}/bin/{$pkgName}/usr/local/libexec/mc' /usr/local/libexec", true);
$return_val += mwexec("ln -sf '{$rootfolder}/bin/{$pkgName}/usr/local/etc/mc' /usr/local/etc", true);
foreach ($manifest['files'] as $mFKey => $mFValue) {
if (strpos($mFKey, "usr/local/bin") > 0) $return_val += mwexec("ln -sf '{$rootfolder}/bin/{$pkgName}{$mFKey}' '{$mFKey}'", true);
// if (strpos($mFKey, "usr/local/lib") > 0) $return_val += mwexec("ln -sf '{$rootfolder}/bin/{$pkgName}{$mFKey}' '{$mFKey}'", true);
if (strpos($mFKey, "LC_MESSAGES") > 0) {
$localeDir = dirname($mFKey);
if (!file_exists($localeDir)) $return_val += mwexec("mkdir -p '{$localeDir}'", true);
$return_val += mwexec("ln -sf '{$rootfolder}/bin/{$pkgName}{$mFKey}' '{$mFKey}'", true);
}
}
$pkgName = "libslang2";
$pkgFileNameNeeded = $pkgName;
$manifest = ext_load_package($pkgName, $pkgFileNameNeeded, $rootfolder);
foreach ($manifest['files'] as $mFKey => $mFValue) {
if (strpos($mFKey, "usr/local/lib/libslang.so.2") > 0) $return_val += mwexec("ln -sf '{$rootfolder}/bin/{$pkgName}{$mFKey}' '{$mFKey}'", true);
}
$pkgName = "libssh2";
$pkgFileNameNeeded = "^libssh2";
$manifest = ext_load_package($pkgName, $pkgFileNameNeeded, $rootfolder);
foreach ($manifest['files'] as $mFKey => $mFValue) {
if (strpos($mFKey, "usr/local/lib/libssh2.so.1") > 0) $return_val += mwexec("ln -sf '{$rootfolder}/bin/{$pkgName}{$mFKey}' '{$mFKey}'", true);
}
if ($return_val == 0) mwexec("logger midnightcommander-extension: started successfully");
else mwexec("logger midnightcommander-extension: error(s) during startup, failed with return value = {$return_val}");
echo "RETVAL = {$return_val}\n";
?>

View File

@@ -2,7 +2,7 @@
/*
universal postinit file for CLI extensions
Copyright (c) 2015 - 2018 Andreas Schmidhuber
Copyright (c) 2015 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
@@ -29,8 +29,8 @@
require_once("config.inc");
$appName = "Midnight Commander";
$command = "mcommander.sh";
$cmd = dirname(__FILE__)."/".$command;
$command = "mc-start.php";
$cmd = dirname(__FILE__)."/{$command}";
// remove start/stop commands
// remove existing old rc format entries
@@ -56,14 +56,15 @@ if ($release[0] >= 11.0) { // new rc format
$rc_param = [];
$rc_param['uuid'] = uuid();
$rc_param['name'] = "{$appName} Extension";
$rc_param['value'] = "{$cmd}";
$rc_param['value'] = "php {$cmd}";
$rc_param['comment'] = "Start {$appName}";
$rc_param['typeid'] = '2';
$rc_param['enable'] = true;
$config['rc']['param'][] = $rc_param;
}
else {
$config['rc']['postinit']['cmd'][] = "{$cmd}";
$config['rc']['postinit']['cmd'][] = "php {$cmd}";
}
write_config();
require_once($cmd);
?>

View File

@@ -0,0 +1,42 @@
<?php
/*
ncdu-start.php
Copyright (c) 2018 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
require_once("config.inc");
require_once("/usr/local/www/ext/onebuttoninstaller/extension-lib.inc");
$rootfolder = dirname(__FILE__);
$return_val = 0;
$pkgName = "ncdu";
$pkgFileNameNeeded = $pkgName;
$manifest = ext_load_package($pkgName, $pkgFileNameNeeded, $rootfolder);
$return_val += mwexec("ln -sf '{$rootfolder}/bin/{$pkgName}/usr/local/bin/ncdu' /usr/local/bin", true);
if ($return_val == 0) mwexec("logger {$pkgName}-extension: started successfully");
else mwexec("logger {$pkgName}-extension: error(s) during startup, failed with return value = {$return_val}");
echo "RETVAL = {$return_val}\n";
?>

View File

@@ -2,7 +2,7 @@
/*
universal postinit file for CLI extensions
Copyright (c) 2015 - 2018 Andreas Schmidhuber
Copyright (c) 2015 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
@@ -29,8 +29,8 @@
require_once("config.inc");
$appName = "NCurses Disk Usage";
$command = "ncdu.sh";
$cmd = dirname(__FILE__)."/".$command;
$command = "ncdu-start.php";
$cmd = dirname(__FILE__)."/{$command}";
// remove start/stop commands
// remove existing old rc format entries
@@ -56,14 +56,15 @@ if ($release[0] >= 11.0) { // new rc format
$rc_param = [];
$rc_param['uuid'] = uuid();
$rc_param['name'] = "{$appName} Extension";
$rc_param['value'] = "{$cmd}";
$rc_param['value'] = "php {$cmd}";
$rc_param['comment'] = "Start {$appName}";
$rc_param['typeid'] = '2';
$rc_param['enable'] = true;
$config['rc']['param'][] = $rc_param;
}
else {
$config['rc']['postinit']['cmd'][] = "{$cmd}";
$config['rc']['postinit']['cmd'][] = "php {$cmd}";
}
write_config();
require_once($cmd);
?>

View File

@@ -0,0 +1,44 @@
<?php
/*
show-MANIFEST.php
Copyright (c) 2018 - 2019 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
if (!function_exists('ext_load_config')) {
function ext_load_config($config_file, $assoc = true, $depth = 512, $options = 0) {
if (is_file($config_file)) {
if (($config_data = file_get_contents($config_file)) === false) return false;
$config_data = json_decode($config_data, $assoc, $depth, $options);
return $config_data;
}
else return false;
}
}
$fileName = $argv[1];
echo "Show '{$fileName}':\n";
if (($manifest = ext_load_config($fileName)) !== false) print_r($manifest);
else echo "File '{$fileName}' not found!\n";
?>

View File

@@ -2,7 +2,7 @@
/*
extension-lib.inc
Copyright (c) 2016 - 2018 Andreas Schmidhuber
Copyright (c) 2016 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
@@ -26,13 +26,40 @@
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
$extension_lib_version = "1.2";
$extension_lib_version = "1.4";
/* Version history:
* 1.4 2019.05.14 new function ext_load_package
* 1.3 2018.12.01 function ext_load_config: removed -> $config_data = utf8_encode($config_data); reason: wrong national character encoding
* 1.2 2018.08.13 function ext_check_version: append line break to the output message
* 1.1 2017.02.28 save config in ext_remove_rc_commands and ext_create_rc_commands
* 1.0 2017.02.27 includes changes for PHP 7.1
*/
/* function ext_load_package
* load packages and compare already installed packages for updates
* params:
* $pkgName: plain package name
* $pkgFileNameNeeded: unique string for pkg search to retrive the right package
* $rootfolder: extension root location
* return:
* package manifest array
*/
if (!function_exists('ext_load_package')) {
function ext_load_package($pkgName, $pkgFileNameNeeded, $rootfolder) {
if (($manifest = ext_load_config("{$rootfolder}/bin/{$pkgName}/+MANIFEST")) !== false) $pkgInstalledVersion = "{$manifest['name']}-{$manifest['version']}"; // currently installed pkg
else {
$pkgNeeded = exec("pkg search {$pkgName} | awk '/{$pkgFileNameNeeded}/ {print $1}'", $execOutput, $return_val); // retrieve available packages
$pkgFile = "{$rootfolder}/bin/All/{$pkgNeeded}.txz"; // create package file name
if (!is_file($pkgFile)) exec("pkg fetch -y -o '{$rootfolder}/bin' {$pkgNeeded}", $execOutput, $return_val); // fetch necessary package
$return_val += mwexec("mkdir -p '{$rootfolder}/bin/{$pkgName}' && tar -xf '{$pkgFile}' -C '{$rootfolder}/bin/{$pkgName}'", true); // extract package
if (($manifest = ext_load_config("{$rootfolder}/bin/{$pkgName}/+MANIFEST")) !== false) $pkgInstalledVersion = "{$manifest['name']}-{$manifest['version']}";
}
echo "Needed : ".$pkgNeeded."\n";
echo "Installed: ".$pkgInstalledVersion."\n";
return $manifest;
}
}
/* function ext_check_release
* checks current release against a minimal neccessary release
* params:
@@ -182,7 +209,6 @@ if (!function_exists('ext_load_config')) {
function ext_load_config($config_file, $assoc = true, $depth = 512, $options = 0) {
if (is_file($config_file)) {
if (($config_data = file_get_contents($config_file)) === false) return false;
$config_data = utf8_encode($config_data);
$config_data = json_decode($config_data, $assoc, $depth, $options);
return $config_data;
}

View File

@@ -1,14 +1,22 @@
Extended GUI###<font color="green">RELEASE<br>0.7.x</font>###extended-gui###mkdir -p extended-gui/backup && mkdir -p extended-gui/log && cd extended-gui && fetch https://raw.github.com/crestAT/nas4free-extended-gui/master/extended-gui/extended-gui-install.php && chmod 770 extended-gui*install.php###extended-gui/extended-gui-install.php###Extension for XigmaNAS with many improvements for Status > System and additional functions.<br><br>The extension improves the Status > System page to a "Dashboard" like page and provides a comprehensive set of monitoring and alarming features (CPU & Harddisk temperature, free disk space monitoring, ZFS health, User login, alarm history, audible alarming, notifications via email) as well as additional tools like USB Automount, Purge for CIFS/SMB shares and the integration of user defined log files and action buttons on Status > System.<br><br><font color="blue">PLEASE NOTE: Extended GUI versions older then v0.5.3 should be uninstalled and v0.6.x afterwards newly installed!</font><br><br>The extension works on all plattforms (x86 & x64, ARM, embedded & full), does not need jail or pkg_add, enhance pages of the XigmaNAS WebGUI, features configuration and extension maintenance (update & removal inside the WebGUI), let you switch between STANDARD (original) and EXTENDED WebGUI view and let you easily configure/enable/disable views and additional functions.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=6405' target='_blank'>XigmaNAS Forum</a>###11.1044517###
Extended GUI###<font color="green">RELEASE<br>0.7.x</font>###extended-gui###mkdir -p extended-gui/backup && mkdir -p extended-gui/log && cd extended-gui && fetch https://raw.github.com/crestAT/nas4free-extended-gui/master/extended-gui/extended-gui-install.php && chmod 770 extended-gui*install.php###extended-gui/extended-gui-install.php###<b><font color="red">THE EXTENSION IS NOT COMPATIBLE WITH CURRENT XIGMANAS RELEASES 11.2, 11.3 AND 12.X. IT WILL BE MAYBE IN FUTURE AFTER A COMPLETE REDESIGN, PLEASE BE PATIENT ...</font></b><br><br>Extension for XigmaNAS with many improvements for Status > System and additional functions.<br><br>The extension improves the Status > System page to a "Dashboard" like page and provides a comprehensive set of monitoring and alarming features (CPU & Harddisk temperature, free disk space monitoring, ZFS health, User login, alarm history, audible alarming, notifications via email) as well as additional tools like USB Automount, Purge for CIFS/SMB shares and the integration of user defined log files and action buttons on Status > System.<br><br>The extension works on all plattforms (x86 & x64, ARM, embedded & full), does not need jail or pkg_add, enhance pages of the XigmaNAS WebGUI, features configuration and extension maintenance (update & removal inside the WebGUI), let you switch between STANDARD (original) and EXTENDED WebGUI view and let you easily configure/enable/disable views and additional functions.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=6405' target='_blank'>XigmaNAS Forum</a>###99.9###
RRDGraphs###<font color="orange">DEPRECIATED<br>0.3.3</font>###rrdgraphs###mkdir -p rrdgraphs && cd rrdgraphs && fetch https://raw.github.com/crestAT/nas4free-rrdtool/master/rrdgraphs/rrd-install.php && chmod 770 rrd*install.php###rrdgraphs/rrd-install.php###Extension to install / configure / update and remove RRDTool based graphs for NAS4Free servers.<br><br>The extension is based on RRDtool and provides graphs for CPU frequency, CPU temperature, CPU usage, Disk usage (recognition of all mountpoints/shares automatically at RRDG startup), Load averages, Memory usage, Network latency, Network traffic, Processes, UPS, Uptime and ZFS ARC.<br><br><b><font color="red">Version 0.3.3 will be the last update for the RRDGraphs Extension since RRDGraphs goes to be native in NAS4Free 11.x series. This v0.3.3 was the base for the native implementation and all statistical data from the extension can be used further in the native NAS4Free implementation which will be called Monitoring and is located under System > Advanced. A description for the transition to native RRDGraphs can be found in the XigmaNAS forum.</font></b><br><br>The extension is compatible with all versions up to 10.3 of NAS4Free and works on all plattforms (x86 & x64, embedded & full), does not need jail or pkg_add, add pages to NAS4Free Web GUI extensions, features configuration and extension maintenance (update & removal inside the WebGUI) and is able to work on RAM drives to take care of your HDDs/USB pen drives.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=8299' target='_blank'>XigmaNAS Forum</a>###-###
BitTorrent Sync###<font color="green">RELEASE<br>0.7.x</font>###btsync###fetch https://raw.github.com/crestAT/nas4free-bittorrent-sync/master/bts-install.php && chmod 770 bts*install.php###bts-install.php###Extension to install / configure / backup / update / manage and remove the Resilio Sync application on XigmaNAS servers.<br><br>The extension is compatible with all versions (9.1.x - 11.x) of XigmaNAS except on ARM boxes, works on all plattforms (embedded, full), does not need jail or pkg_add, add pages to XigmaNAS Web GUI extensions, features configuration, application update & backup management, extension mantenance (update & removal) and log view with filter and search capability.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=5704' target='_blank'>XigmaNAS Forum</a>###rpi, rpi2, rpi3, bananapi###
Syncthing###<font color="green">RELEASE<br>0.2.x</font>###syncthing###fetch https://raw.github.com/crestAT/nas4free-syncthing/master/stg-install.php && chmod 770 stg*install.php###stg-install.php###Extension to install / configure / backup / update / manage and remove Syncthing (STG) application on XigmaNAS (N4F) servers.<br><br>The extension works on all plattforms, does not need jail or pkg_add, add pages to XigmaNAS WebGUI extensions, features configuration, application update & backup management, scheduling and log view with filter / search capabilities.<br><br><font color="blue"><b>Note:</b> The current 10.3 and 11.x series of XigmaNAS contain Syncthing already out of the box so this extensions is mainly for older releases OR if one need to upgrade/rollback Syncthing versions without upgrade/downgrade the XigmaNAS firmware for compatibility reasons with other devices.</font><br><br>Read more ... <a href='https://github.com/crestAT/nas4free-syncthing/wiki' target='_blank'>GitHub Wiki</a>###-###
TheBrig###<font color="green">RELEASE<br>0.9x</font>###thebrig###mkdir -p thebrig && cd thebrig && fetch https://raw.githubusercontent.com/fsbruva/thebrig/alcatraz/thebrig_install.sh && chmod a+x thebrig_install.sh && sh thebrig_install.sh###-###Jail manager extension for XigmaNAS.<br><br><font color="red"><b>Note:</b> After the installation navigate to rudimentary config tab and push Save to finish the installation.</font><br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=79&t=3894' target='_blank'>XigmaNAS Forum</a>###10.3###
DNSMasq DHCP Server###<font color="green">RELEASE<br>0.4x</font>###dnsmasq###mkdir -p dnsmasq && cd dnsmasq && fetch https://raw.github.com/alexey1234/nas4free-dnsmasq/master/dnsmasq_install.sh && chmod a+x dnsmasq_install.sh && sh dnsmasq_install.sh `pwd`###-###DNSMasq DHCP Server extension for XigmaNAS.<br><br><font color="red"><b>Note:</b> After the installation navigate to rudimentary config tab and push Save to finish the installation.</font><br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=3002' target='_blank'>XigmaNAS Forum</a>###rpi, rpi2, rpi3, bananapi###
Midnight Commander###<font color="green">RELEASE<br>4.8.8</font>###mcommander.sh###mkdir -p midnightcommander && cd midnightcommander && cp /usr/local/www/ext/onebuttoninstaller/../apps/mcommander.* . && chmod u+x mcommander.sh && `pwd`/mcommander.sh###midnightcommander/mcommander.postinit###Midnight Commander for XigmaNAS.<br><br>GNU Midnight Commander is a visual file manager, licensed under GNU General Public License and therefore qualifies as Free Software. It's a feature rich full-screen text mode application that allows you to copy, move and delete files and whole directory trees, search for files and run commands in the subshell. Internal viewer and editor are included.<br><br>After successful installation you can use Midnight Commander in the system console shell or if you connect via ssh. To start the Midnight Commander just enter the command <b>mc</b> in the CLI.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=70&t=187' target='_blank'>XigmaNAS Forum</a>###rpi, rpi2, rpi3, bananapi###
NCurses Disk Usage###<font color="green">RELEASE<br>1.12</font>###ncdu.sh###mkdir -p ncdu && cd ncdu && cp /usr/local/www/ext/onebuttoninstaller/../apps/ncdu.* . && chmod u+x ncdu.sh && `pwd`/ncdu.sh###ncdu/ncdu.postinit###NCurses Disk Usage<br><br>Ncdu is a disk usage analyzer with an ncurses interface. It is designed to find space hogs on a remote server where you don't have an entire graphical setup available, but it is a useful tool even on regular desktop systems.<br><br>After successful installation you can use NCDU in the system console shell or if you connect via ssh. To start NCDU just enter the command <b>ncdu</b> in the CLI.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=70&t=13704&hilit=ncdu' target='_blank'>XigmaNAS Forum</a>###rpi, rpi2, rpi3, bananapi###
Virtual Machine BHYVE###<font color="red">BETA<br>0.x</font>###bhyve###mkdir -p bhyve && cd bhyve && fetch https://raw.githubusercontent.com/alexey1234/vmbhyve_nas4free/master/bhyve_install.sh && chmod a+x bhyve_install.sh && sh bhyve_install.sh `pwd`###-###Webgui to bhyve for XigmaNAS. Based on vm-bhyve.<br><br><font color="red"><b>Note:</b> After the installation navigate to rudimentary config tab and push Save to finish the installation.</font><br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=10433#p65157' target='_blank'>XigmaNAS Forum</a>###x86, 10.2, rpi, rpi2, rpi3, bananapi###
Plex Media Server###<font color="green">RELEASE<br>4.2.x</font>###plexinit###mkdir -p plex && cd plex && fetch https://raw.githubusercontent.com/JRGTH/nas4free-plex-extension/master/plex/plexinit && chmod +x plexinit && ./plexinit -o###plex/postinit###Plex Media Server Add-On for XigmaNAS 10.3 and later.<br><br>The extension works on XigmaNAS 10.3 and later versions, don't need jail, fstab or unionfs configs, self contained and portable package, single script for management and startup, easy to upgrade/rollback while maintaining actual Plex config, Plex IP address will be locally visible by any devices.<br><br><b>Note: Plex Pass is available at the beta channel in OneButtonInstaller - activate 'Beta releases' in Extensions > OneButtonInstaller > Configuration to get it in shown in the extensions list!<br>To install Plex Pass a previous standard Plex installation must be uninstalled with Extensions > Plex Media Server > Uninstall (Plexdata can stay intact - don't tick to delete the user data as well) and afterwards the Plex Pass package can be installed!</b><br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=11184#p69861' target='_blank'>XigmaNAS Forum</a>###x86, 10.3, rpi, rpi2, rpi3, bananapi###
Virtual Machine BHYVE###<font color="red">ALPHA<br>0.x</font>###bhyve###mkdir -p bhyve && cd bhyve && fetch https://raw.githubusercontent.com/alexey1234/vmbhyve_nas4free/master/bhyve_install.sh && chmod a+x bhyve_install.sh && sh bhyve_install.sh `pwd`###-###Webgui to bhyve for XigmaNAS. Based on vm-bhyve.<br><br><font color="red"><b>Note:</b> After the installation navigate to rudimentary config tab and push Save to finish the installation.</font><br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=10433#p65157' target='_blank'>XigmaNAS Forum</a>###x86, 10.2, rpi, rpi2, rpi3, bananapi###
Plex Media Server###<font color="green">RELEASE<br>4.3.x</font>###plexinit###mkdir -p plex && cd plex && fetch https://raw.githubusercontent.com/JRGTH/xigmanas-plex-extension/master/plex/plexinit && chmod +x plexinit && ./plexinit -o###plex/postinit###Plex Media Server Add-On for XigmaNAS 11.0 and later.<br><br>The extension works on XigmaNAS 11.0 and later versions, don't need jail, fstab or unionfs configs, self contained and portable package, single script for management and startup, easy to upgrade/rollback while maintaining the actual Plex configuration.<br><br><b>Note: Plex Pass is available at the beta channel in OneButtonInstaller - activate 'Beta releases' in Extensions > OneButtonInstaller > Configuration to get it in shown in the extensions list!<br>To install Plex Pass a previous standard Plex installation must be uninstalled with Extensions > Plex Media Server > Uninstall (Plexdata can stay intact - don't tick to delete the user data as well) and afterwards the Plex Pass package can be installed!</b><br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=11184#p69861' target='_blank'>XigmaNAS Forum</a>###x86, 10.3, rpi, rpi2, rpi3, bananapi###
Downloady###<font color="green">RELEASE<br>0.1.x</font>###downloady###mkdir -p downloady && cd downloady && fetch https://raw.github.com/crestAT/nas4free-downloady/master/downloady/downloady-install.php && chmod 770 downloady*install.php###downloady/downloady-install.php###Simple PHP Download Manager for http/https/ftp sites based on Downloady by CyberLeo|cyberLeo Projects.<br><br>The extension fully integrates a wget based download manager into the XigmaNAS WebGUI, works on all plattforms (x86 & x64, ARM, embedded & full), does not need jail or pkg_add, enhance pages of the XigmaNAS WebGUI and features configuration and extension maintenance (update & removal inside the WebGUI). Based on Downloady by CyberLeo it has been extended and offers restart on server reboot, bandwidth limits for downloads as well as a daily scheduler to start/stop Downloady at a specific time.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=11719&hilit=downloady' target='_blank'>XigmaNAS Forum</a>
NextOnwCloud###<font color="green">RELEASE<br>0.3.x</font>###owncloud###mkdir -p owncloud && cd owncloud && fetch https://raw.github.com/crestAT/nas4free-owncloud/master/owncloud/owncloud-install.php && chmod 770 owncloud*install.php && echo "Installation file successfully downloaded"###owncloud/owncloud-install.php###Extension to install OwnCloud and/or NextCloud with a minimal set of prerequisites (ensures to have the right permissions on the used paths and an upload file size of 2GB) on XigmaNAS servers.<br><br>The extension works on all plattforms, does not need jail or pkg_add and add pages to XigmaNAS WebGUI extensions.<br><font color="blue"><b>At the moment no SQL database system will be installed so the XigmaNAS built-in SQLite or an existing mySQL or MariaDB installation can be used.</b></font><br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=11718' target='_blank'>XigmaNAS Forum</a>
Plex Pass Media Server###<font color="blue">BETA<br>4.2.x</font>###plex###mkdir -p plexpass && cd plexpass && fetch https://raw.githubusercontent.com/JRGTH/nas4free-plex-extension/master/plex/plexinit && chmod +x plexinit && ./plexinit -ao###plexpass/postinit###Plex Pass Media Server Add-On for XigmaNAS.<br><br><font color="blue">Plex Pass is the bleeding edge channel containing the latest innovative and cutting edge features for the premium (paid) users.<br>The Plex Pass package is an Early Access & Preview Release, this means that this version is targeted for Premium Paid Plex users who want to preview/test newer and upcoming features earlier, and all users should bear in mind that this preview/bleeding edge releases may or may not work as expected, things can work just partially or even not work at all, in this case/scenario the user should use the Plex Forums for support and/or report any bugs/malfunction encountered in such releases.</font><br><br>Read more about Plex Pass at the Plex Website ... <a href='https://support.plex.tv/hc/en-us/articles/200288566-What-is-Plex-Pass-' target='_blank'>What is Plex Pass?</a><br><br><b>To install Plex Pass a previous standard Plex installation must be uninstalled with Extensions > Plex Media Server > Uninstall (Plexdata can stay intact - don't tick to delete the user data as well) and afterwards the Plex Pass package can be installed!</b><br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=11184#p69861' target='_blank'>XigmaNAS Forum</a>###x86, 10.3, rpi, rpi2, rpi3, bananapi###
NextOnwCloud###<font color="green">RELEASE<br>0.3.x</font>###owncloud###mkdir -p owncloud && cd owncloud && fetch https://raw.github.com/crestAT/nas4free-owncloud/master/owncloud/owncloud-install.php && chmod 770 owncloud*install.php ###owncloud/owncloud-install.php###Extension to install OwnCloud and/or NextCloud with a minimal set of prerequisites (ensures to have the right permissions on the used paths and an upload file size of 2GB) on XigmaNAS servers.<br><br>The extension works on all plattforms, does not need jail or pkg_add and add pages to XigmaNAS WebGUI extensions.<br><font color="blue"><b>NextCloud/ownCloud can use the built-in SQLite database server as well as the MySQL server extension or the upcoming XigmaNAS MariaDB server.</b></font><br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=11718' target='_blank'>XigmaNAS Forum</a>
Plex Pass Media Server###<font color="blue">COMMERCIAL<br>4.2.x</font>###plex###mkdir -p plexpass && cd plexpass && fetch https://raw.githubusercontent.com/JRGTH/xigmanas-plex-extension/master/plex/plexinit && chmod +x plexinit && ./plexinit -ao###plexpass/postinit###Plex Pass Media Server Add-On for XigmaNAS.<br><br><font color="blue">Plex Pass is the bleeding edge channel containing the latest innovative and cutting edge features for the premium (paid) users.<br>The Plex Pass package is an Early Access & Preview Release, this means that this version is targeted for Premium Paid Plex users who want to preview/test newer and upcoming features earlier, and all users should bear in mind that this preview/bleeding edge releases may or may not work as expected, things can work just partially or even not work at all, in this case/scenario the user should use the Plex Forums for support and/or report any bugs/malfunction encountered in such releases.</font><br><br>Read more about Plex Pass at the Plex Website ... <a href='https://support.plex.tv/hc/en-us/articles/200288566-What-is-Plex-Pass-' target='_blank'>What is Plex Pass?</a><br><br><b>To install Plex Pass a previous standard Plex installation must be uninstalled with Extensions > Plex Media Server > Uninstall (Plexdata can stay intact - don't tick to delete the user data as well) and afterwards the Plex Pass package can be installed!</b><br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=11184#p69861' target='_blank'>XigmaNAS Forum</a>###x86, 10.3, rpi, rpi2, rpi3, bananapi###
Zrep###<font color="green">RELEASE<br>0.2.x</font>###zrep-init###mkdir -p zrep && cd zrep && fetch https://raw.githubusercontent.com/JRGTH/xigmanas-zrep-extension/master/zrep-init && chmod +x zrep-init && ./zrep-init -o###zrep/postinit###XigmaNAS Zrep Extension which seamlessly integrates enterprise-grade ZFS replication and failover features.<br><br>Zrep is an enterprise-grade, single-program solution for handling asynchronous, continuous replication of a zfs filesystem, to another filesystem. That filesystem can be on another machine, or on the same machine. It also handles 'failover', as simply as "zrep failover datapool/yourfs". This will conveniently handle all the details of <ul><li>Making 'yourfs' be a data destination, rather than a source</li><li>Making 'yourfs' be read-only</li><li>Making the destination fs be "live", and ready to transfer data to yourfs</li></ul>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=13966#p86545' target='_blank'>XigmaNAS Forum</a>###10.3, x86, rpi, rpi2, rpi3, bananapi###
MySQL###<font color="green">RELEASE<br>0.2</font>###mysql-start###mkdir -p mysql && cd mysql && fetch https://raw.github.com/crestAT/nas4free-mysql/master/mysql/mysql-install.php && chmod +x mysql* ###mysql/mysql-install.php###MySQL database server extension with optional SQL database administration client (Adminer).<br><br>The MySQL&trade; software delivers a very fast, multithreaded, multi-user, and robust SQL (Structured Query Language) database server. MySQL Server is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software.<br><br>Adminer (formerly phpMinAdmin) is a full-featured database management tool written in PHP. Conversely to phpMyAdmin, it consist of a single file ready to deploy to the target server. Adminer is available for MySQL, MariaDB, PostgreSQL, SQLite, MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch and MongoDB.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=11189&start=300#p86808' target='_blank'>XigmaNAS Forum</a>###11.0, x86, rpi, rpi2, rpi3, bananapi###
Rclone###<font color="green">RELEASE<br>1.x</font>###rclone-start###mkdir -p rclone && cd rclone && fetch https://raw.github.com/crestAT/nas4free-rclone/master/rclone/rclone-install.php && chmod +x rclone* ###rclone/rclone-install.php###XigmaNAS extension for setup and upgrade Rclone as well as creating/executing task scripts from the WebGUI and scheduling to cron.<br><br>Rclone ("rsync for cloud storage") is a command line program to sync files and directories to and from different cloud storage providers:<br>Amazon Drive, Amazon S3, Backblaze B2, Box, Ceph, DigitalOcean Spaces, Dreamhost, Dropbox, FTP, Google Cloud Storage, Google Drive, HTTP, Hubic, Jottacloud, IBM COS S3, Memset Memstore, Mega, Microsoft Azure Blob Storage, Microsoft OneDrive, Minio, Nextcloud, OVH, OpenDrive, Openstack Swift, Oracle Cloud Storage, ownCloud, pCloud, put.io, QingStor, Rackspace Cloud Files, SFTP, Wasabi, WebDAV, Yandex Disk, The local filesystem<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=56&t=12698&sid=881da3d66a380f6a02e1ded0aecf22c9#p87447' target='_blank'>XigmaNAS Forum</a>###11.0, x86, rpi, rpi2, rpi3, bananapi###
Telegraf###<font color="green">RELEASE<br>0.3.x</font>###telegraf-init###mkdir -p telegraf && cd telegraf && fetch https://raw.githubusercontent.com/JRGTH/xigmanas-telegraf-extension/master/telegraf-init && chmod +x telegraf-init && ./telegraf-init -o###telegraf/postinit###XigmaNAS Telegraf Extension, the Agent for Collecting & Reporting Metrics & Data.<br><br>Telegraf has plugins or integrations to source a variety of metrics directly from the system it is running on, pull metrics from third-party APIs, or even listen for metrics via a StatsD and Kafka consumer services. It also has output plugins to send metrics to a variety of other datastores, services, and message queues, including InfluxDB, Graphite, OpenTSDB, Datadog, Librato, Kafka, MQTT, NSQ, and many others.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=14127#p87594' target='_blank'>XigmaNAS Forum</a>###10.3, x86, rpi, rpi2, rpi3, bananapi###
PyTivo###<font color="green">RELEASE<br>0.1.x</font>###pytivoinit###mkdir -p pytivo && cd pytivo && fetch https://raw.githubusercontent.com/JRGTH/xigmanas-pytivo-extension/master/pytivoinit && chmod +x pytivoinit && ./pytivoinit -o###pytivo/postinit###XigmaNAS PyTivo Extension<br><br>pyTivo is both an HMO and GoBack server. Similar to TiVo Desktop, pyTivo loads many standard video compression codecs and outputs mpeg2 (or in some cases, h.264) video to the TiVo. However, pyTivo is able to load many more file types than TiVo Desktop.<br><br>pyTivo is in no way affiliated with TiVo, Inc.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=14566' target='_blank'>XigmaNAS Forum</a>###11.0, x86, rpi, rpi2, rpi3, bananapi###
BE Manager###<font color="green">RELEASE<br>0.2.x</font>###beminit###mkdir -p bemanager && cd bemanager && fetch https://raw.githubusercontent.com/JRGTH/xigmanas-bem-extension/master/beminit && chmod +x beminit && ./beminit -o###bemanager/postinit###Boot Environments Manager extension for XigmaNAS.<br><br>Utility to manage Boot Environments with ZFS compliant platforms.<br><br><font color="red"><b>Note:</b> This extension is compatible with RootOnZFS platforms only.</font><br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=14585#p90458' target='_blank'>XigmaNAS Forum</a>###11.0, x86, rpi, rpi2, rpi3, bananapi###
Themes###<font color="green">RELEASE<br>1.x</font>###themes-start###mkdir -p themes && cd themes && fetch https://raw.github.com/crestAT/nas4free-themes/master/themes/themes-install.php && chmod +x themes* ###themes/themes-install.php###XigmaNAS themes extension.<br><br>The extension consists of a theme manager to choose from different as well as a simple theme designer. The themes are based on the original XigmaNAS WebGUI - the theme designer provide the means to change colors in an easy-to-use way and also to choose different device size bar types for Status > System and swap devices.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=14778#p91734' target='_blank'>XigmaNAS Forum</a>###11.2, x86, rpi, rpi2, rpi3, bananapi###
Bastille Manager###<font color="green">RELEASE<br>1.x</font>###bastille-init###mkdir -p -m 0750 bastille && cd bastille && fetch --no-verify-peer https://git.familie-berner.de/Xigmanas/xigmanas-bastille-extension/raw/branch/master/bastille-init && chmod +x bastille-init && ./bastille-init -o###bastille/postinit###XigmaNAS Bastille Extension<br><br>A ZERO dependency Bastille Jail/Container Manager Extension for XigmaNAS. Containers creation and management made easy!<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=71&t=14848&p=92140#p92140' target='_blank'>XigmaNAS Forum</a>###11.2, x86, rpi, rpi2, rpi3, bananapi###
NCurses Disk Usage###<font color="green">RELEASE<br>1.x</font>###ncdu-start.php###chmod u+x /usr/local/www/ext/onebuttoninstaller/../apps/*###onebuttoninstaller/apps/ncdu.postinit###NCurses Disk Usage CLI extension<br><br>Ncdu is a disk usage analyzer with an ncurses interface. It is designed to find space hogs on a remote server where you don't have an entire graphical setup available, but it is a useful tool even on regular desktop systems.<br><br>After successful installation you can use NCDU in the system console shell or if you connect via ssh. To start NCDU just enter the command <b>ncdu</b> in the CLI.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=70&t=13704&hilit=ncdu' target='_blank'>XigmaNAS Forum</a>###12.1, rpi, rpi2, rpi3, bananapi###
Midnight Commander###<font color="green">RELEASE<br>4.x</font>###mc-start.php###chmod u+x /usr/local/www/ext/onebuttoninstaller/../apps/*###onebuttoninstaller/apps/mcommander.postinit###Midnight Commander CLI extension<br><br>GNU Midnight Commander is a visual file manager, licensed under GNU General Public License and therefore qualifies as Free Software. It's a feature rich full-screen text mode application that allows you to copy, move and delete files and whole directory trees, search for files and run commands in the subshell. Internal viewer and editor are included.<br><br>After successful installation you can use Midnight Commander in the system console shell or if you connect via ssh. To start the Midnight Commander just enter the command <b>mc</b> in the CLI.<br><br>Read more ... <a href='https://www.xigmanas.com/forums/viewtopic.php?f=70&t=187' target='_blank'>XigmaNAS Forum</a>###12.1, rpi, rpi2, rpi3, bananapi###
Htop###<font color="green">RELEASE<br>2.x</font>###htop-start.php###chmod u+x /usr/local/www/ext/onebuttoninstaller/../apps/*###onebuttoninstaller/apps/htop.postinit###htop CLI extension<br><br>htop is an interactive text-mode process viewer for Unix systems. It aims to be a better 'top'.<br><br>After successful installation you can use htop in the system console shell or if you connect via ssh. To start htop just enter the command <b>htop</b> in the CLI.<br><br>Read more ... <a href='https://github.com/hishamhm/htop' target='_blank'>Github</a>###12.1, rpi, rpi2, rpi3, bananapi###

View File

@@ -1 +0,0 @@
39825b1603898d0fd2e541c8ecf47b7d2664c6e4cf0db0d508d7f22926263a0059e09c7ebcea805b8d528bef3d660e05d6b22436a38eed5516fab4cea06d328b

View File

@@ -2,7 +2,7 @@
/*
onebuttoninstaller-config.php
Copyright (c) 2015 - 2018 Andreas Schmidhuber
Copyright (c) 2015 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
@@ -138,7 +138,7 @@ function enable_change(enable_change) {
}
//-->
</script>
<form action="onebuttoninstaller-config.php" method="post" name="iform" id="iform">
<form action="<?php echo $configName; ?>-config.php" method="post" name="iform" id="iform" onsubmit="spinner()">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr><td class="tabnavtbl">
<ul id="tabnav">

View File

@@ -2,7 +2,7 @@
/*
onebuttoninstaller-install.php
Copyright (c) 2015 - 2018 Andreas Schmidhuber
Copyright (c) 2015 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
@@ -25,7 +25,7 @@
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
$v = "v0.4.0.1"; // extension version
$v = "v0.4.1"; // extension version
$appName = "OneButtonInstaller";
$configName = "onebuttoninstaller";

View File

@@ -2,7 +2,7 @@
/*
onebuttoninstaller-start.php
Copyright (c) 2015 - 2018 Andreas Schmidhuber
Copyright (c) 2015 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without

View File

@@ -2,7 +2,7 @@
/*
onebuttoninstaller-stop.php
Copyright (c) 2015 - 2018 Andreas Schmidhuber
Copyright (c) 2015 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without

View File

@@ -2,7 +2,7 @@
/*
onebuttoninstaller-update_extension.php
Copyright (c) 2015 - 2018 Andreas Schmidhuber
Copyright (c) 2015 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
@@ -44,11 +44,11 @@ $pgtitle = array(gettext("Extensions"), gettext($configuration['appname'])." ".$
if (is_file("{$configuration['rootfolder']}/oneload")) { require_once("{$configuration['rootfolder']}/oneload"); }
$return_val = mwexec("fetch -o {$configuration['rootfolder']}/version_server.txt https://raw.github.com/crestAT/nas4free-{$configName}/master/{$configName}/version.txt", false);
$return_val = mwexec("fetch -o {§configuration['rootfolder']}/version_server.txt https://git.familie-berner.de/Xigmanas/{$configName}/raw/branch/master/{$configName}/version.txt", false);
if ($return_val == 0) {
$server_version = exec("cat {$configuration['rootfolder']}/version_server.txt");
if ($server_version != $configuration['version']) { $savemsg .= sprintf(gettext("New extension version %s available, push '%s' button to install the new version!"), $server_version, gettext("Update Extension")); }
mwexec("fetch -o {$configuration['rootfolder']}/release_notes.txt https://raw.github.com/crestAT/nas4free-{$configName}/master/{$configName}/release_notes.txt", false);
mwexec("fetch -o {$configuration['rootfolder']}/release_notes.txt https://git.familie-berner.de/Xigmanas/{$configName}/raw/branch/master/{$configName}/release_notes.txt
}
else { $server_version = gettext("Unable to retrieve version from server!"); }
@@ -62,7 +62,7 @@ if (isset($_POST['ext_remove']) && $_POST['ext_remove']) {
if (isset($_POST['ext_update']) && $_POST['ext_update']) {
// download installer & install
$return_val = mwexec("fetch -vo {$configuration['rootfolder']}/{$configName}-install.php 'https://raw.github.com/crestAT/nas4free-{$configName}/master/{$configName}/{$configName}-install.php'", false);
$return_val = mwexec("fetch -vo {$configuration}['rootfolder']}/{configName}-install.php 'https://git.familie-berner.de/Xigmanas/{$configName}/raw/branch/master/{$configName}/{$configName}-install.php'", false);
if ($return_val == 0) {
require_once("{$configuration['rootfolder']}/{$configName}-install.php");
header("Refresh:8");;
@@ -74,12 +74,7 @@ bindtextdomain($domain, $localeOSDirectory);
include("fbegin.inc");
bindtextdomain($domain, $localeExtDirectory);
?>
<!-- The Spinner Elements -->
<?php include("ext/{$configName}/spinner.inc");?>
<script src="ext/onebuttoninstaller/spin.min.js"></script>
<!-- use: onsubmit="spinner()" within the form tag -->
<form action="onebuttoninstaller-update_extension.php" method="post" name="iform" id="iform" onsubmit="spinner()">
<form action="<?php echo $configName; ?>-update_extension.php" method="post" name="iform" id="iform" onsubmit="spinner()">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr><td class="tabnavtbl">
<ul id="tabnav">
@@ -112,7 +107,7 @@ bindtextdomain($domain, $localeExtDirectory);
<tr>
<td class="listt">
<div>
<textarea style="width: 98%;" id="content" name="content" class="listcontent" cols="1" rows="25" readonly="readonly"><?php unset($lines); exec("/bin/cat {$configuration['rootfolder']}/release_notes.txt", $lines); foreach ($lines as $line) { echo $line."\n"; }?></textarea>
<textarea style="width: 100%;" id="content" name="content" class="listcontent" cols="1" rows="25" readonly="readonly"><?php unset($lines); exec("/bin/cat {$configuration['rootfolder']}/release_notes.txt", $lines); foreach ($lines as $line) { echo $line."\n"; }?></textarea>
</div>
</td>
</tr>

View File

@@ -2,7 +2,7 @@
/*
onebuttoninstaller.php
Copyright (c) 2015 - 2018 Andreas Schmidhuber
Copyright (c) 2015 - 2020 Andreas Schmidhuber
All rights reserved.
Redistribution and use in source and binary forms, with or without
@@ -44,6 +44,7 @@ if (($configuration = ext_load_config($configFile)) === false) $input_errors[] =
if (!isset($configuration['rootfolder']) && !is_dir($configuration['rootfolder'] )) $input_errors[] = gettext("Extension installed with fault");
if (!$configuration['enable']) header("Location:onebuttoninstaller-config.php");
$configurationStoragePath = $configuration['storage_path']; // to prevent collisions with installed extension definitions
$platform = $g['platform'];
if ($platform == "livecd" || $platform == "liveusb")
@@ -221,21 +222,21 @@ if (isset($_POST['install'], $_POST['name'])) {
write_config();
$savemsg .= gettext("Installation").": <b>{$line['truename']}</b>"."<br />";
unset($result);
exec("cd {$configuration['storage_path']} && {$line['command1']}", $result, $return_val);
exec("cd {$configurationStoragePath} && {$line['command1']}", $result, $return_val);
if ($return_val == 0) {
foreach ($result as $msg) $savemsg .= $msg."<br />"; // output on success
unset($result);
if ("{$line['command2']}" != "-") { // check if a PHP script must be executed
if (file_exists("{$configuration['storage_path']}/{$line['command2']}")) {
if (file_exists("{$configurationStoragePath}/{$line['command2']}")) {
$savemsg_old = $savemsg; // save messages for use after output buffering ends
ob_start(); // start output buffering
include("{$configuration['storage_path']}/{$line['command2']}");
include("{$configurationStoragePath}/{$line['command2']}");
$ausgabe = ob_get_contents(); // get outputs from include command
ob_end_clean(); // close output buffering
$savemsg = $savemsg_old; // recover saved messages ...
$savemsg .= str_replace("\n", "<br />", $ausgabe)."<br />"; // ... and append messages from include command
}
else $errormsg .= sprintf(gettext("PHP script %s not found!"), "{$configuration['storage_path']}/{$line['command2']}")."<br />";
else $errormsg .= sprintf(gettext("PHP script %s not found!"), "{$configurationStoragePath}/{$line['command2']}")."<br />";
}
} // EOcommand1 OK
else { // throw error message for command1
@@ -262,12 +263,7 @@ bindtextdomain($domain, $localeOSDirectory);
include("fbegin.inc");
bindtextdomain($domain, $localeExtDirectory);
?>
<!-- The Spinner Elements -->
<?php include("ext/onebuttoninstaller/spinner.inc");?>
<script src="ext/onebuttoninstaller/spin.min.js"></script>
<!-- use: onsubmit="spinner()" within the form tag -->
<form action="onebuttoninstaller.php" method="post" name="iform" id="iform" onsubmit="spinner()">
<form action="<?php echo $configName; ?>.php" method="post" name="iform" id="iform" onsubmit="spinner()">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr><td class="tabnavtbl">
<ul id="tabnav">

View File

@@ -1,4 +1,17 @@
Version Date Description
0.4.1 2020.06.01 N: Htop CLI extension
C: MidnightCommander & NCDU - improved startup with checks/updates for new releases & changed XigmaNAS firmware
C: update Czech translation
C: update Spanish translation
C: update French translation
C: update Ukrainian translation
C: update Chinese translation
C: update Turkish translation
0.4.0.2 2018.10.18 F: installation errors on multiple installations in some cases
C: update Russian translation
C: update Ukrainian translation
0.4.0.1 2018.09.19 F: false 'new version' messages after installation of extensions
C: update German translation
C: update Greek translation

View File

@@ -1 +1 @@
0.4.0.1
0.4.1