all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Dale Mellor <no-reply@rdmp.org>
To: guix-devel <guix-devel@gnu.org>
Subject: Re: Intermediate abstraction of system service configuration
Date: Tue, 06 Feb 2024 14:52:43 +0000	[thread overview]
Message-ID: <71603d0ee833e5859185b76c38e658279938754d.camel@rdmp.org> (raw)
In-Reply-To: <87jznhiyi6.fsf@zancanaro.id.au>

Hello Carlo,

On Tue, 2024-02-06 at 23:10 +1100, Carlo Zancanaro wrote:
> The nginx{,-upstream,-server}-configuration records have fields for
> {extra,raw}-content, which do allow arbitrary configuration lines to
> be
> added to their config. I think this is a sensible escape hatch to
> have
> to provide this middle ground.

   The problem is that some configurations, especially nginx, are
sensitive to the order in which items appear and may require slightly
intricate nesting, and you can't always achieve that with intermixed
raw configuration sections.  And those sections are not (easily)
introspectable.

> Andrew Tropin has done something interesting on the idea of more
> free-form configuration for nginx specifically[1], but I don't think
> that idea has found its way out of rde and into Guix yet.
> 
> >   I think that Guix taking the view of a configuration
> > file as a nested set of string-named blocks containing
> > lists of string-named, string-valued pairs would be an
> > intermediate level of abstraction more suited to the
> > Guix system configuration view of the world.
> 
> We'd have to think carefully about how the Guix model of
> service extension would work with such an intermediate
> representation.

   Agree that it would have repercussions throughout the package
ecosystem.  I would have thought that it would make things easier.  You
could argue that you don't benefit from the Guile syntax checker, but
at the end of the day you don't find out you've made a mistake until
you try to run `guix system reconfigure` anyway.


  reply	other threads:[~2024-02-06 14:53 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-06  5:47 Intermediate abstraction of system service configuration Dale Mellor
2024-02-06 12:10 ` Carlo Zancanaro
2024-02-06 14:52   ` Dale Mellor [this message]
2024-02-12 23:17     ` Carlo Zancanaro

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=71603d0ee833e5859185b76c38e658279938754d.camel@rdmp.org \
    --to=no-reply@rdmp.org \
    --cc=guix-devel-0brg6a@rdmp.org \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.