Browse Source

shellinabox: new package

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>
Olivier Singla 9 years ago
parent
commit
479cebcfb7

+ 1 - 0
package/Config.in

@@ -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"

+ 15 - 0
package/shellinabox/0001-Makefile.am-fix-static.patch

@@ -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}
+ 

+ 12 - 0
package/shellinabox/Config.in

@@ -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

+ 2 - 0
package/shellinabox/shellinabox.hash

@@ -0,0 +1,2 @@
+# Locally calculated after checking pgp signature
+sha256	d25ba9f72f04471fc1a8a564c65ef466c4553280ff3eeb365ed9c897d05ed2da	shellinabox-v2.19.tar.gz

+ 23 - 0
package/shellinabox/shellinabox.mk

@@ -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))