summaryrefslogtreecommitdiff
path: root/gnu/packages/telephony.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/telephony.scm')
-rw-r--r--gnu/packages/telephony.scm136
1 files changed, 136 insertions, 0 deletions
diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index 5a7c3821ad..81621e9d4d 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -22,6 +22,7 @@
;;; Copyright © 2021 LibreMiami <packaging-guix@libremiami.org>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021 Demis Balbach <db@minikn.xyz>
+;;; Copyright © 2022 Thomas Albers Raviola <thomas@thomaslabs.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -53,6 +54,7 @@
#:use-module (gnu packages cpp)
#:use-module (gnu packages crypto)
#:use-module (gnu packages databases)
+ #:use-module (gnu packages sqlite)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages file)
@@ -65,6 +67,7 @@
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages libcanberra)
+ #:use-module (gnu packages libusb)
#:use-module (gnu packages linphone)
#:use-module (gnu packages linux)
#:use-module (gnu packages multiprecision)
@@ -77,6 +80,8 @@
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
+ #:use-module (gnu packages samba)
+ #:use-module (gnu packages security-token)
#:use-module (gnu packages serialization)
#:use-module (gnu packages speech)
#:use-module (gnu packages tls)
@@ -89,6 +94,7 @@
#:use-module (gnu packages readline)
#:use-module (gnu packages bison)
#:use-module (gnu packages flex)
+ #:use-module (gnu packages libevent)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix packages)
@@ -894,3 +900,133 @@ Initiation Protocol (SIP) and a multimedia framework.")
telephony functionality into custom Telegram clients.")
(home-page "https://github.com/zevlg/libtgvoip")
(license license:unlicense)))
+
+(define-public coturn
+ (package
+ (name "coturn")
+ (version "4.6.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/coturn/coturn")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "04d3c2lxc496zxx3nzqr9fskm2w57kqijdfq3wsa0yp2dp28yjkj"))))
+ (inputs
+ (list openssl
+ sqlite
+ libevent-with-openssl
+ hiredis))
+ (native-inputs
+ (list pkg-config))
+ (build-system gnu-build-system)
+ (synopsis "Implementation of a TURN and STUN server for VoIP")
+ (description
+ "This package provides a VoIP media traffic NAT traversal server and
+gateway. It implements the STUN (Session Traversal Utilities for NAT) and
+TURN (Traversal Using Relays around NAT) server protocols.")
+ (home-page "https://github.com/coturn/coturn")
+ (license license:bsd-3)))
+
+(define-public libosmocore
+ (package
+ (name "libosmocore")
+ (version "1.7.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitea.osmocom.org/osmocom/libosmocore.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "147ld3xwb9k6vb56hk8q8jkcb5ahxl66v87vdhazb6rxj3frsjqf"))))
+ (arguments
+ (list #:phases #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-bin-sh
+ (lambda _
+ (substitute* '("git-version-gen" "src/exec.c")
+ (("/bin/sh")
+ (which "sh"))))))))
+ (inputs (list gnutls
+ libmnl
+ libusb
+ lksctp-tools
+ pcsc-lite
+ talloc))
+ (native-inputs (list autoconf
+ automake
+ coreutils
+ doxygen
+ libtool
+ pkg-config
+ python))
+ (build-system gnu-build-system)
+ (synopsis "Libraries for sharing common code between osmocom projects")
+ (description
+ "Libosmocore includes several libraries:
+@itemize
+@item libosmocore: general-purpose functions
+@item libosmovty: interactive VTY command-line interface
+@item libosmogsm: definitions and helper code related to GSM protocols
+@item libosmoctrl: shared implementation of the Osmocom control interface
+@item libosmogb: implementation of the Gb interface with its NS/BSSGP protocols
+@item libosmocodec: implementation of GSM voice codecs
+@item libosmocoding: implementation of GSM 05.03 burst transcoding functions
+@item libosmosim: infrastructure to interface with SIM/UICC/USIM cards
+@end itemize")
+ (home-page "https://osmocom.org/projects/libosmocore/wiki/Libosmocore")
+ (license license:gpl2+)))
+
+(define-public xgoldmon
+ ;; There are no releases nor tags.
+ (let ((revision "1")
+ (commit "f2d5372acee4e492f31f6ba8b850cfb48fbbe478"))
+ (package
+ (name "xgoldmon")
+ (version (git-version "1.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/2b-as/xgoldmon")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0dvgagqsbwq1sd5qjzk0hd9rxnv2vnmhazvv5mz4pj7v467amgdz"))))
+ (arguments
+ (list #:tests? #f ;no tests
+ #:make-flags #~(list (string-append "CC="
+ #$(cc-for-target)))
+ #:phases #~(modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'install
+ (lambda _
+ (let ((bin (string-append #$output "/bin"))
+ (doc (string-append #$output "/share/doc")))
+ (install-file "xgoldmon" bin)
+ (install-file "README" doc)
+ (install-file
+ "screenshot-mtsms-while-in-a-call.png" doc)))))))
+ (inputs (list libosmocore lksctp-tools talloc))
+ (native-inputs (list pkg-config))
+ (build-system gnu-build-system)
+ (synopsis "Displays cellular network protocol traces in Wireshark")
+ (description
+ "xgoldmon is an utility that converts the USB logging mode
+messages that various Intel/Infineon XGold modems send to the USB port to
+gsmtap. It then then sends them to a given IP address to enable users
+to view cellular network protocol traces in Wireshark.
+
+It supports the following smartphones:
+@itemize
+@item Samsung Galaxy S4, GT-I9500 variant
+@item Samsung Galaxy SIII, GT-I9300 variant
+@item Samsung Galaxy Nexus, GT-I9250 variant
+@item Samsung Galaxy SII, GT-I9100 variant
+@item Samsung Galaxy Note II, GT-N7100 variant
+@end itemize")
+ (home-page "https://github.com/2b-as/xgoldmon")
+ (license license:gpl2+))))