Bug 205719 - tpb shows OSD on *all* X11 server working with that X11 client
tpb shows OSD on *all* X11 server working with that X11 client
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: tpb (Show other bugs)
5
All Linux
medium Severity medium
: ---
: ---
Assigned To: Kevin Fenzi
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2006-09-08 03:57 EDT by Hans Ulrich Niedermann
Modified: 2007-11-30 17:11 EST (History)
1 user (show)

See Also:
Fixed In Version: 0.6.4-6.fc6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2006-12-12 21:34:28 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Hans Ulrich Niedermann 2006-09-08 03:57:24 EDT
Description of problem:

  I have one (main) ThinkPad which runs the X11 clients for an external XServer.
By default, tpb displays its OSD also on this other XServer, which makes no sense.

Version-Release number of selected component (if applicable):

  tpb-0.6.4-3.fc5

How reproducible:

  Every time.

Steps to Reproduce:
0. Find a ThinkPad with gdm and tpb.
1. Setup gdm to allow xdmcp.
2. Setup firewall to allow network access from external X11 server.
3. Start X11 server on another box.
4. Press the "change display brightness" or "change sound volume" buttons on the
main ThinkPad.
  
Actual results:

  The "Brightness" or "Volume" tpb OSD will now show on *all* connected XServers.
Expected results:

  The tpb OSD should show only on the XServer running on the main ThinkPad.
After all, the tpc OSD only displays the status of the main ThinkPad, and
nothing else.

Additional info:

My new, working /etc/X11/xinit/xinitrc.d/tpb.sh, which makes the tpb OSD show
only on the main ThinkPad (on all XServers actually running on that hardware),
but not on any external XServers:

#!/bin/sh
if echo "$DISPLAY" | grep "^:" > /dev/null; then
        /usr/bin/tpb -d
fi

This uses the fact that local DISPLAYs are something like ":0", ":0.0", ":1.1",
whereas external DISPLAYs are something like "192.168.15.35:0" or
"host.name.local:1".
Comment 1 Kevin Fenzi 2006-09-09 23:25:26 EDT
Thanks for the report. I will do some testing and see if your script or some 
other way to handle this case is the best way forward. 
Comment 2 Kevin Fenzi 2006-12-09 20:00:00 EST
Sorry that this report languished so long... ;( 

I don't see off hand any better way to handle this than your modification to the
tpb.sh script, so I have added that into a new release that I just pushed out...
It should show up on mirrors in the next few days. 

If you like, you can grab a (unsigned) copy from the build system to test: 
http://buildsys.fedoraproject.org/plague-results/fedora-5-extras/tpb/

Please let me know if you spot any problems. 
Comment 3 Kevin Fenzi 2006-12-12 21:34:28 EST
This version has been out with no reported problems for a few days, 
so I am going to go ahead and close this bug report. 

If you spot any problems with it feel free to re-open this bug or file a new one. 

Thanks again for the report... 

Note You need to log in before you can comment on or make changes to this bug.