about summary refs log tree commit diff
path: root/pkgs/servers/shellinabox/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/servers/shellinabox/default.nix')
-rw-r--r--pkgs/servers/shellinabox/default.nix19
1 files changed, 12 insertions, 7 deletions
diff --git a/pkgs/servers/shellinabox/default.nix b/pkgs/servers/shellinabox/default.nix
index 5d870c7e6bd8..37a546770a0d 100644
--- a/pkgs/servers/shellinabox/default.nix
+++ b/pkgs/servers/shellinabox/default.nix
@@ -1,18 +1,20 @@
-{ stdenv, fetchurl, pam, openssl, openssh, shadow, makeWrapper }:
+{ stdenv, fetchFromGitHub, autoconf, automake, libtool, pam, openssl, openssh, shadow, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  version = "2.14";
+  version = "2.16";
   name = "shellinabox-${version}";
 
-  src = fetchurl {
-    url = "https://shellinabox.googlecode.com/files/shellinabox-${version}.tar.gz";
-    sha1 = "9e01f58c68cb53211b83d0f02e676e0d50deb781";
+  src = fetchFromGitHub {
+    owner = "shellinabox";
+    repo = "shellinabox";
+    rev = "8ac3a4efcf20f7b66d3f1eb1d4f3054aef6e196b";
+    sha256 = "1pp6nk0279d2q7l1cvx8jc73skfjv0s42wxb2m00x0bg9i1fvs5j";
   };
 
-  buildInputs = [ pam openssl openssh makeWrapper ];
-
   patches = [ ./shellinabox-minus.patch ];
 
+  buildInputs = [ autoconf automake libtool pam openssl openssh makeWrapper];
+
   # Disable GSSAPIAuthentication errors. Also, paths in certain source files are
   # hardcoded. Replace the hardcoded paths with correct paths.
   preConfigure = ''
@@ -21,11 +23,14 @@ stdenv.mkDerivation rec {
     substituteInPlace ./shellinabox/service.c --replace "/bin/login" "${shadow}/bin/login"
     substituteInPlace ./shellinabox/launcher.c --replace "/bin/login" "${shadow}/bin/login"
     substituteInPlace ./libhttp/ssl.c --replace "/usr/bin" "${openssl}/bin"
+    autoreconf -vfi
   '';
 
   postInstall = ''
     wrapProgram $out/bin/shellinaboxd \
       --prefix LD_LIBRARY_PATH : ${openssl}/lib
+    mkdir -p $out/lib
+    cp shellinabox/* $out/lib
   '';
 
   meta = with stdenv.lib; {