[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

udev rules for usb devices?



This is more of a packaging question I guess, but I thought someone here might know best too…

 

I was having a face2face discussion with Maitland at the recent GNU Radio Conference, about this, and I don’t think we came to a conclusion.

 

When making a package for USB devices, that need udev rules, where should the udev rule go?

 

 

The specific example is, for IIO devices that have the library, utils, and a -dev package.

IIO devices are oscilloscopes, Software Defined Radios, Sensors, etc – (it’s a kernel subsystem).

 

We don't want to keep a large list of USB PID/VIDs, so in our udev rule, so, we check iio_info, and set any found IIO device to 666.

https://github.com/analogdevicesinc/libiio/blob/master/libiio.rules.cmakein

 

This assumes that iio_info is accessible/runnable for the root user.

 

Today, iio_info is included in the libiio-utils package:

https://packages.debian.org/bullseye/amd64/libiio-utils/filelist

 

and the library libiio doesn’t have it (iio_utils or the udev rule)

https://packages.debian.org/bullseye/amd64/libiio0/filelist

 

which that means when someone installs the base library (libiio), they can’t actually use any USB devices (as a non-root user), since the udev rule isn’t installed, and the udev rule is dependent on the libiio-utils package.

 

It’s not in libiio-dev either, but that makes sense, since non-root users want to use and run applications too.

https://packages.debian.org/bullseye/arm64/libiio-dev/filelist

 

 

Thanks for the pointers.

-Robin


Reply to: