aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/golang-web.scm
diff options
context:
space:
mode:
authorArtyom V. Poptsov <poptsov.artyom@gmail.com>2024-08-11 00:09:55 +0300
committerSharlatan Hellseher <sharlatanus@gmail.com>2024-08-21 13:43:25 +0100
commit2e275f75f69337bf1166e7c4a9b4e3f41a26a0f2 (patch)
treef2685742fc08396123a1637669e781f28792f95f /gnu/packages/golang-web.scm
parent4bf8136664a982158b901206c441e92baf4cee08 (diff)
downloadguix-2e275f75f69337bf1166e7c4a9b4e3f41a26a0f2.tar.gz
guix-2e275f75f69337bf1166e7c4a9b4e3f41a26a0f2.zip
gnu: Add go-github-com-huin-goupnp.
* gnu/packages/golang-web.scm (go-github-com-huin-goupnp): New variable. Change-Id: I490dfa3fd8e993124e2e57a907a7e40a213d8b0c Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Diffstat (limited to 'gnu/packages/golang-web.scm')
-rw-r--r--gnu/packages/golang-web.scm55
1 files changed, 55 insertions, 0 deletions
diff --git a/gnu/packages/golang-web.scm b/gnu/packages/golang-web.scm
index 90db38d31b..4edbd6c18e 100644
--- a/gnu/packages/golang-web.scm
+++ b/gnu/packages/golang-web.scm
@@ -1748,6 +1748,61 @@ user interface for humans, to read and edit before passing the JSON data to
the machine.")
(license license:expat)))
+(define-public go-github-com-huin-goupnp
+ (package
+ (name "go-github-com-huin-goupnp")
+ (version "1.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/huin/goupnp")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "04j5rmrfawjxcimiqpyjm9gm5phdndjxrmydf9f1ylij6m360nwl"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ ;; Submodules with their own go.mod files and packed as separated
+ ;; packages:
+ ;;
+ ;; - github.com/huin/goupnp/v2alpha
+ (for-each delete-file-recursively
+ (list "v2alpha"))))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/huin/goupnp"
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; XXX: Run all tests, workaround for go-build-system's lack of Go
+ ;; modules support.
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
+ (home-page "https://github.com/huin/goupnp")
+ (propagated-inputs
+ (list go-golang-org-x-sync))
+ (synopsis "UPnP client library for Go")
+ (description
+ "@code{goupnp} is a @acronym{Universal Plug and Play, UPnP} client
+library for Go.
+
+Core components:
+@itemize
+@item @code{goupnp}: core library - contains datastructures and utilities
+typically used by the implemented DCPs
+@item @code{httpu}: HTTPU implementation, underlies SSDP
+@item @code{ssdp}: SSDP client implementation (simple service discovery
+protocol) - used to discover UPnP services on a network
+@item @code{soap}: SOAP client implementation (simple object access protocol)
+- used to communicate with discovered services
+@end itemize")
+ (license license:bsd-2)))
+
(define-public go-github-com-jackpal-gateway
(package
(name "go-github-com-jackpal-gateway")