• [gentoo-user] X11 without udev/eudev

    From =?UTF-8?B?Q2FuZWsgUGVsw6FleiBWYWxkw@21:1/5 to karl@aspodata.se on Mon Aug 23 22:00:02 2021
    On Mon, Aug 23, 2021 at 11:07 AM <karl@aspodata.se> wrote:
    [...]

    It is inconvenient that thoose two goes away. Regarding udev, it has never supported serial mice, so it doesn't help me.


    What are you talking about? Udev doesn't "support" any hardware; as the
    manual page states[1], it: "supplies the system software with device
    events, manages permissions of device nodes and may create additional
    symlinks in the /dev/ directory, or renames network interfaces".

    If the kernel supports the hardware, udev will supply the corresponding
    event, so udev will generate the corresponding event for serial mice also (probably close to boot time).

    [...]

    Poeple write whatever software they want to or are paid to do. It is my
    call if I want to use that software or not.


    Well, yeah; but if you want to use software X, and X depends on Y, then you either use software Y or don't use software X. The dependency chain can and will grow depending on several factors, and it's the situation here if I'm
    not mistaken: you want to keep using keyboard and mice, those depend on libinput, and libinput depends on udev.

    There are alternatives, of course; some members have posted several working ones; but the fact is that either you accept the dependencies dictated by
    the software you want to use, or you need an alternative that *someone* has
    to write/debug/maintain, etc. You said: "[u]dev should be an optional
    daemon, utilized when the local administrator decides to do so," and that
    is simply not true: if a software you use decides to depend on udev, then
    you either use udev, or need to change to a different software.


    As I wrote before, udev does not handle serial mice, so udev does not
    solve anything for me nor does it help me in any way to run my systems.


    You are saying it wrong, you mean to say: "to handle serial mice, I don't
    need udev". And that is 100% completely true; you can keep a static /dev,
    don't use udev and create the device nodes by hand. But serial mice
    work great under udev also.

    The thing is, the *GREAT* majority of users need support for dynamic
    hardware, so the developers of most of the software in Linux solve the
    general problem: dynamic hardware (which includes static hardware also). So they do that, and you complain about daemons that are needed for other
    people other than you.

    But you didn't write the software that depends on udev; someone else
    (worrying about the general problem) did. So either you write your own
    version, or find someone else who does (again, check the alternatives).


    Udev is just something pushed on me for no gain except possible to satisfy some dependancy touted to be beneficial.


    For no gain *TO YOU*. You want software that someone else wrote to cater to *ONLY* your needs. That's not how it works; *MOST* developers will cater to
    the needs of the *MAJORITY* of users, and that includes the dynamic
    hardware scenario (which has been the case for all of the XXI century, by
    the way).


    So in this very specific case it can be considered "bloat" if you wish to
    use that kind of words.

    My guess is that it is more useful on laptop than on a desktop box or an industrial computer.


    Of course not; desktop and servers ("industrial computers") need dynamic hardware (hot swappable storage, anyone?, disconnect the webcam after the
    Zoom meeting?) Just because you in particular don't find it useful doesn't
    mean it isn't: the truth is, dynamic hardware users surpass static hardware users, and it has been the case for several decades now.


    As a side note, from what I understand, udev today is mostly
    about usb-devices because that is where the dynamic hardware comes
    from today (at least when we are not talking about hotplugging cpus, memory cards, io-cards and such (but that is more of a enterprise problem than a small system problem.


    It's not only USB; it's Bluetooth, Thunderbolt, eSATA and eSATAp, etc. The computing world is dominated by dynamic hardware; it has been so for at
    least the last two decades.


    Serial ports are darn easy to implement in hardware and softwere.


    Yes: but the software that *uses* mice doesn't care *ONLY* about serial
    port mice. They care about USB mice (which is the majority) and Bluetooth
    mice (which has the second place). Right now, serial mice have to be a
    distant third place, if at all.

    So the developers of software that deals with mice don't need to worry
    *ONLY* about your case; they need to worry about the general case. Which includes USB and Bluetooth (and whatever they invent in the future).

    E.g. if I have a program connecting to a device using a serial
    and it is disconnected, I can just reconnect it and nothing
    special happens, noting to be done in software except logging.
    The same device via usb, the dis-/reconnect will close the
    port and make it vanish forcing med to find out find out where the
    new /dev file is and reopen and reinitialize it.


    That is what udev+libinput solves, *exactly*. You answered yourself why it
    is needed *IN GENERAL* (not in your particular case).

    What you say about complexity etc., is true; but most developers care about servicing the *majority* of users (in this case, USB and Bluetooth users included), so if you want to use their software, that means accepting udev.
    If you don't like it, you need to stop using their software and either
    write your own or find someone else who does it (again, check the alternatives).

    In any case, complaining is useless: most sane developers always want to
    cover the majority of users. That's why udev is mandatory in most major and medium distros; in Gentoo it is used by default (BTW, they are preparing
    the deprecation of eudev in Gentoo[2]).

    Regards.

    [1] https://man7.org/linux/man-pages/man7/udev.7.html
    [2] https://archives.gentoo.org/gentoo-dev/message/dff4bf35636efef95f6d7926823b4e8d --
    Dr. Canek Peláez Valdés
    Profesor de Carrera Asociado C
    Departamento de Matemáticas
    Facultad de Ciencias
    Universidad Nacional Autónoma de México

    <div dir="ltr"><div dir="ltr">On Mon, Aug 23, 2021 at 11:07 AM &lt;<a href="mailto:karl@aspodata.se">karl@aspodata.se</a>&gt; wrote:</div><div dir="ltr">[...]</div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;
    border-left:1px solid rgb(204,204,204);padding-left:1ex">
    It is inconvenient that thoose two goes away. Regarding udev, it has never supported serial mice, so it doesn&#39;t help me.<br></blockquote><div><br></div><div>What are you talking about? Udev doesn&#39;t &quot;support&quot; any hardware; as the
    manual page states[1], it: &quot;supplies the system software with device events, manages permissions of device nodes and may create additional symlinks in the /dev/ directory, or renames network interfaces&quot;.</div><div><br></div><div>If the kernel
    supports the hardware, udev will supply the
  • From karl@aspodata.se@21:1/5 to All on Tue Aug 24 00:40:01 2021
    Dr. Canek Peláez Valdés:
    On Mon, Aug 23, 2021 at 11:07 AM <karl@aspodata.se> wrote:
    ...
    Regarding udev, it has never
    supported serial mice, so it doesn't help me.
    What are you talking about? Udev doesn't "support" any hardware; as the manual page states[1], it: "supplies the system software with device
    events, manages permissions of device nodes and may create additional symlinks in the /dev/ directory, or renames network interfaces".

    Why would I need such a thing, I don't need any changes to /dev.
    Even if I pop in a usb-disk, I just mount it.
    Udev do not in the slightest solve any of my needs.
    So why are you telling me that I must have it, yes, software
    dependancies are a problem. I'm interested in answers that tells me how
    to solve that without calling in extra software and deamons.

    If the kernel supports the hardware, udev will supply the corresponding event, so udev will generate the corresponding event for serial mice also (probably close to boot time).

    You can try gpm to do that.
    Udev do not do any way of serial mouce detection, never has.

    Poeple write whatever software they want to or are paid to do. It is my call if I want to use that software or not.
    Well, yeah; but if you want to use software X, and X depends on Y, then you either use software Y or don't use software X. The dependency chain can and will grow depending on several factors, and it's the situation here if I'm not mistaken: you want to keep using keyboard and mice, those depend on libinput, and libinput depends on udev.

    I'm not a passive consumer in this as you seem to believe.
    If I decide I will resurrect thoose x11 drivers, I will do so.
    ...

    As I wrote before, udev does not handle serial mice, so udev does not
    solve anything for me nor does it help me in any way to run my systems.
    You are saying it wrong, you mean to say: "to handle serial mice, I don't need udev". And that is 100% completely true; you can keep a static /dev, don't use udev and create the device nodes by hand. But serial mice
    work great under udev also.

    Yea, it does, simply because udev doesn't touch any serial mouse,
    you have to fill in your own xorg.conf section for that or use gpm
    in a console. Udev just cares about the serial port, not what is
    attached to that port

    It's not only USB; it's Bluetooth, Thunderbolt, eSATA and eSATAp, etc. The computing world is dominated by dynamic hardware; it has been so for at
    least the last two decades.

    Bluetooth adapters mostly comes in as a usb device, thought there might
    be thoose with an i2c connection for the embedded market.
    I don't know about thunderbolt.
    esata as well as sata just works well without udev.

    And I do not need a deamon to handle that.

    Serial ports are darn easy to implement in hardware and softwere.
    ..
    Yes: but the software that *uses* mice doesn't care *ONLY* about serial
    port mice. They care about USB mice (which is the majority) and Bluetooth mice (which has the second place). Right now, serial mice have to be a distant third place, if at all.

    Well, "if at all", so you agree with me that udev isn't for me.
    What I'm looking for is alternatives.

    So the developers of software that deals with mice don't need to worry
    *ONLY* about your case; they need to worry about the general case. Which includes USB and Bluetooth (and whatever they invent in the future).

    So, udev isn't for me, what do you complain about.
    I don't say to others to not use udev, I don't care about that.

    I ask, how can I make my case work without udev, because honsestly,
    it doesn't bring me shit and I'm not interesed in using software that
    doesn't do anything for me. The problem of device nodes and permission
    is already solved, I don't need pop-ups, I don't want automounting.
    Serial ports have been working for the last 70 years or more.
    So stop this, I never asked about udev or how to make that work.
    You are answering the wrong question.

    Regards,
    /Karl Hammar

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)