Hi Carlo,
Carlo Zancanaro <[email protected]> writes:
[...]
>> [...] In my ideal vision of making system configuration approachable to all,
>> not just experts, I think it even plays a crucial role.
>
> Out of interest, do you think we are achieving this with our current
> approach?
>
> I think we're getting the worst of both worlds at the moment. Getting a
> service to work requires understanding the upstream software and its
> options, as well as knowing how to express those options in Guix's
> configuration language. I think this might marginally improve things for
> Guix experts, but I doubt it's helpful for non-experts, and I think it
> makes things harder for experts of the upstream software.
I'm not sure what services you are using that gives you this bad
experience, but in my experience I can typically start with the default
config and get something going. For example, I have in my config at the
moment the following which are using the default configuration:
--8<---------------cut here---------------start------------->8---
(service pcscd-service-type)
(service earlyoom-service-type)
(service joycond-service-type)
(service xfce-desktop-service-type)
(service bluetooth-service-type)
(service libvirt-service-type)
(service virtlog-service-type)
--8<---------------cut here---------------end--------------->8---
and if I wanted to change something I know I could just look into 'info
guix' and then `i RET earlyoom-configuration` to discover what can be
configured. Of course, for typically more advanced use cases, sometimes
a switch is missing. You can propose a patch adding it, or an escape
hatch if it's missing.
I think this interface/documentation is great! Another plus for me is
that when using 'define-configuration', there is some type checking for
your configuration fields, so it's less likely that an error ends up in
the generated configuration file.
--
Thanks,
Maxim