shellinabox: new package
authorOlivier Singla <olivier.singla@gmail.com>
Wed, 6 Jul 2016 02:27:31 +0000 (22:27 -0400)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Wed, 6 Jul 2016 10:04:15 +0000 (12:04 +0200)
Shell In A Box implements a web server that can export arbitrary command
line tools to a web based terminal emulator. This emulator is accessible
to any JavaScript and CSS enabled web browser and does not require any
additional browser plugins.

Signed-off-by: Olivier Singla <olivier.singla@gmail.com>
[Thomas:
 - Use "select" instead of "depends on" for the OpenSSL dependency, and
   use alphabetic ordering.
 - Rewrap Config.in help text.
 - Use github macro
 - Explain why the OpenSSL dependency is mandatory, while
   --enable-ssl/--disable-ssl are available.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/Config.in
package/shellinabox/0001-Makefile.am-fix-static.patch [new file with mode: 0644]
package/shellinabox/Config.in [new file with mode: 0644]
package/shellinabox/shellinabox.hash [new file with mode: 0644]
package/shellinabox/shellinabox.mk [new file with mode: 0644]

index 15271a2ea7c8363e8054dd17fa7ecb5c4bad530d..d6c7600692b3c2d6136663eb32f64ae7c726a941 100644 (file)
@@ -1530,6 +1530,7 @@ menu "Networking applications"
        source "package/sconeserver/Config.in"
        source "package/ser2net/Config.in"
        source "package/shairport-sync/Config.in"
+       source "package/shellinabox/Config.in"
        source "package/smcroute/Config.in"
        source "package/socat/Config.in"
        source "package/socketcand/Config.in"
diff --git a/package/shellinabox/0001-Makefile.am-fix-static.patch b/package/shellinabox/0001-Makefile.am-fix-static.patch
new file mode 100644 (file)
index 0000000..0fadde0
--- /dev/null
@@ -0,0 +1,15 @@
+Makefile: disable always building statically.
+
+Signed-off-by:  "Olivier Singla" <olivier.singla@gmail.com>
+
+--- shellinabox-2.19/Makefile.am.orig  2016-07-03 20:46:42.655784211 -0400
++++ shellinabox-2.19/Makefile.am       2016-07-03 20:46:50.582801842 -0400
+@@ -126,7 +126,7 @@
+ shellinaboxd_LDADD   = liblogging.la                                          \
+                        libhttp.la
+-shellinaboxd_LDFLAGS = -static
++shellinaboxd_LDFLAGS =
+ ## Added this for compatibility with older versions of autoconf/automake
+ docdir               = ${datadir}/doc/${PACKAGE}
diff --git a/package/shellinabox/Config.in b/package/shellinabox/Config.in
new file mode 100644 (file)
index 0000000..b349ef3
--- /dev/null
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_SHELLINABOX
+       bool "shellinabox"
+       select BR2_PACKAGE_OPENSSL
+       select BR2_PACKAGE_ZLIB
+       help
+         Shell In A Box implements a web server that can export
+         arbitrary command line tools to a web based terminal
+         emulator. This emulator is accessible to any JavaScript and
+         CSS enabled web browser and does not require any additional
+         browser plugins.
+
+         https://github.com/shellinabox/shellinabox
diff --git a/package/shellinabox/shellinabox.hash b/package/shellinabox/shellinabox.hash
new file mode 100644 (file)
index 0000000..4bc1103
--- /dev/null
@@ -0,0 +1,2 @@
+# Locally calculated after checking pgp signature
+sha256 d25ba9f72f04471fc1a8a564c65ef466c4553280ff3eeb365ed9c897d05ed2da        shellinabox-v2.19.tar.gz
diff --git a/package/shellinabox/shellinabox.mk b/package/shellinabox/shellinabox.mk
new file mode 100644 (file)
index 0000000..e4e0b06
--- /dev/null
@@ -0,0 +1,23 @@
+################################################################################
+#
+# shellinabox
+#
+################################################################################
+
+SHELLINABOX_VERSION = v2.19
+SHELLINABOX_SITE = $(call github,shellinabox,shellinabox,$(SHELLINABOX_VERSION))
+SHELLINABOX_LICENSE = GPLv2 with OpenSSL exception
+SHELLINABOX_LICENSE_FILES = COPYING GPL-2
+
+# Fetching from Github, and patching Makefile.am, so we need to autoreconf
+SHELLINABOX_AUTORECONF = YES
+
+# The OpenSSL support is supposed to be optional, but in practice,
+# with OpenSSL disabled, it fails to build. See
+# https://github.com/shellinabox/shellinabox/issues/385.
+SHELLINABOX_DEPENDENCIES = zlib openssl
+SHELLINABOX_CONF_OPTS = \
+       --disable-runtime-loading \
+       --enable-ssl
+
+$(eval $(autotools-package))