From d1f5abc3e6b0b0737dc7d7fadc95e6600f122d36 Mon Sep 17 00:00:00 2001
From: Andreas Oberritter <obi@opendreambox.org>
Date: Fri, 27 Mar 2015 23:21:00 +0100
Subject: gateone: move to meta-python

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 ...on.py-Hack-around-broken-gethostname-thin.patch | 26 +++++++
 .../recipes-connectivity/gateone/gateone/80oe.conf | 23 ++++++
 .../gateone/gateone/gateone-avahi.service          | 10 +++
 .../gateone/gateone/gateone-init                   | 47 +++++++++++++
 .../gateone/gateone/gateone.service                | 10 +++
 .../recipes-connectivity/gateone/gateone_git.bb    | 82 ++++++++++++++++++++++
 6 files changed, 198 insertions(+)
 create mode 100644 meta-python/recipes-connectivity/gateone/gateone/0001-configuration.py-Hack-around-broken-gethostname-thin.patch
 create mode 100644 meta-python/recipes-connectivity/gateone/gateone/80oe.conf
 create mode 100644 meta-python/recipes-connectivity/gateone/gateone/gateone-avahi.service
 create mode 100644 meta-python/recipes-connectivity/gateone/gateone/gateone-init
 create mode 100644 meta-python/recipes-connectivity/gateone/gateone/gateone.service
 create mode 100644 meta-python/recipes-connectivity/gateone/gateone_git.bb

(limited to 'meta-python')

diff --git a/meta-python/recipes-connectivity/gateone/gateone/0001-configuration.py-Hack-around-broken-gethostname-thin.patch b/meta-python/recipes-connectivity/gateone/gateone/0001-configuration.py-Hack-around-broken-gethostname-thin.patch
new file mode 100644
index 0000000000..5f5fa9117e
--- /dev/null
+++ b/meta-python/recipes-connectivity/gateone/gateone/0001-configuration.py-Hack-around-broken-gethostname-thin.patch
@@ -0,0 +1,26 @@
+From d811d3bdf06d78c93c48bef762c19c392c879077 Mon Sep 17 00:00:00 2001
+From: Koen Kooi <koen@dominion.thruhere.net>
+Date: Tue, 26 Nov 2013 15:54:10 +0100
+Subject: [PATCH] configuration.py: Hack around broken gethostname thingy
+
+Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
+---
+ gateone/core/configuration.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gateone/core/configuration.py b/gateone/core/configuration.py
+index da41cbd..d1c8222 100644
+--- a/gateone/core/configuration.py
++++ b/gateone/core/configuration.py
+@@ -162,7 +162,7 @@ def define_options(installed=True):
+     ]
+     # Used both http and https above to demonstrate that both are acceptable
+     try:
+-        additional_origins = socket.gethostbyname_ex(socket.gethostname())
++        additional_origins = [] # additional_origins = socket.gethostbyname_ex(socket.gethostname())
+     except socket.gaierror:
+         # Couldn't get any IPs from the hostname
+         additional_origins = []
+-- 
+1.8.4.2
+
diff --git a/meta-python/recipes-connectivity/gateone/gateone/80oe.conf b/meta-python/recipes-connectivity/gateone/gateone/80oe.conf
new file mode 100644
index 0000000000..cde98bc10d
--- /dev/null
+++ b/meta-python/recipes-connectivity/gateone/gateone/80oe.conf
@@ -0,0 +1,23 @@
+// Some custom Gate One settings for OpenEmbedded
+{
+    "*": {
+        "gateone": { // These settings apply to all of Gate One
+            "log_file_max_size": 5242880, // 5 megabyte logs for OE by default (default would normally be 100Mb)
+            "log_file_num_backups": 2, // Default is normally 10
+            "origins": ["*"], // Every device has a unique origin
+            "logging": "info",
+            "pid_file": "/var/run/gateone.pid",
+            "session_dir": "/tmp/gateone",
+            "user_dir": "/var/lib/gateone/users"
+        },
+        "terminal": {
+            // Disabling session logging for embedded devices is a good idea (limited/slow storage)
+            "session_logging": false,
+            "syslog_session_logging": false
+//             "commands": {
+//                 // For some reason this doesn't work (never asks for the password)
+//                 "login": "setsid /bin/login" // Normally this would emulate logging into the host console
+//             }
+        }
+    }
+}
diff --git a/meta-python/recipes-connectivity/gateone/gateone/gateone-avahi.service b/meta-python/recipes-connectivity/gateone/gateone/gateone-avahi.service
new file mode 100644
index 0000000000..0f613d18e8
--- /dev/null
+++ b/meta-python/recipes-connectivity/gateone/gateone/gateone-avahi.service
@@ -0,0 +1,10 @@
+<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
+<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
+
+<service-group>
+  <name replace-wildcards="yes">GateOne on %h</name>
+  <service>
+    <type>_https._tcp</type>
+    <port>443</port>
+  </service>
+</service-group>
diff --git a/meta-python/recipes-connectivity/gateone/gateone/gateone-init b/meta-python/recipes-connectivity/gateone/gateone/gateone-init
new file mode 100644
index 0000000000..a1cf5ce7e9
--- /dev/null
+++ b/meta-python/recipes-connectivity/gateone/gateone/gateone-init
@@ -0,0 +1,47 @@
+#!/bin/sh -e
+### BEGIN INIT INFO
+# Provides:          gateone
+# Required-Start:    networking
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: Gateone HTML5 ssh client
+# Description:       Gateone HTML5 terminal emulator and SSH client.
+### END INIT INFO
+
+. /etc/init.d/functions
+
+NAME=gateone
+DAEMON=/var/lib/gateone/gateone.py
+PIDFILE=/var/run/gateone.pid
+WORKDIR=/var/lib/gateone
+
+do_start() {
+    cd $WORKDIR
+    /usr/bin/python $DAEMON > /dev/null 2>&1 &
+    cd $OLDPWD
+}
+
+do_stop() {
+    kill -TERM `cat $PIDFILE`
+}
+
+case "$1" in
+    start)
+        echo "Starting gateone"
+        do_start
+        ;;
+    stop)
+        echo "Stopping gateone"
+        do_stop
+        ;;
+    restart|force-reload)
+        echo "Restart gateone"
+        do_stop
+        sleep 1
+        do_start
+        ;;
+    *)
+        echo "Usage: $0 {start|stop|restart|force-reload}" >&2
+        exit 1
+        ;;
+esac
diff --git a/meta-python/recipes-connectivity/gateone/gateone/gateone.service b/meta-python/recipes-connectivity/gateone/gateone/gateone.service
new file mode 100644
index 0000000000..7b14d3e6de
--- /dev/null
+++ b/meta-python/recipes-connectivity/gateone/gateone/gateone.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=GateOne daemon
+ConditionPathExists=|/var/lib/gateone
+
+[Service]
+WorkingDirectory=/var/lib/gateone
+ExecStart=/usr/bin/python /usr/bin/gateone
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-python/recipes-connectivity/gateone/gateone_git.bb b/meta-python/recipes-connectivity/gateone/gateone_git.bb
new file mode 100644
index 0000000000..edc9977216
--- /dev/null
+++ b/meta-python/recipes-connectivity/gateone/gateone_git.bb
@@ -0,0 +1,82 @@
+SUMMARY = "HTML5 (plugin-free) web-based terminal emulator and SSH client"
+LICENSE = "AGPL-3.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=834cbc6995db88433db17cdf8953a428"
+HOMEPAGE = "http://liftoffsoftware.com/Products/GateOne"
+
+PV = "1.2"
+SRCREV = "1528d324088fc1c180b7fdf50f5b5c1af057eef6"
+SRC_URI = "git://github.com/liftoff/GateOne.git \
+           file://0001-configuration.py-Hack-around-broken-gethostname-thin.patch \
+           file://gateone-avahi.service \
+           file://80oe.conf \
+           file://gateone.service \
+           file://gateone-init \
+"
+
+S = "${WORKDIR}/git"
+
+inherit distutils python-dir systemd update-rc.d
+export prefix = "${localstatedir}"
+
+DISTUTILS_INSTALL_ARGS = "--root=${D} \
+    --prefix=${prefix} \
+    --install-lib=${PYTHON_SITEPACKAGES_DIR} \
+    --install-data=${PYTHON_SITEPACKAGES_DIR} \
+    --install-scripts=${bindir} \
+    --skip_init_scripts"
+
+do_install_append() {
+
+    # fix up hardcoded paths
+    sed -i -e s:/usr/bin:${bindir}:g ${WORKDIR}/gateone.service
+    
+    install -d ${D}${systemd_unitdir}/system
+    install -m 0644 ${WORKDIR}/gateone.service ${D}${systemd_unitdir}/system
+
+    install -d ${D}${sysconfdir}/init.d
+    install -m 0755 ${WORKDIR}/gateone-init ${D}${sysconfdir}/init.d/gateone
+    
+    install -m 0755 -d ${D}${sysconfdir}/avahi/services/
+    install -m 0644 ${WORKDIR}/gateone-avahi.service ${D}${sysconfdir}/avahi/services/
+
+    install -m 0755 -d ${D}${sysconfdir}/gateone/conf.d/
+    install -m 0644 ${WORKDIR}/80oe.conf ${D}${sysconfdir}/gateone/conf.d/80oe.conf
+
+    install -d ${D}${localstatedir}/lib/gateone
+}
+
+FILES_${PN} = "${localstatedir}/lib ${bindir} ${base_libdir} ${sysconfdir} ${PYTHON_SITEPACKAGES_DIR}"
+RDEPENDS_${PN} = "mime-support \
+                  openssh-ssh \
+                  python-compression \
+                  python-crypt \
+                  python-datetime \
+                  python-email \
+                  python-fcntl \
+                  python-futures \
+                  python-html \
+                  python-imaging \
+                  python-io \
+                  python-json \
+                  python-logging \
+                  python-misc \
+                  python-multiprocessing \
+                  python-netclient \
+                  python-pkgutil \
+                  python-pyopenssl \
+                  python-re \
+                  python-readline \
+                  python-setuptools \
+                  python-shell \
+                  python-simplejson \
+                  python-subprocess \
+                  python-syslog \
+                  python-terminal \
+                  python-textutils \
+                  python-tornado \
+                  python-unixadmin \
+                  python-xml \
+"
+
+SYSTEMD_SERVICE_${PN} = "gateone.service"
+INITSCRIPT_NAME = "gateone"
-- 
cgit v1.2.3-54-g00ecf