Re: [X2Go-User] USB forwarding documentation
On 11/20/2017 07:09 PM, Stefan Baur wrote: Am 20.11.2017 um 23:42 schrieb Seth Galitzer: I've been trying for a couple of weeks now to build a TCE image that this actually works on. I applied your new script to my latest attempt today and finally discovered that the libfreerdp-plugins-standard package is not actually getting installed in the chroot image. As a result, while the USB flash drive is getting correctly mounted in the expected location, when I run my RDP connection, I do not see the share presented by the tsclient host. Ah-ha! [libfreerdp-plugins-standard package missing] If I try "dpkg -l|grep freerdp-plugins" on the booted client, I don't get any results. Not even a package in "rc" state". If I grep for freerdp, I get the rest of the packages requested in the overlay list. I should note that I'm using a very lightly-patched x2goclient v4.1.1.1 in this build and a slightly modified version of 2900-x2go-thinclientconfig from the chroot overlay, but I don't think these are related to this build issue. I will double-check the latter to make sure. Any thoughts as to what might be causing this or possible work-arounds this? Are you using the timestamp feature I added? If so, I would first compare timestamps of your running system and of the image you built. cat x2go-tce-timestamp in the builddir vs. the build number you see at the local or ssh login prompt (cat /etc/issue, bottom line), or, lacking the timestamping code in your build, comparing the output of # in the builddir TIMESTAMP=$(stat -c %Y ./config/includes.chroot/lib) HUMANTIMESTAMP=$(date --date="$TIMESTAMP") echo "Build Version: $TIMESTAMP ($HUMANTIMESTAMP)" # in the booted TCE for TIMESTAMPFILE in /lib/live/mount/rootfs/*/lib; do TIMESTAMP=$(stat -c %Y $TIMESTAMPFILE) HUMANTIMESTAMP=$(date --date="@$TIMESTAMP") done echo "Build Version: $TIMESTAMP ($HUMANTIMESTAMP)" Because to me, it sounds like you're not booting the image you're expecting to boot. Maybe you're storing it to the wrong directory, maybe the client you're testing with has a custom PXE boot entry that causes it to boot the image from a different location, maybe your USB media is actually a bootable X2GoThinClient because you were experimenting with that, and you're booting off of USB rather than PXE, ... OK, this is the exact problem. I've been forgetting that I actually have a separate PXE boot server for my thin client lab and was uploading my images to my "general purpose" PXE server for the rest of my public machines. Now that I'm properly remembering, I'll do more testing and see what I can find. Did you try using the entire build script from the wiki page, or only patch the automount script? What happens when you try to build a stock image using our scripts, our git repo, and no custom changes? I went back through the wiki page and updated my build scripts to match the new info, and got the newer version of the x2gousbmount script. I can try a vanilla build and see what happens. I just checked it myself on a stretch amd64 build, a stretch i386 (686-pae), and a jessie i386 (686-pae), the package is always there, just like it should be. Of course, if all else fails, you could run unsquashfs, chroot into the resulting directory, install the package manually, then run mksquashfs again. I would suggest adding options -comp xz -Xbcj x86 -b 1024K -Xdict-size 1024K to mksquashfs (based on a suggestion by intrigeri from the TAILS team), and reading the man page for mksquashfs first. I was wondering how I might accomplish this, thanks for the tips. Kind Regards, Stefan Baur Chalk this one up to my own error. :) Thanks for the help. Seth -- Seth Galitzer Systems Coordinator Computer Science Department Kansas State University http://www.cs.ksu.edu/~sgsax sg...@ksu.edu 785-532-7790 ___ x2go-user mailing list x2go-user@lists.x2go.org https://lists.x2go.org/listinfo/x2go-user
Re: [X2Go-User] USB forwarding documentation
I've been trying for a couple of weeks now to build a TCE image that this actually works on. I applied your new script to my latest attempt today and finally discovered that the libfreerdp-plugins-standard package is not actually getting installed in the chroot image. As a result, while the USB flash drive is getting correctly mounted in the expected location, when I run my RDP connection, I do not see the share presented by the tsclient host. I traced the log during the build process and it looks like the package is getting properly added, but when I boot the image and look at the installed packages, it is not actually there. I'm not seeing any errors or where it is getting removed before the squashfs image is rolled. Here's an excerpt: $ grep freerdp-plugins build.log libfreerdp-plugins-standard libfreerdp-primitives1.1 libfreerdp-rail1.1 Get:411 http://security.debian.org/ jessie/updates/main libfreerdp-plugins-standard i386 1.1.0~git20140921.1.440916e+dfsg1-4+deb8u1 [236 kB] Selecting previously unselected package libfreerdp-plugins-standard:i386. Preparing to unpack .../libfreerdp-plugins-standard_1.1.0~git20140921.1.440916e+dfsg1-4+deb8u1_i386.deb ... Unpacking libfreerdp-plugins-standard:i386 (1.1.0~git20140921.1.440916e+dfsg1-4+deb8u1) ... Setting up libfreerdp-plugins-standard:i386 (1.1.0~git20140921.1.440916e+dfsg1-4+deb8u1) ... libfreerdp-plugins-standard is already the newest version. If I try "dpkg -l|grep freerdp-plugins" on the booted client, I don't get any results. Not even a package in "rc" state". If I grep for freerdp, I get the rest of the packages requested in the overlay list. I should note that I'm using a very lightly-patched x2goclient v4.1.1.1 in this build and a slightly modified version of 2900-x2go-thinclientconfig from the chroot overlay, but I don't think these are related to this build issue. I will double-check the latter to make sure. Any thoughts as to what might be causing this or possible work-arounds this? Thanks. Seth On 11/20/2017 08:24 AM, Stefan Baur wrote: Am 07.11.2017 um 23:56 schrieb Seth Galitzer: On 11/07/2017 03:49 PM, Stefan Baur wrote: Am 07.11.2017 um 21:41 schrieb Seth Galitzer: I'm calling xfreerdp from TCE to connect directly to the RDP server. I've been trying to find the right cli options for xfreerdp to use for this, but documentation is pretty light on this and I have yet to find something that works. If I run dmesg on the thin client device from within the TCE desktop, I can see that my flash drive is recognized, but it's not getting mounted. That sounds like a udev issue within debian, but I was hoping somebody on the list had already solved this problem. So your actually have two problems: 1) getting the automounter to mount your flash drive. I've found two ways to do this so far: A) Install usbmount package (https://usbmount.alioth.debian.org/). I've tested this and it works, but needs some tweaking to produce a reliable/duplicatable mount point. This claims to work for vfat, ext* and hfs. B) Configure udev to use pmount when a USB storage device is detected (https://unix.stackexchange.com/a/124060). I haven't tested this yet, but if the above option works, I'm guessing this is the manual implementation of it, so it should work. I have updated the X2Go-automounter script. Assuming you are using the build instructions at <https://wiki.x2go.org/doku.php/doc:howto:tce>, especially <https://wiki.x2go.org/doku.php/doc:howto:tce#live-patching_the_build>, you should now be able to automatically mount VFAT, NTFS, HFS, HPFS out of the box (as previously mentioned, under /media/vendor_model/partitiondevice). Once my further changes (currently only stored locally on my computer) make it to the git repos, you will also be able to access ext* filesystems, albeit in read-only mode only. So neither usbmount nor udev/pmount should be necessary. If automounting still fails for you without them, please provide more info about your setup. Kind Regards, Stefan Baur -- Seth Galitzer Systems Coordinator Computer Science Department Kansas State University http://www.cs.ksu.edu/~sgsax sg...@ksu.edu 785-532-7790 ___ x2go-user mailing list x2go-user@lists.x2go.org https://lists.x2go.org/listinfo/x2go-user
Re: [X2Go-User] USB forwarding documentation
On 11/07/2017 03:49 PM, Stefan Baur wrote: Am 07.11.2017 um 21:41 schrieb Seth Galitzer: I'm calling xfreerdp from TCE to connect directly to the RDP server. I've been trying to find the right cli options for xfreerdp to use for this, but documentation is pretty light on this and I have yet to find something that works. If I run dmesg on the thin client device from within the TCE desktop, I can see that my flash drive is recognized, but it's not getting mounted. That sounds like a udev issue within debian, but I was hoping somebody on the list had already solved this problem. So your actually have two problems: 1) getting the automounter to mount your flash drive. I've found two ways to do this so far: A) Install usbmount package (https://usbmount.alioth.debian.org/). I've tested this and it works, but needs some tweaking to produce a reliable/duplicatable mount point. This claims to work for vfat, ext* and hfs. B) Configure udev to use pmount when a USB storage device is detected (https://unix.stackexchange.com/a/124060). I haven't tested this yet, but if the above option works, I'm guessing this is the manual implementation of it, so it should work. 2) getting xfreerdp to forward that mountpoint to the RDP server. This is proving difficult if not impossible. Supposedly, some invocation of the /drive option should work, but I have not found good documentation on syntax, nor have suggestions I found so far worked. Use of the /usb option is not recommended as supposedly this is for redirecting devices, such as printers or HID. There is even much discussion among freerdp devs and users on how to properly implement this functionality. For now, I'm telling my users it's not doable, but I'm still looking for a way to do it. Suggestions are welcome. You could try to research them independently. Let's start with 2): How about running xfreerdp on a Linux "fat client", and tinkering with its cli options until you get it to forward a local directory? Regarding 1): Funny coincidence, I was trying out the usb mass storage automounter today and realized that in its current incarnation, it can only handle VFAT - not ext*-formatted media. I'm planning to improve the code in question $SOON, but at the moment, I would suggest double-checking that your flash drive is in VFAT format. Kind Regards, Stefan Baur Thanks. Seth -- Seth Galitzer Systems Coordinator Computer Science Department Kansas State University http://www.cs.ksu.edu/~sgsax sg...@ksu.edu 785-532-7790 ___ x2go-user mailing list x2go-user@lists.x2go.org https://lists.x2go.org/listinfo/x2go-user
[X2Go-User] USB forwarding documentation
I know this is a FAQ, but I've been unable to find an answer on my own. I'd like to be able to redirect a local USB flash drive to a remote Windows host. I'm using TCE from a debian image deployed to my thin client devices. If this is possible, what's the magic recipe to make this work? Thanks. Seth -- Seth Galitzer Systems Coordinator Computer Science Department Kansas State University http://www.cs.ksu.edu/~sgsax sg...@ksu.edu 785-532-7790 ___ x2go-user mailing list x2go-user@lists.x2go.org https://lists.x2go.org/listinfo/x2go-user
[X2Go-User] suppress GUI dialog when calling x2goclient --version from subshell
I'd like to be able to capture the version of x2goclient in a script and report it back to the user externally. Use case for this would be an external info dialog when running x2goclient in a thin client environment. Bash script would look something like this: #!/bin/bash VER=$(x2goclient --version) echo Your version is $VER The client generates lots of additional info and warning messages to stderr, which I can suppress using grep -v. I can get a clean version number if I call it standalone on the cli: $ x2goclient --version 2>&1 | grep -v x2go When I do this, however, I get "Terminated" added to the output. But as soon as I try to capture the output in a subshell per the first snippet, the client can't get the tty and so opens the GUI About dialog. I've tried using the --hide option, but this doesn't help. I would like to just be able to invoke the client and get just the version number with no additional output. I could just query the OS package manager to get the installed version, but this doesn't give an accurate result if I'm running from a binary I've compiled from source. I'm working on hacking the code to get the result I want, but wonder if there is an easier solution. Any suggestion? Please let me know. Thanks. Seth -- Seth Galitzer Systems Coordinator Computing and Information Sciences Kansas State University http://www.cis.ksu.edu/~sgsax sg...@ksu.edu 785-532-7790 ___ x2go-user mailing list x2go-user@lists.x2go.org http://lists.x2go.org/listinfo/x2go-user
Re: [X2Go-User] Python3-x2go
Yes, I spent some time chatting on IRC today and think I've figured out how to hack the configs in the image to allow it. I even tried to make it extensible so it can be used for additional params. I'd be happy to send you my patch. I have some other ideas on further customizable elements of the desktop, but will need to read up on Qt for those. Thanks for the help. Seth On 03/10/2017 04:31 PM, Stefan Baur wrote: Am 10.03.2017 um 16:37 schrieb Seth Galitzer: I missed that, thanks for pointing it out. I was also wanting to replace the seal logo with my own, and change the color of the hamburger icon, but those aren't critical. Now to go back to digging in TCE docs to figure out how to include and use my background image. There's no option to do it with a simple boot parameter (yet), but we could include that in the future. In the meantime, you could set up your own TCE build environment and make the required changes, or take one of our pre-built ones, and use unsquashfs, apply your changes, then use mksquashfs again. And again, let me remind you we're available for commercial support. I.e. if you'd like to see the feature included as boot parameters in an official TCE release rather sooner than later, we can offer that for a price. Kind Regards, Stefan Baur ___ x2go-user mailing list x2go-user@lists.x2go.org http://lists.x2go.org/listinfo/x2go-user -- Seth Galitzer Systems Coordinator Computing and Information Sciences Kansas State University http://www.cis.ksu.edu/~sgsax sg...@ksu.edu 785-532-7790 ___ x2go-user mailing list x2go-user@lists.x2go.org http://lists.x2go.org/listinfo/x2go-user
Re: [X2Go-User] Python3-x2go
I missed that, thanks for pointing it out. I was also wanting to replace the seal logo with my own, and change the color of the hamburger icon, but those aren't critical. Now to go back to digging in TCE docs to figure out how to include and use my background image. Thanks. Seth On 03/10/2017 07:49 AM, Stefan Baur wrote: Am 04.03.2017 um 00:10 schrieb Seth Galitzer: I'd like to customize or brand the client workspace. It looks like this isn't possible with OOTB configuration, so I dove into the code... Quoth the X2GoClient manpage: --support-menu= Add a "Support..." submenu item to X2Go Client's "Help" menu. The support information is provided via a simple HTML file. Example: IT-Support for X2Go DAS-NETZWERKTEAM | Mike Gabriel: mailto:supp...@das-netzwerkteam.de;> supp...@das-netzwerkteam.de Thanks for using X2Go... --background= Use a custom/branded background image (SVG format) for X2Go Client's main window (i.e. replace the blue gradient area in X2Go Client by some background of your own (business/workgroup/project). These aren't good enough for you? What else did you have in mind? -Stefan ___ x2go-user mailing list x2go-user@lists.x2go.org http://lists.x2go.org/listinfo/x2go-user -- Seth Galitzer Systems Coordinator Computing and Information Sciences Kansas State University http://www.cis.ksu.edu/~sgsax sg...@ksu.edu 785-532-7790 ___ x2go-user mailing list x2go-user@lists.x2go.org http://lists.x2go.org/listinfo/x2go-user
Re: [X2Go-User] Python3-x2go
Wyse (Dell) D50D, running embedded Suse Linux, which seems to be a special compressed minimal image based on that distro. I have 56 of them in my lab. After trying for a year to find out if/how I could build my own X2go package, I finally talked to a tech who said it wouldn't be possible and they were in the process of rolling out a new Linux image across their product line. That's the one who also told me it was ordinary x86 hardware and there wasn't any reason I couldn't roll my own. Wyse used to have a pretty nice forum and wiki with user-contributed documentation, and I seem to recall finding info on building custom packages for the platform there. That all eventually disappeared when Dell acquired the company and I apparently didn't save anything I had gathered previously. That's why I'm building my own platform now. Seth On 03/01/2017 11:42 AM, brian town wrote: What thinclients are you using if you don't mind my asking On Mar 1, 2017 12:31 PM, "Seth Galitzer" <sg...@ksu.edu <mailto:sg...@ksu.edu>> wrote: Long story short: In my thin client lab, we use an RDP client to connect to Windows Remote Desktop Servers and have been using XDMCP to connect to Linux X desktops. I want to use X2go for the superior performance, reliability, and security over XDMCP, but am unable to do so due to limitations by the thin client platform vendor. The hardware is apparently ordinary x86 so I'm working on rolling my own minimal image to accomplish this. With the current platform, we have desktop shortcuts that to run the RDP/XDMCP clients to various hosts. I'd like to try and duplicate that with my new image so I don't have to retrain my users. I'm scripting freerdp-x11 for RDP connections (with NLA). After trying various ways to script x2goclient, I finally discovered pyhoca-cli and it works exactly the way I want it to. So that's why I hope it stays available in some form for a while. If there's a better way to run x2goclient completely "headless" or transparent to the user, I'd be happy to hear it. I've been searching through documentation and haven't found a way yet to do it the way that I want. I already have my PXE server setup, but haven't decided yet if I'm going to boot from a network image, or push the image down to the clients to pre-load for booting. My minimal debian image with all necessary tools is currently just over 2GB uncompressed. I'm not opposed to TCE, but I'd like to be able to at least customize the skin with our own branding. I'd love to hear anyone's thoughts on this. I'm relatively new to X2go, so I'm sure there are ways to use it to help with this project I haven't thought of yet. Thanks. Seth On 02/28/2017 06:04 PM, Stefan Baur wrote: Am 28.02.2017 um 21:24 schrieb Seth Galitzer: I hope this doesn't mean the pure CLI client is being abandoned. I just discovered it in getting a completely scripted solution for my thin clients. I'd be happy to help test should you need help with that. What exactly are you trying to achieve with the scripted PyHoca-CLI? There may be ways to achieve the same result using our new X2Go-ThinClientEditon (see <http://wiki.x2go.org/doku.php/doc:howto:tce <http://wiki.x2go.org/doku.php/doc:howto:tce>>, or <http://x2go.baur-itcs.de/x2go-tce-stable/ <http://x2go.baur-itcs.de/x2go-tce-stable/>> for builds you can start tinkering with), which uses the stock X2GoClient. Please let us know your use case, and we'll see what we can come up with. Also, as always, once you're happy with X2Go, please drop us a few lines we can publish on our "Success Stories" page (<http://wiki.x2go.org/doku.php/doc:success-stories:start#success_stories <http://wiki.x2go.org/doku.php/doc:success-stories:start#success_stories>>). -Stefan Baur ___ x2go-user mailing list x2go-user@lists.x2go.org <mailto:x2go-user@lists.x2go.org> http://lists.x2go.org/listinfo/x2go-user <http://lists.x2go.org/listinfo/x2go-user> -- Seth Galitzer Systems Coordinator Computing and Information Sciences Kansas State University http://www.cis.ksu.edu/~sgsax sg...@ksu.edu <mailto:sg...@ksu.edu> 785-532-7790 ___ x2go-user mailing list x2go-user@lists.x2go.org <mailto:x2go-user@lists.x2go.org> http://lists.x2go.org/listinfo/x2go-user <http://lists.x2go.org/listinfo/x2go-user> -- Seth Galitzer Systems Coordinator Computi
Re: [X2Go-User] Python3-x2go
Long story short: In my thin client lab, we use an RDP client to connect to Windows Remote Desktop Servers and have been using XDMCP to connect to Linux X desktops. I want to use X2go for the superior performance, reliability, and security over XDMCP, but am unable to do so due to limitations by the thin client platform vendor. The hardware is apparently ordinary x86 so I'm working on rolling my own minimal image to accomplish this. With the current platform, we have desktop shortcuts that to run the RDP/XDMCP clients to various hosts. I'd like to try and duplicate that with my new image so I don't have to retrain my users. I'm scripting freerdp-x11 for RDP connections (with NLA). After trying various ways to script x2goclient, I finally discovered pyhoca-cli and it works exactly the way I want it to. So that's why I hope it stays available in some form for a while. If there's a better way to run x2goclient completely "headless" or transparent to the user, I'd be happy to hear it. I've been searching through documentation and haven't found a way yet to do it the way that I want. I already have my PXE server setup, but haven't decided yet if I'm going to boot from a network image, or push the image down to the clients to pre-load for booting. My minimal debian image with all necessary tools is currently just over 2GB uncompressed. I'm not opposed to TCE, but I'd like to be able to at least customize the skin with our own branding. I'd love to hear anyone's thoughts on this. I'm relatively new to X2go, so I'm sure there are ways to use it to help with this project I haven't thought of yet. Thanks. Seth On 02/28/2017 06:04 PM, Stefan Baur wrote: Am 28.02.2017 um 21:24 schrieb Seth Galitzer: I hope this doesn't mean the pure CLI client is being abandoned. I just discovered it in getting a completely scripted solution for my thin clients. I'd be happy to help test should you need help with that. What exactly are you trying to achieve with the scripted PyHoca-CLI? There may be ways to achieve the same result using our new X2Go-ThinClientEditon (see <http://wiki.x2go.org/doku.php/doc:howto:tce>, or <http://x2go.baur-itcs.de/x2go-tce-stable/> for builds you can start tinkering with), which uses the stock X2GoClient. Please let us know your use case, and we'll see what we can come up with. Also, as always, once you're happy with X2Go, please drop us a few lines we can publish on our "Success Stories" page (<http://wiki.x2go.org/doku.php/doc:success-stories:start#success_stories>). -Stefan Baur ___ x2go-user mailing list x2go-user@lists.x2go.org http://lists.x2go.org/listinfo/x2go-user -- Seth Galitzer Systems Coordinator Computing and Information Sciences Kansas State University http://www.cis.ksu.edu/~sgsax sg...@ksu.edu 785-532-7790 ___ x2go-user mailing list x2go-user@lists.x2go.org http://lists.x2go.org/listinfo/x2go-user
Re: [X2Go-User] Python3-x2go
I hope this doesn't mean the pure CLI client is being abandoned. I just discovered it in getting a completely scripted solution for my thin clients. I'd be happy to help test should you need help with that. Thanks. Seth On 02/23/2017 04:26 PM, Mike Gabriel wrote: Hi Brian, On So 12 Feb 2017 22:24:13 CET, brian town wrote: Is there any port of the python-x2go to be useable by Python3? Unfortunately no. My biggest mistake ever was sticking too long with Python2. I don't yet have any plans for porting to Python3 because I am working on a rewrite outside of the X2Go context and not in Python. Still all uncooked. Mike -- Seth Galitzer Systems Coordinator Computing and Information Sciences Kansas State University sg...@ksu.edu 785-532-7790 ___ x2go-user mailing list x2go-user@lists.x2go.org http://lists.x2go.org/listinfo/x2go-user