From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christopher Allan Webber Subject: Re: [PATCH 2/2] gnu: Add dovecot service Date: Thu, 17 Dec 2015 09:38:31 -0600 Message-ID: <87oadpkrrt.fsf@dustycloud.org> References: <1450127388-8654-1-git-send-email-wingo@igalia.com> <1450127388-8654-2-git-send-email-wingo@igalia.com> <87fuz3co9q.fsf@gnu.org> <87wpseakfw.fsf@igalia.com> <20151216231423.GA5412@jasmine> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:39031) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a9afV-000105-S4 for guix-devel@gnu.org; Thu, 17 Dec 2015 10:40:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a9afP-0005Nz-NQ for guix-devel@gnu.org; Thu, 17 Dec 2015 10:40:37 -0500 Received: from dustycloud.org ([2600:3c02::f03c:91ff:feae:cb51]:39786) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a9afP-0005MV-JS for guix-devel@gnu.org; Thu, 17 Dec 2015 10:40:31 -0500 In-reply-to: <20151216231423.GA5412@jasmine> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Leo Famulari Cc: guix-devel@gnu.org Leo Famulari writes: > On Wed, Dec 16, 2015 at 08:04:19AM +0000, Andy Wingo wrote: >> On Tue 15 Dec 2015 22:58, ludo@gnu.org (Ludovic Court=C3=A8s) writes: >> > Andy Wingo skribis: >> > >> >> * gnu/services/mail.scm: New file. >> > >> > Regarding the Schemefied configuration, do you think Dovecot=E2=80=99= s >> > configuration model is stable enough that this won=E2=80=99t have to= change >> > much? Is a =E2=80=9Ccheat mode=E2=80=9D (where one can pass raw str= ings to paste into >> > the configuration file) needed? >>=20 >> Finally, I'm not adverse to a .conf file escape hatch. It's especiall= y >> convincing in a context where other services do the same -- we should >> have a greater degree of uniformity across services. However if other >> services implemented a 100%-solution Scheme configuration interface, I >> wonder if we would still want the .conf file interface. Dunno! > > For 3rd party software, I think we should make it possible for users to > use upstream's configuration language, preferably as a text block insid= e > of the service configuration block. > > Otherwise, it will be difficult for users to migrate to GuixSD, since > their existing configuration files and their knowledge won't apply. > Plus, it will make it more difficult for our users to get support for > the 3rd party software if it is configured in an unfamiliar way. > > I'm wary of this approach based on my experiences with systemd on NixOS= , > where only some features of systemd are exposed by the Nix wrapper. [0] > Now _that_ is a frustrating 80% solution. > > On the other hand, being able to reuse my existing nginx.conf within > configuration.nix was very convenient. > > [0] > https://github.com/NixOS/nixpkgs/issues/1689 > https://github.com/NixOS/nixpkgs/issues/3702 Thank you! I strongly agree with this point. I know many of us want to get away from "stringly typed" or "string substitution" type solutions, and that's for very good reason. But if someone already has a config file that they have ready to go, that's good to support. And many of our config writers might be lossy... so while we should prefer schemey, composable interfaces, letting users just dump in a block of text is pretty important for many of these, I think.