Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ===== Overview ===== The UCL working group will discuss and develop a common set of keys for configuration files to be used throughout the base system, and plan for the implementation of UCL support in various utilities. The goal is to develop a template for all future configuration files that is human readable and writable, but is also hierarchical, expressive, and programmatically editable. The stretch goal is to develop a universal API for loading UCL configurations into the existing C structs used internally by the target application, to simplify implementing UCL in more places. ===== Topics ===== * Opening: What is UCL * Presentation of work in progress: converting newsyslog and other tools in base to UCL * Discuss common requirements for configuration files * Discuss layering (/etc/defaults/foo.conf -> /etc/foo.conf -> /etc/foo.conf.d/*.conf -> /usr/local/etc/foo.conf.d/*.conf) * Develop a common set of grammar/keys to work across all configuration files ('enabled' activates/deactivates each block, allows disabling default configuration without modifying the default files, ala pkg) * Discuss required features for management utilities (uclcmd) * Identify additional targets to UCL-ify * Develop a universal API for using libucl in various applications, simplify loading configuration into C structs (libfigpar?) ==== Slides ==== [[http://www.allanjude.com/bsd/BSDCan2015_-_UCL_Working_Group.pdf|Allan's slides about converting the base system, and uclcmd]] [[http://www.allanjude.com/bsd/cebka_BSDCan2015-UCL.pdf|Vsevolod's slides about the limitations and future of libucl]] ==== Attending ==== In order to attend you need register for the [[/DevSummit|developer summit]] as well as by email for the session and be confirmed by the working group organizer. Follow the guidelines described on the [[DevSummit/201506|main page]] or what you received by email. For questions or if in doubt ask the session chairs. **Please do NOT add yourself here.** Your name will appear automatically once you have received the confirmation email. You need to put your name on the general [[DevSummit/201405|developer summit]] attendees list though. ^ Name ^ Username / Affiliation ^ Topics of Interest ^ Notes ^ | [[/JonathanAnderson|JonathanAnderson]] | jonathan | all | | | [[/JosephSAtkinson]] | jsa | | cancelled | | Michael Brink-Engel | Xinuos | all | | | [[/DavidChisnall|DavidChisnall]] | theraven | all | | | [[/BaptisteDaroussin|BaptisteDaroussin]] | bapt | all | | | [[/BradDavis|BradDavis]] | brd | all | | | [[/PeterGrehan|PeterGrehan]] | grehan | bhyve | cancelled | | [[/JamesGritton|JamesGritton]] | jamie | jail.conf | | | [[/AllanJude|AllanJude]] | allanjude | all | Organizer | | Christian Koch | Norse Corp | | | | [[/ErwinLansing|ErwinLansing]] | erwin | all / operations | | | [[/JohannesMeixner|JohannesMeixner]] | xmj | | | | Ken Moore | iXsystems | Lumina DE | | | [[/KrisMoore|KrisMoore]] | kmoore | | | | Phillip Nordwall | Isilon | | | | Pierre Pronchery | %%NetBSD%%/%%EdgeBSD%%/%%DeforaOS%% | | | | [[/OllivierRobert|OllivierRobert]] | roberto | | | | Phil Shafer | Juniper Networks, Inc. | | libxo contrib | | [[/VsevolodStakhov|VsevolodStakhov]] | vsevolod | | libUCL author | | Arun Thomas | BAE Systems | | | | John Wolfe | Xinuos | all | | ==== Results ==== * libucl lacks some features that would be very useful. Some of those features are easier to add than others. * libucl cannot handle unknown variables well * libucl needs a way to preserve comments and macros during parsing * Jonathan Anderson recommends an AST * A number of additional files were identified as targets for UCL-ification devsummit/201506/ucl.txt Last modified: 2021/04/25 09:06by JethroNederhof