From 4be7cd0c0f53d6016b5033f9aa94184ab878ab7d Mon Sep 17 00:00:00 2001 From: imxyy_soope_ Date: Sun, 27 Jul 2025 20:50:53 +0800 Subject: [PATCH] feat(btreset): use usbutils/usbreset --- config/hosts/imxyy-nix/nixos.nix | 40 +------------------------------- 1 file changed, 1 insertion(+), 39 deletions(-) diff --git a/config/hosts/imxyy-nix/nixos.nix b/config/hosts/imxyy-nix/nixos.nix index 7a2baad..47cb6e0 100644 --- a/config/hosts/imxyy-nix/nixos.nix +++ b/config/hosts/imxyy-nix/nixos.nix @@ -22,7 +22,7 @@ let temp = line.split(" ") bus = temp[1] device = temp[3][:-1] - subprocess.run(["${lib.getExe usbreset}", f"/dev/bus/usb/{bus}/{device}"]) + subprocess.run(["${lib.getExe' pkgs.usbutils "usbreset"}", f"{bus}/{device}"]) return True if __name__ == "__main__": @@ -36,44 +36,6 @@ let with open("/tmp/.btreseted", "w"): ... ''; - usbreset = pkgs.writeCBin "usbreset" '' - #include - #include - #include - #include - - #include - - int main(int argc, char **argv) - { - const char *filename; - int fd; - int rc; - - if (argc != 2) { - fprintf(stderr, "Usage: usbreset device-filename\n"); - return 1; - } - filename = argv[1]; - - fd = open(filename, O_WRONLY); - if (fd < 0) { - perror("Error opening output file"); - return 1; - } - - printf("Resetting USB device %s\n", filename); - rc = ioctl(fd, USBDEVFS_RESET, 0); - if (rc < 0) { - perror("Error in ioctl"); - return 1; - } - printf("Reset successful\n"); - - close(fd); - return 0; - } - ''; in { security.pam.loginLimits = [