linux-hotplug.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Using udev rules to launch an X application
@ 2006-08-09  0:04 Roshan Mansinghani
  2006-08-09  1:23 ` Greg KH
  2006-08-09  7:38 ` Kay Sievers
  0 siblings, 2 replies; 3+ messages in thread
From: Roshan Mansinghani @ 2006-08-09  0:04 UTC (permalink / raw)
  To: linux-hotplug

I have the following line in 10-custom.rules:

BUS="usb", SYSFS{product}="Palm Handheld*", KERNEL="ttyUSB*",SYMLINK="pilot", 
MODE="666", RUN+="su - roshan -c '/usr/bin/jpilot'"

When I connect my palm pilot to my computer and press the hotsync button, udev 
correctly creates a symbolic link /dev/pilot.  However, the jpilot 
application is not launched.

As a test, I previously had changed the Run argument to :  

RUN+="su - roshan -c 'ls > /tmp/test'"

This worked as expected.  Is there anything special that needs to be done when 
the application is an X application rather than a CLI one?

Thanks.

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid\x120709&bid&3057&dat\x121642
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Using udev rules to launch an X application
  2006-08-09  0:04 Using udev rules to launch an X application Roshan Mansinghani
@ 2006-08-09  1:23 ` Greg KH
  2006-08-09  7:38 ` Kay Sievers
  1 sibling, 0 replies; 3+ messages in thread
From: Greg KH @ 2006-08-09  1:23 UTC (permalink / raw)
  To: linux-hotplug

On Tue, Aug 08, 2006 at 07:04:57PM -0500, Roshan Mansinghani wrote:
> I have the following line in 10-custom.rules:
> 
> BUS="usb", SYSFS{product}="Palm Handheld*", KERNEL="ttyUSB*",SYMLINK="pilot", 
> MODE="666", RUN+="su - roshan -c '/usr/bin/jpilot'"
> 
> When I connect my palm pilot to my computer and press the hotsync button, udev 
> correctly creates a symbolic link /dev/pilot.  However, the jpilot 
> application is not launched.
> 
> As a test, I previously had changed the Run argument to :  
> 
> RUN+="su - roshan -c 'ls > /tmp/test'"
> 
> This worked as expected.  Is there anything special that needs to be done when 
> the application is an X application rather than a CLI one?

Yes, you need to set up the X environment properly, as you are being
spawned as root, from a daemon.  That doesn't make it simple to run X
programs :)

good luck,

greg k-h

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid\x120709&bid&3057&dat\x121642
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Using udev rules to launch an X application
  2006-08-09  0:04 Using udev rules to launch an X application Roshan Mansinghani
  2006-08-09  1:23 ` Greg KH
@ 2006-08-09  7:38 ` Kay Sievers
  1 sibling, 0 replies; 3+ messages in thread
From: Kay Sievers @ 2006-08-09  7:38 UTC (permalink / raw)
  To: linux-hotplug

On Tue, 2006-08-08 at 19:04 -0500, Roshan Mansinghani wrote:
> I have the following line in 10-custom.rules:
> 
> BUS="usb", SYSFS{product}="Palm Handheld*", KERNEL="ttyUSB*",SYMLINK="pilot", 
> MODE="666", RUN+="su - roshan -c '/usr/bin/jpilot'"
> 
> When I connect my palm pilot to my computer and press the hotsync button, udev 
> correctly creates a symbolic link /dev/pilot.  However, the jpilot 
> application is not launched.
> 
> As a test, I previously had changed the Run argument to :  
> 
> RUN+="su - roshan -c 'ls > /tmp/test'"
> 
> This worked as expected.  Is there anything special that needs to be done when 
> the application is an X application rather than a CLI one?

Never start any long-running application from an udev event process
without detaching and changing the session, it will block the event
process and may break udev's operation until udev's timeout will kill
it.

It can't work for X, and udev is not the right place to do such stuff
anyway. Use HAL, run something in your user session, that is already
connected to X, listens to HAL and starts your application, when you get
a signal from HAL, that a device with a matching capability has shown
up.

Kay


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid\x120709&bid&3057&dat\x121642
_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2006-08-09  7:38 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-08-09  0:04 Using udev rules to launch an X application Roshan Mansinghani
2006-08-09  1:23 ` Greg KH
2006-08-09  7:38 ` Kay Sievers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).