This includes me. I successfully develop commercial-quality stuff for Linux servers, also embedded for ARM devices (using Debian kernel so far). But the desktop is different.
> usually already present on the system
The hardware is just too diverse. I have following USB devices plugged into my desktop right now. USB 3.0 DisplayLink monitor: proprietary protocol, still experimental support on Linux, chip vendor only supports Ubuntu, monitor vendor doesn’t support any. Logitech C920 web camera: microphone, auto focus, on-board h264 codec. Logitech G700s: a mouse with 7 extra buttons and horizontal scrolling. Microsoft LifeChat LX6000: 2 way USB audio, OS volume controls, a couple extra buttons. Also wireless adapter for xbox gamepad: 6 analog axes, many buttons, two vibration motors, two way audio.
This includes me. I successfully develop commercial-quality stuff for Linux servers, also embedded for ARM devices (using Debian kernel so far). But the desktop is different.
> usually already present on the system
The hardware is just too diverse. I have following USB devices plugged into my desktop right now. USB 3.0 DisplayLink monitor: proprietary protocol, still experimental support on Linux, chip vendor only supports Ubuntu, monitor vendor doesn’t support any. Logitech C920 web camera: microphone, auto focus, on-board h264 codec. Logitech G700s: a mouse with 7 extra buttons and horizontal scrolling. Microsoft LifeChat LX6000: 2 way USB audio, OS volume controls, a couple extra buttons. Also wireless adapter for xbox gamepad: 6 analog axes, many buttons, two vibration motors, two way audio.