aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/compression.scm
diff options
context:
space:
mode:
authorArtyom V. Poptsov <poptsov.artyom@gmail.com>2024-07-13 14:13:14 +0300
committerSharlatan Hellseher <sharlatanus@gmail.com>2024-08-12 23:09:06 +0100
commit80ee348d10713698cbf118213e0334a19c5ec810 (patch)
tree6711324eca888736dac572c14e56e23ebdd2664c /gnu/packages/compression.scm
parent393f4a1f58f079901cd4cf75895be6a550190aa2 (diff)
downloadguix-80ee348d10713698cbf118213e0334a19c5ec810.tar.gz
guix-80ee348d10713698cbf118213e0334a19c5ec810.zip
gnu: Add heatshrink.
* gnu/packages/compression.scm (heatshrink): New variable. * gnu/packages/patches/heatshrink-add-cmake.patch: New file. * gnu/local.mk (dist_patch_DATA): Add "heatshrink-add-cmake.patch". Change-Id: I0beccdcaed22e47ac6bfe522497e0759a315813d Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Diffstat (limited to 'gnu/packages/compression.scm')
-rw-r--r--gnu/packages/compression.scm40
1 files changed, 40 insertions, 0 deletions
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 370b7714f1..7ed8ebe43d 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -40,6 +40,7 @@
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2024 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2024 David Elsing <david.elsing@posteo.net>
+;;; Copyright © 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -574,6 +575,45 @@ than gzip and 15 % smaller output than bzip2.")
(license (list license:gpl2+ license:lgpl2.1+)) ; bits of both
(home-page "https://tukaani.org/xz/")))
+(define-public heatshrink
+ (package
+ (name "heatshrink")
+ (version "0.4.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/atomicobject/heatshrink/")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0sdhvk27yz8kahw18j8pddbpkgl78v8rh8fx6wspc3acj7w7yvrn"))
+ ;; Add CMake build script, wanted by prusa-slicer and libbgcode, which are the
+ ;; only users of this library (see
+ ;; <https://github.com/NixOS/nixpkgs/pull/269758/commits/fa36136ceed0e2c58e0c9e21492a7e60c3a64470>.)
+ (patches (search-patches "heatshrink-add-cmake.patch"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ ;; XXX: No tests available with CMake (see
+ ;; <https://github.com/atomicobject/heatshrink/pull/77>.)
+ #:tests? #f))
+ (home-page "https://github.com/atomicobject/heatshrink/")
+ (synopsis "Data compression library for embedded/real-time systems")
+ (description
+ "A data compression/decompression library for embedded/real-time systems.
+
+Among its features are:
+@itemize
+@item Low memory usage (as low as 50 bytes.) It is useful for some cases with less
+than 50 bytes, and useful for many general cases with less than 300 bytes.
+@item Incremental, bounded CPU use. It can be used to chew on input data in
+arbitrarily tiny bites. This is a useful property in hard real-time environments.
+@item Can use either static or dynamic memory allocation.
+@end itemize
+")
+ (license license:isc)))
+
(define-public lhasa
(package
(name "lhasa")