Using KDocker with Ubuntu 10.04 Lucid Lynx

Asked by Mark A. Davis on 2010-10-12

With Ubuntu 8.10 (the first edition that I used), I didn't have any problem with KDocker docking an application at startup. Since then, starting with 9.04, I get an error message stating "Could not find a matching window for Sunbird in the specified time: 5 seconds.". Here is what I've put in Startup Applications - kdocker -l sunbird. How do I adjust KDocker to automatically dock Sunbird at startup? I don't like Alltray at all, and prefer KDocker. Thanks!

Question information

Language:
English Edit question
Status:
Solved
For:
Inactive kdocker (moved to https://github.com/user-none/KDocker) Edit question
Assignee:
No assignee Edit question
Solved by:
Mark A. Davis
Solved:
2010-11-07
Last query:
2010-11-07
Last reply:
2010-11-07

This question was reopened

John Schember (user-none) said : #1

One of two thing can be happening here:

1) Sunbird is opening it's window after KDocker's specified wait time of 5 seconds. You can use -d secs to increase the timeout.

2) Sunbird's launcher could be spawning a new process. When you do kdocker sunbird it starts sunbird and stores the PID for the sunbird process kdocker starts. If the sunbird launcher starts a new process with a different PID and exits kdocker just sees the application it started as having exited. in this case you will need to match by window name using -n name. The easiest thing to do is use xwininfo to determine the name of the window.

I'm not exactly sure what you're telling me to do. Exactly what would
you recommend that I put in the "Command" field in Startup Applications
to get KDocker to successfully dock Sunbird at startup? I know that
there _*has*_ to be a way to do this, and like I said, I prefer to use
KDocker if at all possible.

As I said before, what I was using in Ubuntu 8.10 was:

Command: kdocker -l sunbird

This command is no longer working properly. I'm having a hard time
figuring out how to use this -d, where exactly to put it to increase the
timeout, etc.

*Mark A. Davis*
*Cincinnati, OH
Home: (513) 252-2803
Fax: (916) 252-2806
Cell: (513) 628-6205

*

On 10/13/2010 08:46 PM, John Schember wrote:
> Your question #129125 on kdocker changed:
> https://answers.launchpad.net/kdocker/+question/129125
>
> Status: Open => Answered
>
> John Schember proposed the following answer:
> One of two thing can be happening here:
>
> 1) Sunbird is opening it's window after KDocker's specified wait time of
> 5 seconds. You can use -d secs to increase the timeout.
>
> 2) Sunbird's launcher could be spawning a new process. When you do
> kdocker sunbird it starts sunbird and stores the PID for the sunbird
> process kdocker starts. If the sunbird launcher starts a new process
> with a different PID and exits kdocker just sees the application it
> started as having exited. in this case you will need to match by window
> name using -n name. The easiest thing to do is use xwininfo to determine
> the name of the window.
>
>

John Schember (user-none) said : #3

Try:

kdocker -d 15 -l sunbird

If that doesn't work open sunbird. Open gnome-terminal, type xwininfo and click on the sunbird window. Post the output. xwininfo is part of the x11-utils package.

Also, do be aware I have no control over what version of KDocker Ubuntu ships. Right now 10.10 just shipped with an old version. So you will encounter some bugs that have already been fixed in the latest release. There are also some known issues with Ubuntu's packages.

Here is the output from xwininfo for Sunbird:

xwininfo: Window id: 0x3e00037 "October 2010 - Calendar"

   Absolute upper-left X: 0
   Absolute upper-left Y: 51
   Relative upper-left X: 0
   Relative upper-left Y: 51
   Width: 1024
   Height: 693
   Depth: 24
   Visual: 0x21
   Visual Class: TrueColor
   Border width: 0
   Class: InputOutput
   Colormap: 0x20 (installed)
   Bit Gravity State: NorthWestGravity
   Window Gravity State: NorthWestGravity
   Backing Store State: NotUseful
   Save Under State: no
   Map State: IsViewable
   Override Redirect State: no
   Corners: +0+51 -0+51 -0-24 +0-24
   -geometry 1024x693+0-24

Is there a PPA that I can put into my Software Sources that will update
KDocker to the latest version?

Thank you for all your help.

*Mark A. Davis*
*Cincinnati, OH
Home: (513) 252-2803
Fax: (916) 252-2806
Cell: (513) 628-6205

*

On 10/13/2010 09:26 PM, John Schember wrote:
> Your question #129125 on kdocker changed:
> https://answers.launchpad.net/kdocker/+question/129125
>
> Status: Open => Answered
>
> John Schember proposed the following answer:
> Try:
>
> kdocker -d 15 -l sunbird
>
> If that doesn't work open sunbird. Open gnome-terminal, type xwininfo
> and click on the sunbird window. Post the output. xwininfo is part of
> the x11-utils package.
>
> Also, do be aware I have no control over what version of KDocker Ubuntu
> ships. Right now 10.10 just shipped with an old version. So you will
> encounter some bugs that have already been fixed in the latest release.
> There are also some known issues with Ubuntu's packages.
>
>

John Schember (user-none) said : #5

Okay try:

kdocker -n Calendar -d 15 -l sunbird

As for a PPA, it is something I've been meaning to bring back due to issues with the Ubuntu packages. I will try to set some time aside either this or next weekend to install Ubuntu in a VM and get it taken care of.

Unfortunately, it didn't work. I guess my only resolve at this point is to start both KDocker and Sunbird at startup, and just left click my mouse on Sunbird to dock it. I'm not exactly sure what happened between the distros of Ubuntu 8.10 Intrepid Ibex and the future distros starting with Ubuntu 9.04 Jaunty Jackalope that KDocker won't automatically work anymore. (?) I still think that KDocker is awesome, though. I'll be patiently waiting for the PPA to update. If you have any further suggestions on what might work, please let me know.

John Schember (user-none) said : #7

> I'm not exactly sure what happened between the distros of Ubuntu 8.10 Intrepid Ibex and the future distros starting with Ubuntu 9.04 Jaunty Jackalope that KDocker won't automatically work anymore.

This is probably around the time that I took over the KDocker project. A large amount of the code base was rewritten along with moving from Qt 3 to Qt 4. This would be the transition from the 1.x series to the 4.x series.

> I'll be patiently waiting for the PPA to update.

PPA updated for 10.04 and 10.10, you can find it at https://launchpad.net/~kdocker-developers/+archive/kdocker-ppa

> If you have any further suggestions on what might work, please let me know.

How did you install sunbird? Also, what version of Ubuntu are you using? You only said you starting having this issue with 9.04 but you never said if you're still using it or if you've moved to a newer version. I've installed 10.04 and 10.10 in VirtualBox so I can figure out why it's not docking properly.

I'm currently using Ubuntu 10.04 Lucid Lynx. I'm sure that you're right in that the update from Q3 to Q4 may be contributing to KDocker behaving differently. I installed Sunbird 1.0b2pre from an rpm package that I downloaded from the Internet and converted to a deb package. Thanks for the updated PPA for KDocker. I appreciate all your help, and am looking forward to finding a solution to this matter.

John Schember (user-none) said : #9

This should fix your problem and cause sunbird to dock properly:

kdocker -n "calendar" -y -l sunbird

You did it, John! You're a genius! Like I said, I was determined to use KDocker even if I had to list both KDocker & "Application" both in Startup App's and click on "Application" manually. KDocker is a lot better than Alltray. Alltray doesn't retrieve the correct sized icons for the system tray, whereas KDocker does, you can't change the icon if you'd like in Alltray, whereas you can in KDocker, and I've just been a fan of KDocker ever since I first installed Ubuntu 8.10 Intrepid Ibex. I knew there HAD to be a way to make this work. Thanks A LOT for all your help! KUDOS!!!

I was having a similar issue. I wanted to start thunderbird minimized and docked on startup. The '-y' option worked.

I think that the '-n' option is not working properly. It must be fixed, i.e

$ kdocker -n "Thunderbird" thunderbird

gives a "Could not find a matching window for thunderbird in the specified time: 5 seconds.". My xwininfo output for thunderbird being

"
kempa@ubuntu:/tmp/kdocker-4.4$ xwininfo

xwininfo: Please select the window about which you
          would like information by clicking the
          mouse in that window.

xwininfo: Window id: 0x5400010 "Inbox - Unified Folders - Mozilla Thunderbird"
"

I think '-y' worked only because the child process that my 'thunderbird'(/usr/bin/thunderbird) binary forked also had thunderbird as a part of it's name(/usr/lib/thunderbird-3.1.6/thunderbird-bin). i.e

"
kempa@ubuntu:/tmp/kdocker-4.4$ /usr/bin/thunderbird &
kempa@ubuntu:/tmp/kdocker-4.4$ ps -ef | grep thunderbird
kempa 5176 1 0 13:16 ? 00:00:00 /bin/sh /usr/lib/thunderbird-3.1.6/thunderbird
kempa 5181 5176 0 13:16 ? 00:00:00 /bin/sh /usr/lib/thunderbird-3.1.6/run-mozilla.sh /usr/lib/thunderbird-3.1.6/thunderbird-bin
kempa 5185 5181 1 13:16 ? 00:00:11 /usr/lib/thunderbird-3.1.6/thunderbird-bin
"

@John Schember: Do get back to me if you need more information about the bug.

John Schember (user-none) said : #12

@Abhijith, I have been thinking about the issues brought up here and I have put together a blue print https://blueprints.launchpad.net/kdocker/+spec/n-matching for changes to make the behavior more intuitive. I'm going to leave the blueprint open for discussion for a bit in case anyone has suggestions then I will implement the changes.

@John, Had a look at the blueprint, https://blueprints.launchpad.net/kdocker/+spec/n-matching. You say

>a number of Mozilla applications fork but do not have their launcher exit. Thus, name based matching never takes place
> because the PID of the launcher is still active and the fall back never takes place.

Are you sure of this? From the 'ps' output of my previous post it appears that the launcher(/usr/bin/thunderbird) is also exiting and yet the name based matching isn't taking place.
"
I thus thought that '-n' option wasn't working, i.e a bug.

However assuming that '-n' is working as intended(name matching as a fallback when pid matching cannot take place) I agree with you that it would be more intuitive to have '-n' to actually mean the present '-n -y'.

I also say yes to the extending the functionality of '-n' part.

I couldn't figure out how to add this feedback in the blue print page(new to this). Hope this is ok.

John, I'm having a problem again with KDocker minimizing to the system tray. It's still working perfectly on the computer that I have Ubuntu 10.04 Lucid Lynx installed on, but I have another computer at a different location (my apartment) that I've just installed Ubuntu 10.04 Maverick Meerkat on. Here is the output from this computer.

xwininfo: Window id: 0x1200053 "November 2010 - Calendar"

  Absolute upper-left X: 0
  Absolute upper-left Y: 53
  Relative upper-left X: 0
  Relative upper-left Y: 53
  Width: 1024
  Height: 691
  Depth: 24
  Visual: 0x21
  Visual Class: TrueColor
  Border width: 0
  Class: InputOutput
  Colormap: 0x20 (installed)
  Bit Gravity State: NorthWestGravity
  Window Gravity State: NorthWestGravity
  Backing Store State: NotUseful
  Save Under State: no
  Map State: IsViewable
  Override Redirect State: no
  Corners: +0+53 -0+53 -0-24 +0-24
  -geometry 1024x691+0-24

I put kdocker -n "calendar" -y -l sunbird in Startup Applications on this computer, but no dice this time. Am I doing something wrong?

John Schember (user-none) said : #15

I'm not sure why it's working on only one of your computers. I've released a new version (4.5). It should be available in the PPA by the time you read this. 4.5 contains the previously mentioned changes in name based matching. Install 4.5 and see how that works for you. Also, 4.5 removes the -y option so be sure to remove it after you update.

That was the problem. I wasn't aware that I needed to remove the -y now. Thanks! It's working perfectly.