unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Guix libification.
@ 2017-06-10 10:08 Mathieu Othacehe
  2017-06-10 14:42 ` Mike Gerwitz
  2017-06-11 14:24 ` Ludovic Courtès
  0 siblings, 2 replies; 9+ messages in thread
From: Mathieu Othacehe @ 2017-06-10 10:08 UTC (permalink / raw)
  To: guix-devel


Hi Guix,

This is a subject that may have been already discussed but I can't find
any archive.

At work, we are using the (quite unpleasant) google "repo" tool to
manage multiple git repositories. As there are no real alternatives to
this tool I'm rewriting some parts of "repo" in Guile, using guile-git.

The script is becoming bigger and some parts of Guix would be really
handy : (guix records), (guix workers), (guix utils) ...

I don't want Guix to become a dependency of my script but copying parts
of Guix in not great either. So I'm wondering if some parts of Guix,
useful to other guile projects could be integrated to a lib, guile-lib
for instance ?

Thanks,

Mathieu

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

* Re: Guix libification.
  2017-06-10 10:08 Guix libification Mathieu Othacehe
@ 2017-06-10 14:42 ` Mike Gerwitz
  2017-06-10 16:04   ` Alex Kost
  2017-06-11 14:24 ` Ludovic Courtès
  1 sibling, 1 reply; 9+ messages in thread
From: Mike Gerwitz @ 2017-06-10 14:42 UTC (permalink / raw)
  To: Mathieu Othacehe; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 652 bytes --]

On Sat, Jun 10, 2017 at 12:08:21 +0200, Mathieu Othacehe wrote:
> The script is becoming bigger and some parts of Guix would be really
> handy : (guix records), (guix workers), (guix utils) ...
>
> I don't want Guix to become a dependency of my script but copying parts
> of Guix in not great either. So I'm wondering if some parts of Guix,
> useful to other guile projects could be integrated to a lib, guile-lib
> for instance ?

1+

I use (guix records) for a few projects.

-- 
Mike Gerwitz
Free Software Hacker+Activist | GNU Maintainer & Volunteer
GPG: D6E9 B930 028A 6C38 F43B  2388 FEF6 3574 5E6F 6D05
https://mikegerwitz.com

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]

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

* Re: Guix libification.
  2017-06-10 14:42 ` Mike Gerwitz
@ 2017-06-10 16:04   ` Alex Kost
  2017-06-10 16:32     ` Adam Van Ymeren
  0 siblings, 1 reply; 9+ messages in thread
From: Alex Kost @ 2017-06-10 16:04 UTC (permalink / raw)
  To: Mike Gerwitz; +Cc: guix-devel

Mike Gerwitz (2017-06-10 10:42 -0400) wrote:

> On Sat, Jun 10, 2017 at 12:08:21 +0200, Mathieu Othacehe wrote:
>> The script is becoming bigger and some parts of Guix would be really
>> handy : (guix records), (guix workers), (guix utils) ...
>>
>> I don't want Guix to become a dependency of my script but copying parts
>> of Guix in not great either. So I'm wondering if some parts of Guix,
>> useful to other guile projects could be integrated to a lib, guile-lib
>> for instance ?
>
> 1+
>
> I use (guix records) for a few projects.

I also needed similar functionality, but since I didn't want to depend
on guix modules, I just copied another solution made by David Thompson:

  https://git.dthompson.us/sly.git/blob/HEAD:/sly/records.scm

It is a very simple module, but it provides all I need from "records",
so I'm happily use it in my code.  Thanks, David!

-- 
Alex

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

* Re: Guix libification.
  2017-06-10 16:04   ` Alex Kost
@ 2017-06-10 16:32     ` Adam Van Ymeren
  2017-06-11  7:19       ` Alex Vong
  2017-06-12 16:53       ` Alex Kost
  0 siblings, 2 replies; 9+ messages in thread
From: Adam Van Ymeren @ 2017-06-10 16:32 UTC (permalink / raw)
  To: Alex Kost, Mike Gerwitz; +Cc: guix-devel

On June 10, 2017 12:04:59 PM EDT, Alex Kost <alezost@gmail.com> wrote:
>
>I also needed similar functionality, but since I didn't want to depend
>on guix modules


Why not depend on guix modules?  I'm not a scheme/guile expert just curious, what's the downside to depending upon guix?

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

* Re: Guix libification.
  2017-06-10 16:32     ` Adam Van Ymeren
@ 2017-06-11  7:19       ` Alex Vong
  2017-06-12 16:53       ` Alex Kost
  1 sibling, 0 replies; 9+ messages in thread
From: Alex Vong @ 2017-06-11  7:19 UTC (permalink / raw)
  To: Adam Van Ymeren; +Cc: guix-devel, Alex Kost

[-- Attachment #1: Type: text/plain, Size: 961 bytes --]

Adam Van Ymeren <adam@vany.ca> writes:

> On June 10, 2017 12:04:59 PM EDT, Alex Kost <alezost@gmail.com> wrote:
>>
>>I also needed similar functionality, but since I didn't want to depend
>>on guix modules
>
>
> Why not depend on guix modules?  I'm not a scheme/guile expert just
> curious, what's the downside to depending upon guix?

I can think of many problems.

Conceptual problem: Guix is a package manager, not a library. It is
akward to depend on a package manager, not using it for package
management, but to use the data structures it provides.

Size problem: Guix is not small. If you software is simple and small,
depending on guix will make your software signaficantly bigger.

API stability problem: Guix has no stable API. This is to make
development easier. Maintaining old stuff just to keep backward
compatibility requires a lot of effort. Depending on guix means your
application will break if guix decides to change its data structure
API.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

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

* Re: Guix libification.
  2017-06-10 10:08 Guix libification Mathieu Othacehe
  2017-06-10 14:42 ` Mike Gerwitz
@ 2017-06-11 14:24 ` Ludovic Courtès
  2017-06-11 17:56   ` Jan Nieuwenhuizen
  1 sibling, 1 reply; 9+ messages in thread
From: Ludovic Courtès @ 2017-06-11 14:24 UTC (permalink / raw)
  To: Mathieu Othacehe; +Cc: guix-devel

Hello!

Mathieu Othacehe <m.othacehe@gmail.com> skribis:

> The script is becoming bigger and some parts of Guix would be really
> handy : (guix records), (guix workers), (guix utils) ...
>
> I don't want Guix to become a dependency of my script but copying parts
> of Guix in not great either. So I'm wondering if some parts of Guix,
> useful to other guile projects could be integrated to a lib, guile-lib
> for instance ?

I think it would be great, though there’s some friction: modules still
in flux are better kept in Guix proper because we can change them as we
see fit; modules that have become stable could be externalized, provided
someone steps up to maintain them and make frequent releases.

Recently Chris Webber integrated (guix hash) and (guix pk-crypto) into a
broader guile-gcrypt library, which I think is a good thing: this part
was stable enough and it’s definitely better to have one guile-gcrypt
project that everyone can build upon.  Guix will use it once there’s
been a release or two I think.  :-)

For smaller modules like records, workers, utils, I would suggest
integrating them into Guile proper or Guile-Lib maybe.

WDYT?

Ludo’.

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

* Re: Guix libification.
  2017-06-11 14:24 ` Ludovic Courtès
@ 2017-06-11 17:56   ` Jan Nieuwenhuizen
  2017-06-11 20:22     ` Ludovic Courtès
  0 siblings, 1 reply; 9+ messages in thread
From: Jan Nieuwenhuizen @ 2017-06-11 17:56 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel, Rutger van Beusekom

Ludovic Courtès writes:

> For smaller modules like records, workers, utils, I would suggest
> integrating them into Guile proper or Guile-Lib maybe.
>
> WDYT?

I'm still scheming for Rutger [cc] in helping shell-like utilities like
find-files, mkdir-p, substitute* find their way into the rumoured the
rumoured gash or some shell-utils package; possibly together with some
scsh-like goodies.

Greetings,
janneke

-- 
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com

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

* Re: Guix libification.
  2017-06-11 17:56   ` Jan Nieuwenhuizen
@ 2017-06-11 20:22     ` Ludovic Courtès
  0 siblings, 0 replies; 9+ messages in thread
From: Ludovic Courtès @ 2017-06-11 20:22 UTC (permalink / raw)
  To: Jan Nieuwenhuizen; +Cc: guix-devel, Rutger van Beusekom

Hello,

Jan Nieuwenhuizen <janneke@gnu.org> skribis:

> Ludovic Courtès writes:
>
>> For smaller modules like records, workers, utils, I would suggest
>> integrating them into Guile proper or Guile-Lib maybe.
>>
>> WDYT?
>
> I'm still scheming for Rutger [cc] in helping shell-like utilities like
> find-files, mkdir-p, substitute* find their way into the rumoured the
> rumoured gash or some shell-utils package; possibly together with some
> scsh-like goodies.

Yes, that would be nice.  (I like that rumor!  :-))

Ludo’.

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

* Re: Guix libification.
  2017-06-10 16:32     ` Adam Van Ymeren
  2017-06-11  7:19       ` Alex Vong
@ 2017-06-12 16:53       ` Alex Kost
  1 sibling, 0 replies; 9+ messages in thread
From: Alex Kost @ 2017-06-12 16:53 UTC (permalink / raw)
  To: Adam Van Ymeren; +Cc: guix-devel

Adam Van Ymeren (2017-06-10 12:32 -0400) wrote:

> On June 10, 2017 12:04:59 PM EDT, Alex Kost <alezost@gmail.com> wrote:
>>
>>I also needed similar functionality, but since I didn't want to depend
>>on guix modules
>
> Why not depend on guix modules?  I'm not a scheme/guile expert just curious, what's the downside to depending upon guix?

Just because for my Guile code, I prefer to depend only on Guile itself:
I want to make my scripts always work, even if a system I use doesn't
have anything installed, except of Guile.

I use the same "policy" for my Emacs config: I use several dozens of
external packages, but my config doesn't require them, it works even if
only Emacs is installed (without any external packages).

-- 
Alex

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

end of thread, other threads:[~2017-06-12 16:53 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-10 10:08 Guix libification Mathieu Othacehe
2017-06-10 14:42 ` Mike Gerwitz
2017-06-10 16:04   ` Alex Kost
2017-06-10 16:32     ` Adam Van Ymeren
2017-06-11  7:19       ` Alex Vong
2017-06-12 16:53       ` Alex Kost
2017-06-11 14:24 ` Ludovic Courtès
2017-06-11 17:56   ` Jan Nieuwenhuizen
2017-06-11 20:22     ` 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).