summary refs log tree commit diff
path: root/pkgs/tools/networking/mosh
diff options
context:
space:
mode:
authorOrivej Desh <orivej@gmx.fr>2018-06-09 07:41:38 +0000
committerOrivej Desh <orivej@gmx.fr>2018-06-09 07:41:38 +0000
commita448357dc62b26c95c3df84a156656e54aaf58b1 (patch)
treef12d66a0b81f2fbaa70db89b516a66bddc1b838c /pkgs/tools/networking/mosh
parent06fa8674984e8ab637a29b91bdaa11dc5cbacb80 (diff)
parent0e07efa3c53b588dcd2efca8fafb35c779869d4e (diff)
downloadnixlib-a448357dc62b26c95c3df84a156656e54aaf58b1.tar
nixlib-a448357dc62b26c95c3df84a156656e54aaf58b1.tar.gz
nixlib-a448357dc62b26c95c3df84a156656e54aaf58b1.tar.bz2
nixlib-a448357dc62b26c95c3df84a156656e54aaf58b1.tar.lz
nixlib-a448357dc62b26c95c3df84a156656e54aaf58b1.tar.xz
nixlib-a448357dc62b26c95c3df84a156656e54aaf58b1.tar.zst
nixlib-a448357dc62b26c95c3df84a156656e54aaf58b1.zip
Merge branch 'master' into staging
* master: (71 commits)
  xen: enable parallel building
  spice: 0.13.3 -> 0.14.0
  powerline-rs: 0.1.7 -> 0.1.8 (#41736)
  xidlehook: 0.4.6 -> 0.4.8 (#41094)
  serf: update scons patch, enable kerberos on darwin
  firefox-bin: Add ffmpeg to lib path
  firefox-beta-bin: 61.0b10 -> 61.0b12
  firefox-devedition-bin: 61.0b10 -> 61.0b12
  wireguard-go: assign yegortimoshenko as maintainer
  wireguard-go: 0.0.20180519 -> 0.0.20180531
  zfs: Fix "zfs-sync" for modern systemd
  nixos/memcached: added simple set/get test
  jenkins: 2.89.4 -> 2.107.3 (#41618)
  focuswriter: 1.6.12 -> 1.6.13 (#41567)
  ne: 3.0.1 -> 3.1.1 (#41536)
  libpqxx: 6.2.3 -> 6.2.4 (#41547)
  mate.mate-applets: 1.20.1 -> 1.20.2 (#41546)
  mate.mate-themes: 3.22.16 -> 3.22.17 (#41541)
  nixos/munge: run munge as user munge instead of root. (#41509)
  pstoedit: 3.71 -> 3.73 (#41528)
  ...
Diffstat (limited to 'pkgs/tools/networking/mosh')
-rw-r--r--pkgs/tools/networking/mosh/default.nix11
-rw-r--r--pkgs/tools/networking/mosh/utempter_path.patch14
2 files changed, 20 insertions, 5 deletions
diff --git a/pkgs/tools/networking/mosh/default.nix b/pkgs/tools/networking/mosh/default.nix
index fb94b750e1d8..1a2086810724 100644
--- a/pkgs/tools/networking/mosh/default.nix
+++ b/pkgs/tools/networking/mosh/default.nix
@@ -1,5 +1,6 @@
-{ stdenv, fetchurl, zlib, protobuf, ncurses, pkgconfig, IOTty
-, makeWrapper, perl, openssl, autoreconfHook, openssh, bash-completion }:
+{ lib, stdenv, fetchurl, zlib, protobuf, ncurses, pkgconfig, IOTty
+, makeWrapper, perl, openssl, autoreconfHook, openssh, bash-completion
+, libutempter ? null, withUtempter ? stdenv.isLinux }:
 
 stdenv.mkDerivation rec {
   name = "mosh-1.3.2";
@@ -10,15 +11,15 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
-  buildInputs = [ protobuf ncurses zlib IOTty makeWrapper perl openssl bash-completion ];
+  buildInputs = [ protobuf ncurses zlib IOTty makeWrapper perl openssl bash-completion ] ++ lib.optional withUtempter libutempter;
 
-  patches = [ ./ssh_path.patch ];
+  patches = [ ./ssh_path.patch ./utempter_path.patch ];
   postPatch = ''
     substituteInPlace scripts/mosh.pl \
         --subst-var-by ssh "${openssh}/bin/ssh"
   '';
 
-  configureFlags = [ "--enable-completion" ];
+  configureFlags = [ "--enable-completion" ] ++ lib.optional withUtempter "--with-utempter";
 
   postInstall = ''
       wrapProgram $out/bin/mosh --prefix PERL5LIB : $PERL5LIB
diff --git a/pkgs/tools/networking/mosh/utempter_path.patch b/pkgs/tools/networking/mosh/utempter_path.patch
new file mode 100644
index 000000000000..a981708ffadf
--- /dev/null
+++ b/pkgs/tools/networking/mosh/utempter_path.patch
@@ -0,0 +1,14 @@
+diff -ur mosh-1.3.2/src/frontend/mosh-server.cc mosh-1.3.2.patched/src/frontend/mosh-server.cc
+--- mosh-1.3.2/src/frontend/mosh-server.cc	2017-07-22 23:14:53.000000000 +0200
++++ mosh-1.3.2.patched/src/frontend/mosh-server.cc	2018-06-06 10:45:50.725352804 +0200
+@@ -351,6 +351,10 @@
+     }
+   }
+ 
++#ifdef HAVE_UTEMPTER
++    utempter_set_helper( "utempter" );
++#endif
++
+   try {
+     return run_server( desired_ip, desired_port, command_path, command_argv, colors, verbose, with_motd );
+   } catch ( const Network::NetworkException &e ) {