User Tools

Site Tools


wiki:development:new-feature-brainstorming

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
wiki:development:new-feature-brainstorming [2014/06/26 13:46]
stefanbaur Added more sponsorable features
wiki:development:new-feature-brainstorming [2016/05/02 10:32]
stefanbaur [Rewrite of NX Agent/X2Go Agent]
Line 1: Line 1:
 ====== New features for X2Go ====== ====== New features for X2Go ======
  
-Below you find a list of new code projects that we are interested in, but noone has started working on them, yet. +Below you find a list of new code projects that we are interested in, but no one has started working on them, yet. 
  
 ===== X2Go Client ===== ===== X2Go Client =====
Line 10: Line 10:
   * As it is only possible to install applications on chromeOS (running on an original chromebook) via the [[https://​chrome.google.com/​webstore/​category/​home|Googles webstore]] of Google Chrome, X2Go Client needs to packaged for [[https://​chrome.google.com/​webstore/​category/​home|Googles webstore]]. Preferences and maybe session files should be altered and committed, so that users can sync them with their Google account.   * As it is only possible to install applications on chromeOS (running on an original chromebook) via the [[https://​chrome.google.com/​webstore/​category/​home|Googles webstore]] of Google Chrome, X2Go Client needs to packaged for [[https://​chrome.google.com/​webstore/​category/​home|Googles webstore]]. Preferences and maybe session files should be altered and committed, so that users can sync them with their Google account.
  
 +==== Better sound support, Part 1 ====
 +  * Code has been developed to clean up how pulseaudio is called on all three platforms
 +  * This brings Pulseaudio sound to Mac OS X, which currently isn't available in the standard release
 +  * This also contains the option to make sound unidirectional,​ so you can mute the microphone directly in X2GoClient
 +  * The code needs to be rebased against the current mainline X2Go client
 +  * Mihai (ionic) is working on this as time permits, sponsored by an anonymous donor via BAUR-ITCS. Additional donations always welcome, though, as it turned out to be way more work than expected.
 +==== Android Client ====
 +  * TheQVD project has an NX based remote desktop solution that uses nxproxy natively on Android (https://​github.com/​theqvd/​theqvd/​blob/​master/​nx/​nxcomp-3.5.0-android.patch & https://​github.com/​theqvd/​theqvd/​tree/​master/​libqvdclient/​android)
 +  * It should be easy to mix and match this with our codebase to create a functioning Android X2Go client. (According to Mike#1)
 +  * Here's a technology preview of how you can run X2Goclient on Android - no root required, but does have quite a few limitations:​ http://​youtu.be/​3h_kiY78Ks4
 ===== X2Go Server ====== ===== X2Go Server ======
  
Line 16: Line 26:
   * An HTML5 Client could help to build native apps and render sessions on a [[https://​en.wikipedia.org/​wiki/​Canvas_element|HTML5 Canvas]]   * An HTML5 Client could help to build native apps and render sessions on a [[https://​en.wikipedia.org/​wiki/​Canvas_element|HTML5 Canvas]]
   * In the first step, it would be possible to use existing vnc<​->​canvas proxies like [[http://​kanaka.github.com/​noVNC/​|noVNC]] or [[http://​guac-dev.org/​|Guacamole]].   * In the first step, it would be possible to use existing vnc<​->​canvas proxies like [[http://​kanaka.github.com/​noVNC/​|noVNC]] or [[http://​guac-dev.org/​|Guacamole]].
 +
 +
 +==== Better sound support, Part 2 ====
 +  * While X data is compressed depending on the settings chosen in the client (available bandwidth and whatnot), no such compression takes place for the audio stream
 +  * Changing/​fixing this may mean writing a wrapper around/a plugin to pulseaudio, or ditching PulseAudio altogether for some other sound system (which needs to be available on Windows, Mac OS X and Linux)
 +
 +===== NX-Libs =====
  
 ==== Rewrite of NX Agent/X2Go Agent ==== ==== Rewrite of NX Agent/X2Go Agent ====
 +
   * Currently, NX Agent/X2Go Agent is based on old X-Server code   * Currently, NX Agent/X2Go Agent is based on old X-Server code
   * This needs to be rewritten so it can be built against current X.org   * This needs to be rewritten so it can be built against current X.org
Line 24: Line 42:
   * estimated cost at regular hourly rates of an average coder: 50.000 EUR   * estimated cost at regular hourly rates of an average coder: 50.000 EUR
   * Crowdfunding planned, volunteers (both coders and funders) welcome   * Crowdfunding planned, volunteers (both coders and funders) welcome
-  * so far, there'​s only one pledge for 10.000 EUR +  * Status update: 
- +    This is now Work in Progress 
-==== Better sound support, Part 1 ==== +    NX-Rewrite ​is taking place with the Arctica Project ​(https://arctica-project.org/​
-  ​Code has been developed to clean up how pulseaudio ​is called on all three platforms +    currently sponsored by Qindel ​(http://www.qindel.com/) 
-  * This brings Pulseaudio sound to Mac OS X, which currently isn't available ​in the standard release +    Worked on by Mike#​1 ​and Ulrich 
-  This also contains the option to make sound unidirectional,​ so you can mute the microphone directly in X2GoClient +    * ETA: August 2017
-  * The code needs to be rebased against the current mainline X2Go client +
-  * Mihai (ionic) would be willing to do so, but is under time constraints. Sponsoring him may increase his motivation to work on it. +
- +
-==== Better sound support, Part 2 ==== +
-  * While X data is compressed depending on the settings chosen in the client ​(available bandwidth and whatnot), no such compression takes place for the audio stream +
-  * Changing/fixing this may mean writing a wrapper around/a plugin to pulseaudio, or ditching PulseAudio altogether for some other sound system (which needs to be available on Windows, Mac OS X and Linux+
- +
-==== Android Client ==== +
-  ​TheQVD project has an NX based remote desktop solution that uses nxproxy natively on Android ​(https://github.com/theqvd/​theqvd/​blob/​master/​nx/​nxcomp-3.5.0-android.patch+
-  It should be easy to mix and match this with our codebase to create a functioning Android X2Go client. (According to Mike#1) +
-===== NX-Libs =====+
  
 ==== Upgrade GLX extension in NX (redistributed) ==== ==== Upgrade GLX extension in NX (redistributed) ====
Line 48: Line 55:
   * This coding project would be a start to gradually update the Xserver extensions shipped with NX   * This coding project would be a start to gradually update the Xserver extensions shipped with NX
   * During this project you will get a deep insight into Xserver code. You need good C and Cplusplus skills to start this code project. You have to be a magician with C coding debugging tools!!!   * During this project you will get a deep insight into Xserver code. You need good C and Cplusplus skills to start this code project. You have to be a magician with C coding debugging tools!!!
 +  * Status update:
 +    * This will hopefully be fixed in "​Rewrite of NX Agent/X2Go Agent" as well
  
 ===== Desktop Bindings ===== ===== Desktop Bindings =====
wiki/development/new-feature-brainstorming.txt · Last modified: 2016/05/02 10:32 by stefanbaur