Tiny Core Linux

Tiny Core Extensions => TCE Q&A Forum => Topic started by: Drew on February 10, 2014, 10:58:17 AM

Title: (SOLVED) XDrdesktop
Post by: Drew on February 10, 2014, 10:58:17 AM
Real Tinycore noob here, just set up account.  Have been running the current edition as of 02/07/2014.  Like it a lot.  Exploring it's use at the thin client level.  Have it running on an Igel 5+ years old.  Seems to be running well.  Have installed rdesktop backend, have successfully connected to WIN Server 2008R2 without error.  This is great news, as the old .rdp client built into the Igel/linux OS was out of date, and no longer supported, which again, brings us to where we are now with trying to hang on to 50 or so thin clients, and keep using them. 

My issue is more related to a huge brain @%#$ I think, because I have seen posts related to installing XDrdesktop as a suitable GUI for rdesktop.  Problem is, I can't find it in the apps browser, or if it's not supposed to be there, I'm at a loss as to how to get it installed.  I feel like I'm almost there, but am missing that one piece of the puzzle being clouded by the brain fog.

Please, what am I missing?  Thanks ahead of time.
Title: Re: XDrdesktop
Post by: Rich on February 10, 2014, 12:00:13 PM
Hi Drew
XDrdesktop is just a script. It looks like all its dependencies are already in TC5.x so you should be able to just copy it from
the TC4.x repository. Open a terminal and:
Code: [Select]
wget -c http://repo.tinycorelinux.net/4.x/x86/tcz/XDrdesktop.tcz
wget -c http://repo.tinycorelinux.net/4.x/x86/tcz/XDrdesktop.tcz.dep
Copy the files to your  tce  directory. Use the  Apps  utility to check for and install missing dependencies. Please report
back on how it went.
Title: Re: XDrdesktop
Post by: Drew on February 10, 2014, 12:36:01 PM
Hi Rich,

Thanks for the quick response.  However, I'm getting a server not found error on the first command that you gave, haven't tried the second one yet.
Title: Re: XDrdesktop
Post by: Rich on February 10, 2014, 01:12:19 PM
Hi Drew
Sorry about that, try:
Code: [Select]
wget -c http://repo.tinycorelinux.net/4.x/x86/tcz/xdrdesktop.tcz
wget -c http://repo.tinycorelinux.net/4.x/x86/tcz/xdrdesktop.tcz.dep
Title: Re: XDrdesktop
Post by: Drew on February 10, 2014, 01:53:07 PM
Thanks for the correction.  Got the files.  Not sure about TC file structure, not great about copying files via command either, as I don't see a file manager built in.  May be one for download, but I would just as soon use this as an opportunity to become more familiar with command, at least enough to move things around.  Your other post mentioned to take the two files and copy them to TCE, extensions directory I guess?  Can you give me just a little more guidance here as to where things are in TC?  Thanks.
Title: Re: XDrdesktop
Post by: Rich on February 10, 2014, 02:00:38 PM
Hi Drew
Yes, you want to copy them to your extensions directory, try:
Code: [Select]
cp xdrdesk* /etc/sysconfig/tcedir/optional/
Title: Re: XDrdesktop
Post by: Drew on February 10, 2014, 02:12:47 PM
The command worked fine, thanks.  Was able to browse to the directory, and run 'ls' and it shows in the specified directory.  However, when I go to report missing dependencies, it shows "hsqs^K" (keymap dependency?) dependency is missing, and it errors out while trying to fetch it. 
Title: Re: XDrdesktop
Post by: Rich on February 10, 2014, 02:25:15 PM
Hi Drew
A quick Google search seems to suggest it may have something to do with squash file systems, though I don't know why that
should happen. Try using  Apps  to check which dependencies are installed from this list:
Code: [Select]
  bash.tcz                                     401408,   0.38 MB
  glib1.tcz                                     81920,   0.08 MB
  gtk1.tcz                                     733184,   0.70 MB
+ libao.tcz                                     20480,   0.02 MB
  libusb.tcz                                    32768,   0.03 MB
  ncurses-common.tcz                            12288,   0.01 MB
  ncurses.tcz                                  151552,   0.14 MB
  openssl-1.0.0.tcz                           1486848,   1.42 MB
  pcsc-lite.tcz                                 57344,   0.05 MB
  rdesktop.tcz                                 143360,   0.14 MB
  schumacher-clean-fonts.tcz                    28672,   0.03 MB
  Xdialog.tcz                                   36864,   0.04 MB
  xdrdesktop.tcz                                16384,   0.02 MB
And have it install the ones that are missing. Then have it  load  xdrdesktop.tcz , there should be a Local function for that.
Title: Re: XDrdesktop
Post by: Drew on February 10, 2014, 02:48:54 PM
Missing dependencies from list were ncurses-common.tcz, and ncurses.tcz.  Installed those, but still shows the hsqs.tcz dependency is missing, and fails to resolve it.  When I go to RUNprogram and try to start xdrdesktop, it's as if it's not even there.  Also, you mentioned squashFS.  I'm not sure we're talking about the same thing, but I have this installed on a CF card formatted to ext2.
Title: Re: XDrdesktop
Post by: Rich on February 10, 2014, 04:06:28 PM
Hi Drew
Enter this in a terminal:
Code: [Select]
tce-load -i /etc/sysconfig/tcedir/optional/xdrdesktop.tczIf you get an error, post the exact error message. You can copy from the terminal by holding down the left mouse button
and highlighting the text. Then paste into the browser by clicking the middle button.
Title: Re: XDrdesktop
Post by: Drew on February 10, 2014, 04:13:06 PM
Hi Rich,

Entered the command, and message says:

hsqs

     not found!

That's essentially saying the same thing that the dependency check did.  It's looking for hsqs, but it's not there.  Not sure how to resolve that yet.
Title: Re: XDrdesktop
Post by: Rich on February 10, 2014, 04:37:47 PM
Hi Drew
OK, I think I know what happened. One of the  .tcz  files is probably corrupted. hsqs is the signature at the beginning of
a squashed file which is what  .tcz  files are. Try this:
Code: [Select]
cd /etc/sysconfig/tcedir/optional/
wget -c http://repo.tinycorelinux.net/4.x/x86/tcz/xdrdesktop.tcz.md5.txt
for i in `ls *.md5.txt`; do md5sum -c $i; done
See if any errors are reported and redownload those extensions
Title: Re: XDrdesktop
Post by: Rich on February 10, 2014, 04:48:04 PM
Hi Drew
If you use this for the last command in my previous post:
Code: [Select]
for i in `ls *.md5.txt`; do md5sum -c $i | grep -v OK; doneit will only report the extensions with bad checksums.
Title: Re: XDrdesktop
Post by: Drew on February 10, 2014, 04:51:01 PM
Hi Rich,

Will tackle it tomorrow, closing up shop for today.  Thanks, will let you know how it goes.
Title: Re: XDrdesktop
Post by: Drew on February 11, 2014, 08:54:17 AM
Hi Rich,

Finally got it working after re-downloading the extensions, running the dependency check again, and updating dep files.  Not sure how the other file got corrupted, but anyway -- all is well that ends well.  Two problems though:  I guess I didn't configure the installation correctly, as it did not keep my extensions upon reboot.  I'm sure I told the installer to create the tce directory, but maybe I missed a step.   It's like nothing is there anymore except rdesktop which looks to be built in. 

I'm wondering if it isn't easier to simply build a looping .rdp script that runs at boot so a user is simply presented with a login screen.  If he/she doesn't login in time, then the script loops so they will get continued login screen presentations.  Of course, that will somehow need to be saved so that a reboot doesn't wreck the configuration.  That is where I will need further guidance.

Keyboard number pad isn't working either, perhaps I missed a step or two there as well.  The credit card reader, however, works flawlessly, a real bonus in my book.  It even works through the entire .rdp chain.  In other words, our users are connecting to an apps server, and from there, to another apps server that runs our ERP system, which is what finally interacts with the CC reader.  It works flawlessly while preserving alt-tab keyboard functions to switch between apps.

If I could find a reasonably simple method of storing a working configuration, then I will roll this out as a method of Igel updates.  It seems promising, but my lack of knowledge is the biggest hurdle right now.
Title: Re: XDrdesktop
Post by: Rich on February 11, 2014, 09:34:36 AM
Hi Drew
If you execute:
Code: [Select]
ls /etc/sysconfig/tcedir/optional/Do you see  xdrdesktop.tcz  show up?
Title: Re: XDrdesktop
Post by: Drew on February 11, 2014, 10:34:18 AM
Hi Rich,

Just to confirm, I've been messing around with it since my last post, and the extensions are still in the optional folder.  However, I discovered through poking around the onboot.lst file.  So I added xdrdesktop.tcz to that list, and it appears to be loading at boot now, there's even an icon that occupies a spot on the bar.

I still haven't successfully saved an .rdp file yet that the user can easily select to run.  I am also getting a warning message when logging out of the remote session that says the following: 
     
        WARNING: rdp_out_unistr:  iconv_open[ANSI_X3.4-1968 -> UTF-16LE] fail 0xffffffff

I can confirm that this warning is thrown by the backend, as the same error occurs when running the rdesktop connection from terminal.  xdrdesktop will beep at you and throw the warning window up.  But running rdesktop in terminal, you have to actually be paying attention to the terminal window where rdesktop is running so you can see the error once you lose your remote window -- no beep though.  Not sure if this is still keyboard related, as I also don't have a fully working keyboard yet.  Any thoughts?

Title: Re: XDrdesktop
Post by: Rich on February 11, 2014, 10:58:43 AM
Hi Drew
I run freeRDP and get warning messages too when I disconnect. I just ignore them.
Quote
I still haven't successfully saved an .rdp file yet that the user can easily select to run.
I wasn't aware that there were  .rdp  files. Though I don't use it, I happened to have  xdrdesktop  installed and all I find is
a file called  xdrdesktoprc  under  .rdesktop  in the home directory.
Title: Re: XDrdesktop
Post by: Drew on February 11, 2014, 11:28:56 AM
Typically, you have the option on .rdp GUI clients, like tsclient (another rdesktop frontend, I think for gtk) for example, to actually save a configuration, or hard code it in a manner of speaking.  It will generally save in the .rdp file extension (remote desktop protocol).  In either case, I would like to be able to run the correct rdesktop script at boot, or have a clearly visible .rdp file for any of our users to click on and run.

Must be something to the warning, but probably not harmful.  I do not get the warning on the Linux Mint box.  Oh well.
Title: Re: XDrdesktop
Post by: Rich on February 11, 2014, 11:42:59 AM
Hi Drew
Quote
WARNING: rdp_out_unistr:  iconv_open[ANSI_X3.4-1968 -> UTF-16LE] fail 0xffffffff
Try installing  glibc_gconv.tcz  and see if it goes away.

I use a script to connect to remote machines. If you want an icon to click on, you might want to create a personal extension
for that. There is information in the Wiki on that topic.
Title: Re: XDrdesktop
Post by: Drew on February 11, 2014, 11:47:34 AM
I actually don't mind running a script, something that would run at start-up so the user is presented with the login screen almost immediately.  But in case the user doesn't enter credentials soon enough, before the login screen goes away, then they will have to have some sort of recourse.  I supposed if the script is looping, then they will get the screen again in short order?  Is that advisable?
Title: Re: XDrdesktop
Post by: Rich on February 11, 2014, 11:56:46 AM
Hi Drew
I would have the script prompt for the credentials and then pass them on to  rdesktop.

Since I'm the only one using my computer I have my credentials included in the script so logon is automatic.
Title: Re: XDrdesktop
Post by: Drew on February 11, 2014, 12:26:08 PM
Two things:  First, not good at scripting really, need some guidance there.  I know how to used rdesktop in terminal, but as far as creating a script, I'm a bit lost.

Second, this script would need to run automatically upon boot, and if the user fails to enter credentials in time, the script would loop, or give them the login screen again if necessarily.  I suppose the script would also have to stop upon successful login.  If the user gets kicked off their session, then somehow the script would have to be re-run.  So I there, I think it starts to get a bit dicey. 

Maybe building my own extension is the way to go after all.
Title: Re: XDrdesktop
Post by: Rich on February 11, 2014, 01:02:16 PM
Hi Drew
I'm not very good at scripting either, mainly because I don't do it very often. I often use system scripts as guidelines and
for ideas. /usr/bin/ contains scripts beginning with  tce-  along with others. Here's something to try to get you started.
create a file in your home directory under  .local/bin/  called  loginremote.sh  containing:
Code: [Select]
#!/bin/sh
USERNAME=""
PASSWORD=""

while true
do
echo -n "Username: "
read USERNAME
echo -n "Password: "
read PASSWORD
echo $USERNAME $PASSWORD
rdesktop -u "$USERNAME" -p "$PASSWORD"
done
Add whatever other parameters you need to the  rdesktop  line. After you have created the file, execute:
Code: [Select]
chmod 755 ~/.local/bin/login.shThat will make it executable. Now create a file called  loginremote  in the  .wmx  directory. It should contain:
Code: [Select]
loginremote.sh &This will automatically start the  loginremote.sh  script once the GUI is displayed.
Title: Re: XDrdesktop
Post by: curaga on February 11, 2014, 01:05:11 PM
There is such an RDP example chapter in the core book, with a looping startup.
Title: Re: XDrdesktop
Post by: Drew on February 11, 2014, 01:26:24 PM
Rich,

After rebooting, the scripts no longer exist, so again, I haven't correctly installed TC in a way that makes changes like this persistent.

But, I appreciate the info, I'm sure it will help once I get bigger issues resolved.
Title: Re: XDrdesktop
Post by: Rich on February 11, 2014, 01:27:00 PM
Hi curaga
You'd think I would have known that, but I guess proofreading is not the same as reading for content.

@Drew: curaga has written a very fine book on Tinycore which in my opinion is a must read for all newcomers to Tinycore.
             http://forum.tinycorelinux.net/index.php/topic,16617.msg99213.html#msg99213
Title: Re: XDrdesktop
Post by: Rich on February 11, 2014, 01:31:22 PM
Hi Drew
Quote
After rebooting, the scripts no longer exist,
Did you run a backup?
Title: Re: XDrdesktop
Post by: Drew on February 11, 2014, 01:41:01 PM
I did not run a backup, again, not something I'm familiar with having to do to remember a system state.  But I suppose the bigger issue is I should read the book first.
Title: Re: XDrdesktop
Post by: Rich on February 11, 2014, 01:45:41 PM
Hi Drew
You do use the  Exit  icon on the bottom the the screen to reboot, don't you? There's a small dialog window that pops up
when you do. Backup Options  is listed there and should be set to  Backup.
Title: Re: XDrdesktop
Post by: Rich on February 11, 2014, 01:48:25 PM
Hi Drew
Post the result of:
Code: [Select]
showbootcodes
Title: Re: XDrdesktop
Post by: Drew on February 11, 2014, 04:01:39 PM
Hi Rich,

I started from scratch by installing Core to the CF card again.  I did it as a Frugal install to the whole card.  Installed with no boot codes specified.  Looks like the tce directory was created just fine.  Built the script per your specs and saved in .local/bin.  Ran the command to make it executable, but got a handful of usage guidelines back, guess that didn't work.  Also created the .sh file in .wmx, but that disappeared after shutdown/reboot. 
Title: Re: XDrdesktop
Post by: Rich on February 11, 2014, 04:13:24 PM
Hi Drew
Post the results of:
Code: [Select]
showbootcodes
mount | grep -v loop
Title: Re: XDrdesktop
Post by: Drew on February 12, 2014, 11:28:36 AM
Hi Rich,

Sorry it's been so long since getting back, been busy on other things.  I know you've requested for me to post results of showboot codes, and I haven't forgotten that.  But I wanted to actually get a working .sh before moving on.  Good news is, I finally got a working script to at least launch rdesktop with correct configuration, prompting user for standard win server credentials. 

Script is simply:

#!/bin/sh
rdesktop "plus whatever string of parameters here"

Installing glibc_gconv.tcz did clear up warnings in rdesktop, thanks for that.

By spending some time with it, things are starting to clear up, and work a bit smoother.  As far as extensions go, we need very few, which is a really good thing.  Users will get everything they need on the apps server they will be connecting to.  Decided not to make the script run at boot, too many unknowns.  For now, user can simply type the name of the .sh script in the RUN program field and away they go.  Would be nice to have an icon on the bar though.
Title: Re: (Solved) XDrdesktop
Post by: Rich on February 12, 2014, 03:51:00 PM
Hi Drew
There are instructions for creating personal icons here:
http://wiki.tinycorelinux.net/wiki:creating_personal_icons
Title: Re: (Solved) XDrdesktop
Post by: Drew on February 12, 2014, 03:51:20 PM
As it relates to XDrdesktop, I should technically call it solved, as I got the extension to work.  Now if I could only get cups to work.  Different topic.
Title: Re: (Solved) XDrdesktop
Post by: Drew on February 12, 2014, 03:53:45 PM
As it relates to XDrdesktop, I should technically call it solved, as I got the extension to work.  Now if I could only get cups to work.  Different topic.
Thanks Rich, that may come in handy.  As you may have noted, having a problem with cups.  Can't seem to get it going.  Suppose I should start another topic.  I've seen some of the older threads on a similar issue, but no luck.
Title: Re: (Solved) XDrdesktop
Post by: Rich on February 12, 2014, 03:56:33 PM
Hi Drew
Definitely start a new thread.