summary refs log tree commit diff
path: root/gnu/packages/guile-xyz.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/guile-xyz.scm')
-rw-r--r--gnu/packages/guile-xyz.scm37
1 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 03fd63837e..365f909c2c 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -2195,3 +2195,40 @@ serializing continuations or delimited continuations.")
        "This package allows you to compile a Guile Python file to any target
 from @code{tree-il}.")
       (license license:lgpl2.0+))))
+
+(define-public guile-file-names
+  (package
+    (name "guile-file-names")
+    (version "0.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://brandon.invergo.net/software/download/"
+                                  "guile-file-names/guile-file-names-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1kwx5hanl40960w2nhyga7ry4l6c3c57zdrihk4yajj87vn3pmi8"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-target-directory
+           (lambda _
+             (substitute* "src/Makefile.in"
+               (("guilemoddir = \\$\\(GUILE_SITE\\)")
+                "guilemoddir = $(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)\n"))
+             #t)))))
+    (inputs
+     `(("guile" ,guile-2.2)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (home-page "https://gitlab.com/brandoninvergo/guile-file-names")
+    (synopsis "Manipulate file names")
+    (description
+     "The @code{(file-names)} module provides tools for manipulating file
+names.  The module was built on the idea that doing anything more than a
+non-trivial modification of a file name string is a pain (making sure all
+slashes are present and accounted for, resolving @code{.} and @code{..}, etc).
+Inevitably, you have to break the string up into chunks and operate on that
+list of components.  This module takes care of that for you.")
+    (license license:lgpl3+)))