summary refs log tree commit diff
path: root/gnu/packages/elixir-xyz.scm
diff options
context:
space:
mode:
authorPierre-Henry Fröhring <phfrohring@deeplinks.com>2023-12-10 14:04:00 +0100
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2023-12-17 22:22:31 +0100
commite490763f2727b682c9a019ff7e7057e65aa5fbd5 (patch)
tree9e1611a4b33ba7b860dab9ff676a72ed66d6eca3 /gnu/packages/elixir-xyz.scm
parent4ee644f91874e5697b81ba3e9bcc1d8ab22839a7 (diff)
downloadguix-e490763f2727b682c9a019ff7e7057e65aa5fbd5.tar.gz
gnu: Add elixir-file-system.
* gnu/packages/elixir-xyz.scm (elixir-file-system): New variable.

Change-Id: I54e9c9069ddf150bb0c882775b0b2c9d5e59abd6
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Diffstat (limited to 'gnu/packages/elixir-xyz.scm')
-rw-r--r--gnu/packages/elixir-xyz.scm33
1 files changed, 33 insertions, 0 deletions
diff --git a/gnu/packages/elixir-xyz.scm b/gnu/packages/elixir-xyz.scm
index 66c364fb32..948d8aecc6 100644
--- a/gnu/packages/elixir-xyz.scm
+++ b/gnu/packages/elixir-xyz.scm
@@ -20,6 +20,8 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (gnu packages elixir)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system mix)
@@ -91,6 +93,37 @@ a NIF.")
     (home-page "https://hexdocs.pm/jason/")
     (license license:asl2.0)))
 
+(define-public elixir-file-system
+  (package
+    (name "elixir-file-system")
+    (version "0.2.10")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (hexpm-uri name version))
+       (sha256
+        (base32 "1p0myxmnjjds8bbg69dd6fvhk8q3n7lb78zd4qvmjajnzgdmw6a1"))
+       (snippet #~(begin
+                    (use-modules (guix build utils) (ice-9 ftw))
+                    (mkdir "source")
+                    (for-each (lambda (file)
+                                (when (not (member file '("." ".." "source")))
+                                  (rename-file file (string-append "source/" file))))
+                              (scandir "."))
+                    (with-directory-excursion "source"
+                      (invoke (string-append #+gzip "/bin/gunzip") "-v" "contents.tar.gz")
+                      (invoke (string-append #+tar "/bin/tar") "-xvf" "contents.tar")
+                      (delete-file "contents.tar")
+                      (delete-file "priv/inotifywait.exe"))))))
+    (build-system mix-build-system)
+    (propagated-inputs (list inotify-tools))
+    (arguments (list #:tests? #f)) ; no tests
+    (synopsis "File system change watcher")
+    (description "Provides a file system change watcher wrapper based on
+https://github.com/synrc/fs.")
+    (home-page "https://hexdocs.pm/file_system/")
+    (license license:wtfpl2)))
+
 ;;;
 ;;; Avoid adding new packages to the end of this file. To reduce the chances
 ;;; of a merge conflict, place them above by existing packages with similar