mirror of
https://github.com/Theaninova/TheaninovOS.git
synced 2025-12-10 18:46:30 +00:00
feat: add usb sniffer
This commit is contained in:
10
flake.nix
10
flake.nix
@@ -50,6 +50,16 @@
|
||||
lpc21isp = prev.callPackage ./overlays/lpc21isp { };
|
||||
rquickshare = prev.callPackage ./overlays/rquickshare { };
|
||||
rastertokpsl-re = prev.callPackage ./overlays/rastertokpsl-re { };
|
||||
usb-sniffer = prev.callPackage ./overlays/usb-sniffer { };
|
||||
wireshark = prev.wireshark.overrideAttrs (
|
||||
finalAttrs: prevAttrs: {
|
||||
postInstall =
|
||||
prevAttrs.postInstall
|
||||
+ ''
|
||||
ln -s ${final.usb-sniffer}/bin/usb_sniffer $out/lib/wireshark/extcap/usb_sniffer
|
||||
'';
|
||||
}
|
||||
);
|
||||
plymouth = prev.plymouth.overrideAttrs (
|
||||
final: prev: {
|
||||
patches = prev.patches ++ [ ./overlays/plymouth/drm-close-fb.patch ];
|
||||
|
||||
@@ -79,7 +79,10 @@
|
||||
|
||||
airprint.enable = true;
|
||||
|
||||
udev.packages = with pkgs; [ android-udev-rules ];
|
||||
udev.packages = with pkgs; [
|
||||
android-udev-rules
|
||||
usb-sniffer
|
||||
];
|
||||
};
|
||||
|
||||
hardware = {
|
||||
@@ -98,6 +101,17 @@
|
||||
};
|
||||
};
|
||||
|
||||
virtualisation.oci-containers.containers.craftoria = {
|
||||
image = "eclipse-temurin:21-jre";
|
||||
volumes = [ "/home/theaninova/.config/craftoria:/craftoria" ];
|
||||
environment = { };
|
||||
ports = [ "25565:25565" ];
|
||||
workdir = "/craftoria";
|
||||
entrypoint = "/bin/bash";
|
||||
cmd = [ "startserver.sh" ];
|
||||
extraOptions = [ "--network=host" ];
|
||||
};
|
||||
|
||||
fonts = {
|
||||
fira-code = {
|
||||
enable = true;
|
||||
@@ -145,6 +159,7 @@
|
||||
usbutils
|
||||
usbimager
|
||||
uhubctl
|
||||
usb-sniffer
|
||||
pciutils
|
||||
htop
|
||||
unar
|
||||
@@ -167,7 +182,13 @@
|
||||
];
|
||||
|
||||
networking = {
|
||||
firewall.allowedUDPPorts = [ 50765 ];
|
||||
firewall = {
|
||||
allowedTCPPorts = [ 25565 ];
|
||||
allowedUDPPorts = [
|
||||
25565
|
||||
50765
|
||||
];
|
||||
};
|
||||
|
||||
networkmanager = {
|
||||
enable = true;
|
||||
|
||||
35
overlays/usb-sniffer/default.nix
Normal file
35
overlays/usb-sniffer/default.nix
Normal file
@@ -0,0 +1,35 @@
|
||||
{
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
pkg-config,
|
||||
libusb1,
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "usb_sniffer";
|
||||
version = "1d01a090";
|
||||
src = fetchFromGitHub {
|
||||
owner = "ataradov";
|
||||
repo = "usb-sniffer";
|
||||
rev = "6eb214825a345c8caeb84bb8f3f2881948348d09";
|
||||
hash = "sha256-RpIhNrZXNeUZdh3QHk1KI5Fk8S0MzlYQ4hf4ztnHUII=";
|
||||
};
|
||||
sourceRoot = "${src.name}/software";
|
||||
buildInputs = [
|
||||
pkg-config
|
||||
libusb1
|
||||
];
|
||||
patchPhase = ''
|
||||
substituteInPlace Makefile \
|
||||
--replace-fail '~/.local/lib/wireshark/extcap' \
|
||||
'${placeholder "out"}/bin/${pname}'
|
||||
'';
|
||||
preInstall = ''
|
||||
mkdir -p $out/bin
|
||||
'';
|
||||
postInstall = ''
|
||||
mkdir -p $out/lib/wireshark/extcap
|
||||
ln -s ${placeholder "out"}/bin/${pname} $out/lib/wireshark/extcap/usb_sniffer
|
||||
mkdir -p $out/lib/udev/rules.d
|
||||
cp ${src}/bin/90-usb-sniffer.rules $out/lib/udev/rules.d/90-usb-sniffer.rules
|
||||
'';
|
||||
}
|
||||
Reference in New Issue
Block a user