mirror of
https://github.com/empayre/fleet.git
synced 2024-11-06 17:05:18 +00:00
68 lines
2.2 KiB
Plaintext
68 lines
2.2 KiB
Plaintext
(*
|
|
Module: NetworkManager
|
|
Parses /etc/NetworkManager/system-connections/* files which are GLib
|
|
key-value setting files.
|
|
|
|
Author: Raphael Pinson <raphael.pinson@camptocamp.com>
|
|
|
|
About: License
|
|
This file is licenced under the LGPL v2+, like the rest of Augeas.
|
|
|
|
About: Lens Usage
|
|
To be documented
|
|
|
|
About: Configuration files
|
|
This lens applies to /etc/NetworkManager/system-connections/*. See <filter>.
|
|
|
|
About: Examples
|
|
The <Test_NetworkManager> file contains various examples and tests.
|
|
*)
|
|
|
|
module NetworkManager =
|
|
autoload xfm
|
|
|
|
(************************************************************************
|
|
* INI File settings
|
|
*
|
|
* GLib only supports "# as commentary and "=" as separator
|
|
*************************************************************************)
|
|
let comment = IniFile.comment "#" "#"
|
|
let sep = Sep.equal
|
|
let eol = Util.eol
|
|
|
|
(************************************************************************
|
|
* ENTRY
|
|
* GLib entries can contain semicolons, entry names can contain spaces and
|
|
* brackets
|
|
*
|
|
* At least entry for WPA-PSK definition can contain all printable ASCII
|
|
* characters including '#', ' ' and others. Comments following the entry
|
|
* are no option for this reason.
|
|
*************************************************************************)
|
|
(* Variable: entry_re *)
|
|
let entry_re = /[A-Za-z][A-Za-z0-9:._\(\) \t-]+/
|
|
|
|
(* Lens: entry *)
|
|
let entry = [ key entry_re . sep
|
|
. IniFile.sto_to_eol? . eol ]
|
|
| comment
|
|
|
|
(************************************************************************
|
|
* RECORD
|
|
* GLib uses standard INI File records
|
|
*************************************************************************)
|
|
let title = IniFile.indented_title IniFile.record_re
|
|
let record = IniFile.record title entry
|
|
|
|
|
|
(************************************************************************
|
|
* LENS & FILTER
|
|
* GLib uses standard INI File records
|
|
*************************************************************************)
|
|
let lns = IniFile.lns record comment
|
|
|
|
(* Variable: filter *)
|
|
let filter = incl "/etc/NetworkManager/system-connections/*"
|
|
|
|
let xfm = transform lns filter
|