unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Leo Prikler <leo.prikler@student.tugraz.at>
To: d@divoplade.fr
Cc: 44130@debbugs.gnu.org
Subject: [bug#44130] [PATCH] Add a recursive version of mkdir-p
Date: Fri, 23 Oct 2020 22:01:33 +0200	[thread overview]
Message-ID: <7dc336ad9bc86c4ef1e0bd85c8a3c39670a1307b.camel@student.tugraz.at> (raw)
In-Reply-To: 3dca955c97222648074515b1a2c5ace96a2f1fd6.camel@divoplade.fr

> Le vendredi 23 octobre 2020 à 18:37 +0200, Ludovic Courtès a écrit :
> > 
> > What I was questioning is the temptation to make one-function
> > packages
> > as is common for instance in npm.
> 
> Ah, so I can summarize. My solutions are:
> 
> 1. Guile provides mkdir-p: Perfect!
> 2. I put the function in a package: not great, but acceptable.
> 3. I depend on gash: not acceptable, there's only mkdir-p that's
> interesting, the rest is for advanced system tools.
> 4. I copy that function around: not acceptable.
5. You depend on any other package, that provides mkdir-p among other
utilities big enough to be packaged in Guix: Not acceptable.
6. You depend on any other package, that provides just mkdir-p with
maybe a few other utilities, that make Guix devs question whether this
will become the next npm.
7. You write a module, that evals untrusted code from the internet and
point it towards your implementation of mkdir-p.
8. You find existing implementations of mkdir-p insufficient and roll
yet another mkdir-p.
9. You write an accelerated mkdir-p in native code as a shared library.
10. You combine 7 and 9.
...

For what it's worth, I've been hacking on a slightly more complete set
of filesystem utilities over at [1] for the past few days.  It is not
yet complete to the point that I'd consider its inclusion into Guix
upstream, but you might want to try it out and perhaps contribute if
that fits your niche.

> So, there's no temptation to make one-function packages.
> 
> Should I understand that you question the integration of one-function
> packages into guix? If you don't want it in guix, then it's fine, I
> can
> just use it only for myself, I have my own channel. In which case,
> please just say so, so we can all move on to more interesting things.
In that case, you still recreate npm, just with an additional layer of
indirection.  Obviously Guix developers can not stop you from doing so,
only advise you not to.

Regards, Leo

[1] https://gitlab.com/leoprikler/guile-filesystem






      parent reply	other threads:[~2020-10-23 20:02 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-21 23:29 [bug#44130] [PATCH] Add a recursive version of mkdir-p divoplade
2020-10-23 13:12 ` Ludovic Courtès
2020-10-23 14:14   ` divoplade
2020-10-23 16:37     ` Ludovic Courtès
2020-10-23 17:12       ` divoplade
2020-10-26 16:57         ` bug#44130: " Ludovic Courtès
2020-10-23 19:36 ` [bug#44130] " zimoun
2020-10-23 22:00   ` [bug#44130] Recursive mkdir divoplade
2020-10-23 22:11   ` [bug#44130] [PATCH] Add a recursive version of mkdir-p divoplade
2020-10-23 20:01 ` Leo Prikler [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7dc336ad9bc86c4ef1e0bd85c8a3c39670a1307b.camel@student.tugraz.at \
    --to=leo.prikler@student.tugraz.at \
    --cc=44130@debbugs.gnu.org \
    --cc=d@divoplade.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).