update man page
update package descriptions change log output
This commit is contained in:
parent
faed9f1f6d
commit
34a5596f3e
11
data/logrotate/guhd
Normal file
11
data/logrotate/guhd
Normal file
@ -0,0 +1,11 @@
|
||||
/var/log/guhd.log {
|
||||
weekly
|
||||
rotate 5
|
||||
size 200M
|
||||
compress
|
||||
delaycompress
|
||||
missingok
|
||||
notifempty
|
||||
create 644 root root
|
||||
}
|
||||
|
||||
88
debian/control
vendored
88
debian/control
vendored
@ -15,12 +15,12 @@ Architecture: any
|
||||
Section: misc
|
||||
Depends: guh (= ${binary:Version}),
|
||||
guh-plugins (= ${binary:Version}),
|
||||
Description: Server for home automation systems - meta package
|
||||
guh is an open source home automation server, which allows to control
|
||||
a lot of different devices from many different manufacturers. With the
|
||||
powerful rule engine you are able to connect any device available in
|
||||
the system and create individual scenes and behaviors for your home.
|
||||
This meta package installs the guh daemon and the main plugins.
|
||||
Description: An open source IoT server - meta package
|
||||
guh is an open source IoT (Internet of Things) server,
|
||||
which allows to control a lot of different devices from many different
|
||||
manufacturers. With the powerful rule engine you are able to connect any
|
||||
device available in the system and create individual scenes and behaviors
|
||||
for your environment.
|
||||
|
||||
Package: guhd
|
||||
Architecture: any
|
||||
@ -28,27 +28,31 @@ Depends: libqt5network5,
|
||||
libqt5gui5,
|
||||
libqt5sql5,
|
||||
libqt5xml5,
|
||||
logrotate,
|
||||
libguh1 (= ${binary:Version}),
|
||||
${shlibs:Depends},
|
||||
${misc:Depends}
|
||||
Recommends:
|
||||
libqt5websockets5
|
||||
Description: Server daemon for home automation systems
|
||||
guh is an open source home automation server, which allows to control
|
||||
a lot of different devices from many different manufacturers. With the
|
||||
powerful rule engine you are able to connect any device available in
|
||||
the system and create individual scenes and behaviors for your home.
|
||||
libqt5websockets5,
|
||||
libqt5bluetooth5
|
||||
Description: An open source IoT server - daemon
|
||||
guh is an open source IoT (Internet of Things) server,
|
||||
which allows to control a lot of different devices from many different
|
||||
manufacturers. With the powerful rule engine you are able to connect any
|
||||
device available in the system and create individual scenes and behaviors
|
||||
for your environment.
|
||||
|
||||
Package: guh-dbg
|
||||
Priority: extra
|
||||
Architecture: any
|
||||
Section: debug
|
||||
Depends: guh (= ${binary:Version}), ${misc:Depends}
|
||||
Description: server for home automation systems - debug symbols
|
||||
guh is an open source home automation server, which allows to control
|
||||
a lot of different devices from many different manufacturers. With the
|
||||
powerful rule engine you are able to connect any device available in
|
||||
the system and create individual scenes and behaviors for your home.
|
||||
Description: An open source IoT server - debug symbols
|
||||
guh is an open source IoT (Internet of Things) server,
|
||||
which allows to control a lot of different devices from many different
|
||||
manufacturers. With the powerful rule engine you are able to connect any
|
||||
device available in the system and create individual scenes and behaviors
|
||||
for your environment.
|
||||
|
||||
Package: guh-doc
|
||||
Section: doc
|
||||
@ -56,10 +60,10 @@ Architecture: all
|
||||
Depends: ${misc:Depends}
|
||||
Recommends: guh (= ${binary:Version})
|
||||
Description: Documentation for the guh package (on-site) - documentation
|
||||
guh is an open source home automation server, which allows to control
|
||||
a lot of different devices from many different manufacturers. With the
|
||||
powerful rule engine you are able to connect any device available in
|
||||
the system and create individual scenes and behaviors for your home.
|
||||
guh is an open source home automation server, which allows to control
|
||||
a lot of different devices from many different manufacturers. With the
|
||||
powerful rule engine you are able to connect any device available in
|
||||
the system and create individual scenes and behaviors for your home.
|
||||
|
||||
Package: guh-tests
|
||||
Architecture: any
|
||||
@ -67,10 +71,11 @@ Depends: guh (= ${binary:Version}),
|
||||
${shlibs:Depends},
|
||||
${misc:Depends}
|
||||
Description: Tests for the guh package
|
||||
guh is an open source home automation server, which allows to control
|
||||
a lot of different devices from many different manufacturers. With the
|
||||
powerful rule engine you are able to connect any device available in
|
||||
the system and create individual scenes and behaviors for your home.
|
||||
guh is an open source IoT (Internet of Things) server,
|
||||
which allows to control a lot of different devices from many different
|
||||
manufacturers. With the powerful rule engine you are able to connect any
|
||||
device available in the system and create individual scenes and behaviors
|
||||
for your environment.
|
||||
|
||||
Package: libguh1
|
||||
Section: libs
|
||||
@ -78,11 +83,12 @@ Architecture: any
|
||||
Depends: ${shlibs:Depends},
|
||||
${misc:Depends},
|
||||
libqt5bluetooth5
|
||||
Description: Server for home automation systems - core library
|
||||
guh is an open source home automation server, which allows to control
|
||||
a lot of different devices from many different manufacturers. With the
|
||||
powerful rule engine you are able to connect any device available in
|
||||
the system and create individual scenes and behaviors for your home.
|
||||
Description: An open source IoT server - core library
|
||||
guh is an open source IoT (Internet of Things) server,
|
||||
which allows to control a lot of different devices from many different
|
||||
manufacturers. With the powerful rule engine you are able to connect any
|
||||
device available in the system and create individual scenes and behaviors
|
||||
for your environment.
|
||||
|
||||
Package: libguh1-dev
|
||||
Section: libdevel
|
||||
@ -91,11 +97,12 @@ Depends: libguh1 (= ${binary:Version}),
|
||||
${shlibs:Depends},
|
||||
${misc:Depends},
|
||||
python
|
||||
Description: Server for home automation systems - development files
|
||||
guh is an open source home automation server, which allows to control
|
||||
a lot of different devices from many different manufacturers. With the
|
||||
powerful rule engine you are able to connect any device available in
|
||||
the system and create individual scenes and behaviors for your home.
|
||||
Description: An open source IoT server - development files
|
||||
guh is an open source IoT (Internet of Things) server,
|
||||
which allows to control a lot of different devices from many different
|
||||
manufacturers. With the powerful rule engine you are able to connect any
|
||||
device available in the system and create individual scenes and behaviors
|
||||
for your environment.
|
||||
|
||||
Package: guh-plugins
|
||||
Section: libs
|
||||
@ -104,8 +111,9 @@ Depends: libguh1 (= ${binary:Version}),
|
||||
guhd (= ${binary:Version}),
|
||||
${shlibs:Depends},
|
||||
${misc:Depends}
|
||||
Description: Plugins for guh server home automation systems
|
||||
guh is an open source home automation server, which allows to control
|
||||
a lot of different devices from many different manufacturers. With the
|
||||
powerful rule engine you are able to connect any device available in
|
||||
the system and create individual scenes and behaviors for your home.
|
||||
Description: Plugins for guh IoT server
|
||||
guh is an open source IoT (Internet of Things) server,
|
||||
which allows to control a lot of different devices from many different
|
||||
manufacturers. With the powerful rule engine you are able to connect any
|
||||
device available in the system and create individual scenes and behaviors
|
||||
for your environment.
|
||||
|
||||
2
debian/copyright
vendored
2
debian/copyright
vendored
@ -1,7 +1,7 @@
|
||||
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||
Author: Michael Zanetti <michael_zanetti@gmx.net>
|
||||
Simon Stürz <stuerz.simon@gmail.com>
|
||||
Download: http://www.github.com/guh
|
||||
Download: http://www.github.com/guh/guh
|
||||
|
||||
License: GPL-2+
|
||||
On Debian systems, the complete text of the GNU General
|
||||
|
||||
25
debian/guhd.1
vendored
25
debian/guhd.1
vendored
@ -1,16 +1,17 @@
|
||||
.\" Manpage for guhd.
|
||||
.\" Contact simon.stuerz@guh.guru to correct errors or typos.
|
||||
.TH man 1 "August 2015" "1.2" "guhd man page"
|
||||
.TH man 1 "December 2015" "1.3" "guhd man page"
|
||||
.SH NAME
|
||||
guhd \- Server for home automation systems
|
||||
guhd \- An open source IoT (Internet of Things) server
|
||||
.SH SYNOPSIS
|
||||
.B guhd
|
||||
[\fIOPTION\fR]
|
||||
.SH DESCRIPTION
|
||||
guh (/[guːh]/) is an open source home automation server, which allows to
|
||||
control a lot of different devices from many different manufacturers.
|
||||
With the powerful rule engine you are able to connect any device available in
|
||||
the system and create individual scenes and behaviors for your home.
|
||||
guh (/[guːh]/) is an open source IoT (Internet of Things) server,
|
||||
which allows to control a lot of different devices from many different
|
||||
manufacturers. With the powerful rule engine you are able to connect any
|
||||
device available in the system and create individual scenes and behaviors
|
||||
for your environment.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
\fB\-h\fR, \fB\-\-help\fR
|
||||
@ -29,7 +30,7 @@ categories will be printed unless they are explicitly muted with "NoWarnings".
|
||||
.RS
|
||||
.TP
|
||||
\fBMain\ debug\ categories:\fR
|
||||
.IP \fIApplication\fR\ (default\ enabled)
|
||||
.IP \fIApplication\fR\ (default\ enabled)
|
||||
Print the debug messages from the core application.
|
||||
.IP \fIConnection\fR\ (default\ enabled)
|
||||
Print the debug messages from the TCP connections in guh.
|
||||
@ -37,11 +38,13 @@ Print the debug messages from the TCP connections in guh.
|
||||
Print the debug messages from the device manager.
|
||||
.IP \fIHardware\fR\ (default\ disabled)
|
||||
Print the debug messages from hardware resources in guh.
|
||||
.IP \fIJsonRpc\fR\ (default\ disabled)
|
||||
.IP \fIJsonRpc\fR\ (default\ enabled)
|
||||
Print the debug messages from JSON-RPC API.
|
||||
.IP \fILogEngine\fR\ (default\ disabled)
|
||||
Print the debug messages from logging engine.
|
||||
.IP \fIRest\fR\ (default\ disbaled)
|
||||
.IP \fIOAuth2\fR\ (default\ disabled)
|
||||
Print the debug messages of the OAuth2 resource.
|
||||
.IP \fIRest\fR\ (default\ enabled)
|
||||
Print the debug messages from REST API.
|
||||
.IP \fIRuleEngine\fR\ (default\ enabled)
|
||||
Print the debug messages from the rule engine.
|
||||
@ -66,8 +69,8 @@ $ guhd -n -d Hardware
|
||||
.TP
|
||||
To start guhd in the foreground, disable debug messages from the DeviceManager
|
||||
and enable debug messages for JsonRpc and LogEngine:
|
||||
.IP
|
||||
$ guhd -n -d NoDeviceManager JsonRpc LogEngine
|
||||
.IP
|
||||
$ guhd -n -d NoDeviceManager -d JsonRpc -d LogEngine
|
||||
.SH FILES
|
||||
.TP
|
||||
The settings of the guh server can be found in \fI/etc/guh/guhd.conf\fR
|
||||
|
||||
1
debian/guhd.install
vendored
1
debian/guhd.install
vendored
@ -1,3 +1,4 @@
|
||||
usr/bin/guhd
|
||||
data/init/* /etc/init.d
|
||||
data/config/guhd.conf /etc/guh/
|
||||
data/logrotate/guhd /etc/logrotate.d/
|
||||
|
||||
@ -161,7 +161,7 @@ QString GuhSettings::logPath()
|
||||
if (organisationName == "guh-test") {
|
||||
logPath = "/tmp/" + organisationName + "/guhd-test.sqlite";
|
||||
} else if (GuhSettings::isRoot()) {
|
||||
logPath = "/var/log/guh/guhd.sqlite";
|
||||
logPath = "/var/log/guhd.sqlite";
|
||||
} else {
|
||||
logPath = QDir::homePath() + "/.config/" + organisationName + "/guhd.sqlite";
|
||||
}
|
||||
@ -178,7 +178,7 @@ QString GuhSettings::consoleLogPath()
|
||||
if (organisationName == "guh-test") {
|
||||
consoleLogPath = "/tmp/" + organisationName + "/guhd-test.logs";
|
||||
} else if (GuhSettings::isRoot()) {
|
||||
consoleLogPath = "/var/log/guh/guhd.log";
|
||||
consoleLogPath = "/var/log/guhd.log";
|
||||
} else {
|
||||
consoleLogPath = QDir::homePath() + "/.config/" + organisationName + "/guhd.log";
|
||||
}
|
||||
|
||||
@ -557,8 +557,6 @@ RuleEngine *GuhCore::ruleEngine() const
|
||||
GuhCore::GuhCore(QObject *parent) :
|
||||
QObject(parent)
|
||||
{
|
||||
qCDebug(dcApplication) << "guh version:" << GUH_VERSION_STRING << "starting up.";
|
||||
|
||||
m_logger = new LogEngine(this);
|
||||
|
||||
qCDebug(dcApplication) << "Creating Device Manager";
|
||||
@ -568,6 +566,7 @@ GuhCore::GuhCore(QObject *parent) :
|
||||
m_ruleEngine = new RuleEngine(this);
|
||||
|
||||
|
||||
qCDebug(dcApplication) << "Creating Server Manager";
|
||||
m_serverManager = new ServerManager(this);
|
||||
|
||||
connect(m_deviceManager, &DeviceManager::eventTriggered, this, &GuhCore::gotEvent);
|
||||
|
||||
@ -107,8 +107,8 @@ int main(int argc, char *argv[])
|
||||
s_loggingFilters.insert("LogEngine", false);
|
||||
s_loggingFilters.insert("TcpServer", false);
|
||||
s_loggingFilters.insert("WebServer", true);
|
||||
s_loggingFilters.insert("WebSocketServer", false);
|
||||
s_loggingFilters.insert("JsonRpc", false);
|
||||
s_loggingFilters.insert("WebSocketServer", true);
|
||||
s_loggingFilters.insert("JsonRpc", true);
|
||||
s_loggingFilters.insert("Rest", true);
|
||||
s_loggingFilters.insert("OAuth2", false);
|
||||
|
||||
@ -120,8 +120,11 @@ int main(int argc, char *argv[])
|
||||
QCommandLineParser parser;
|
||||
parser.addHelpOption();
|
||||
parser.addVersionOption();
|
||||
QString applicationDescription = QString("\nguh ( /[guːh]/ ) is an open source home automation server, which allows to\n"
|
||||
"control a lot of different devices from many different manufacturers.\n\n"
|
||||
QString applicationDescription = QString("\nguh ( /[guːh]/ ) is an open source IoT (Internet of Things) server, \n"
|
||||
"which allows to control a lot of different devices from many different. \n"
|
||||
"manufacturers. With the powerful rule engine you are able to connect any \n"
|
||||
"device available in the system and create individual scenes and behaviors \n"
|
||||
"for your environment.\n\n"
|
||||
"guhd %1 (C) 2014-2015 guh\n"
|
||||
"Released under the GNU GENERAL PUBLIC LICENSE Version 2.\n\n"
|
||||
"API version: %2\n").arg(GUH_VERSION_STRING).arg(JSON_PROTOCOL_VERSION);
|
||||
@ -147,7 +150,9 @@ int main(int argc, char *argv[])
|
||||
debugDescription += "\n- " + filterName + " (" + (s_loggingFilters.value(filterName) ? "yes" : "no") + ")";
|
||||
}
|
||||
|
||||
QCommandLineOption debugOption(QStringList() << "d" << "debug", debugDescription, "[No]DebugCategory");
|
||||
QCommandLineOption allOption(QStringList() << "p" << "print-all", "Enables all debug categories. This parameter overrides all debug category parameters.");
|
||||
parser.addOption(allOption);
|
||||
QCommandLineOption debugOption(QStringList() << "d" << "debug-category", debugDescription, "[No]DebugCategory");
|
||||
parser.addOption(debugOption);
|
||||
|
||||
parser.process(application);
|
||||
@ -158,14 +163,20 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
|
||||
// check debug area
|
||||
foreach (QString debugArea, parser.values(debugOption)) {
|
||||
bool enable = !debugArea.startsWith("No");
|
||||
debugArea.remove(QRegExp("^No"));
|
||||
if (s_loggingFilters.contains(debugArea)) {
|
||||
s_loggingFilters[debugArea] = enable;
|
||||
} else {
|
||||
qCWarning(dcApplication) << "No such debug category:" << debugArea;
|
||||
if (!parser.isSet(allOption)) {
|
||||
foreach (QString debugArea, parser.values(debugOption)) {
|
||||
bool enable = !debugArea.startsWith("No");
|
||||
debugArea.remove(QRegExp("^No"));
|
||||
if (s_loggingFilters.contains(debugArea)) {
|
||||
s_loggingFilters[debugArea] = enable;
|
||||
} else {
|
||||
qCWarning(dcApplication) << "No such debug category:" << debugArea;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
foreach (const QString &debugArea, s_loggingFilters.keys())
|
||||
s_loggingFilters[debugArea] = true;
|
||||
|
||||
}
|
||||
QLoggingCategory::installFilter(loggingCategoryFilter);
|
||||
|
||||
@ -174,9 +185,13 @@ int main(int argc, char *argv[])
|
||||
// inform about userid
|
||||
int userId = getuid();
|
||||
if (userId != 0) {
|
||||
qCDebug(dcApplication) << "guhd started with user ID" << userId;
|
||||
qCDebug(dcApplication) << "=====================================";
|
||||
qCDebug(dcApplication) << "guhd" << GUH_VERSION_STRING << "started with user ID" << userId;
|
||||
qCDebug(dcApplication) << "=====================================";
|
||||
} else {
|
||||
qCDebug(dcApplication) << "guhd started as root.";
|
||||
qCDebug(dcApplication) << "=====================================";
|
||||
qCDebug(dcApplication) << "guhd" << GUH_VERSION_STRING << "started as root.";
|
||||
qCDebug(dcApplication) << "=====================================";
|
||||
}
|
||||
|
||||
// create core instance
|
||||
|
||||
Reference in New Issue
Block a user