Source1: %{name}.manifest
Source10: peripheral-io.udev.rules
Source11: peripheral-io.tmpfiles.conf
+Source12: apply-peripheral-io-perms
#Conflicts: peripheral-bus
BuildRequires: awk
BuildRequires: cmake
cp %{SOURCE1} ./%{name}.manifest
cp %{SOURCE10} .
cp %{SOURCE11} .
+cp %{SOURCE12} .
%build
MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
install -m0644 peripheral-io.tmpfiles.conf %{buildroot}/usr/lib/tmpfiles.d/peripheral-io.conf
mkdir -p %{buildroot}/usr/lib/udev/rules.d
install -m0644 peripheral-io.udev.rules %{buildroot}/usr/lib/udev/rules.d/90-peripheral-io.rules
+mkdir -p %{buildroot}/%{_libexecdir}/peripheral-io
+install -m0755 apply-peripheral-io-perms %{buildroot}/%{_libexecdir}/peripheral-io/apply-peripheral-io-perms
%post -p /sbin/ldconfig
%{_libdir}/lib%{name}.so*
/usr/lib/tmpfiles.d/peripheral-io.conf
/usr/lib/udev/rules.d/90-peripheral-io.rules
+%{_libexecdir}/peripheral-io/apply-peripheral-io-perms
%license LICENSE.APLv2
%files devel
SUBSYSTEM=="gpio", KERNEL=="gpiochip[0-9]*", ACTION=="add",\
MODE="0660", OWNER="root", GROUP="priv_peripheralio", SECLABEL{smack}="*"
-SUBSYSTEM=="gpio", KERNEL=="gpio*", ACTION=="add",\
- RUN+="/bin/chown root:priv_peripheralio /sys%p/value",\
- RUN+="/bin/chmod 0660 /sys%p/value",\
- RUN+="/bin/chsmack -a * /sys%p/value"
-SUBSYSTEM=="gpio", KERNEL=="gpio*", ACTION=="add",\
- RUN+="/bin/chown root:priv_peripheralio /sys%p/direction",\
- RUN+="/bin/chmod 0660 /sys%p/direction",\
- RUN+="/bin/chsmack -a * /sys%p/direction"
-SUBSYSTEM=="gpio", KERNEL=="gpio*", ACTION=="add",\
- RUN+="/bin/chown root:priv_peripheralio /sys%p/edge",\
- RUN+="/bin/chmod 0660 /sys%p/edge",\
- RUN+="/bin/chsmack -a * /sys%p/edge"
+SUBSYSTEM=="gpio", KERNEL=="gpio[0-9]*", ACTION=="add",\
+ RUN+="/usr/libexec/peripheral-io/apply-udev-file /sys%p value direction edge"
SUBSYSTEM=="pwm", KERNEL=="pwm*", ACTION=="change",\
- RUN+="/bin/chown root:priv_peripheralio /sys%p/%E{EXPORT}/period",\
- RUN+="/bin/chmod 0660 /sys%p/%E{EXPORT}/period",\
- RUN+="/bin/chsmack -a * /sys%p/%E{EXPORT}/period"
-SUBSYSTEM=="pwm", KERNEL=="pwm*", ACTION=="change",\
- RUN+="/bin/chown root:priv_peripheralio /sys%p/%E{EXPORT}/duty_cycle",\
- RUN+="/bin/chmod 0660 /sys%p/%E{EXPORT}/duty_cycle",\
- RUN+="/bin/chsmack -a * /sys%p/%E{EXPORT}/duty_cycle"
-SUBSYSTEM=="pwm", KERNEL=="pwm*", ACTION=="change",\
- RUN+="/bin/chown root:priv_peripheralio /sys%p/%E{EXPORT}/polarity",\
- RUN+="/bin/chmod 0660 /sys%p/%E{EXPORT}/polarity",\
- RUN+="/bin/chsmack -a * /sys%p/%E{EXPORT}/polarity"
-SUBSYSTEM=="pwm", KERNEL=="pwm*", ACTION=="change",\
- RUN+="/bin/chown root:priv_peripheralio /sys%p/%E{EXPORT}/enable",\
- RUN+="/bin/chmod 0660 /sys%p/%E{EXPORT}/enable",\
- RUN+="/bin/chsmack -a * /sys%p/%E{EXPORT}/enable"
+ RUN+="/usr/libexec/peripheral-io/apply-udev-file /sys%p/%E{EXPORT} period duty_cycle polarity enable"
SUBSYSTEM=="i2c-dev", KERNEL=="i2c-*", ACTION=="add", \
MODE="0660", OWNER="root", GROUP="priv_peripheralio", SECLABEL{smack}="*"