@@ -0,0 +1,14 @@
+[Unit]
+Description=Start LXQt session on virtual display for usb0
+After=x11vnc@%i.service
+Requires=x11vnc@%i.service
+
+[Service]
+User=das
+Environment=DISPLAY=:20
+ExecStart=/usr/bin/startlxqt
+Restart=on-failure
+[Install]
+WantedBy=multi-user.target
@@ -0,0 +1,10 @@
+Description=Start x11vnc server on virtual display for usb0
+Requires=xvfb@%i.service
+After=xvfb@%i.service
+Type=simple
+ExecStart=/usr/bin/x11vnc -display :20 -forever -shared -rfbport 5900 -nopw
@@ -0,0 +1,8 @@
+Description=Start Xvfb virtual display for usb0
+ExecStart=/usr/bin/Xvfb :20 -screen 0 1920x1080x24 -nolisten tcp
@@ -0,0 +1,4 @@
+SUBSYSTEM=="net", KERNEL=="usb*", SUBSYSTEMS=="usb", DRIVERS=="rndis_host" RUN+="/usr/local/bin/android_usb_remote.sh %k"
+ACTION=="add", SUBSYSTEM=="net", KERNEL=="usb0", TAG+="systemd", ENV{SYSTEMD_WANTS}="login-manager@usb0.service"
+ACTION=="remove", SUBSYSTEM=="net", KERNEL=="usb0", RUN+="/usr/bin/systemctl stop x11vnc@usb0.service xvfb@usb0.service login-manager@usb0.service"
@@ -0,0 +1,12 @@
+#!/bin/bash
+USB_IFACE="$1"
+#IP_ADDR="10.114.98.150" # actually this network is managed by DHCP on android side
+IP_ADDR="10.140.76.150" # actually this network is managed by DHCP on android side
+ # but we might get away with it being static
+ # has to be static as otherwise the address changes each
+ # time USB tethering is activated
+ip addr flush dev "$USB_IFACE"
+ip addr add "$IP_ADDR/24" dev "$USB_IFACE"
+ip link set "$USB_IFACE" up