20 lines
681 B
Nix
20 lines
681 B
Nix
|
{ config, pkgs, ... }: let
|
||
|
cfg.serial = "17e064850405";
|
||
|
in {
|
||
|
systemd.services.usb_tether.serviceConfig = {
|
||
|
SyslogIdentifier = "usb_tether";
|
||
|
ExecStartPre = "${pkgs.android-tools}/bin/adb -s ${cfg.serial} wait-for-device";
|
||
|
ExecStart = "${pkgs.android-tools}/bin/adb -s ${cfg.serial} shell svc usb setFunctions rndis";
|
||
|
};
|
||
|
services.udev.extraRules = /* sh */ ''
|
||
|
ACTION=="add", SUBSYSTEM=="net", KERNEL=="usb*", NAME="android"
|
||
|
|
||
|
ACTION=="add", SUBSYSTEM=="usb", ATTR{serial}=="${cfg.serial}", \
|
||
|
TAG+="systemd", ENV{SYSTEMD_WANTS}="usb_tether.service"
|
||
|
'';
|
||
|
systemd.network.networks.android = {
|
||
|
matchConfig.Name = "android";
|
||
|
DHCP = "yes";
|
||
|
};
|
||
|
}
|