diff --git a/project/jni/application/xserver-debian/java.patch b/project/jni/application/xserver-debian/java.patch
new file mode 120000
index 000000000..45f7cbee5
--- /dev/null
+++ b/project/jni/application/xserver-debian/java.patch
@@ -0,0 +1 @@
+../xserver/java.patch
\ No newline at end of file
diff --git a/project/jni/application/xserver-debian/project.patch b/project/jni/application/xserver-debian/project.patch
new file mode 120000
index 000000000..7b70e7761
--- /dev/null
+++ b/project/jni/application/xserver-debian/project.patch
@@ -0,0 +1 @@
+../xserver/project.patch
\ No newline at end of file
diff --git a/project/jni/application/xserver-gimp/java.patch b/project/jni/application/xserver-gimp/java.patch
new file mode 120000
index 000000000..45f7cbee5
--- /dev/null
+++ b/project/jni/application/xserver-gimp/java.patch
@@ -0,0 +1 @@
+../xserver/java.patch
\ No newline at end of file
diff --git a/project/jni/application/xserver-gimp/project.patch b/project/jni/application/xserver-gimp/project.patch
new file mode 120000
index 000000000..7b70e7761
--- /dev/null
+++ b/project/jni/application/xserver-gimp/project.patch
@@ -0,0 +1 @@
+../xserver/project.patch
\ No newline at end of file
diff --git a/project/jni/application/xserver/java.patch b/project/jni/application/xserver/java.patch
new file mode 100644
index 000000000..8560bb177
--- /dev/null
+++ b/project/jni/application/xserver/java.patch
@@ -0,0 +1,21 @@
+diff --git a/project/java/Video.java b/project/java/Video.java
+index eb25252..a327c6b 100644
+--- a/project/java/Video.java
++++ b/project/java/Video.java
+@@ -691,6 +691,16 @@ class DemoRenderer extends GLSurfaceView_SDL.Renderer
+ if(Globals.AudioBufferConfig >= 2)
+ Thread.currentThread().setPriority( (Thread.NORM_PRIORITY + Thread.MIN_PRIORITY) / 2 ); // Lower than normal
+ // Calls main() and never returns, hehe - we'll call eglSwapBuffers() from native code
++ if (context.getIntent().getScheme() != null && context.getIntent().getScheme().equals("x11"))
++ {
++ int port = context.getIntent().getData().getPort();
++ if (port >= 0)
++ {
++ if (port >= 6000)
++ port -= 6000;
++ Globals.CommandLine = Globals.CommandLine + " :" + port;
++ }
++ }
+ nativeInit( Globals.DataDir,
+ Globals.CommandLine,
+ ( (Globals.SwVideoMode && Globals.MultiThreadedVideo) || Globals.CompatibilityHacksVideo ) ? 1 : 0,
diff --git a/project/jni/application/xserver/project.patch b/project/jni/application/xserver/project.patch
new file mode 100644
index 000000000..74673cb0d
--- /dev/null
+++ b/project/jni/application/xserver/project.patch
@@ -0,0 +1,15 @@
+--- a/project/AndroidManifest.xml 2015-01-01 23:59:34.805231773 +0200
++++ a/project/AndroidManifest.xml 2015-01-01 23:59:45.189378809 +0200
+@@ -23,6 +23,12 @@
+
+
+
++
++
++
++
++
++
+
+
+