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")

Reply via email to