summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorArun Isaac <arunisaac@systemreboot.net>2021-07-09 12:36:21 +0530
committerArun Isaac <arunisaac@systemreboot.net>2021-08-01 19:46:58 +0530
commit5b6447fccedd372b065f7f6de042614f8091b1be (patch)
treed37c7acf8fba8d4e102829f0b0d1ab9b47df9e23 /gnu/packages
parent7aa2972bfaed8cf2dccfd0d5bc165ca3a36ab907 (diff)
downloadguix-5b6447fccedd372b065f7f6de042614f8091b1be.tar.gz
gnu: Add go-github-com-klauspost-compress.
* gnu/packages/golang.scm (go-github-com-klauspost-compress): New variable.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/golang.scm33
1 files changed, 33 insertions, 0 deletions
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 5a7f27bc91..0d5993d2c4 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -67,6 +67,7 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages syncthing)
   #:use-module (gnu packages terminals)
   #:use-module (gnu packages textutils)
   #:use-module (gnu packages tls)
@@ -8352,3 +8353,35 @@ is a low-level framework for building crypto protocols.  Noise protocols
 support mutual and optional authentication, identity hiding, forward secrecy,
 zero round-trip encryption, and other advanced features.")
     (license license:bsd-3)))
+
+(define-public go-github-com-klauspost-compress
+  (package
+    (name "go-github-com-klauspost-compress")
+    (version "1.13.1")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/klauspost/compress")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+          (base32
+            "0ydnf9rizlhm8rilh14674qqx272sbwbkjx06xn9pqvy6mmn2r3r"))))
+    (build-system go-build-system)
+    (arguments
+     `(#:import-path "github.com/klauspost/compress"
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'reset-gzip-timestamps 'fix-permissions
+           (lambda* (#:key outputs #:allow-other-keys)
+             ;; Provide write permissions on gzip files so that
+             ;; reset-gzip-timestamps has sufficient permissions.
+             (for-each make-file-writable
+                       (find-files (assoc-ref outputs "out") ".gz$")))))))
+    (propagated-inputs
+     `(("go-github-com-golang-snappy" ,go-github-com-golang-snappy)))
+    (home-page "https://github.com/klauspost/compress")
+    (synopsis "Go compression library")
+    (description "@code{compress} provides various compression algorithms.")
+    (license license:bsd-3)))