smallorange / intel-ipu6-camera-hal

1 stars 0 forks source link

Installation of the package fails on Fedora Silverblue #2

Closed zecakeh closed 1 year ago

zecakeh commented 1 year ago

Hi, I have been trying to install this packages as part of following this guide to have IPU6 camera support on my system.

My system is running Fedora Silverblue 38, and installation fails for this package, intel-ipu6-camera-hal with the following messages:

rpm-ostree(ipu6-camera-hal.post)[9615]: Failed to send reload request: No such file or directory
rpm-ostree(ipu6-camera-hal.post)[9618]: 0000:00:05.0: Failed to write 'change' to '/sys/devices/pci0000:00/0000:00:05.0/uevent': Read-only file system

I believe the issue comes from these lines:

https://github.com/smallorange/intel-ipu6-camera-hal/blob/3b4b3a81e19bde40709c4d0d23ed07f0c93277e7/ipu6-camera-hal.spec#L91-L92

It seems other packages that call udevadm in the post-install script make it conditional so it doesn't fail with systems based on rpm-ostree. See this Fedora package PR for example.

Would you be willing to accept a PR doing exactly this?

smallorange commented 1 year ago

Thank you for reporting this :)

Wondering! What is the CPU SKU, model, and brand of your laptop? The IPU should be placed at the same PCI address.

zecakeh commented 1 year ago

The CPU is an Intel® Core™ i5-1135G7 in a Microsoft Surface Pro 8.

The IPU is at this same PCI address. It's just that the install is done in a container (due to the nature of rpm-ostree) and the post-install script cannot access udev.

smallorange commented 1 year ago

OKay. I'll put the check in the specfile. :) The latest build is here https://koji.rpmfusion.org/koji/taskinfo?taskID=598409 You can try it.

zecakeh commented 1 year ago

The installation still fails with the exact same output.

garnacho commented 1 year ago

FTR, the important piece of the Wireshark change used as an example above is:

if [ -S /run/udev/control ]; then
...
fi

I.e. check that the udev socket file exists, because it does not when installing through rpm-ostree in Silverblue. Triggering immediate udev changes through udevadm is not necessary there since the package is not installed in the live system, and is included in the user overlay for future reboots instead, so this step can be skipped.

Other examples of similar changes to cater for Silverblue: https://src.fedoraproject.org/rpms/udisks2/pull-request/3, https://bugzilla.redhat.com/show_bug.cgi?id=1764565.

smallorange commented 1 year ago

Thank you for the information.

I'll update the package :)

smallorange commented 1 year ago

Hi,

I've updated the package with the patch above. The latest build can be found here https://koji.rpmfusion.org/koji/taskinfo?taskID=598451

zecakeh commented 1 year ago

Thanks, the installation works now. I'm closing this.