Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
hid-xpadneo, udev: Move udev rules up in rules priority
If we let udev evaluate our rules at position 60 (where most other input rules sit), we can actually make use of uaccess and seat tags. This allows proper access to the hidraw device because udev will now assign ACLs for the current seat user to the device nodes. Signed-off-by: Kai Krakow <[email protected]>
- Loading branch information
eee6d5b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You also need to update
dkms.post_remove
anddkms.post_install
because they are still using the old filename.eee6d5b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You should get an xpadneo superhero badge
eee6d5b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
DKMS is really dumb: It doesn't detect errors in the post install script, so our CI is useless here... Even if I force abort the post install script with an error, it happily continues saying everything went okay. I'll deal with that later and will push an update now fixing what you found. Thanks again.
eee6d5b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's annoying, it might be
worth to open an issue upstream.
Always a pleasure ^^
eee6d5b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah maybe... I already had to dive into the dkms source code to find a way to dump make.log to the console in case of errors so I could see it in the CI pipeline - it's an ugly hack. It just gets swallowed by dkms, leaving you a message to read this file for more details - of course it's already gone at that point because the CI bot will kick the machine from memory after the test is done. It would be beneficial if dkms had a switch to log verbosely. Looking at the code gives me nightmares: It's purely a monolithic shell script, and it's not checking for errors at uncountable places - it just assumes everything works fine and happily continues, leaving you with some undefined and broken system state. Sometimes, shell script is just not suitable for a task... :-\
Well, here's the report: dell/dkms#148
eee6d5b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Guess who also had an issue with dkms not allowing you to debug problems correctly? dell/dkms#94
eee6d5b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is why I added this
and this
But your suggestion in that report is misleading: The error may not be specific to some rule or makefile location, it may simply be a build error that gets hidden away by dkms. It really should have a verbose mode where it doesn't hide any output into log files that get purged by auto-build scripts afterwards. Because CI captures screen output, not log files.
eee6d5b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know the error is not specific to rule/makefile location but when it is, it's even harder to know the issue. With regular build errors I had no issue looking up the make.log and seeing where compilation failed.
My suggestion is just to warn about this possibility, not telling you this is for sure the problem, so I fail to see why it's misleading.
eee6d5b
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unless you don't have the build log... I had a problem where building locally worked just fine but in CI it didn't. But of course when CI posts to Github, the machine that built the project is already torn down, leaving you only with the console log - which points you to a make.log that's long gone.