Re: [X2Go-User] x2gothinclient w/o pxe

2012-02-24 Thread Milan Knížek
Hello Jonathan,

it did get through, it is just that this mailing list does not send the 
messages back to the poster. You can have a look at the archives on the web to 
check the status.

regards,
Milan

Jonathan Brown jbs...@gmail.com napsal(a):

Hi all, (sending this again in plain text; I think it did not make it
through the first time because I had used html formatting)

A cursory reading of the online lit I found relating to x2gothinclient
seems to require that the stations all pxeboot...

I don't want thinclients that pxeboot.. what I need is a minimal OS
that is setup to autologin to X and then pyhoca-cli to the
x2go-server... can the x2gothinclient packages do this say on a
minimal debian install for the thinclient.. ?

Since I did not see this capability, I already built from scratch a
minimal Debian 6 that does an autologin into X using gdm/matchbox wm,
and then created a script that force loops a username/pw graphical
dialog using yad (zenity fork)... suffice it to say this works well...
but I'm thinking if x2gothinclient already had the capability to do
this then I did it all for nought.. except it was definitely a good
exercise...

The steps and scripts that I did do make this pxe-less x2g0
thin-client/kiosk follow ... I'm sure this can be quite improved...
actually the main thing I'd like to improve is to have the matchbox
wm/X on the local thin client be aware when there is no activity in
the x2go session, and if no activity, then kill or suspend the
pyhoca-cli session, thus going back to the yad login prompt, but I
haven't found a way to do this (normal logout of the x2go session of
course works fine and brings you back to the yad login prompt)... I
think the problem is that matchbox wm/X always thinks there is
activity when the x2go session is logged in/active, even when there is
no activity in the x2go session itself...

Any thoughts on any of the above would be appreciated!

Steps/scripts etc for x2g0 thin-client/kiosk:

I sort of used the following as a guide and modified some things:
http://www.alandmoore.com/blog/2011/11/05/creating-a-kiosk-with-linux-and-x11-2011-edition/

and went from there...

After initial Debian squeeze install with only ssh server:

Add x2go sources and install pyhoca-cli
apt-get install xorg
apt-get install gdm --no-install-recommends
apt-get install xautolock feh
wget
http://archive.ualinux.com/ubuntu/main/lucid/yad_0.15.0-1~webupd8~lucid_i386.deb
dpkg -i yad_0.15.0-1~webupd8~lucid_i386.deb
(the above is an ubuntu lucid yad deb package but it worked so I
didn't ask any further questions :)  ... there might be a better yad
package for squeeze but I could not find one)
adduser kiosk (my .xprofile etc examples are for user sagotech)
cp -r /home/kiosk /opt/;
cd /opt/kiosk/;
chmod -R a+r .;
touch .xprofile
chmod a+x .xprofile

To enable autologin of user into the minimal X/matchbox, add the
following to /etc/gdm/gdm.conf:

[daemon]
AutomaticLoginEnable=true
AutomaticLogin=USERNAME

my .xprofile:

root@lxtrms-thinclient-colodesk:~# cat /home/sagotech/.xprofile
xset s off
xset -dpms
matchbox-window-manager 
eval `cat /home/sagotech/.fehbg` 
xautolock -secure -time 10 -locker /usr/local/bin/suspend_pyhoca-cli.sh

while true; do
    rsync -qr --delete --exclude='.Xauthority' /opt/sagotech/ $HOME/
    exec /home/sagotech/start_pyhoca.sh
done

suffice it to say xautolock does not detect non-activity in an x2go
session so the suspend_pyhoca-cli.sh never ran:

root@lxtrms-thinclient-colodesk:~# cat
/usr/local/bin/suspend_pyhoca-cli.sh
#!/bin/bash
pyhoca-cli -S

(for background behind the yad login prompt):
root@lxtrms-thinclient-colodesk:~# cat /home/sagotech/.fehbg
feh --bg-scale '/usr/share/wallpaper/custom-bk-2.jpg'

The script that brings up the yad login prompt loop called from
.xprofile follows... so we have this loop inside the loop of the
.xprofile script... not sure if this necessary or a good thing etc.

root@lxtrms-thinclient-colodesk:~# cat /home/sagotech/start_pyhoca.sh
#!/bin/bash
while true; do
frmdata=$(yad --center --undecorated
--image=/usr/share/wallpaper/sago-header-mod.jpg --image-on-top
--button=gtk-ok:0 --title Login to Sago Linux Terminal Server
--form --field=AD username --field=Password:H)
frmusername=$(echo $frmdata | awk 'BEGIN {FS=| } { print $1 }')
frmpassword=$(echo $frmdata | awk 'BEGIN {FS=| } { print $2 }')
pyhoca-cli --server X.X.X.X -u $frmusername --password $frmpassword -c
startkde --sound none --kbd-layout us --kbd-type pc105/us -g
fullscreen --add-to-known-hosts
done

The above basically gives you a login prompt and forces you to enter a
login AND password and the password is hidden when you type it it puts
a nice header image at the top of the prompt.. it only gives an OK
button (no cancel)...  then passes off the username/pw to pyhoca-cli

So yeah I would like to improve this so that inactive x2go sessions
get suspended and go back to the yad login prompt... perhaps there is
a pyhoca-cli switch that does this that I'm not aware 

Re: [X2Go-User] x2gothinclient w/o pxe

2012-02-24 Thread Jonathan Brown
Mike, cool that sounds good.

On Fri, Feb 24, 2012 at 3:15 PM, Mike Gabriel
mike.gabr...@das-netzwerkteam.de wrote:
 Hi Jonathan,

 without having tested any of the steps described below, I feel that your
 approach has some great potential.

 Actually, it is something I planned to stuff into pyhoca-ltsp and use LDM as
 login manager.

 I won't have time during the next week, but I keep this mail highlighted and
 will return back to you later (2-3 weeks), ok?

 Thanks,
 Mike


 On Fr 24 Feb 2012 01:05:52 CET Jonathan Brown wrote:

 Hi all,

 A cursory reading of the online lit I found relating to x2gothinclient
 seems to require that the stations all pxeboot...

 I don't want thinclients that pxeboot.. what I need is a minimal OS that
 is
 setup to autologin to X and then pyhoca-cli to the x2go-server... can the
 x2gothinclient packages do this say on a minimal debian install for the
 thinclient.. ?

 Since I did not see this capability, I already built from scratch a
 minimal
 Debian 6 that does an autologin into X using gdm/matchbox wm, and then
 created a script that force loops a username/pw graphical dialog using yad
 (zenity fork)... suffice it to say this works well... but I'm thinking if
 x2gothinclient already had the capability to do this then I did it all for
 nought.. except it was definitely a good exercise...

 The steps and scripts that I did do make this pxe-less x2g0
 thin-client/kiosk follow ... I'm sure this can be quite improved...
 actually the main thing I'd like to improve is to have the matchbox wm/X
 on
 the local thin client be aware when there is no activity in the x2go
 session, and if no activity, then kill or suspend the pyhoca-cli session,
 thus going back to the yad login prompt, but I haven't found a way to do
 this (normal logout of the x2go session of course works fine and brings
 you
 back to the yad login prompt)... I think the problem is that matchbox wm/X
 always thinks there is activity when the x2go session is logged in/active,
 even when there is no activity in the x2go session itself...

 Any thoughts on any of the above would be appreciated!

 Steps/scripts etc for x2g0 thin-client/kiosk:

 OK so I pretty much used the guide from:

 http://www.alandmoore.com/blog/2011/11/05/creating-a-kiosk-with-linux-and-x11-2011-edition/

 and went from there...

 After initial Debian squeeze install with only ssh server:

 Add x2go sources and install pyhoca-cli
 apt-get install xorg
 apt-get install gdm --no-install-recommends
 apt-get install xautolock feh
 wget

 http://archive.ualinux.com/ubuntu/main/lucid/yad_0.15.0-1~webupd8~lucid_i386.deb
 dpkg -i yad_0.15.0-1~webupd8~lucid_i386.deb
 (the above is an ubuntu lucid yad deb package but it worked so I didn't
 ask
 any further questions :)  ... there might be a better yad package for
 squeeze but I could not find one)
 adduser kiosk (or whatever)
 cp -r /home/kiosk /opt/;
 cd /opt/kiosk/;
 chmod -R a+r .;
 touch .xprofile
 chmod a+x .xprofile

 my .xprofile:

 root@lxtrms-thinclient-colodesk:~# cat /home/sagotech/.xprofile
 xset s off
 xset -dpms
 matchbox-window-manager 
 eval `cat /home/sagotech/.fehbg` 
 xautolock -secure -time 10 -locker /usr/local/bin/suspend_pyhoca-cli.sh 
 while true; do
    rsync -qr --delete --exclude='.Xauthority' /opt/sagotech/ $HOME/
    exec /home/sagotech/start_pyhoca.sh
 done

 suffice it to say xautolock does not detect non-activity in an x2go
 session
 so the suspend_pyhoca-cli.sh never ran:

 root@lxtrms-thinclient-colodesk:~# cat
 /usr/local/bin/suspend_pyhoca-cli.sh
 #!/bin/bash
 pyhoca-cli -S

 (for background behind the yad login prompt):
 root@lxtrms-thinclient-colodesk:~# cat /home/sagotech/.fehbg
 feh --bg-scale '/usr/share/wallpaper/custom-bk-2.jpg'

 The script that brings up the yad login prompt loop called from .xprofile
 follows... so we have this loop inside the loop of the .xprofile script...
 not sure if this necessary or a good thing etc.

 root@lxtrms-thinclient-colodesk:~# cat /home/sagotech/start_pyhoca.sh
 #!/bin/bash
 while true; do
 frmdata=$(yad --center --undecorated
 --image=/usr/share/wallpaper/sago-header-mod.jpg --image-on-top
 --button=gtk-ok:0 --title Login to Sago Linux Terminal Server --form
 --field=AD username --field=Password:H)
 frmusername=$(echo $frmdata | awk 'BEGIN {FS=| } { print $1 }')
 frmpassword=$(echo $frmdata | awk 'BEGIN {FS=| } { print $2 }')
 pyhoca-cli --server X.X.X.X -u $frmusername --password $frmpassword -c
 startkde --sound none --kbd-layout us --kbd-type pc105/us -g fullscreen
 --add-to-known-hosts
 done

 The above basically gives you a login prompt and forces you to enter a
 login AND password and the password is hidden when you type it it puts a
 nice header image at the top of the prompt.. it only gives an OK button
 (no
 cancel)...  then passes off the username/pw to pyhoca-cli

 So yeah I would like to improve this so that inactive x2go sessions get
 suspended and go back to the yad login prompt... perhaps there is a
 pyhoca-cli