summaryrefslogtreecommitdiffstatshomepage
path: root/etc
diff options
context:
space:
mode:
Diffstat (limited to 'etc')
-rw-r--r--etc/systemd/system/integrated-camera-off@.service12
-rw-r--r--etc/udev/rules.d/60-camera-priority.rules2
2 files changed, 14 insertions, 0 deletions
diff --git a/etc/systemd/system/integrated-camera-off@.service b/etc/systemd/system/integrated-camera-off@.service
new file mode 100644
index 0000000..6d7eaf8
--- /dev/null
+++ b/etc/systemd/system/integrated-camera-off@.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Disable the integrated camera while the HP camera is connected
+BindsTo=%i.device
+After=%i.device
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecCondition=/usr/bin/grep -qx 13d3 /sys/bus/usb/devices/1-8/idVendor
+ExecCondition=/usr/bin/grep -qx 56a6 /sys/bus/usb/devices/1-8/idProduct
+ExecStart=/usr/bin/sh -c 'printf 0 > /sys/bus/usb/devices/1-8/authorized'
+ExecStop=-/usr/bin/sh -c 'printf 1 > /sys/bus/usb/devices/1-8/authorized'
diff --git a/etc/udev/rules.d/60-camera-priority.rules b/etc/udev/rules.d/60-camera-priority.rules
new file mode 100644
index 0000000..a12d5a6
--- /dev/null
+++ b/etc/udev/rules.d/60-camera-priority.rules
@@ -0,0 +1,2 @@
+# Disable the integrated camera while the HP external camera is connected.
+ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="03f0", ATTR{idProduct}=="794a", TAG+="systemd", ENV{SYSTEMD_WANTS}+="integrated-camera-off@.service"