This is an automated email from the git hooks/post-receive script.
guix_mirror_bot pushed a commit to branch master
in repository guix.
The following commit(s) were added to refs/heads/master by this push:
new d73367a970 gnu: Add libplum.
d73367a970 is described below
commit d73367a9706cabe4ef8971a7ec970e785b9dd8a1
Author: bdunahu <[email protected]>
AuthorDate: Sun Jun 7 20:15:46 2026 -0400
gnu: Add libplum.
* gnu/packages/networking.scm (libplum): New variable.
Merges: https://codeberg.org/guix/guix/pulls/9141
Signed-off-by: Nguyễn Gia Phong <[email protected]>
---
gnu/packages/networking.scm | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 31a08e2283..6ef01d1c17 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -72,6 +72,7 @@
;;; Copyright © 2025, 2026 Ashish SHUKLA <[email protected]>
;;; Copyright © 2025 Jared Klingenberger <[email protected]>
;;; Copyright © 2026 Carlos Durán Domínguez <[email protected]>
+;;; Copyright © 2026 bdunahu <[email protected]>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -664,6 +665,42 @@ GLib-based library, libnice, as well as GStreamer elements
to use it.")
license:lgpl2.1+
license:mpl1.1))))
+(define-public libplum
+ (package
+ (name "libplum")
+ (version "0.6.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/paullouisageneau/libplum")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "156088n8x4qh6wsz5jb2mhsxv1sxn5i4f2axiqqs3agb29h5sp2q"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'check
+ ;; No tests, use the example as a test.
+ (lambda* (#:key tests? #:allow-other-keys)
+ ;; Binds ports and simulates network magic.
+ (when tests? (invoke "../build/example")))))))
+ (home-page "https://github.com/paullouisageneau/libplum")
+ (synopsis "Multi-protocol Port Mapping client library")
+ (description "libplum (Port Lightweight and Universal Mapping) is a
+high-level library which allows forwarding ports on Network Address
+Translators (NAT). Under the hood, it implements multiple protocols and
+automatically detects which one to use:
+@itemize
+@item Port Control Protocol (PCP)
+@item NAT Port Mapping Protocol (NAT-PMP)
+@item UPnP Internet Gateway Device Protocol (UPnP-IGD)
+@end itemize")
+ (license license:mpl2.0)))
+
(define-public librecast
(package
(name "librecast")