Hi Mike,
great job! I'm working currently on another project. I'll give it closer look when I'll have some time.
Regards Alex
Am 21.07.19 um 11:03 schrieb Mike Gabriel:
Hi Alex,
On Mo 17 Jun 2019 09:22:48 CEST, Oleksandr Shneyder wrote:
Hi Mike,
Initially i started to develop X2Go KDrive based on source code of xorg-server-1.19.2. I made some patches to port it for some older versions used by SLES12SP1 and Leap42.3. I didn't try it yet with newer versions of XOrg, however I think it should not be a big deal. Looking on the log you provided, I could guess that the problem is somewhere in the XRandr handling. But I would need to take a closer look to be sure.
Regards Alex
I worked quite a bit on the X2Go KDrive Xserver code last week and achieved the following:
* no compiler warnings anymore -> please make sure you don't introduce new compiler warning -> build the package via debuild -uc -us to verify that no new compiler warnings are introduced
* forward-port the X2Go KDrive code so that it builds against xorg-server 1.20.4
* provide xorg-server code tree integration patches for all known xorg-server versions that are found in Debian stretch, buster, bullseye/unstable and Ubuntu 16.04, 18.04, 19.04 and upcoming 19.10
* various coding style fixes / uniform commenting / typo fixes / etc.
* integrationg of x2gokdrive and x2gokdriveclient builds in the DEB based build infrastructures (jenkins.x2go.org, launchpad.net/~x2go)
For building against older X.Org versions, you added some patches against x2gokdrive code into the upstream Git. These patches have now been moved to the patches.legacy/ subfolder, see the README.legacy-patches.md file for details on this [1]. Instead of shipping such legacy patches, it might probably make more sense adding the required backport changes into the x2gokdrive*.(ch) code files using ifdef XORG_CURRENT_VERSION macros. See [2] for my work to differentiate between xorg-server 1.19.x and 1.20.x.
While working on the code (esp. the separation of declarations and actual code) I introduced some regressions. I think I have fixed them all by now, but maybe not. Thus, I'd appreciate it if you could take a close look at the changes made (unfortunately there are quite a lot of commits between where you left of and today's master/HEAD).
Furthermore, I introduced an x2goserver-x2gokdrive wrapper package that provides some integration support into X2Go Server.
Plus, I updated Python X2Go and PyHoca-CLI, so that they now also have support for launching X2Go Agent and X2Go KDrive sessions alike. Updating PyHoca-GUI accordingly is still pending. Not sure, when I will get to that (I use pyhoca-cli from the terminal a lot these days, but not so much pyhoca-gui, unfortunately).
How to test (on a Debian stretch or buster system or some recent Ubuntu version):
### make sure you use the X2Go heuler (nightly built) repos
# on the X2Go Server: sudo apt install x2goserver gnome cinnamon # (this will pull in x2goserver-x2gokdrive, x2gokdrive and the GNOME and the Cinnamon desktop)
# on the client (X2Go Client) sudo apt install x2goclient # (this will pull in x2gokdriveclient) x2goclient -> create a GNOME or CINNAMON desktop session profile and enable kdrive support
# or: on the client (PyHoca-CLI) sudo apt install phyoca-cli pyhoca-cli --server <server> --user <server-user> --command GNOME --sound none pyhoca-cli --server <server> --user <server-user> --command CINNAMON
Please let me know any concerns and thoughts you might have!
light+love, Mike
[1] https://code.x2go.org/gitweb?p=x2gokdrive.git;a=blob;f=patches.legacy/README...
[2] https://code.x2go.org/gitweb?p=x2gokdrive.git;a=commitdiff;h=3a30f5aa177e176...
Oleksandr Shneyder | Email: o.shneyder@phoca-gmbh.de phoca GmbH | Tel. : 0911 - 14870374 0 Schleiermacherstr. 2 | Fax. : 0911 - 14870374 9 D-90491 Nürnberg | Mobil: 0163 - 49 64 461
Geschäftsführung: Dipl.-Inf. Oleksandr Shneyder