[PATCH] gnu: Add guile-filesystem.

  • Done
  • quality assurance status badge
Details
2 participants
  • Leo Prikler
  • Ludovic Courtès
Owner
unassigned
Submitted by
Leo Prikler
Severity
normal

Debbugs page

Leo Prikler wrote 4 years ago
(address . guix-patches@gnu.org)
20201027125552.20573-1-leo.prikler@student.tugraz.at
* 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(+)

Toggle diff (60 lines)
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
Ludovic Courtès wrote 4 years ago
(name . Leo Prikler)(address . leo.prikler@student.tugraz.at)(address . 44253-done@debbugs.gnu.org)
877dra1ilk.fsf@gnu.org
Hi,

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

Toggle quote (3 lines)
> * 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’.
Closed
Leo Prikler wrote 4 years ago
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 44253-done@debbugs.gnu.org)
e581ddd7a2a361d2c3ab36f43117d8d7725baf34.camel@student.tugraz.at
Hi,

Am Mittwoch, den 28.10.2020, 16:21 +0100 schrieb Ludovic Courtès:
Toggle quote (12 lines)
> 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?

Toggle quote (4 lines)
> 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
Closed
Ludovic Courtès wrote 4 years ago
(name . Leo Prikler)(address . leo.prikler@student.tugraz.at)(address . 44253-done@debbugs.gnu.org)
87h7qczkpz.fsf@gnu.org
Hi Leo!

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

Toggle quote (18 lines)
> 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.

Toggle quote (4 lines)
> 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. :-)

Toggle quote (8 lines)
>> 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.

Toggle quote (4 lines)
> 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’.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 44253@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 44253
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help