[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#27155] [PATCH 0/2] Support service extensions on the "final" servic
From: |
Ludovic Courtès |
Subject: |
[bug#27155] [PATCH 0/2] Support service extensions on the "final" service values |
Date: |
Wed, 21 Jun 2017 15:06:34 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) |
Hi!
address@hidden (宋文武) skribis:
> Maybe allow a service to override extensions specified by its
> type?
>
> It can be:
>
> (define etc-service-type
> (service-type
> (name 'etc)
> (default-extensions (list ...))
> (extension-points (list ...))))
>
> (define builtin-etc-service
> (... %base-services))
>
> (define my-etc-service
> (service etc-service-type
> (service-value builtin-etc-service)
> #:extensions
> (list (service-extension
> activation-service-type
> activate-my-etc-files-in-my-way)
> ...)))
>
> So we can change what service actually do, this is really powerful!
The problem as I see it is that this would be redundant with extensions
in service types.
Also, the “etc” service is one of the “special” services that are not in
‘%base-services’; instead they’re automatically added by
‘essential-services’ in (gnu system).
Thanks for your feedback,
Ludo’.