# Modern system configuration options



## kdemidofff (Jun 15, 2010)

Is there some solutions on FreeBSD to reflect /etc and other configuration files/options
into single (w/e) database and/or XML structure? Is it possible from standpoint of good system design? What best alternatives to manual vi editing of configuration files on bullet-prof-and-old unix-like in modern times? :stud

Windoze registry is not an considered option here :\ Something like Unix system database xD

Some pointers or links will be helpfull

thanks

ps:
found something like http://people.freebsd.org/~nik/xml-servers/
but need more about subject


----------



## graudeejs (Jun 15, 2010)

Absolutely nothing is bulletproof and/or foolproof
simply edit each file with vi & cross your fingers


----------



## phoenix (Jun 15, 2010)

You can pry my text config files from my cold dead fingers.  

Nothing beats the FreeBSD text config setup.  1 text file to manage all your services and network config.  It's simple, it's easy, it works.

Just look at the mess that most "modern" Linux distros have become with their dozens of conf.d/ sub-directories each filled with tiny text files, making it very hard to manage by hand.  Sure, it makes automation easier ... by breaking manual configuration.

Binary configuration databases are the worst thing you can use.  How do you extract values from a corrupt database?  How do you repair a corrupt database?  How do you work around a corrupt or missing database engine?

It's bad enough GNOME went with gconf.  We don't need that pushed down lower, into the actual OS.


----------



## oliverh (Jun 15, 2010)

kdemidofff said:
			
		

> Is there some solutions on FreeBSD to reflect /etc and other configuration files/options
> into single (w/e) database and/or XML structure? Is it possible from standpoint of good system design? What best alternatives to manual vi editing of configuration files on bullet-prof-and-old unix-like in modern times? :stud
> 
> Windoze registry is not an considered option here :\ Something like Unix system database xD
> ...



Thanks God we do not have to use such registry crap. And XML? XML is not human readable, I don't need complex structures, they're prone to fail! What's wrong with easy configurable text files? Because they're old? They're reliable! If you want to use something "modern" try something Linux. They're technology-wise a moving target, always the newest stuff, but never really ready for the future. Maybe we will see a registry in Linux some day.


----------



## kdemidofff (Jun 15, 2010)

while writing reply varnish gives error and text lost - example of complex database setup  
(some time ago thepiratebay had similar problem now seems they fix it)

what about a dialog-based tool like linux has in kernel configuration but for /etc etc. stuff maybe it can be sync'ed to real files and vice versa. In mind comes mergemaster -FiU stuff - it sync 2 directory hierarchies but well it can be database.. Why database? thats why SVN better than TODO file. Why modern armies don't use midearth weapons? Because they can have better and perform faster? Why they not stick with sword - its bullet-proof and reliable even in fire? And it maybe has text imprinted on it .. xD

its usability ..

ps:
filesystem is also kind of database... not much difference its text or binary value xD its anyway binary structure
But ofc if u store rc.conf in unused swap partition it can make sense

ps:
XML crap too, but anyway it better than registry or files? no other solutions in 2k+ year?


----------



## graudeejs (Jun 15, 2010)

We, BSD people, do it BSD way. Edit text files with text editor


----------



## kdemidofff (Jun 15, 2010)

killasmurf86 said:
			
		

> We, BSD people, do it BSD way. Edit text files with text editor



good, i'm also love BSD and use it long way and edit text files with vi from day 0x0001 xD
but what always make me sad when i reinstalled system i need to change 101 config file

i don't even consider linux for trash can automation because it will GPL all trash u have


----------



## graudeejs (Jun 15, 2010)

a) backup your config files
b) use git/svn/cvs/hg or whatever for config file version control
c) ...


----------



## Beastie (Jun 15, 2010)

Windows started sucking more when Microsoft stopped relying on .ini files.

Text configurations are relatively easy to implement by the developer and the easiest to modify by the user. Keep 'em at all cost I say.

----



			
				oliverh said:
			
		

> Maybe we will see a registry in Linux some day.


Um yeah, someday...




			
				kdemidofff said:
			
		

> while writing reply varnish gives error and text lost - example of complex database setup


That's why I always ctrl+a & ctrl+c before submitting. You should always make backups


----------



## nekoexmachina (Jun 15, 2010)

> but what always make me sad when i reinstalled system i need to change 101 config file


What for do you reinstall your system?


----------



## graudeejs (Jun 15, 2010)

Beastie said:
			
		

> Um yeah, someday...



That is just sick x(


----------



## kdemidofff (Jun 15, 2010)

found some better http://augeas.net but its still not database

some time ago only DBF files was in mainstream of accounting stuff

Gconf suck by design and Elektra doesnt seems promising


----------



## kdemidofff (Jun 15, 2010)

nekoexmachina said:
			
		

> What for do you reinstall your system?


well i mean new install and upgrades between versions - i usually done clean install before i discovered buildworld xD


----------



## trasz@ (Jun 15, 2010)

One thing I'd _love_ to see is what JunOS does.  Basically, from the user point of view, there is a single configuration file that contains everything, with a command line interface that absolutely _rocks_.  Unfortunately, I'm not aware of any similar Open Source solution.


----------



## kdemidofff (Jun 16, 2010)

trasz@ said:
			
		

> One thing I'd _love_ to see is what JunOS does.  Basically, from the user point of view, there is a single configuration file that contains everything, with a command line interface that absolutely _rocks_.  Unfortunately, I'm not aware of any similar Open Source solution.



yes thats good idea, thanks for pointing out

other Open Source can be .txt file in ~/home describing steps to configure system from scratch and list of ports to feed to portmaster xD

always missed automated scripted installs on new systems when u only (maybe) need to choose disk slice

usually hard time to remember zilion of settings when installing new system on-site
and its hard to find all those configurations hanging around in old backups (may be not right way to go)

some tool would be handy maybe something like "make config" dialog do (its terminal based and gives options to change without typing and mistyping WITHOUT_X11 or something like that)

with options for common _base_ system properties in /etc and some _well_known_ local/etc
well with tool u can validate values before system comes to single user due unterminated string or something weird like that


----------



## kdemidofff (Jun 16, 2010)

long time ago we have discussion with some unix colegue what better editor to use to edit DNS files? well that's time it was vi
others editors considered unsafe due possible(?) data loss, nowadays large scale providers use web scripts and php
regarding system configs: so in fact its safe to edit rc.conf with php? perl? export from sql? well not sure. I remember DOS times when many install programs edited config.sys and autoexec.bat and had no(?) rules for it. It often not worked then windowze come. Well registry bloated and bad thing but it is a working and handy feature. 
Well its bad and ugly like old wiki.. xD

btw: handly thing for notes/configs wikidpad


----------



## dennylin93 (Jun 16, 2010)

Go with Subversion, Git or some other VCS. It's simple and should provide enough automation.

Git doesn't support partial clones/checkouts, so I had to use Subversion instead. What a pity.


----------

