diff options
author | Lennart Weller <lhw@ring0.de> | 2016-09-05 08:54:46 +0000 |
---|---|---|
committer | Lennart Weller <lhw@ring0.de> | 2016-09-05 12:58:40 +0000 |
commit | 95f461e7a8d254bcb592521041cf32bf12af974b (patch) | |
tree | 43d773fdcbf4ca718c89154f17196f7a8fad92a2 | |
parent | Merge tag 'upstream/1.3.0+dfsg' (diff) | |
download | netdata-95f461e7a8d254bcb592521041cf32bf12af974b.tar.xz netdata-95f461e7a8d254bcb592521041cf32bf12af974b.zip |
copyright change for avl implementation.
additional dependency on python
re-add home directory in case user wants to use a registry
updated systemd unit file
Patches:
- whitespace changes in patches
- remove extra root uid/gid check in favour of config
- maintain shebangs for scripts
-rw-r--r-- | debian/changelog | 5 | ||||
-rw-r--r-- | debian/control | 1 | ||||
-rw-r--r-- | debian/copyright | 32 | ||||
-rw-r--r-- | debian/netdata.conf | 2 | ||||
-rw-r--r-- | debian/netdata.install | 1 | ||||
-rw-r--r-- | debian/netdata.postinst.in | 11 | ||||
-rw-r--r-- | debian/netdata.postrm | 9 | ||||
-rw-r--r-- | debian/netdata.service | 5 | ||||
-rw-r--r-- | debian/patches/0001-linked-js-css-fonts-removed-from-make.patch | 4 | ||||
-rw-r--r-- | debian/patches/0002-remove-file-serve-ownership-restrictions-for-root.patch | 72 | ||||
-rw-r--r-- | debian/patches/0002-remove-file-serve-restrictions-for-symlinks.patch | 72 | ||||
-rw-r--r-- | debian/patches/0003-hide-update-button.patch | 24 | ||||
-rw-r--r-- | debian/patches/0004-readd-shebang-to-chart-scripts.patch | 216 | ||||
-rw-r--r-- | debian/patches/series | 3 |
14 files changed, 343 insertions, 114 deletions
diff --git a/debian/changelog b/debian/changelog index 5be08135..84104656 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,9 +1,10 @@ -netdata (1.2.0+dfsg-3) UNRELEASED; urgency=medium +netdata (1.3.0+dfsg-1) UNRELEASED; urgency=medium + * New upstream version. Fixes license issues * Add missing config files * Further restrict process permissions - -- Lennart Weller <lhw@ring0.de> Mon, 01 Aug 2016 12:52:00 +0200 + -- Lennart Weller <lhw@ring0.de> Mon, 05 Sep 2016 10:59:21 +0200 netdata (1.2.0+dfsg-2) unstable; urgency=low diff --git a/debian/control b/debian/control index bf27f42e..6dad4aee 100644 --- a/debian/control +++ b/debian/control @@ -27,6 +27,7 @@ Depends: adduser, libjs-raphael (>= 2.1.0), lsb-base (>= 3.1-23.2), netdata-data, + python, ${misc:Depends}, ${misc:Pre-Depends}, ${shlibs:Depends} diff --git a/debian/copyright b/debian/copyright index 07a5a0e2..6304a07b 100644 --- a/debian/copyright +++ b/debian/copyright @@ -26,9 +26,10 @@ Copyright: 2016 Matthew Newton <mcn4@leicester.ac.uk> 2016 Federico Ceratto <federico@debian.org> License: GPL-3+ -Files: src/avl.h -Copyright: 2000 Daniel Nagy -License: GPL-2 +Files: src/avl.* +Copyright: 2004 Free Software Foundation Inc. + 2016 Costa Tsaousis +License: LGPL-3+ Files: node.d/node_modules/ber/* @@ -121,21 +122,22 @@ Files: Copyright: 2016 Marc J. Schmidt License: Expat -License: GPL-2 - This package is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation version 2 of the License. +License: LGPL-3+ + This library is free software; you can redistribute it and/or modify it under + the terms of the GNU Lesser General Public License as published by the Free + Software Foundation; either version 3 of the License, or (at your option) any + later version. . - This package is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. + This library is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more + details. . - You should have received a copy of the GNU General Public License - along with this program. If not, see <http://www.gnu.org/licenses/> + You should have received a copy of the GNU Lesser General Public + License along with this library; If not, see <http://www.gnu.org/licenses/>. . - On Debian systems, the complete text of the GNU General Public - License version 2 can be found in "/usr/share/common-licenses/GPL-2". + On Debian systems, the complete text of the GNU Lesser General Public + License version 3 can be found in /usr/share/common-licenses/LGPL-3. License: GPL-3+ This program is free software: you can redistribute it and/or modify it under diff --git a/debian/netdata.conf b/debian/netdata.conf index 1f6bcf36..effb794c 100644 --- a/debian/netdata.conf +++ b/debian/netdata.conf @@ -13,7 +13,7 @@ [global] run as user = netdata web files owner = root - web files group = netdata + web files group = root # Netdata is not designed to be exposed to potentially hostile # networks.See https://github.com/firehol/netdata/issues/164 bind socket to IP = 127.0.0.1 diff --git a/debian/netdata.install b/debian/netdata.install index 002dfee1..e4f5ad77 100644 --- a/debian/netdata.install +++ b/debian/netdata.install @@ -8,3 +8,4 @@ usr/lib/*/netdata/plugins.d/charts.d.plugin usr/lib/*/netdata/plugins.d/loopsleepms.sh.inc usr/lib/*/netdata/plugins.d/tc-qos-helper.sh usr/lib/*/netdata/plugins.d/cgroup-name.sh +usr/lib/*/netdata/plugins.d/alarm-email.sh diff --git a/debian/netdata.postinst.in b/debian/netdata.postinst.in index ab37de18..643b99d5 100644 --- a/debian/netdata.postinst.in +++ b/debian/netdata.postinst.in @@ -10,13 +10,16 @@ case "$1" in fi if ! getent passwd netdata >/dev/null; then - adduser --quiet --system --ingroup netdata --home /run/netdata --no-create-home netdata + adduser --quiet --system --ingroup netdata --home /var/lib/netdata --no-create-home netdata + mkdir -p /var/lib/netdata fi - if ! dpkg-statoverride --list /var/cache/netdata >/dev/null 2>&1; then - dpkg-statoverride --update --add netdata netdata 0755 /var/cache/netdata - fi + for dir_name in /var/cache/netdata /var/lib/netdata; do + if ! dpkg-statoverride --list "$dir_name" >/dev/null 2>&1; then + dpkg-statoverride --update --add netdata netdata 0755 "$dir_name" + fi + done fi chown -R root:netdata /usr/lib/@DEB_HOST_MULTIARCH@/netdata/plugins.d diff --git a/debian/netdata.postrm b/debian/netdata.postrm index 5df19783..81a65788 100644 --- a/debian/netdata.postrm +++ b/debian/netdata.postrm @@ -7,9 +7,12 @@ case "$1" in ;; purge) - if dpkg-statoverride --list | grep -qw "/var/cache/netdata"; then - dpkg-statoverride --remove "$dir_name" - fi + for dir_name in /var/cache/netdata /var/lib/netdata; do + if dpkg-statoverride --list | grep -qw "$dir_name"; then + dpkg-statoverride --remove "$dir_name" + fi + done + rm -rf /var/cache/netdata /var/log/netdata if getent passwd netdata >/dev/null; then diff --git a/debian/netdata.service b/debian/netdata.service index 424651b2..b936eddd 100644 --- a/debian/netdata.service +++ b/debian/netdata.service @@ -12,7 +12,7 @@ ConditionPathExists=/etc/netdata/netdata.conf [Service] Type=simple Environment="netdata_LOG_LOCATION=/var/log/netdata/log" -ExecStart=/usr/sbin/netdata -nd +ExecStart=/usr/sbin/netdata -D ExecReload=/usr/sbin/netdata reload TimeoutStopSec=10 KillMode=mixed @@ -36,7 +36,8 @@ ProtectHome=read-only ProtectSystem=full ReadOnlyDirectories=/ -ReadWriteDirectories=/run +ReadWriteDirectories=/proc/self +ReadWriteDirectories=/var/lib/netdata ReadWriteDirectories=/var/log/netdata ReadWriteDirectories=/var/cache/netdata diff --git a/debian/patches/0001-linked-js-css-fonts-removed-from-make.patch b/debian/patches/0001-linked-js-css-fonts-removed-from-make.patch index d3e86018..0bdfad7e 100644 --- a/debian/patches/0001-linked-js-css-fonts-removed-from-make.patch +++ b/debian/patches/0001-linked-js-css-fonts-removed-from-make.patch @@ -7,10 +7,10 @@ Subject: linked js/css/fonts removed from make 1 file changed, 27 deletions(-) diff --git a/web/Makefile.am b/web/Makefile.am -index 174ef22..6a33a1e 100644 +index 0432f8a..8078e67 100644 --- a/web/Makefile.am +++ b/web/Makefile.am -@@ -20,59 +20,32 @@ dist_web_DATA = \ +@@ -21,59 +21,32 @@ dist_web_DATA = \ version.txt \ $(NULL) diff --git a/debian/patches/0002-remove-file-serve-ownership-restrictions-for-root.patch b/debian/patches/0002-remove-file-serve-ownership-restrictions-for-root.patch deleted file mode 100644 index 1bcb6978..00000000 --- a/debian/patches/0002-remove-file-serve-ownership-restrictions-for-root.patch +++ /dev/null @@ -1,72 +0,0 @@ -From: Lennart Weller <lhw@ring0.de> -Date: Wed, 25 May 2016 13:43:32 +0200 -Subject: remove file serve ownership restrictions for root - ---- - src/web_client.c | 22 +++++++++++----------- - 1 file changed, 11 insertions(+), 11 deletions(-) - -diff --git a/src/web_client.c b/src/web_client.c -index 601dda0..3582c33 100644 ---- a/src/web_client.c -+++ b/src/web_client.c -@@ -331,33 +331,33 @@ int mysendfile(struct web_client *w, char *filename) - snprintfz(webfilename, FILENAME_MAX, "%s/%s", web_dir, filename); - - // check if the file exists -- struct stat stat; -- if(lstat(webfilename, &stat) != 0) { -+ struct stat wstat; -+ if(stat(webfilename, &wstat) != 0) { - debug(D_WEB_CLIENT_ACCESS, "%llu: File '%s' is not found.", w->id, webfilename); - buffer_sprintf(w->response.data, "File '%s' does not exist, or is not accessible.", webfilename); - return 404; - } - - // check if the file is owned by expected user -- if(stat.st_uid != web_files_uid()) { -- error("%llu: File '%s' is owned by user %d (expected user %d). Access Denied.", w->id, webfilename, stat.st_uid, web_files_uid()); -+ if(wstat.st_uid != web_files_uid() && wstat.st_uid != 0) { -+ error("%llu: File '%s' is owned by user %d (expected user %d). Access Denied.", w->id, webfilename, wstat.st_uid, web_files_uid()); - buffer_sprintf(w->response.data, "Access to file '%s' is not permitted.", webfilename); - return 403; - } - - // check if the file is owned by expected group -- if(stat.st_gid != web_files_gid()) { -- error("%llu: File '%s' is owned by group %d (expected group %d). Access Denied.", w->id, webfilename, stat.st_gid, web_files_gid()); -+ if(wstat.st_gid != web_files_gid() && wstat.st_gid != 0) { -+ error("%llu: File '%s' is owned by group %d (expected group %d). Access Denied.", w->id, webfilename, wstat.st_gid, web_files_gid()); - buffer_sprintf(w->response.data, "Access to file '%s' is not permitted.", webfilename); - return 403; - } - -- if((stat.st_mode & S_IFMT) == S_IFDIR) { -+ if((wstat.st_mode & S_IFMT) == S_IFDIR) { - snprintfz(webfilename, FILENAME_MAX, "%s/index.html", filename); - return mysendfile(w, webfilename); - } - -- if((stat.st_mode & S_IFMT) != S_IFREG) { -+ if(!((wstat.st_mode & S_IFMT) & (S_IFREG | S_IFLNK))) { - error("%llu: File '%s' is not a regular file. Access Denied.", w->id, webfilename); - buffer_sprintf(w->response.data, "Access to file '%s' is not permitted.", webfilename); - return 403; -@@ -403,14 +403,14 @@ int mysendfile(struct web_client *w, char *filename) - else if(strstr(filename, ".icns") != NULL) w->response.data->contenttype = CT_IMAGE_ICNS; - else w->response.data->contenttype = CT_APPLICATION_OCTET_STREAM; - -- debug(D_WEB_CLIENT_ACCESS, "%llu: Sending file '%s' (%ld bytes, ifd %d, ofd %d).", w->id, webfilename, stat.st_size, w->ifd, w->ofd); -+ debug(D_WEB_CLIENT_ACCESS, "%llu: Sending file '%s' (%ld bytes, ifd %d, ofd %d).", w->id, webfilename, wstat.st_size, w->ifd, w->ofd); - - w->mode = WEB_CLIENT_MODE_FILECOPY; - w->wait_receive = 1; - w->wait_send = 0; - buffer_flush(w->response.data); -- w->response.rlen = stat.st_size; -- w->response.data->date = stat.st_mtim.tv_sec; -+ w->response.rlen = wstat.st_size; -+ w->response.data->date = wstat.st_mtim.tv_sec; - - return 200; - } diff --git a/debian/patches/0002-remove-file-serve-restrictions-for-symlinks.patch b/debian/patches/0002-remove-file-serve-restrictions-for-symlinks.patch new file mode 100644 index 00000000..ecf97b65 --- /dev/null +++ b/debian/patches/0002-remove-file-serve-restrictions-for-symlinks.patch @@ -0,0 +1,72 @@ +From: Lennart Weller <lhw@ring0.de> +Date: Mon, 5 Sep 2016 14:53:06 +0200 +Subject: remove file serve restrictions for symlinks + +--- + src/web_client.c | 22 +++++++++++----------- + 1 file changed, 11 insertions(+), 11 deletions(-) + +diff --git a/src/web_client.c b/src/web_client.c +index 4036d4c..a7cc424 100644 +--- a/src/web_client.c ++++ b/src/web_client.c +@@ -325,33 +325,33 @@ int mysendfile(struct web_client *w, char *filename) + snprintfz(webfilename, FILENAME_MAX, "%s/%s", web_dir, filename); + + // check if the file exists +- struct stat stat; +- if(lstat(webfilename, &stat) != 0) { ++ struct stat wstat; ++ if(stat(webfilename, &wstat) != 0) { + debug(D_WEB_CLIENT_ACCESS, "%llu: File '%s' is not found.", w->id, webfilename); + buffer_sprintf(w->response.data, "File '%s' does not exist, or is not accessible.", webfilename); + return 404; + } + + // check if the file is owned by expected user +- if(stat.st_uid != web_files_uid()) { +- error("%llu: File '%s' is owned by user %u (expected user %u). Access Denied.", w->id, webfilename, stat.st_uid, web_files_uid()); ++ if(wstat.st_uid != web_files_uid()) { ++ error("%llu: File '%s' is owned by user %u (expected user %u). Access Denied.", w->id, webfilename, wstat.st_uid, web_files_uid()); + buffer_sprintf(w->response.data, "Access to file '%s' is not permitted.", webfilename); + return 403; + } + + // check if the file is owned by expected group +- if(stat.st_gid != web_files_gid()) { +- error("%llu: File '%s' is owned by group %u (expected group %u). Access Denied.", w->id, webfilename, stat.st_gid, web_files_gid()); ++ if(wstat.st_gid != web_files_gid()) { ++ error("%llu: File '%s' is owned by group %d (expected group %d). Access Denied.", w->id, webfilename, wstat.st_gid, web_files_gid()); + buffer_sprintf(w->response.data, "Access to file '%s' is not permitted.", webfilename); + return 403; + } + +- if((stat.st_mode & S_IFMT) == S_IFDIR) { ++ if((wstat.st_mode & S_IFMT) == S_IFDIR) { + snprintfz(webfilename, FILENAME_MAX, "%s/index.html", filename); + return mysendfile(w, webfilename); + } + +- if((stat.st_mode & S_IFMT) != S_IFREG) { ++ if((wstat.st_mode & S_IFMT) != S_IFREG) { + error("%llu: File '%s' is not a regular file. Access Denied.", w->id, webfilename); + buffer_sprintf(w->response.data, "Access to file '%s' is not permitted.", webfilename); + return 403; +@@ -399,14 +399,14 @@ int mysendfile(struct web_client *w, char *filename) + else if(strstr(filename, ".icns") != NULL) w->response.data->contenttype = CT_IMAGE_ICNS; + else w->response.data->contenttype = CT_APPLICATION_OCTET_STREAM; + +- debug(D_WEB_CLIENT_ACCESS, "%llu: Sending file '%s' (%ld bytes, ifd %d, ofd %d).", w->id, webfilename, stat.st_size, w->ifd, w->ofd); ++ debug(D_WEB_CLIENT_ACCESS, "%llu: Sending file '%s' (%ld bytes, ifd %d, ofd %d).", w->id, webfilename, wstat.st_size, w->ifd, w->ofd); + + w->mode = WEB_CLIENT_MODE_FILECOPY; + w->wait_receive = 1; + w->wait_send = 0; + buffer_flush(w->response.data); +- w->response.rlen = stat.st_size; +- w->response.data->date = stat.st_mtim.tv_sec; ++ w->response.rlen = wstat.st_size; ++ w->response.data->date = wstat.st_mtim.tv_sec; + + return 200; + } diff --git a/debian/patches/0003-hide-update-button.patch b/debian/patches/0003-hide-update-button.patch index ad554f0e..5395dc47 100644 --- a/debian/patches/0003-hide-update-button.patch +++ b/debian/patches/0003-hide-update-button.patch @@ -1,5 +1,5 @@ -From: Federico Ceratto <federico.ceratto@gmail.com> -Date: Fri, 22 Jul 2016 14:21:13 +0200 +From: Lennart Weller <lhw@ring0.de> +Date: Mon, 5 Sep 2016 10:52:35 +0200 Subject: hide update button --- @@ -7,15 +7,15 @@ Subject: hide update button 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/index.html b/web/index.html -index 9cc2b4b..949d3e8 100644 +index 3e6c221..0026f94 100644 --- a/web/index.html +++ b/web/index.html -@@ -465,7 +465,7 @@ - <ul class="nav navbar-nav"> - <li class="hidden-sm"><a href="#" class="btn" data-toggle="modal" data-target="#optionsModal"><i class="fa fa-cog"></i> settings</a></li> - <li class="hidden-sm"><a href="https://github.com/firehol/netdata/wiki" class="btn" target="_blank"><i class="fa fa-github"></i> community</a></li> -- <li class="hidden-sm" id="updateButton"><a href="#" class="btn" data-toggle="modal" data-target="#updateModal"><i class="fa fa-cloud-download"></i> update</a></li> -+ <li class="hidden-sm" id="updateButton" style="display:none;"><a href="#" class="btn" data-toggle="modal" data-target="#updateModal"><i class="fa fa-cloud-download"></i> update</a></li> - <li class="hidden-sm"><a href="#" class="btn" data-toggle="modal" data-target="#helpModal"><i class="fa fa-question-circle"></i> help</a></li> - <li class="dropdown hidden-md hidden-lg hidden-xs"> - <a href="#" class="dropdown-toggle" data-toggle="dropdown" id="current_view">Menu <strong class="caret"></strong></a> +@@ -579,7 +579,7 @@ + <li class="hidden-sm"><a href="#" class="btn" data-toggle="modal" data-target="#alarmsModal" title="alarms"><i class="fa fa-bell"></i><span id="alarms_count_badge" class="badge"></span></a></li> + <li class="hidden-sm"><a href="#" class="btn" data-toggle="modal" data-target="#optionsModal" title="dashboard settings"><i class="fa fa-cog"></i></a></li> + <li class="hidden-sm"><a href="https://github.com/firehol/netdata/wiki" class="btn" target="_blank" title="netdata community"><i class="fa fa-github"></i></a></li> +- <li class="hidden-sm" id="updateButton"><a href="#" class="btn" data-toggle="modal" data-target="#updateModal" title="check for update"><i class="fa fa-cloud-download"></i><span id="update_badge" class="badge"></span></a></li> ++ <li class="hidden-sm" id="updateButton" style="display:none;"><a href="#" class="btn" data-toggle="modal" data-target="#updateModal" title="check for update"><i class="fa fa-cloud-download"></i><span id="update_badge" class="badge"></span></a></li> + <li class="hidden-sm"><a href="#" class="btn" data-toggle="modal" data-target="#helpModal" title="dashboard help"><i class="fa fa-question-circle"></i></a></li> + <li class="dropdown hidden-md hidden-lg hidden-xs"> + <a href="#" class="dropdown-toggle" data-toggle="dropdown" id="current_view">Menu <strong class="caret"></strong></a> diff --git a/debian/patches/0004-readd-shebang-to-chart-scripts.patch b/debian/patches/0004-readd-shebang-to-chart-scripts.patch new file mode 100644 index 00000000..fcd23ac2 --- /dev/null +++ b/debian/patches/0004-readd-shebang-to-chart-scripts.patch @@ -0,0 +1,216 @@ +From: Lennart Weller <lhw@ring0.de> +Date: Mon, 5 Sep 2016 11:33:48 +0200 +Subject: re-add shebang to chart scripts + +--- + charts.d/ap.chart.sh | 2 +- + charts.d/apache.chart.sh | 2 +- + charts.d/cpu_apps.chart.sh | 2 +- + charts.d/cpufreq.chart.sh | 2 +- + charts.d/example.chart.sh | 2 +- + charts.d/exim.chart.sh | 2 +- + charts.d/hddtemp.chart.sh | 2 +- + charts.d/load_average.chart.sh | 2 +- + charts.d/mem_apps.chart.sh | 2 +- + charts.d/mysql.chart.sh | 2 +- + charts.d/nginx.chart.sh | 2 +- + charts.d/nut.chart.sh | 2 +- + charts.d/opensips.chart.sh | 2 +- + charts.d/phpfpm.chart.sh | 2 +- + charts.d/postfix.chart.sh | 2 +- + charts.d/sensors.chart.sh | 2 +- + charts.d/squid.chart.sh | 2 +- + charts.d/tomcat.chart.sh | 2 +- + plugins.d/loopsleepms.sh.inc | 2 +- + 19 files changed, 19 insertions(+), 19 deletions(-) + +diff --git a/charts.d/ap.chart.sh b/charts.d/ap.chart.sh +index 7b4f690..ebd4808 100755 +--- a/charts.d/ap.chart.sh ++++ b/charts.d/ap.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # _update_every is a special variable - it holds the number of seconds + # between the calls of the _update() function +diff --git a/charts.d/apache.chart.sh b/charts.d/apache.chart.sh +index 2d68d43..14af66b 100755 +--- a/charts.d/apache.chart.sh ++++ b/charts.d/apache.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # the URL to download apache status info + apache_url="http://127.0.0.1:80/server-status?auto" +diff --git a/charts.d/cpu_apps.chart.sh b/charts.d/cpu_apps.chart.sh +index 6b2513d..1237a7b 100755 +--- a/charts.d/cpu_apps.chart.sh ++++ b/charts.d/cpu_apps.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # THIS PLUGIN IS OBSOLETE + # USE apps.plugin INSTEAD +diff --git a/charts.d/cpufreq.chart.sh b/charts.d/cpufreq.chart.sh +index 06f692f..a17b235 100755 +--- a/charts.d/cpufreq.chart.sh ++++ b/charts.d/cpufreq.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # if this chart is called X.chart.sh, then all functions and global variables + # must start with X_ +diff --git a/charts.d/example.chart.sh b/charts.d/example.chart.sh +index 1f020de..dab22ba 100755 +--- a/charts.d/example.chart.sh ++++ b/charts.d/example.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # if this chart is called X.chart.sh, then all functions and global variables + # must start with X_ +diff --git a/charts.d/exim.chart.sh b/charts.d/exim.chart.sh +index c60ae94..9cf5950 100644 +--- a/charts.d/exim.chart.sh ++++ b/charts.d/exim.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + exim_command= + +diff --git a/charts.d/hddtemp.chart.sh b/charts.d/hddtemp.chart.sh +index 41c3e24..fea9f80 100755 +--- a/charts.d/hddtemp.chart.sh ++++ b/charts.d/hddtemp.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # if this chart is called X.chart.sh, then all functions and global variables + # must start with X_ +diff --git a/charts.d/load_average.chart.sh b/charts.d/load_average.chart.sh +index e6790d8..c829064 100755 +--- a/charts.d/load_average.chart.sh ++++ b/charts.d/load_average.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + load_average_update_every=5 + load_priority=100 +diff --git a/charts.d/mem_apps.chart.sh b/charts.d/mem_apps.chart.sh +index ab95b36..2a1669b 100755 +--- a/charts.d/mem_apps.chart.sh ++++ b/charts.d/mem_apps.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + mem_apps_apps= + +diff --git a/charts.d/mysql.chart.sh b/charts.d/mysql.chart.sh +index 120fec6..e2392c2 100755 +--- a/charts.d/mysql.chart.sh ++++ b/charts.d/mysql.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # http://dev.mysql.com/doc/refman/5.0/en/server-status-variables.html + # +diff --git a/charts.d/nginx.chart.sh b/charts.d/nginx.chart.sh +index a2a9b32..a082c57 100755 +--- a/charts.d/nginx.chart.sh ++++ b/charts.d/nginx.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # if this chart is called X.chart.sh, then all functions and global variables + # must start with X_ +diff --git a/charts.d/nut.chart.sh b/charts.d/nut.chart.sh +index 3c8e1c9..a472084 100755 +--- a/charts.d/nut.chart.sh ++++ b/charts.d/nut.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # a space separated list of UPS names + # if empty, the list returned by 'upsc -l' will be used +diff --git a/charts.d/opensips.chart.sh b/charts.d/opensips.chart.sh +index ce42ccd..5792c6e 100755 +--- a/charts.d/opensips.chart.sh ++++ b/charts.d/opensips.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + opensips_opts="fifo get_statistics all" + opensips_cmd= +diff --git a/charts.d/phpfpm.chart.sh b/charts.d/phpfpm.chart.sh +index 976ce91..7cd7726 100755 +--- a/charts.d/phpfpm.chart.sh ++++ b/charts.d/phpfpm.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # if this chart is called X.chart.sh, then all functions and global variables + # must start with X_ +diff --git a/charts.d/postfix.chart.sh b/charts.d/postfix.chart.sh +index 7f07a18..8669fda 100755 +--- a/charts.d/postfix.chart.sh ++++ b/charts.d/postfix.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # the postqueue command + # if empty, it will use the one found in the system path +diff --git a/charts.d/sensors.chart.sh b/charts.d/sensors.chart.sh +index 9652f89..c697268 100755 +--- a/charts.d/sensors.chart.sh ++++ b/charts.d/sensors.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # sensors docs + # https://www.kernel.org/doc/Documentation/hwmon/sysfs-interface +diff --git a/charts.d/squid.chart.sh b/charts.d/squid.chart.sh +index 3e72ba6..231b2a9 100755 +--- a/charts.d/squid.chart.sh ++++ b/charts.d/squid.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + squid_host= + squid_port= +diff --git a/charts.d/tomcat.chart.sh b/charts.d/tomcat.chart.sh +index cc6baea..50a17e2 100755 +--- a/charts.d/tomcat.chart.sh ++++ b/charts.d/tomcat.chart.sh +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is loaded from charts.d.plugin ++#!/bin/bash + + # Description: Tomcat netdata charts.d plugin + # Author: Jorge Romero +diff --git a/plugins.d/loopsleepms.sh.inc b/plugins.d/loopsleepms.sh.inc +index 02ab694..14ba64e 100644 +--- a/plugins.d/loopsleepms.sh.inc ++++ b/plugins.d/loopsleepms.sh.inc +@@ -1,4 +1,4 @@ +-# no need for shebang - this file is included from other scripts ++#!/bin/bash + + # this function is used to sleep a fraction of a second + # it calculates the difference between every time is called diff --git a/debian/patches/series b/debian/patches/series index 06df2fb7..f082ea8d 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,3 +1,4 @@ 0001-linked-js-css-fonts-removed-from-make.patch -0002-remove-file-serve-ownership-restrictions-for-root.patch +0002-remove-file-serve-restrictions-for-symlinks.patch 0003-hide-update-button.patch +0004-readd-shebang-to-chart-scripts.patch |