about summary refs log tree commit diff
path: root/pkgs/applications/networking/sniffers/savvycan
diff options
context:
space:
mode:
authorSimone Ruffini <simone.ruffini@tutanota.com>2023-04-13 13:21:28 +0200
committerSimone Ruffini <simone.ruffini@tutanota.com>2023-04-24 19:11:49 +0200
commitfeb8918934531e87891f83bfdfa55e887021d48e (patch)
tree405ff50390819286323dc604b5cb566ec4150059 /pkgs/applications/networking/sniffers/savvycan
parentb5d5077e33c6c7fe3cf9aa12c8a06e0786490512 (diff)
savvycan: init at 208
Apply suggestions from code review

Co-authored-by: Francesco Gazzetta <fgaz@fgaz.me>

SavvyCAN: fix typo in default.nix

Update pkgs/applications/networking/sniffers/savvycan/default.nix

Co-authored-by: Francesco Gazzetta <fgaz@fgaz.me>

Apply suggestions from code review

Co-authored-by: Francesco Gazzetta <fgaz@fgaz.me>

fix: style
Diffstat (limited to 'pkgs/applications/networking/sniffers/savvycan')
-rw-r--r--pkgs/applications/networking/sniffers/savvycan/default.nix64
1 files changed, 64 insertions, 0 deletions
diff --git a/pkgs/applications/networking/sniffers/savvycan/default.nix b/pkgs/applications/networking/sniffers/savvycan/default.nix
new file mode 100644
index 0000000000000..b9d791603fce8
--- /dev/null
+++ b/pkgs/applications/networking/sniffers/savvycan/default.nix
@@ -0,0 +1,64 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, qtbase
+, qttools
+, qmake
+, qtserialbus
+, qtserialport
+, qtdeclarative
+, wrapQtAppsHook
+}:
+
+stdenv.mkDerivation rec {
+
+  pname = "savvycan";
+  version = "208";
+
+  src = fetchFromGitHub {
+    owner = "collin80";
+    repo = "SavvyCAN";
+    rev = "V${version}";
+    hash = "sha256-agvCl8c7LqGyIKe0K3PdzuBUqTJZtUr434134olbUMw=";
+  };
+
+  buildInputs = [ qtbase qttools qtserialbus qtserialport qtdeclarative ];
+
+  nativeBuildInputs = [ qmake wrapQtAppsHook ];
+
+  meta = with lib; {
+    description = "QT based cross platform canbus tool";
+    homepage = "https://savvycan.com/";
+    changelog = "https://github.com/collin80/SavvyCAN/releases/tag/${version}";
+    maintainers = with maintainers; [ simoneruffini ];
+    platforms = platforms.all;
+    license = licenses.mit;
+    mainProgram = "SavvyCAN";
+    longDescription = ''
+      SavvyCAN is a cross platform QT based C++ program. It is a CAN bus reverse
+      engineering and capture tool. It was originally written to utilize EVTV
+      hardware such as the EVTVDue and CANDue hardware. It has since expanded to be
+      able to use any socketCAN compatible device as well as the Macchina M2 and
+      Teensy 3.x boards. SavvyCAN can use any CAN interface supported by QT's
+      SerialBus system (PeakCAN, Vector, SocketCAN, J2534, etc) It can capture and
+      send to multiple buses and CAN capture devices at once. It has many functions
+      specifically meant for reverse engineering data found on the CAN bus:
+      - Ability to capture even very highly loaded buses
+      - Ability to connect to many dongles simultaneously
+      - Scan captured traffic for data that looks coherent
+      - Show ASCII of captured data to find things like VIN numbers and traffic to
+        and from the radio
+      - Graph data found on the bus
+      - Load and Save many different file formats common to CAN capture tools (Vector
+        captures, Microchip, CANDo, PCAN, and many more)
+      - Load and Save DBC files. DBC files are used to store definitions for how data
+        are formatted on the bus. You can turn the raw data into things like a RPM,
+        odometer readings, and more.
+      - UDS scanning and decoding
+      - Scripting interface to be able to expand the scope of the software
+      - Best of all, it's free and open source. Don't like something about it? Change
+        it!
+    '';
+  };
+
+}