From d1f5abc3e6b0b0737dc7d7fadc95e6600f122d36 Mon Sep 17 00:00:00 2001 From: Andreas Oberritter Date: Fri, 27 Mar 2015 23:21:00 +0100 Subject: gateone: move to meta-python Signed-off-by: Andreas Oberritter Signed-off-by: Martin Jansa --- ...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/recipes-connectivity') 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 +Date: Tue, 26 Nov 2013 15:54:10 +0100 +Subject: [PATCH] configuration.py: Hack around broken gethostname thingy + +Signed-off-by: Koen Kooi +--- + 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 @@ + + + + + GateOne on %h + + _https._tcp + 443 + + 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 1.2.3-korg