Description: Cherry pick jetpipe fixes from upstream

--- ltsp-5.3.7.orig/client/jetpipe/jetpipe
+++ ltsp-5.3.7/client/jetpipe/jetpipe
@@ -40,9 +40,7 @@ import os
 import sys
 import socket
 import serial
-import threading
 import getopt
-import daemon
 
 class Redirector:
     def __init__(self, devicename, socket):
@@ -142,7 +140,6 @@ if __name__ == '__main__':
 
     for o, a in opts:
         if o in ("-h", "--help"):         # help text
-            usage()
             sys.exit()
         elif o in ("-b", "--baud"):       # specified baudrate
             try:
@@ -163,10 +160,24 @@ if __name__ == '__main__':
             debug = True
 
     devicename = args[0]
-    port   =     args[1]
+    port = args[1]
 
-    if debug == False:
-        with daemon.DaemonContext():
-            run_server(devicename, port)
-    else:
-        run_server(devicename, port)
+    if not debug:
+        # Fork in background
+        pid = os.fork()
+        if pid:
+            sys.exit(0)
+
+        # Replace stdin
+        sys.stdin.close()
+        sys.stdin = open("/dev/null", "r")
+
+        # Replace stdout
+        sys.stdout.close()
+        sys.stdout = open("/dev/null", "w")
+
+        # Replace stderr
+        sys.stderr.close()
+        sys.stderr = open("/dev/null", "w")
+
+    run_server(devicename, port)
