[BRLTTY] Udev being fussy

Keith Wessel keith at wessel.com
Mon Feb 4 16:00:46 EST 2019


Getting closer. I went back to look at the udev rules file you package with
the Redhat 5.6 RPMs. I saw that, if system is being used, you run
brltty@[devname].service which, obviously, doesn't work if I don't have the
fancier system unit files. So, I changed it to just run brltty.service but
left the rest of your RPM-based udev rules in tact. When I plugged in the
display, brltty started and stayed running!

Half way there.

When I unplugged the display, no attempt was made to stop brltty. So, when I
reconnected the display, nothing happened. Of course, if brltty 5.2 was
re-detecting and reconnecting to a display, it would have worked, but if
that was happening, I'd just ben running brltty as a service at boot and not
bothering with this. :)

Your brltty_systemd section of the udev rules sends processing to brltty_end
if the action isn't add. So, am I correct that, when system is present, your
udev rules start brltty for the connected display but don't stop it? And, in
this case, the probing from inside brltty is used to reconnect?

If so, I think I'm back to building 5.6 from source. I'm toying with this
idea, since I have no experience with building ebuilds, of building rpms and
using Gentoo's limited rpm support.

Thanks for all the help on this,
Keith


-----Original Message-----
From: Keith Wessel <kwessel76 at gmail.com> On Behalf Of Keith Wessel
Sent: Saturday, February 2, 2019 2:41 PM
To: 'Informal discussion between users and developers of BRLTTY.'
<brltty at brltty.app>
Subject: RE: [BRLTTY] Udev being fussy

Hi, Dave,

Thanks for the udevadm control --reload. I didn't know udevadm, but that's a
good one to know. I already knew how to get system to reload its components
from disk; in this case, I hadn't changed any of those, but I did it,
anyway, for good measure. Sadly, even after a udevadm control --reload after
renaming the brltty rules to get them out of the way (I even moved them
completely out of /lib/udev/rules.d to be certain it wasn't reading them
with my .old extension, even though I know udev doesn't do that), brltty
still fails to redetect the display after I reconnect it. I've got it
running with a systemctl start brltty.

And I know last night with the brltty-wrapper for udev in place, it was
re-reading the rules file and calling the wrapper based on systemctl status
system-udevd. But as I said, it was still killing it after 3 minutes.

I'll tinker with the udev bit a little more, but running brltty as a service
would definitely be simpler if I can get that working instead.

Do you think the reconnect issues with brltty running as a service could be
my older version of brltty? Since I'm still on 5.2, and as I recall you did
some major work on reconnects around 5.5, might I benefit from being on the
latest version? It might mean building from source, but I'll do that if
needed. It's not that painful.

Thanks,
Keith


-----Original Message-----
From: BRLTTY <brltty-bounces at brltty.app> On Behalf Of Dave Mielke
Sent: Friday, February 1, 2019 11:10 PM
To: Informal discussion between users and developers of BRLTTY.
<brltty at brltty.app>
Subject: Re: [BRLTTY] Udev being fussy

[quoted lines by Keith Wessel on 2019/02/01 at 22:11 -0600]

>First, to clarify as I think I confused you when I mentioned Centos. 
>This is my home system that I'm working with which, as I mentioned in 
>my first message, is running Gentoo.

Okay, so what I said about RecHat maybe wanting to manage brltty their own
way may well have been wrong. Thanks for the clarification.

As for your probems(s), yes, you do need to tell udev when its rules have
been chagned and systemd when its units have been changed.

   For udev: udevadm control --reload
   For systemd: systemctl daemon-reload 

The make files for the latest brltty in Autostart/Systemd/ and
Autostart/Udev/ both support "make reload".

Neither of these commands stops anything. For systemd, you should systemctl
stop, then modify the units, then systemctl daemon-reload, then systemcl
start.
For udev, you'll need to exlicitly kill whatever you want to first stop.

It isn't clear to me how you modified the udev rules file. Just take the one
from the latest brltty.

--
I believe the Bible to be the very Word of God: http://Mielke.cc/bible/
Dave Mielke            | 2213 Fox Crescent | WebHome: http://Mielke.cc/
EMail: Dave at Mielke.cc  | Ottawa, Ontario   | Twitter: @Dave_Mielke
Phone: +1 613 726 0014 | Canada  K2A 1H7   |
_______________________________________________
This message was sent via the BRLTTY mailing list.
To post a message, send an e-mail to: BRLTTY at brltty.app For general
information, go to: http://brltty.app/mailman/listinfo/brltty




More information about the BRLTTY mailing list