3
26
Fork
You've already forked mere
1

recipe: add service definitions with s6-rc source generation #51

Merged
jhuntwork merged 1 commit from recipe-service-definitions into main 2026年04月02日 13:37:49 +02:00

Recipes can now declare services as children of package nodes:

package"ntpd"{ files"usr/bin/ntpd" service"ntpd"type="daemon"{ command"/usr/bin/ntpd""-n""-d" depends-on"network"}}

During build, mere generates raw s6-rc source directories from the
definition and places them in the package at usr/share/s6-rc/sources/.
Later, a service tool orchestrates s6-rc commands to use them.

Service node supports:

  • type: daemon (longrun) or oneshot
  • command/up/down: exec arguments
  • depends-on: service dependencies
  • ready-notification: fd for readiness protocol
  • essential: flag for boot infrastructure services
  • env: environment variables (schema only, generation deferred)

Daemon services automatically get a logging pipeline (-log)
that writes to /var/log// via s6-log.

Recipes can now declare services as children of package nodes: ```kdl package "ntpd" { files "usr/bin/ntpd" service "ntpd" type="daemon" { command "/usr/bin/ntpd" "-n" "-d" depends-on "network" } } ``` During build, mere generates raw s6-rc source directories from the definition and places them in the package at usr/share/s6-rc/sources/. Later, a service tool orchestrates s6-rc commands to use them. Service node supports: - type: daemon (longrun) or oneshot - command/up/down: exec arguments - depends-on: service dependencies - ready-notification: fd for readiness protocol - essential: flag for boot infrastructure services - env: environment variables (schema only, generation deferred) Daemon services automatically get a logging pipeline (<name>-log) that writes to /var/log/<name>/ via s6-log.
recipe: add service definitions with s6-rc source generation
All checks were successful
/ test (pull_request) Successful in 5m20s
0a6a66202a
Recipes can now declare services as children of package nodes:
```kdl
package "ntpd" {
 files "usr/bin/ntpd"
 service "ntpd" type="daemon" {
 command "/usr/bin/ntpd" "-n" "-d"
 depends-on "network"
 }
}
```
During build, mere generates raw s6-rc source directories from the
definition and places them in the package at usr/share/s6-rc/sources/.
Later, a service tool orchestrates s6-rc commands to use them.
Service node supports:
- type: daemon (longrun) or oneshot
- command/up/down: exec arguments
- depends-on: service dependencies
- ready-notification: fd for readiness protocol
- essential: flag for boot infrastructure services
- env: environment variables (schema only, generation deferred)
Daemon services automatically get a logging pipeline (<name>-log)
that writes to /var/log/<name>/ via s6-log.
jhuntwork deleted branch recipe-service-definitions 2026年04月02日 13:37:50 +02:00
Sign in to join this conversation.
No reviewers
Labels
Clear labels
No items
No labels
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
merelinux/mere!51
Reference in a new issue
merelinux/mere
No description provided.
Delete branch "recipe-service-definitions"

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?