[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: declarative (config file) way idea of handling the OS by way of the old system



Emanuel Berg wrote: 
> Dan Ritter wrote:
> 
> > That's just knowing what packages you want to install.
> 
> What do you mean, what else are you supposed to know?

Examples:

- you have installed a load balancer; it needs a configuration
file to work.

- you have installed bind or unbound to provide DNS, they need
configuration files to work.

- you have installed a database, it may need tuning.

- you have an NFS server on your network, each machine needs a
new stanza in /etc/fstab to mount it except the NFS server

- you have a webserver, it needs configuration and a set of
files to serve

> > If that's all you want, you can use dpkg --set-selections
> > and a text list.
> 
> What about using the interactive commands?
> 
>   sudo apt-get -qq update
>   sudo apt-get install build-essential debian-goodies libgccjit-10-dev

Is there a reason that you interpret everything I say as a
challenge?

Sure, you can also do package installation that way. Package
installation is not the end of most matters, it's the beginning.

> >> OTOH if you want a real programming language and
> >> environment for configuration and extension (e.g., Elisp
> >> for Emacs, Lua for mpv etc) that's doable as well,
> >> no doubt.
> >
> > chef, puppet, ansible and so forth are languages for
> > doing that.
> 
> You want a language for doing that? Why not a general-purpose
> language either adapted if necessary (a dialect) or better yet
> extended with a module to do it so you can use the rest of the
> language as well seamlessly?

Chef uses ruby with adaptations.

Puppet uses a DSL written in ruby.

ansible is entirely declarative, in YAML

-dsr-


Reply to: