-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dependency on eudev #731
Comments
This would be up to the maintainers to answer: |
TLP is no longer maintained by me, I recall leaving it up for grabs, either I'm misstaken or no ine has picked it up |
I will have a look at the README when I will have time. In between, |
@Vouivre I've found a way to achieve something similar, although I haven't still tried it for your package. Speaking in real terms:
This is just a proof of concept, but this mechanism has a lot of potential. IMO the script should read by itself a separate list of allowed devices, in order to avoid dependencies on specific device managers, but this is up for discussion. Maybe this could even be included in the core busybox package? |
Correct, a large number of udev rules are simply to set proper permissions on device paths -- if these packages only require We already suggest taking @Riteo's suggestion -- see how Dylan handles
The first option only helps people who use a 'default' KISS system. Option 2 would solve this problem on a per-package basis, which is probably preferred (the main repo should only really include what's necessary to "get off the ground" with KISS, not "extras" like Android devices when you have to install a package for that on top of what As for whether it's done automatically for users (like https://github.com/kiss-community/community/blob/main/community/oksh/post-install) as opposed to manually by users (like https://github.com/kiss-community/community/blob/main/community/openntpd/post-install) is up to the maintainer IMHO. |
@dilyn-corner the issue with auto install or even just manual configuration is that it's too unstructured by itself. What I proposed to include in |
Let me rephrase what I was trying to say: I don't know what your suggestion is accomplishing that isn't already solved, and the original aspect of this issue ("why do these things depend on
|
@dilyn-corner oh, sorry, maybe I didn't explain myself correctly. I'll try rephrasing everything for clarity; if even then the thing sounds dumb, sorry! The issue is simple: Swapping for eudev could be avoided pretty easily with just a custom script for detecting the right USB device using mdev, mdevd, uevent, hotplug or any other sane device/hotplug manager which can run a script with the (pretty much standard AFAICT) uevent arguments. That's the premise of this whole thing, and I think you got that correctly. The other part is the actual suggestion part. Your suggestion is fine, but I criticized the complexity in installing and one of those packages: the instructions are only for mdev and you still have to put an entry manually. That's why I proposed a more structured approach. It isn't going against your suggestion, it's trying to make it more hassle free. Since the whole deal depends on simple shell scripts run as root, I thought we could be inspired by another of Dylan's works: KISS's init framework and in particular, its init-agnostic hooks. I was thinking, why not make something simliar to So the idea would be the following: Instead of manually configuring everything, we could have a Then, to make it hassle free by default we could make
(I don't know if Then every package needing custom USB (or potentially even other, if so configured) hooks could put their own in there, without having to mess up with configurations or neeeding user intervention. This could also make it device manager agnostic, since it only relies on the kernel's own uevents (you could even literally run If that sounds too complicated obviously we can discard this idea, but at least I hope I made it clear. |
I understand all of this, but my claim is that essentially no extra work is basically required to not use If a specific package requires something over and above permission changes on dev nodes for it to work properly, then it should either do that manually or notify the user, a la It isn't that your suggestion is too complicated, it's that it's roughly just a shim over an already existing solution space. |
@dilyn-corner oh, are you telling me that we could avoid running a script directly? Like, taking the android example, doing something similar to this? |
Is it actually the case that for |
@dilyn-corner any name will work fine. |
(Sorry for the delay) Perhaps it's best to poke Dylan's brain about a more generic sort of device management framework. We should aim to be agnostic in this repository and conform with the upstream KISS standards and practices. |
@dilyn-corner Well the "infrastructure" would've been really just a common place to put scripts, to avoid manual and potentially messy copy-pastes. That was sort of my proposal, a generic device management framework of sort, after all we already have an init one which does even more of the proposed device manager framework. You're right though on the good practice of following upstream's conventions and as such I probably should've gone straight to Dylan in the first place. If you wish I can do it myself as soon as I have time. |
Sorry for not responding, I need a better understanding in this issue, but at the moment I can't. If something |
I'm back in this thread, sorry for the delay. @Riteo can you confirm me there is nothing to do on the package at the moment until you contact Dylan ? |
@Vouivre yes, exactly. Actually I don't think that a deep understanding of eudev will be actually needed, so don't worry. :) |
@Riteo Thank you! |
Assuming |
Yeah this issue can't really be fixed without some new radical solution made by someone and miraculously accepted by everyone or by Dylan and his public return. I agree on your decision. |
Continued in kiss-community/repo#89 |
Hi! I found out that a few packages depend on
eudev
:libgphoto2
chromium
(not really in thedepends
file, butpost-install
advises installing it orudev-zero
in order to pass some checks)tlp
usbutils
I tried removing the
eudev
dependency inusbutils
and it works fine. Since it's not immediately clear on why those packages depend on it and installing those (pretty popular) packages would require swapping a relatively important system component, would it be possible to document (or at least explain as a comment here) why iseudev
needed as a dependency of these packages, maybe even in the proposed per-packageREADME
file?The text was updated successfully, but these errors were encountered: