podrias incluirle a tu programa que chequee la existencia y el valor de la
varuiable XAUTHORITY. Para no correr en segundo plano relaizando esa
verificacion, yo te recomiendo que lo corras junto con el evento del
montage. Osea. temrina la aplicación si no esta la sesión andando.

Yo lo haría así:

#!/usr/bin/env ruby
while true

# una variable con el resultado
@xauth=ENV['XAUTHORITY'].nil?

      if @xauth.nil? or @xauth.length < 1
         exit 0
      else
         sleep 60
         #
         # el resto del programa aqui
         #
      end
end

# EOF

Osea, esa barrabazada asquerosa, verifica cada un minuto que la variable
exista en el entorno o que la variable tenga un valor. Si dicha
verificación falla, el programa termina pero si la variable existe,
verifica si el punto de montage existe, ose donde dice:

# el resto del programa aqui

Pondrias las instrucciones que verifican la existencia de dicho punto de
montaje....

conclución, el programa solo correo cuando X esta corriendo...

en teoria..

Habría que ver si la conducta de esa variable no es como yo estoy
planteando.


Thread name: "Re: [Gutl-l] Cómo crear daemon" 
Mail number: 3 
Date: Mon, Aug 05, 2013 
In reply to: alejandro 
>
> Déjame explicarme, la aplicación que hice lo que hace es monitorear
> si se ha montado/desmontado un dispositivo, y luego manda una
> notificación con notify-send. El caso es que para que la aplicación
> pinche como es deseable, necesito que se inicie cuando se inicie la
> parte gráfica (X server), y que se termine cuando se
> apague/reinicie/’salga de sección’. Hugo me dio tremenda solución,
> que se basa en colocar el script en /etc/X11/Xsession.d/, esa
> solución me pincho como justo yo quería. Pero hay un gran problema:
> No se termina el servicio cuando se cierra la sección, por lo que si
> sales, y luego entras a la sección n veces, las notificaciones salen
> n veces replicadas.
> 
> 
> On 2013-08-05 10:00, låzaro wrote:
> >primero especifica que tipo de daemon estas "creando"
> >
> >Osea, un programa que hace fork y pincha en segundo plano, o una
> >aplicacion
> >que simplemente quieres tirar pa atrá: "fulanito &" correrá la
> >aplicacion
> >fulanito en segundo plano.
> >
> >
> >Thread name: "[Gutl-l] Cómo crear daemon"
> >Mail number: 1
> >Date: Wed, Jul 31, 2013
> >In reply to: alejandro
> >>
> >>Necsito saber cómo crear un daemon en GNU. Probé con agregar mi
> >>aplicación en /etc/init.d y luego agregarle los enlaces simbólicos,
> >>pero no me funcionó. Tal vez estoy haciendo algo mal, por favor,
> >>ayuda con esto.
> 
> 
> -- 
> Este mensaje ha sido analizado por MailScanner
> en busca de virus y otros contenidos peligrosos,
> y se considera que est? limpio.
> 

> ______________________________________________________________________
> Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba.
> Gutl-l@jovenclub.cu
> https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l


-- 
-------- Warning! ------------
100'000 pelos de escoba fueron
introducidos satisfactoriamente
en su puerto USB.





-- 
Este mensaje ha sido analizado por MailScanner
en busca de virus y otros contenidos peligrosos,
y se considera que est� limpio.

______________________________________________________________________
Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba.
Gutl-l@jovenclub.cu
https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l

Responder a