unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Implementing the guix-dameon in Guile
@ 2023-09-13 15:36 Christopher Baines
  2023-09-13 16:44 ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
                   ` (5 more replies)
  0 siblings, 6 replies; 21+ messages in thread
From: Christopher Baines @ 2023-09-13 15:36 UTC (permalink / raw)
  To: guix-devel

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

Hey!

I think this has been talked about for a while [1], but I want to make it
happen. Currently the guix-daemon is still similar to the nix-daemon
that it was forked from, and is implemented in C++. I think that a Guile
implementation of the guix-daemon will simplify Guix and better support
hacking on and around the daemon to add new features and move Guix
forward.

1: https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/doc/ROADMAP.org#n71

My plan is to focus on this over the next year. I left my previous day
job quite a few months ago now to take a bit of a break, that's the main
reason I've been able to spend more time trying to push forward some of
the QA stuff. With some monetary support from NLNet [2], I'm planning to
continue this break and focus for the next year on getting a Guile
implementation of the guix-daemon written and adopted.

2: https://nlnet.nl/project/GuixDaemon-Guile/

Rewrites are risky because you only get the value right at the end,
therefore the priority is to get a minimal but viable implementation in
Guile that can be switched to, and not to get distracted on adding or
improving functionality unnecessarily. That is better done once the new
implementation has been adopted.

While I think there's a substantial amount of work to do, progress
towards a Guile guix-daemon has already been made. There was a least one
GSoC project which did make progress, and there's Guile implementations
of some of the functionality in Guix already.

Still though, I'd like to hear what people think about which direction
the implementation should go, and what features they'd like to see. Even
if those are not essential to make the Guile implementation viable, it
still might inform the direction to take.

The Guile rewrite of the guix-dameon was on my mind over 3 years ago
when I was thinking about the build coordinator [3]. As part of writing
the build coordinator, I got experienced using SQLite and the Guile
bindings and that'll come in very useful. The build coordinator also
uses fibers, and I'll probably look to use fibers as well in the
guix-daemon. I think the work Ludo has done on the shepherd has made
this possible.

3: https://lists.gnu.org/archive/html/guix-devel/2020-04/msg00323.html

Let me know if you've got any comments or questions!

Thanks,

Chris

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

^ permalink raw reply	[flat|nested] 21+ messages in thread
* Re: Implementing the guix-dameon in Guile
@ 2023-12-30 12:57 Yarl via Development of GNU Guix and the GNU System distribution.
  0 siblings, 0 replies; 21+ messages in thread
From: Yarl via Development of GNU Guix and the GNU System distribution. @ 2023-12-30 12:57 UTC (permalink / raw)
  To: guix-devel

Hello,

I saw this and the blog post about it just now. This is very
interesting!
I have started working on this on my own, in the hope of eventually
sharing something useful. However, I am a guile (and guix) novice and I
don't have plenty of time and my job is completely unrelated to
computers. That is/was a mean for me to learn more about guix and guile,
by the way.
I thought that because it was in the roadmap in low priority
I could take my time.
Anyway I am glad someone is working on this. What I have done so far is
probably not useful at all because it's not much, very far from complete
and probably a lot messy. Whatever, if I could help in any way please
tell. Do you work on a specific branch or some external repository? Do
you plan to work with others at some point or do you want to want rough
it on your own for now?

I look forward to hearing from you. Thanks!




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

end of thread, other threads:[~2023-12-30 12:58 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-09-13 15:36 Implementing the guix-dameon in Guile Christopher Baines
2023-09-13 16:44 ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2023-09-13 17:13   ` Maxim Cournoyer
2023-09-14  7:12     ` Simon Tournier
2023-09-14  8:22     ` Christopher Baines
2023-09-13 18:56 ` Vagrant Cascadian
2023-09-14  8:42   ` Christopher Baines
2023-09-14 15:35     ` Ludovic Courtès
2023-09-14 12:58 ` Josselin Poiret
2023-09-18 12:57   ` Christopher Baines
2023-09-14 13:29 ` Ludovic Courtès
2023-09-14 15:53   ` Christopher Baines
2023-09-14 16:36     ` Ludovic Courtès
2023-09-16  9:41   ` Mathieu Othacehe
2023-09-18 13:19     ` Christopher Baines
2023-09-18 19:12   ` Thompson, David
2023-09-14 17:31 ` Caleb Ristvedt via Development of GNU Guix and the GNU System distribution.
2023-09-18 12:58   ` Christopher Baines
2023-09-14 22:46 ` Mekeor Melire
2023-09-18 13:15   ` Christopher Baines
  -- strict thread matches above, loose matches on Subject: below --
2023-12-30 12:57 Yarl via Development of GNU Guix and the GNU System distribution.

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).