unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#44253] [PATCH] gnu: Add guile-filesystem.
@ 2020-10-27 12:55 Leo Prikler
  2020-10-28 15:21 ` bug#44253: " Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Leo Prikler @ 2020-10-27 12:55 UTC (permalink / raw)
  To: 44253

* gnu/packages/guile-xyz.scm (guile-filesystem): New variable.
(guile2.0-filesystem guile2.2-filesystem): New variable.
---
 gnu/packages/guile-xyz.scm | 40 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 12ded23990..4322d3028b 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2020 Masaya Tojo <masaya@tojo.tokyo>
 ;;; Copyright © 2020 Jesse Gibbons <jgibbons2357@gmail.com>
 ;;; Copyright © 2020 Mike Rosset <mike.rosset@gmail.com>
+;;; Copyright © 2020 Leo Prikler <leo.prikler@student.tugraz.at>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -620,6 +621,45 @@ is not available for Guile 2.0.")
 (define-public guile3.0-fibers
   (deprecated-package "guile3.0-fibers" guile-fibers))
 
+(define-public guile-filesystem
+  (package
+    (name "guile-filesystem")
+    (version "0.1.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://gitlab.com/leoprikler/guile-filesystem.git")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1shmkc0y9r2sj3kw7hrsnamnp7y8xifkhf3m3rnfxczqg63k67vy"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("autoconf" ,autoconf-wrapper)
+       ("automake" ,automake)
+       ("pkg-config" ,pkg-config)
+       ("texinfo" ,texinfo)))
+    (inputs
+     `(("guile" ,guile-3.0)))
+    (home-page "https://gitlab.com/leoprikler/guile-filesystem")
+    (synopsis "Complementary library to Guile's built-in file system procedures")
+    (description "@code{guile-filesystem} provides a set of utility functions,
+that augment Guile's support for handling files and their names.")
+    (license license:lgpl3+)))
+
+(define-public guile2.0-filesystem
+  (package
+    (inherit guile-filesystem)
+    (name "guile2.0-filesystem")
+    (inputs `(("guile" ,guile-2.0)))))
+
+(define-public guile2.2-filesystem
+  (package
+    (inherit guile-filesystem)
+    (name "guile2.2-filesystem")
+    (inputs `(("guile" ,guile-2.2)))))
+
 (define-public guile-syntax-highlight
   (package
     (name "guile-syntax-highlight")
-- 
2.28.0





^ permalink raw reply related	[flat|nested] 4+ messages in thread

* bug#44253: [PATCH] gnu: Add guile-filesystem.
  2020-10-27 12:55 [bug#44253] [PATCH] gnu: Add guile-filesystem Leo Prikler
@ 2020-10-28 15:21 ` Ludovic Courtès
  2020-10-28 15:43   ` [bug#44253] " Leo Prikler
  0 siblings, 1 reply; 4+ messages in thread
From: Ludovic Courtès @ 2020-10-28 15:21 UTC (permalink / raw)
  To: Leo Prikler; +Cc: 44253-done

Hi,

Leo Prikler <leo.prikler@student.tugraz.at> skribis:

> * gnu/packages/guile-xyz.scm (guile-filesystem): New variable.
> (guile2.0-filesystem guile2.2-filesystem): New variable.

Applied, thanks!

However, note that I would not recommend adding 2.0/2.2 variants unless
we have a clear use case for it in Guix.

With my Guile hat on, I’d also recommend against using the (ice-9 …)
name space, which is in Guile’s backyard.  :-)

Ludo’.




^ permalink raw reply	[flat|nested] 4+ messages in thread

* [bug#44253] [PATCH] gnu: Add guile-filesystem.
  2020-10-28 15:21 ` bug#44253: " Ludovic Courtès
@ 2020-10-28 15:43   ` Leo Prikler
  2020-10-29 23:16     ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Leo Prikler @ 2020-10-28 15:43 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 44253-done

Hi,

Am Mittwoch, den 28.10.2020, 16:21 +0100 schrieb Ludovic Courtès:
> Hi,
> 
> Leo Prikler <leo.prikler@student.tugraz.at> skribis:
> 
> > * gnu/packages/guile-xyz.scm (guile-filesystem): New variable.
> > (guile2.0-filesystem guile2.2-filesystem): New variable.
> 
> Applied, thanks!
> 
> However, note that I would not recommend adding 2.0/2.2 variants
> unless
> we have a clear use case for it in Guix.
In this case I simply wanted to make sure, that people could include it
in projects, whose other dependencies are still stuck on Guile 2.0 or
Guile 2.2 in Guix.  Not really a "clear use case", but that's my
reasoning.
On the topic of those variants, however, would it perhaps be wiser to
make this a package-mapping instead, or is there a case where `--with-
input=guile=guile@$EFFECTIVE_VERSION` would be ill-advised?

> With my Guile hat on, I’d also recommend against using the (ice-9 …)
> name space, which is in Guile’s backyard.  :-)
> 
> Ludo’.
I thought poking into Guile's backyard was a best practice in order to
get the attention of Guile maintainers, as with guile-readline and
guile-colorized ;)
My plan is also to contribute it to Guile proper at some point and then
perhaps keep that repository as a backport for a while until all
relevant versions of Guile have a "proper" filesystem module.

Regards, Leo





^ permalink raw reply	[flat|nested] 4+ messages in thread

* [bug#44253] [PATCH] gnu: Add guile-filesystem.
  2020-10-28 15:43   ` [bug#44253] " Leo Prikler
@ 2020-10-29 23:16     ` Ludovic Courtès
  0 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2020-10-29 23:16 UTC (permalink / raw)
  To: Leo Prikler; +Cc: 44253-done

Hi Leo!

Leo Prikler <leo.prikler@student.tugraz.at> skribis:

> Am Mittwoch, den 28.10.2020, 16:21 +0100 schrieb Ludovic Courtès:
>> Hi,
>> 
>> Leo Prikler <leo.prikler@student.tugraz.at> skribis:
>> 
>> > * gnu/packages/guile-xyz.scm (guile-filesystem): New variable.
>> > (guile2.0-filesystem guile2.2-filesystem): New variable.
>> 
>> Applied, thanks!
>> 
>> However, note that I would not recommend adding 2.0/2.2 variants
>> unless
>> we have a clear use case for it in Guix.
> In this case I simply wanted to make sure, that people could include it
> in projects, whose other dependencies are still stuck on Guile 2.0 or
> Guile 2.2 in Guix.  Not really a "clear use case", but that's my
> reasoning.

I guess that’s very valid use case for you as the upstream developer of
‘guile-filesystem’, but not so much for a downstream user of Guix.

> On the topic of those variants, however, would it perhaps be wiser to
> make this a package-mapping instead, or is there a case where `--with-
> input=guile=guile@$EFFECTIVE_VERSION` would be ill-advised?

Unfortunately, ‘--with-input=guile=…’ triggers a world rebuild because
Guile appears deep down in the graph.  Otherwise it would be a good use
case.  :-)

>> With my Guile hat on, I’d also recommend against using the (ice-9 …)
>> name space, which is in Guile’s backyard.  :-)
>> 
>> Ludo’.
> I thought poking into Guile's backyard was a best practice in order to
> get the attention of Guile maintainers, as with guile-readline and
> guile-colorized ;)

Heheh, true!  But note that guile-readline is actually part of Guile.

> My plan is also to contribute it to Guile proper at some point and then
> perhaps keep that repository as a backport for a while until all
> relevant versions of Guile have a "proper" filesystem module.

Make sense.  (I’d recommed “file system” as two words, then.  :-))

Cheers,
Ludo’.




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-10-29 23:18 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-27 12:55 [bug#44253] [PATCH] gnu: Add guile-filesystem Leo Prikler
2020-10-28 15:21 ` bug#44253: " Ludovic Courtès
2020-10-28 15:43   ` [bug#44253] " Leo Prikler
2020-10-29 23:16     ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).