5
54
Fork
You've already forked blue
4

Distributed build agents through Goblins #82

Open
opened 2025年09月14日 17:00:04 +02:00 by pastor · 1 comment

In the future we could consider swapping Fibers for Goblins, which could allow distributed builds across a network of BLUE agents.

The latest post of the Spritely guys gives a nice update on their work on Shepherd: Shepherd ×ばつ Goblins update.

In the future we could consider swapping Fibers for Goblins, which could allow distributed builds across a network of BLUE agents. The latest post of the Spritely guys gives a nice update on their work on Shepherd: [Shepherd ×ばつ Goblins update](https://www.spritely.institute/news/shepherd-goblins-update.html).
Author
Owner
Copy link

Summary of conversations from other channels:

[pastor]: I'm wondering if Guix could support partial builds somehow, and then the blue-build-system would integrate partial builds and workload distribution like they do with Guix machine offloading, but instead of offloading complete derivations it should offload build artifacts.

[pastor]: What I'm thinking is that with other build systems it's probably not feasible to do something like this because the unit of computation for Guix is the derivation. But BLUE can go down to the artifact level, so I'm wondering if we could somehow bridge this gap in the blue-build-system, so Guix can understand about what artifacts the build generates.

Given that both programs are in scheme, I'm wondering if it's something feasible. So by providing the glue code and adapting Guix for partial builds, we could get the build distributor already present in Guix to offload builds.

There were some discussions about partial Guix builds in the past, and there is also some work done in the P2P substitute network field:
https://nlnet.nl/project/Guix-P2P/

[pastor]: This is the original work of the P2P substitute network:
https://issues.guix.gnu.org/52555

[pastor]: And here is the latest news I had about partial builds:
https://lists.gnu.org/archive/html/guix-devel/2025-03/msg00236.html

Summary of conversations from other channels: [pastor]: I'm wondering if Guix could support partial builds somehow, and then the blue-build-system would integrate partial builds and workload distribution like they do with Guix machine offloading, but instead of offloading complete derivations it should offload build artifacts. [pastor]: What I'm thinking is that with other build systems it's probably not feasible to do something like this because the unit of computation for Guix is the derivation. But BLUE can go down to the artifact level, so I'm wondering if we could somehow bridge this gap in the blue-build-system, so Guix can understand about what artifacts the build generates. Given that both programs are in scheme, I'm wondering if it's something feasible. So by providing the glue code and adapting Guix for partial builds, we could get the build distributor already present in Guix to offload builds. There were some discussions about partial Guix builds in the past, and there is also some work done in the P2P substitute network field: https://nlnet.nl/project/Guix-P2P/ [pastor]: This is the original work of the P2P substitute network: https://issues.guix.gnu.org/52555 [pastor]: And here is the latest news I had about partial builds: https://lists.gnu.org/archive/html/guix-devel/2025-03/msg00236.html
Sign in to join this conversation.
No Branch/Tag specified
main
pipeline-operators
documentation
shadow-fields
instance-walker
blue-shell
promote-serializers-to-metacommands
pre-alpha
Labels
Clear labels
bug
Something is not working
contribution welcome
Contributions are very welcome, get started here
discussion
duplicate
This issue or pull request already exists
enhancement
New feature
good first issue
Interested in contributing? Get started here.
help wanted
Need some help
invalid
Something is wrong
optimization
question
More information is needed
upstream
Related to an upstream repository, already reported there
bug
Something is not working
contribution welcome
Contributions are very welcome, get started here
duplicate
This issue or pull request already exists
enhancement
New feature
good first issue
Interested in contributing? Get started here.
help wanted
Need some help
invalid
Something is wrong
question
More information is needed
upstream
Related to an upstream repository, already reported there
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lapislazuli/blue#82
Reference in a new issue
lapislazuli/blue
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?