diff mbox series

[bug#55827] gnu: Add kismet.

Message ID DYTQMUydfrTj6_0ZVa_f2x-7yRzWANjbC0EXV50UqwCLyAt-OCA9eMiZ69CfErY-wu2Mk_x76YGD-C0zG2j_bo5DLyhIuD9Jmk-1GzzgPzQ=@protonmail.com
State Accepted
Headers show
Series [bug#55827] gnu: Add kismet. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

phodina June 7, 2022, 7:41 a.m. UTC
Hi,

this patch adds Kismet package.

----
Petr

Comments

M June 7, 2022, 7:50 a.m. UTC | #1
phodina via Guix-patches via schreef op di 07-06-2022 om 07:41 [+0000]:
> +	   (url "https://github.com/kismetwireless/kismet")

According  to <https://www.kismetwireless.net/downloads/#kismet-git>,
the main location is https://www.kismetwireless.net/git/kismet.git, the
other one is only a mirror.

Greetings,
Maxime.
M June 7, 2022, 8:06 a.m. UTC | #2
phodina via Guix-patches via schreef op di 07-06-2022 om 07:41 [+0000]:
> +	(inputs (list openssl libpcap libusb protobuf protobuf-c
> libwebsockets sqlite zlib))
[...]
> +    (license license:gpl2+)))

libwebsockets is lgpl2.1 according to the package definition.
Its dependency openssl is asl2.0.  According to the FSF, asl2.0 and
gpl2.0 are incompatible.  So possibly asl2.0 and lgpl2.1 are
incompatible (though I haven't seen any reliable claim for
compatibility or incompatibility for _l_gpl, maybe it is compatible)
and hence libwebsockets needs to be removed from kismet and Guix.

However, according to v4.0.0 in the changelog, it is Expat (‘MIT’)
licensed, so maybe all that's needed is correcting the license
information?

Greetings,
Maxime.
M June 10, 2022, 3:30 p.m. UTC | #3
phodina via Guix-patches via schreef op di 07-06-2022 om 07:41 [+0000]:
> Hi,
> 
> this patch adds Kismet package.
> 
> ----
> Petr

I have looked at how other distros package it:

* http://deb.debian.org/debian/pool/main/k/kismet/kismet_2016.07.R1-1.debian.tar.xz

  has a fix_manpage, fix_typos patch, openssl_1.1.0.
  The 'copyright' file that says some of it is gpl-2-only or BSD3.
  Adds a .desktop file.
  Are they still relevant for the 2022 version?

* fedora has a patch

  https://src.fedoraproject.org/rpms/kismet/blob/rawhide/f/kismet-install.patch

  is it relevant to Guix?

Greetings,
Maxime
diff mbox series

Patch

From 65af6af99389899c53ea57d5d15548b7a2bf3014 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Tue, 7 Jun 2022 08:11:33 +0200
Subject: [PATCH] gnu: Add kismet.

* gnu/packages/networking.scm (kismet): New variable.

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index bfa956149d..3e8d3e1a08 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -49,6 +49,7 @@ 
 ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
 ;;; Copyright © 2022 Simon South <simon@simonsouth.net>
 ;;; Copyright © 2022 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -114,6 +115,7 @@  (define-module (gnu packages networking)
   #:use-module (gnu packages image)
   #:use-module (gnu packages libevent)
   #:use-module (gnu packages libidn)
+  #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages kerberos)
@@ -129,6 +131,7 @@  (define-module (gnu packages networking)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages polkit)
   #:use-module (gnu packages pretty-print)
+  #:use-module (gnu packages protobuf)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-crypto)
@@ -547,6 +550,42 @@  (define-public python-pysctp
 SCTP-aware kernel (most are).")
     (license license:lgpl2.1+)))
 
+(define-public kismet
+  (package
+    (name "kismet")
+    (version "2022-02")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+	   (url "https://github.com/kismetwireless/kismet")
+	   (commit (string-append "kismet-" version "-R1"))))
+       (sha256
+        (base32
+         "01q86hrgpai433sc65dlnqy91qd26w5dwyp37adszqxfb6d2an1r"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list
+       #:tests? #f                      ; no test suite
+       #:phases
+       #~(modify-phases %standard-phases
+         (add-after 'unpack 'fix-install
+		 (lambda* _
+		 (substitute* "Makefile.in"
+		 (("-o \\$\\(INSTUSR\\) -g \\$\\(SUIDGROUP\\)") "")
+		 (("-o \\$\\(INSTUSR\\) -g \\$\\(INSTGRP\\)") "")))))))
+    (home-page "https://www.kismetwireless.net/")
+	(native-inputs (list pkg-config python python-2 perl))
+	(inputs (list openssl libpcap libusb protobuf protobuf-c libwebsockets sqlite zlib))
+    (synopsis "Wireless network and device detector")
+    (description
+     "This package provides a wireless network and device detector, sniffer,
+wardriving tool, and WIDS (wireless intrusion detection) framework.  Kismet
+works with Wi-Fi interfaces, Bluetooth interfaces, some SDR
+(software defined radio) hardware like the RTLSDR, and other specialized
+capture hardware")
+    (license license:gpl2+)))
+
 (define-public knockd
   (package
     (name "knockd")
-- 
2.35.1