Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
C
 cacheconfig, Cachefilesd
 Cachefilesd
 caid, Channels
 Carbon
 CAVEATS, Sshd
 cdata, Test_Xml.Xml
 cdata1, Test_Xml
 cgconfig
 cgrules
 chainloader, Grub
 change, MasterPasswd
 change_add, Ldif
 change_control, Ldif
 change_delete, Ldif
 change_modify, Ldif
 change_modrdn, Ldif
 change_modspec, Ldif
 change_record, Ldif
 Channels
 Chrony
 cidr, Sysconfig_Route
 cl, Rx
 cl_or_opt_space
 cl_or_space
 ClamAV
 class, MasterPasswd
 clear, AptConf
 client, Hosts_Access
 client_file, Hosts_Access
 client_file_item, Hosts_Access
 client_host_item, Hosts_Access
 client_list, Hosts_Access
 client_output_buffer_limit_entry, Redis
 cluster_nodes
 cluster_partition_handling, Rabbitmq
 cluster_partition_handling,single value, Test_Rabbitmq.Rabbitmq
 cluster_partition_handling,tuple, Test_Rabbitmq.Rabbitmq
 cmd_flags, Chrony
 cmd_kv, Solaris_System
 cmd_moddir, Solaris_System
 cmd_options, Chrony
 cmd_set, Solaris_System
 cmnd_alias, Sudoers
 cmnd_spec, Sudoers
 cmnd_spec_list, Sudoers
 Collectd
 colon
 color
 Columns definitions, Pg_Hba
 COMBINATORICS
 combine_three
 combine_three_opt
 combine_three_opt_ord, Build
 combine_three_ord, Build
 combine_two
 combine_two_opt
 combine_two_opt_ord, Build
 combine_two_ord, Build
 comma
 comma_list_re, Subversion
 comma_sep
 comma_sep_list
 comma_spc_sep_list, Automaster
 command
 command_start, Dovecot
 commands, Dovecot
 COMMANDS, Solaris_System
 comment
 Comment, Util
 comment_ace, Test_IniFile
 comment_acf, Test_IniFile
 comment_ade, Test_IniFile
 comment_adf, Test_IniFile
 comment_bce, Test_IniFile
 comment_bcf, Test_IniFile
 comment_bde, Test_IniFile
 comment_bdf, Test_IniFile
 comment_c_style, Util
 comment_c_style_or_hash, Util
 comment_default, IniFile
 comment_eol
 comment_generic, Util
 comment_generic_seteol, Util
 comment_multi, AptConf
 comment_multiline, Util
 comment_noindent
 comment_or_eol
 comment_re
 comment_simple, AptConf
 comments, Test_Erlang
 Comments, Test_Xml
 Comments and empty lines
 COMMON ENTRIES, Mke2fs
 common_entry, Mke2fs
 comparison, Syslog
 comparison The greater and lesser than operators, Xymon_Alerting
 complex, Test_Tmpfiles
 complex_arg, Test_Tmpfiles
 complex_arg_tree, Test_Tmpfiles
 complex_tree, Test_Tmpfiles
 condition
 condition_field, Reprepro_Uploaders
 condition_list, Reprepro_Uploaders
 condition_re, Reprepro_Uploaders
 CONDITIONALS AND LOOPS, Shellvars
 conf
 conf_ace, Test_IniFile
 conf_acf, Test_IniFile
 conf_ade, Test_IniFile
 conf_adf, Test_IniFile
 conf_bce, Test_IniFile
 conf_bcf, Test_IniFile
 conf_bde, Test_IniFile
 conf_bdf, Test_IniFile
 conf_norealm, Test_JettyRealm
 config
 config1, Test_FAI_DiskConfig
 config2, Test_FAI_DiskConfig
 config3, Test_FAI_DiskConfig
 configfile, Grub
 Configuration files
 content, Test_Xml.Xml
 controller, cgrules
 CONTROLLER, cgrules
 correction_re, Ntpd
 CPanel
 Create required expressions, Chrony
 Cron
 cronallow, Test_Simplelines
 Crypttab
 CSV
 ctrl_key, cgrules
 ctrl_value, cgrules
 Cups
let cacheconfig = [ key (entry_key - nocull) . space . store entry_value . eol ]
This is a simple “key value” setup
Parses /etc/cachefilesd.conf
let caid = let caid_entry = [ label "caid" . store Rx.word ] in Build.opt_list caid_entry comma
Parses Carbon’s configuration files
In sshd_config, Match blocks must be located at the end of the file.
test Xml.cdata get cdata1 = { "#CDATA" = "testing" }
let cdata1 = "<![CDATA[testing]]>"
Parses /etc/cgconfig.conf
Parses /etc/cgrules.conf
let chainloader = [ command "chainloader" "\t" . [ spc . switch "force" ]? . spc . store Rx.no_spaces . eol ]
let change_date = [ label "change_date" . store integer? . colon ]
pw_change
let change_add = [ attr_changetype "add" ] . ( sep_line* . attr_val_spec )+
change-add = “add” SEP 1*attrval-spec
let change_control = let attr_criticality = [ Util.del_ws_spc . label "criticality" . store /true|false/ ] in let attr_ctrlvalue = [ label "value" . (attr_safe_string | attr_base64_string | attr_url_string ) ] in [ key "control" . sep_colon . store ldapoid_re . attr_criticality? . attr_ctrlvalue? . eol ]
“control:” FILL ldap-oid 0*1(1*SPACE (“true” / “false”)) 0*1(value-spec)
let change_delete = [ attr_changetype "delete" ]
change-delete = “add” SEP 1*attrval-spec
let change_modify = [ attr_changetype "modify" ] . ( sep_line* . [ change_modspec . sep_line* . sep_modspec ] )+
change-modify = “modify” SEP *mod-spec
let change_modrdn = let attr_deleteoldrdn = [ key "deleteoldrdn" . attr_intflag . eol ] in let attrs_modrdn = attr_dn_value "newrdn" | attr_dn_value "newsuperior" | attr_deleteoldrdn in [ attr_changetype /modr?dn/ ] . ( sep_line | attrs_modrdn )* . attrs_modrdn
(“modrdn” / “moddn”) SEP newrdn/newsuperior/deleteoldrdn
let change_modspec = attr_modspec . ( sep_line* . attr_val_spec )*
change-modspec = add/delete/replace: AttributeDesc SEP *attrval-spec “-”
let change_record = ( change_add | change_delete | change_modify | change_modrdn)
changerecord = “changetype:” FILL (changeadd/delete/modify/moddn)
Parses channels.conf files
Parses the chrony config file
let cidr = /(3[012]|[12][0-9]|[0-9])/
A subnet mask can be 0 to 32 bits
let cl = /[ \t]*\\\\\n[ \t]*/
A continued line with a backslash
let cl_or_opt_space = cl | opt_space
A cl or a opt_space
let cl_or_opt_space = del Rx.cl_or_opt_space " "
Deletes a Rx.cl_or_opt_space and default to a single space
let cl_or_space = cl | space
A cl or a space
let cl_or_space = del Rx.cl_or_space " "
Deletes a Rx.cl_or_space and default to a single space
Parses ClamAV clamd and freshclam configuration files.
let class = [ label "class" . sto_to_col? . colon ]
pw_class
let clear = let name = [ label "name" . store name_re_colons ] in [ indent . key "#clear" . Sep.space . Build.opt_list name Sep.space . eol ]
A list of variables to clear /!\ The manpage is not clear on the syntax
let client = let user = [ label "user" . list_item . Util.del_str "@" ] in [ label "client" . user? . client_host_item ]
let client_file = [ label "file" . client_file_item ]
let client_file_item = let client_file_rx = /\/[^ \t\n,:]+/ in store ( client_file_rx - /EXCEPT/i )
let client_host_item = let client_hostname_rx = /[A-Za-z0-9_.@?*-][A-Za-z0-9_.?*-]*/ in let client_ipv6_rx = "[" . /[A-Za-z0-9:?*%]+/ . "]" in let client_host_rx = client_hostname_rx | client_ipv6_rx in let netmask = [ Util.del_str "/" . label "netmask" . store Rx.word ] in store ( client_host_rx - /EXCEPT/i ) . netmask?
Allows @ for netgroups, supports [ipv6] syntax
let client_list = Build.opt_list ( client | client_file ) list_sep
A list of clients
let client_output_buffer_limit_entry = [ indent . key cobl_cmd . del_ws_spc . class . del_ws_spc . hard_limit . del_ws_spc . soft_limit . del_ws_spc . soft_seconds . eol ]
Entries identified by the “client-output-buffer-limit” keyword can be found more than once.
let cluster_nodes = let nodes = Erlang.opt_list (Erlang.make_value Erlang.quoted) in let value = Erlang.tuple nodes Erlang.bare | nodes in Erlang.value "cluster_nodes" value
Can be a tuple `(nodes, node_type)` or simple `nodes`
test Rabbitmq.cluster_nodes get "{cluster_nodes, {['rabbit@rabbit1', 'rabbit@rabbit2', 'rabbit@rabbit3'], disc}}" = { "cluster_nodes" { "tuple" { "value" { "value" = "rabbit@rabbit1" } { "value" = "rabbit@rabbit2" } { "value" = "rabbit@rabbit3" } } { "value" = "disc" } } }
let cluster_partition_handling = let nodes = Erlang.opt_list (Erlang.make_value Erlang.quoted) in let value = Erlang.tuple3 Erlang.bare nodes Erlang.bare | Erlang.bare in Erlang.value "cluster_partition_handling" value
Can be single value or `{pause_if_all_down, [nodes], ignore | autoheal}`
let cmd_flags = "auto_offline"|"iburst"|"noselect"|"offline"|"prefer" |"require"|"trust"
Server/Peer/Pool options without values
let cmd_kv (cmd:string) (value:regexp) = Build.key_value_line cmd sep_colon (store value)
Function for simple key/value setting commands such as rootfs
let cmd_moddir = Build.key_value_line "moddir" sep_colon (Build.opt_list modpath sep_moddir)
The moddir command for specifying module search paths
let cmd_options = "key" | /maxdelay((dev)?ratio)?/ | /(min|max)poll/ | /(min|max)samples/ | "maxsources" | "polltarget" | "port" | "presend" | "version"
Server/Peer/Pool options with values
let cmd_set = [ key "set" . Util.del_ws_spc . ( set_var | set_varmod ) . set_sep_spc . [ label "operator" . store set_operators ] . set_sep_spc . set_value . Util.eol ]
The set command for individual kernel/module parameters
let cmnd_alias = alias_entry "Cmnd_Alias" "command" sto_to_com_cmnd
Cmnd_Alias, see alias_field
let cmnd_spec = [ label "command" . runas_spec? . tag_spec* . sto_to_com_cmnd ]
Command specification for spec, with optional runas_spec and any amount of tag_specs
let cmnd_spec_list = Build.opt_list cmnd_spec sep_com
A list of comma-separated cmnd_specs
Parses collectd configuration files
let colon = del (Rx.opt_space . ":" . Rx.opt_space) " : "
this is the standard field separator “ : “
let colon = del /[ \t]*:[ \t]*/ ":\t"
Separation between the alias and it’s destinations
let colon = del /:[ \t]*/ ": "
let colon = Sep.colon
Separation between selinux attributes
let colon = Sep.colon
let colon = del /[ \t]*(\\\\[ \t]*\n[ \t]+)?:[ \t]*(\\\\[ \t]*\n[ \t]+)?/ ": "
let colon = Sep.colon
let colon = Util.del_str ":"
let colon = sep_tab_opt . Util.del_str ":" . sep_tab_opt
Deletes a colon and default to it
let color =
let color = kw_word "COLOR"
The color filter definition
let combine_three (a:lens) (b:lens) (c:lens) = combine_three_ord a b c | combine_three_ord b a c | combine_three_ord c b a
Combine three lenses
let combine_three = let entry (k:string) = [ key k ] in Build.combine_three (entry "a") (entry "b") (entry "c")
A minimalistic optional combination lens
let combine_three_opt (a:lens) (b:lens) (c:lens) = combine_three_opt_ord a b c | combine_three_opt_ord b a c | combine_three_opt_ord c b a
Combine three lenses optionally (either a, b, c, or any of them, in any order)
let combine_three_opt = let entry (k:string) = [ key k ] in Build.combine_three_opt (entry "a") (entry "b") (entry "c")
A minimalistic optional combination lens
let combine_three_opt_ord (a:lens) (b:lens) (c:lens) = combine_two_opt_ord a (combine_two_opt b c)
Combine three lenses optionally, ensuring first lens is first (a followed by either b, c, or any of them, in any order)
let combine_three_ord (a:lens) (b:lens) (c:lens) = combine_two_ord a (combine_two b c)
Combine three lenses, ensuring first lens is first (a followed by either b, c, in any order)
let combine_two (a:lens) (b:lens) = combine_two_ord a b | combine_two_ord b a
Combine two lenses
let combine_two = let entry (k:string) = [ key k ] in Build.combine_two (entry "a") (entry "b")
A minimalistic combination lens
let combine_two_opt (a:lens) (b:lens) = combine_two_opt_ord a b | combine_two_opt_ord b a
Combine two lenses optionally (either a, b, or both, in any order)
let combine_two_opt = let entry (k:string) = [ key k ] in Build.combine_two_opt (entry "a") (entry "b")
A minimalistic optional combination lens
let combine_two_opt_ord (a:lens) (b:lens) = a . b?
Combine two lenses optionally, ensuring first lens is first (a, and optionally b)
let combine_two_ord (a:lens) (b:lens) = a . b
Combine two lenses, ensuring first lens is first
let comma = del /[ \t]*,[ \t]*(\n[ \t]+)?/ ", "
Separation between multiple destinations
let comma = Sep.comma
let comma = Sep.comma
let comma = ","
let comma = space_or_eol "," ", "
let comma = del /[ \t\n]*,[ \t\n]*/ ", "
a comma, optionally preceded or followed by spaces or newlines
let comma = Util.del_str ","
let comma = sep_tab_opt . Util.del_str "," . sep_tab_opt
Deletes a comma and default to it
let comma_list_re = "password-stores"
let comma_sep = /([ \t]|(\\\\\n))*,([ \t]|(\\\\\n))*/
let comma_sep = del /,[ \t]*/ ", "
let comma_sep_list (l:string) = let value = [ label "value" . Util.del_str "=" . store Rx.neg1 ] in let lns = [ label l . store optlabel . value? ] in Build.opt_list lns Sep.comma
Parses options for filesystems
let comma_sep_list (l:string) = let value = [ label "value" . Util.del_str "=" . store optval ] in let lns = [ label l . store word . value? ] in Build.opt_list lns comma
A comma separated list of options (opt=value or opt)
let comma_spc_sep_list (l:string) = let value = [ label "value" . Util.del_str "=" . store Rx.neg1 ] in let lns = [ label l . store optlabel . value? ] in Build.opt_list lns optsep
Parses options either for filesystems or autofs
let command = /(\|([^", \t\n]+|"[^"\n]+"))|("\|[^"\n]+")/
a command can contain spaces, if enclosed in double quotes, the case without spaces is taken care with word
let command = boot | echo | ls | machine | set | stty
let command = [ command_start . key commands . Sep.space . store Rx.fspath . eol ]
Map commands started with “!”
let command (kw:regexp) (indent:string) = Util.del_opt_ws indent . key kw
let command = let obrkt = del /\[/ "[" in let cbrkt = del /\]/ "]" in [ key "command" . [ obrkt . key /[^]\/\n]+/ . cbrkt . eq . store /[^\n]+/ . del /\n/ "\n" ] ]
nrpe.cfg usually has many entries defining commands to run
let command_start = Util.del_str "!"
let commands = /include|include_try/
let comment = IniFile.comment "#" "#"
Only supports “#” as commentary
let comment = Util.comment
let comment = Util.comment
let comment = Util.comment
let comment = [ indent . label "#comment" . del /[#;][ \t]*/ "# " . store /([^ \t\n].*[^ \t\n]|[^ \t\n])/ . eol ]
let comment = IniFile.comment IniFile.comment_re IniFile.comment_default
let comment = comment_simple | comment_multi
A comment, either comment_simple or comment_multi
let comment = Util.comment
let comment = Util.comment
let comment = Util.comment
let comment = IniFile.comment "#" "#"
let comment = Util.comment
let comment = Util.comment
let comment = Util.comment
let comment = Util.comment_generic /;[ \t]*/ "; "
let comment = Util.comment_generic /[ \t]*[!;#%][ \t]*/ "# "
from 4.2.1 of the upstream doc Chrony comments start with: !
let comment = Util.comment
let comment = Util.comment
let comment = Util.comment | [ del /^#[ \t]*\r?\n/ "#\n" ]
let comment = Util.comment
Map comments in “#comment” nodes.
let comment = Util.comment_generic /%[ \t]*/ "% "
let comment = Util.comment
let comment = [ Util.indent . label "#comment" . del /#[ \t]*/ "# " . store comment_re . eol ]
let comment (pat:regexp) (default:string) = Util.comment_generic_seteol (Rx.opt_space . pat . Rx.opt_space) default eol
Map comments into “#comment” nodes
let comment = Util.comment_generic /[ \t]*[#!][ \t]*/ "# "
Map comments in “#comment” nodes
let comment = Util.comment_generic /#[ \t]*/ "# "
let comment = IniFile.comment IniFile.comment_re IniFile.comment_default
let comment = Util.comment
let comment = Util.comment
let comment = Util.comment_generic /#[ \t]*/ "# "
Nrpe comments must start at beginning of line
let comment = Util.comment
let comment = Util.comment
let comment = Util.comment_generic /[ \t]*[;#][ \t]*/ "# "
let comment = IniFile.comment "#" "#"
An IniFile.comment entry
let comment = Util.comment_generic /[ \t]*\*[ \t]*/ "* "
let comment = IniFile.comment_noindent "#" "#"
let comment = let sto_to_eol = store (/([^ \t\n].*[^ \t\n]|[^ \t\n])/ - /include(dir)?.*/) in [ label "#comment" . del /[ \t]*#[ \t]*/ "# " . sto_to_eol . eol ]
Map comments in “#comment” nodes
let comment = Util.comment_generic /[ \t]*[#;][ \t]*/ "# "
let comment_gen (space:regexp) (sto:regexp) = [ label "#comment" . del ("#" . space) "# " . store sto . eol ]
Map comments into “#comment” nodes Can’t use Util.comment as #+ and #! 
test Xml.comment get "<!-- declarations for <head> & <body> -->" = { "#comment" = " declarations for <head> & <body> " }
Comments get mapped into “#comment” nodes.
let comment = Util.comment
Comments
let comment = Util.comment
let comment = comment_generic /[ \t]*#[ \t]*/ "# "
Map comments into “#comment” nodes
let comment = Util.comment
let comment = Util.comment
This is a general definition of comment It allows indentation for comments, removes the leading and trailing spaces of comments and stores them in nodes, except for empty comments which are ignored together with empty lines
let comment_ace = IniFile.comment IniFile.comment_re IniFile.comment_default
let comment_acf = IniFile.comment IniFile.comment_re IniFile.comment_default
let comment_ade = IniFile.comment ";" ";"
let comment_adf = IniFile.comment ";" ";"
let comment_bce = IniFile.comment IniFile.comment_re IniFile.comment_default
let comment_bcf = IniFile.comment IniFile.comment_re IniFile.comment_default
let comment_bde = IniFile.comment ";" ";"
let comment_bdf = IniFile.comment ";" ";"
let comment_c_style = comment_generic /[ \t]*\/\/[ \t]*/ "// "
A comment line, C-style
let comment_c_style_or_hash = comment_generic /[ \t]*((\/\/)|#)[ \t]*/ "// "
A comment line, C-style or hash
let comment_default = ";"
Default value for comment pattern
let comment_eol = Util.comment_generic /[ \t]*[#!][ \t]*/ " # "
Map comments at eol
let comment_eol = Util.comment_generic /[ \t]*[;#][ \t]*/ " # "
let comment_eol = Util.comment_generic /[ \t]+#[ \t]*/ " # "
Requires a space before the #
let comment_eol = comment_generic /[ \t]*#[ \t]*/ " # "
Map eol comments into “#comment” nodes Add a space before # for end of line comments
let comment_generic (r:regexp) (d:string) = comment_generic_seteol r d doseol
Map comments and set default comment sign
let comment_generic_seteol (r:regexp) (d:string) (eol:lens) = [ label "#comment" . del r d . store /([^ \t\r\n].*[^ \t\r\n]|[^ \t\r\n])/ . eol ]
Map comments and set default comment sign
let comment_multi = Util.comment_multiline
A multiline comment, C-style
let comment_multiline = let mline_re = (/[^ \t\r\n].*[^ \t\r\n]|[^ \t\r\n]/ - /.*\*\/.*/) in let mline = [ seq "mline" . del /[ \t\r\n]*/ "\n" . store mline_re ] in [ label "#mcomment" . del /[ \t]*\/\*/ "/*" . counter "mline" . mline . (eol . mline)* . del /[ \t\r\n]*\*\/[ \t]*\r?\n/ "\n*/\n" ]
A C-style multiline comment
let comment_noindent (pat:regexp) (default:string) = Util.comment_generic_seteol (pat . Rx.opt_space) default eol
Map comments into “#comment” nodes, no indentation allowed
let comment_noindent = comment_generic /#[ \t]*/ "# "
Map comments into “#comment” nodes, without indentation
let comment_or_eol = comment_eol | (del /[ \t]*[#!]?\n/ "\n")
A comment_eol or eol
let comment_or_eol = Util.comment_or_eol
let comment_or_eol = comment_eol | (del /([ \t]+#\n|[ \t]*\n)/ "\n")
A comment_eol or eol
let comment_or_eol = comment_eol | (del /[ \t]*(#[ \t]*)?\n/ "\n")
A comment_eol or eol, with an optional empty comment
let comment_re = /([^ \t\n].*[^ \t\n]|[^ \t\n])/ - /# ## (Start|End) Default Options ##/
let comment_re = /[;#]/
Default regexp for comment pattern
let comment_simple = Util.comment_c_style_or_hash
A one-line comment, C-style
let common_entry = list_sto ("base_features"|"default_features") (key Rx.word) | entry_sto "blocksize" ("-"? . Rx.integer) | entry_sto "hash_alg" ("legacy"|"half_md4"|"tea") | entry_sto ("inode_ratio"|"inode_size") Rx.integer
Entries shared between defaults and fs_types sections
let comparison = /(!|[<=>]+|![<=>]+)/
a comparison is an optional !
let complex = "#Type Path Mode UID GID Age Argument\nd /run/user 0755 root root 10d -\nL /tmp/foobar - - - - /dev/null\n"
A more complex example, comes from the manual
let complex_arg = "t /run/screen - - - - user.name=\"John Smith\" security.SMACK64=screen\n"
Complex argument example.
let complex_arg_tree = { "1" { "type" = "t" } { "path" = "/run/screen" } { "mode" = "-" } { "uid" = "-" } { "gid" = "-" } { "age" = "-" } { "argument" = "user.name=\"John Smith\" security.SMACK64=screen" } }
Tree for complex_arg
let complex_tree = { "#comment" = "Type Path Mode UID GID Age Argument" } { "1" { "type" = "d" } { "path" = "/run/user" } { "mode" = "0755" } { "uid" = "root" } { "gid" = "root" } { "age" = "10d" } { "argument" = "-" } } { "2" { "type" = "L" } { "path" = "/tmp/foobar" } { "mode" = "-" } { "uid" = "-" } { "gid" = "-" } { "age" = "-" } { "argument" = "/dev/null" } }
Tree for complex and trailing_ws
let rec condition = [ Util.del_str "$if" . label "@if" . Sep.space . store Rx.space_in . Util.eol . (Util.empty | Util.comment | condition | variable | entry)* . [ Util.del_str "$else" . label "@else" . Util.eol . (Util.empty | Util.comment | condition | variable | entry)* ] ? . Util.del_str "$endif" . Util.eol ]
An “if” declaration, recursive
let condition = logic_construct_condition "or" condition_field
A condition is an ‘and’ node, representing a union of condition_fields, listed under ‘or’ subnodes:
let condition_field = let sto_condition = Util.del_str "'" . store /[^'\n]+/ . Util.del_str "'" in [ key "not" . Sep.space ]? . store condition_re . [ Sep.space . key "contain" ]? . Sep.space . logic_construct_field "or" "|" sto_condition
A single condition field is an ‘or’ node.
let condition_list = store "*" | logic_construct_condition "and" condition
A list of conditions, inspired by Debctrl.dependency_list An upload condition list is either the wildcard ‘*’, stored verbatim, or an intersection of conditions listed under ‘and’ subnodes:
let condition_re = "source" | "byhand" | "sections" | "binaries" | "architectures" | "distribution"
let conf = "+ : ALL : LOCAL + : root : localhost.localdomain - : root : 127.0.0.1 .localdomain + : root alice@server1 @admins (wheel) : cron crond :0 tty1 tty2 tty3 tty4 tty5 tty6 # IP v6 support + : john foo : 2001:4ca0:0:101::1 2001:4ca0:0:101::/64 # Except + : ALL EXCEPT john @wheel : ALL EXCEPT LOCAL .win.tue.nl # No spaces +:root:.example.com "
A full configuration
let conf = " ACTIVEMQ_HOME=/usr/share/activemq ACTIVEMQ_BASE=${ACTIVEMQ_HOME} "
let conf = "<beans> <broker xmlns=\"http://activemq.apache.org/schema/core\" brokerName=\"localhost\" dataDirectory=\"${activemq.data}\"> <transportConnectors> <transportConnector name=\"openwire\" uri=\"tcp://0.0.0.0:61616\"/> </transportConnectors> </broker> </beans> "
let conf = "# Cell Aliases are meant to act like symlinks like '/afs/openafs.org -> oao' # in root.afs, so sites relying on such a link for their cell can use dynroot. # These aliases are set with 'fs newalias', or read from # /usr/vice/etc/CellAlias # # Formating for /usr/vice/etc/CellAlias is in the form # <target> <alias> # an example would be # fnal.gov/common/usr usr fnal.gov fnal fnal.gov/files fnal-files "
A full configuration
let conf = "# /etc/anacrontab: configuration file for anacron SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin # These replace cron's entries 1 5 cron.daily nice run-parts --report /etc/cron.daily 7 10 cron.weekly nice run-parts --report /etc/cron.weekly @monthly 15 cron.monthly nice run-parts --report /etc/cron.monthly "
let conf = "Direct 8 TV;SES ASTRA:12551:VC56M2O0S0:S19.2E:22000:1111=2:1112=fra@3:1116:0:12174:1:1108:0 :FAVORIS Direct 8 TV;SES ASTRA:12551:VC56M2O0S0:S19.2E:22000:1111=2:1112=fra@3:1116:0:12175:1:1108:0 TF1;CSAT:11895:VC34M2O0S0:S19.2E:27500:171=2:124=fra+spa@4,125=eng@4;126=deu@4:53:500,1811,1863,100:8371:1:1074:0 :TNT TF1;SMR6:690167:I999B8C999D999M998T999G999Y0:T:27500:120=2:130=fra@3,131=eng@3,133=qad@3:140;150=fra,151=eng:0:1537:8442:6:0 ; this is a comment France 5;GR1:618167:I999B8C999D999M998T999G999Y0:T:27500:374+320=2:330=fra@3,331=qad@3:0;340=fra:0:260:8442:1:0 CANAL+ FAMILY HD:12012:VC23M5O35S1:S19.2E:27500:164=27:0;98=@106,99=eng@106:0;45=fra+fra:1811,500,1863,100,9C4,9C7,9AF:8825:1:1080:0 "
A full configuration file
let conf = "# Sample configuration file for the CUPS scheduler. LogLevel warn # Deactivate CUPS' internal logrotating, as we provide a better one, especially # LogLevel debug2 gets usable now MaxLogSize 0 # Administrator user group... SystemGroup lpadmin # Only listen for connections from the local machine. Listen localhost:631 Listen /var/run/cups/cups.sock # Show shared printers on the local network. BrowseOrder allow,deny BrowseAllow all BrowseLocalProtocols CUPS dnssd BrowseAddress @LOCAL # Default authentication type, when authentication is required... DefaultAuthType Basic # Web interface setting... WebInterface Yes # Restrict access to the server... <Location /> Order allow,deny </Location> # Restrict access to the admin pages... <Location /admin> Order allow,deny </Location> # Restrict access to configuration files... <Location /admin/conf> AuthType Default Require user @SYSTEM Order allow,deny </Location> # Set the default printer/job policies... <Policy default> # Job/subscription privacy... JobPrivateAccess default JobPrivateValues default SubscriptionPrivateAccess default SubscriptionPrivateValues default # Job-related operations must be done by the owner or an administrator... <Limit Create-Job Print-Job Print-URI Validate-Job> Order deny,allow </Limit> <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document> Require user @OWNER @SYSTEM Order deny,allow </Limit> # All administration operations require an administrator to authenticate... <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default CUPS-Get-Devices> AuthType Default Require user @SYSTEM Order deny,allow </Limit> # All printer operations require a printer operator to authenticate... <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs> AuthType Default Require user @SYSTEM Order deny,allow </Limit> # Only the owner or an administrator can cancel or authenticate a job... <Limit Cancel-Job CUPS-Authenticate-Job> Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit All> Order deny,allow </Limit> </Policy> # Set the authenticated printer/job policies... <Policy authenticated> # Job/subscription privacy... JobPrivateAccess default JobPrivateValues default SubscriptionPrivateAccess default SubscriptionPrivateValues default # Job-related operations must be done by the owner or an administrator... <Limit Create-Job Print-Job Print-URI Validate-Job> AuthType Default Order deny,allow </Limit> <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document> AuthType Default Require user @OWNER @SYSTEM Order deny,allow </Limit> # All administration operations require an administrator to authenticate... <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default> AuthType Default Require user @SYSTEM Order deny,allow </Limit> # All printer operations require a printer operator to authenticate... <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs> AuthType Default Require user @SYSTEM Order deny,allow </Limit> # Only the owner or an administrator can cancel or authenticate a job... <Limit Cancel-Job CUPS-Authenticate-Job> AuthType Default Require user @OWNER @SYSTEM Order deny,allow </Limit> <Limit All> Order deny,allow </Limit> </Policy> "
let conf = "<?xml version=\"1.0\"?> <!DOCTYPE fontconfig SYSTEM \"fonts.dtd\"> <!-- /etc/fonts/fonts.conf file to configure system font access --> <fontconfig> <!-- DO NOT EDIT THIS FILE. IT WILL BE REPLACED WHEN FONTCONFIG IS UPDATED. LOCAL CHANGES BELONG IN 'local.conf'. The intent of this standard configuration file is to be adequate for most environments. If you have a reasonably normal environment and have found problems with this configuration, they are probably things that others will also want fixed. Please submit any problems to the fontconfig bugzilla system located at fontconfig.org Note that the normal 'make install' procedure for fontconfig is to replace any existing fonts.conf file with the new version. Place any local customizations in local.conf which this file references. Keith Packard --> <!-- Font directory list --> <dir>/usr/share/fonts</dir> <dir>/usr/X11R6/lib/X11/fonts</dir> <dir>/usr/local/share/fonts</dir> <dir>~/.fonts</dir> <!-- Accept deprecated 'mono' alias, replacing it with 'monospace' --> <match target=\"pattern\"> <test qual=\"any\" name=\"family\"> <string>mono</string> </test> <edit name=\"family\" mode=\"assign\"> <string>monospace</string> </edit> </match> <!-- Accept alternate 'sans serif' spelling, replacing it with 'sans-serif' --> <match target=\"pattern\"> <test qual=\"any\" name=\"family\"> <string>sans serif</string> </test> <edit name=\"family\" mode=\"assign\"> <string>sans-serif</string> </edit> </match> <!-- Accept deprecated 'sans' alias, replacing it with 'sans-serif' --> <match target=\"pattern\"> <test qual=\"any\" name=\"family\"> <string>sans</string> </test> <edit name=\"family\" mode=\"assign\"> <string>sans-serif</string> </edit> </match> <!-- Load local system customization file --> <include ignore_missing=\"yes\">conf.d</include> <!-- Font cache directory list --> <cachedir>/var/cache/fontconfig</cachedir> <cachedir>~/.fontconfig</cachedir> <config> <!-- These are the default Unicode chars that are expected to be blank in fonts. All other blank chars are assumed to be broken and won't appear in the resulting charsets --> <blank> <int>0x0020</int> <!-- SPACE --> <int>0x00A0</int> <!-- NO-BREAK SPACE --> <int>0x00AD</int> <!-- SOFT HYPHEN --> <int>0x034F</int> <!-- COMBINING GRAPHEME JOINER --> <int>0x0600</int> <!-- ARABIC NUMBER SIGN --> <int>0x0601</int> <!-- ARABIC SIGN SANAH --> <int>0x0602</int> <!-- ARABIC FOOTNOTE MARKER --> <int>0x0603</int> <!-- ARABIC SIGN SAFHA --> <int>0x06DD</int> <!-- ARABIC END OF AYAH --> <int>0x070F</int> <!-- SYRIAC ABBREVIATION MARK --> <int>0x115F</int> <!-- HANGUL CHOSEONG FILLER --> <int>0x1160</int> <!-- HANGUL JUNGSEONG FILLER --> <int>0x1680</int> <!-- OGHAM SPACE MARK --> <int>0x17B4</int> <!-- KHMER VOWEL INHERENT AQ --> <int>0x17B5</int> <!-- KHMER VOWEL INHERENT AA --> <int>0x180E</int> <!-- MONGOLIAN VOWEL SEPARATOR --> <int>0x2000</int> <!-- EN QUAD --> <int>0x2001</int> <!-- EM QUAD --> <int>0x2002</int> <!-- EN SPACE --> <int>0x2003</int> <!-- EM SPACE --> <int>0x2004</int> <!-- THREE-PER-EM SPACE --> <int>0x2005</int> <!-- FOUR-PER-EM SPACE --> <int>0x2006</int> <!-- SIX-PER-EM SPACE --> <int>0x2007</int> <!-- FIGURE SPACE --> <int>0x2008</int> <!-- PUNCTUATION SPACE --> <int>0x2009</int> <!-- THIN SPACE --> <int>0x200A</int> <!-- HAIR SPACE --> <int>0x200B</int> <!-- ZERO WIDTH SPACE --> <int>0x200C</int> <!-- ZERO WIDTH NON-JOINER --> <int>0x200D</int> <!-- ZERO WIDTH JOINER --> <int>0x200E</int> <!-- LEFT-TO-RIGHT MARK --> <int>0x200F</int> <!-- RIGHT-TO-LEFT MARK --> <int>0x2028</int> <!-- LINE SEPARATOR --> <int>0x2029</int> <!-- PARAGRAPH SEPARATOR --> <int>0x202A</int> <!-- LEFT-TO-RIGHT EMBEDDING --> <int>0x202B</int> <!-- RIGHT-TO-LEFT EMBEDDING --> <int>0x202C</int> <!-- POP DIRECTIONAL FORMATTING --> <int>0x202D</int> <!-- LEFT-TO-RIGHT OVERRIDE --> <int>0x202E</int> <!-- RIGHT-TO-LEFT OVERRIDE --> <int>0x202F</int> <!-- NARROW NO-BREAK SPACE --> <int>0x205F</int> <!-- MEDIUM MATHEMATICAL SPACE --> <int>0x2060</int> <!-- WORD JOINER --> <int>0x2061</int> <!-- FUNCTION APPLICATION --> <int>0x2062</int> <!-- INVISIBLE TIMES --> <int>0x2063</int> <!-- INVISIBLE SEPARATOR --> <int>0x206A</int> <!-- INHIBIT SYMMETRIC SWAPPING --> <int>0x206B</int> <!-- ACTIVATE SYMMETRIC SWAPPING --> <int>0x206C</int> <!-- INHIBIT ARABIC FORM SHAPING --> <int>0x206D</int> <!-- ACTIVATE ARABIC FORM SHAPING --> <int>0x206E</int> <!-- NATIONAL DIGIT SHAPES --> <int>0x206F</int> <!-- NOMINAL DIGIT SHAPES --> <int>0x2800</int> <!-- BRAILLE PATTERN BLANK --> <int>0x3000</int> <!-- IDEOGRAPHIC SPACE --> <int>0x3164</int> <!-- HANGUL FILLER --> <int>0xFEFF</int> <!-- ZERO WIDTH NO-BREAK SPACE --> <int>0xFFA0</int> <!-- HALFWIDTH HANGUL FILLER --> <int>0xFFF9</int> <!-- INTERLINEAR ANNOTATION ANCHOR --> <int>0xFFFA</int> <!-- INTERLINEAR ANNOTATION SEPARATOR --> <int>0xFFFB</int> <!-- INTERLINEAR ANNOTATION TERMINATOR --> </blank> <!-- Rescan configuration every 30 seconds when FcFontSetList is called --> <rescan> <int>30</int> </rescan> </config> </fontconfig> "
let conf = "# Set the maximum number of FUSE mounts allowed to non-root users. mount_max = 1000 # Allow non-root users to specify the 'allow_other' or 'allow_root' user_allow_other "
let conf = "# /etc/inputrc - global inputrc for libreadline # See readline(3readline) and `info rluserman' for more information. # Be 8 bit clean. set input-meta on set output-meta on # To allow the use of 8bit-characters like the german umlauts, uncomment # the line below. However this makes the meta key not work as a meta key, # which is annoying to those which don't need to type in 8-bit characters. # set convert-meta off # try to enable the application keypad when it is called. Some systems # need this to enable the arrow keys. # set enable-keypad on # see /usr/share/doc/bash/inputrc.arrows for other codes of arrow keys # do not bell on tab-completion # set bell-style none # set bell-style visible # some defaults / modifications for the emacs mode $if mode=emacs # allow the use of the Home/End keys
let conf = "################ # iSNS settings ################ # Address of iSNS server isns.address = 127.0.0.1 isns.port = 3260 # ************* # CHAP Settings # ************* # To enable CHAP authentication set node.session.auth.authmethod # to CHAP. The default is None. node.session.auth.authmethod = CHAP # To set a CHAP username and password for initiator # authentication by the target(s), uncomment the following lines: node.session.auth.username = someuser1 node.session.auth.password = somep$31#$^&7! # To enable CHAP authentication for a discovery session to the target # set discovery.sendtargets.auth.authmethod to CHAP. The default is None. discovery.sendtargets.auth.authmethod = CHAP # To set a discovery session CHAP username and password for the initiator # authentication by the target(s), uncomment the following lines: discovery.sendtargets.auth.username = someuser3
A full configuration
let conf = "### Comment admin: admin, admin "
let conf = "# Comment admin readwrite "
let conf = "# Comment admin activemq "
let conf = "! This is a comment ! Configuration File for keepalived global_defs { ! this is who emails will go to on alerts notification_email { admins@example.com fakepager@example.com ! add a few more email addresses here if you would like } notification_email_from admins@example.com smtp_server 127.0.0.1 ! I use the local machine to relay mail smtp_connect_timeout 30 ! each load balancer should have a different ID ! this will be used in SMTP alerts, so you should make ! each router easily identifiable lvs_id LVS_EXAMPLE_01 vrrp_mcast_group4 224.0.0.18 vrrp_mcast_group6 ff02::12 } vrrp_sync_group VG1 { group { inside_network # name of vrrp_instance (below) outside_network # One for each moveable IP. } notify /usr/bin/foo notify_master /usr/bin/foo smtp_alert } vrrp_instance VI_1 { state MASTER interface eth0 track_interface { eth0 # Back eth1 # DMZ } track_script { check_apache2 # weight = +2 si ok, 0 si nok } garp_master_delay 5 garp_master_repeat 5 garp_master_refresh 5 garp_master_refresh_repeat 5 priority 50 advert_int 2 authentication { auth_type PASS auth_pass mypass } virtual_ipaddress { 10.234.66.146/32 dev eth0 } lvs_sync_daemon_interface eth0 ha_suspend notify_master \"/svr/scripts/notify_master.sh\" notify_backup \"/svr/scripts/notify_backup.sh\" notify_fault \"/svr/scripts/notify_fault.sh\" notify \"/svr/scripts/notify.sh\" ! each virtual router id must be unique per instance name! virtual_router_id 51 ! MASTER and BACKUP state are determined by the priority ! even if you specify MASTER as the state, the state will ! be voted on by priority (so if your state is MASTER but your ! priority is lower than the router with BACKUP, you will lose ! the MASTER state) ! I make it a habit to set priorities at least 50 points apart ! note that a lower number is lesser priority - lower gets less vote priority 150 ! how often should we vote, in seconds? advert_int 1 ! send an alert when this instance changes state from MASTER to BACKUP smtp_alert ! this authentication is for syncing between failover servers ! keepalived supports PASS, which is simple password ! authentication ! or AH, which is the IPSec authentication header. ! I don't use AH ! yet as many people have reported problems with it authentication { auth_type PASS auth_pass example } ! these are the IP addresses that keepalived will setup on this ! machine. Later in the config we will specify which real ! servers are behind these IPs ! without this block, keepalived will not setup and takedown the ! any IP addresses virtual_ipaddress { 192.168.1.11 10.234.66.146/32 dev vlan933 # parse it well ! and more if you want them } use_vmac vmac_xmit_base native_ipv6 dont_track_primary preempt_delay mcast_src_ip 192.168.1.1 unicast_src_ip 192.168.1.1 unicast_peer { 192.168.1.2 192.168.1.3 } } virtual_server 192.168.1.11 22 { delay_loop 6 ! use round-robin as a load balancing algorithm lb_algo rr ! we are doing NAT lb_kind NAT nat_mask 255.255.255.0 protocol TCP sorry_server 10.20.40.30 22 ! there can be as many real_server blocks as you need real_server 10.20.40.10 22 { ! if we used weighted round-robin or a similar lb algo, ! we include the weight of this server weight 1 ! here is a health checker for this server. ! we could use a custom script here (see the keepalived docs) ! but we will just make sure we can do a vanilla tcp connect() ! on port 22 ! if it fails, we will pull this realserver out of the pool ! and send email about the removal TCP_CHECK { connect_timeout 3 connect_port 22 } } } virtual_server_group DNS_1 { 192.168.0.1 22 10.234.55.22-25 36 10.45.58.59/32 27 } vrrp_script chk_apache2 { # Requires keepalived-1.1.13 script \"killall -0 apache2\" # faster interval 2 # check every 2 seconds weight 2 # add 2 points of prio if OK fall 5 raise 5 } ! that's all "
A full configuration file
let conf = "[koji] ;configuration for koji cli tool ;url of XMLRPC server server = http://localhost/kojihub ;url of web interface weburl = http://localhost/koji ;url of package download site pkgurl = http://localhost/packages ;path to the koji top directory topdir = /mnt/koji ;configuration for SSL athentication ;client certificate cert = /etc/pki/koji/kojiadm.pem ;certificate of the CA that issued the client certificate ca = /etc/pki/koji/koji_ca_cert.crt ;certificate of the CA that issued the HTTP server certificate serverca = /etc/pki/koji/koji_ca_cert.crt " test Koji.lns get conf = { "section" = "koji" { } { "#comment" = "configuration for koji cli tool" } { } { "#comment" = "url of XMLRPC server" } { "server" = "http://localhost/kojihub" } { } { "#comment" = "url of web interface" } { "weburl" = "http://localhost/koji" } { } { "#comment" = "url of package download site" } { "pkgurl" = "http://localhost/packages" } { } { "#comment" = "path to the koji top directory" } { "topdir" = "/mnt/koji" } { } { "#comment" = "configuration for SSL athentication" } { } { "#comment" = "client certificate" } { "cert" = "/etc/pki/koji/kojiadm.pem" } { } { "#comment" = "certificate of the CA that issued the client certificate" } { "ca" = "/etc/pki/koji/koji_ca_cert.crt" } { } { "#comment" = "certificate of the CA that issued the HTTP server certificate" } { "serverca" = "/etc/pki/koji/koji_ca_cert.crt" } }
A full koji.conf
let conf = "include /etc/ld.so.conf.d/*.conf # libc default configuration /usr/local/lib hwcap 1 nosegneg "
let conf = "# Generated by LVM2: date contents = \"Text Format Volume Group\" version = 1 description = \"Created *after* executing 'eek'\" creation_host = \"eek\" # Linux eek creation_time = 6666666666 # eeeek VG1 { id = \"uuid-uuid-uuid-uuid\" seqno = 2 status = [\"RESIZEABLE\", \"READ\", \"WRITE\"] extent_size = 8192 # 4 Megabytes max_lv = 0 max_pv = 0 process_priority = -18 physical_volumes { pv0 { id = \"uuid-uuid-uuid-uuid\" device = \"/dev/sda6\" # Hint only status = [\"ALLOCATABLE\"] pe_start = 123 pe_count = 123456 # many Gigabytes } } logical_volumes { LogicalEek { id = \"uuid-uuid-uuid-uuid\" status = [\"READ\", \"WRITE\", \"VISIBLE\"] segment_count = 1 segment1 { start_extent = 0 extent_count = 123456 # beaucoup Gigabytes type = \"striped\" stripe_count = 1 # linear stripes = [ \"pv0\", 0 ] } } } } " test LVM.int get "5" = { "int" = "5" }
A full configuration file
let conf = "port = 27017 fork = true pidfilepath = /var/run/mongodb/mongodb.pid logpath = /var/log/mongodb/mongodb.log dbpath =/var/lib/mongodb journal = true nohttpinterface = true "
let conf = "[connection] id=wifoobar uuid=16fa8830-cf15-4523-8c1f-c6c635246855 permissions=user:foo:; type=802-11-wireless [802-11-wireless] ssid=wifoobar mode=infrastructure mac-address=11:00:99:33:33:AA security=802-11-wireless-security [802-11-wireless-security] key-mgmt=none wep-key0=123abc123abc [ipv4] method=auto [ipv6] method=auto [vpn] NAT Traversal Mode=natt DPD idle timeout (our side)=0\n"
let conf = "CLOUD_DOMAIN=\"example.com\" VALID_GEAR_SIZES=\"small,medium\" DEFAULT_MAX_GEARS=\"100\" DEFAULT_GEAR_CAPABILITIES=\"small\" DEFAULT_GEAR_SIZE=\"small\" MONGO_HOST_PORT=\"localhost:27017\" MONGO_USER=\"openshift\" MONGO_PASSWORD=\"mooo\" MONGO_DB=\"openshift_broker_dev\" MONGO_SSL=\"false\" ENABLE_USAGE_TRACKING_DATASTORE=\"false\" ENABLE_USAGE_TRACKING_AUDIT_LOG=\"false\" USAGE_TRACKING_AUDIT_LOG_FILE=\"/var/log/openshift/broker/usage.log\" ENABLE_ANALYTICS=\"false\" ENABLE_USER_ACTION_LOG=\"true\" USER_ACTION_LOG_FILE=\"/var/log/openshift/broker/user_action.log\" AUTH_PRIVKEYFILE=\"/etc/openshift/server_priv.pem\" AUTH_PRIVKEYPASS=\"\" AUTH_PUBKEYFILE=\"/etc/openshift/server_pub.pem\" AUTH_RSYNC_KEY_FILE=\"/etc/openshift/rsync_id_rsa\" AUTH_SCOPE_TIMEOUTS=\"session=1.days|7.days, *=1.months|6.months\" ENABLE_MAINTENANCE_MODE=\"false\" MAINTENANCE_NOTIFICATION_FILE=\"/etc/openshift/outage_notification.txt\" DOWNLOAD_CARTRIDGES_ENABLED=\"false\" "
let conf = "Listen 127.0.0.1:8080 User apache Group apache include /etc/httpd/conf.d/ruby193-passenger.conf PassengerUser apache PassengerMaxPoolSize 80 PassengerMinInstances 2 PassengerPreStart http://127.0.0.1:8080/ PassengerUseGlobalQueue off RackBaseURI /broker PassengerRuby /var/www/openshift/broker/script/broker_ruby <Directory /var/www/openshift/broker/httpd/root/broker> Options -MultiViews </Directory> "
let conf = "[ {\"quickstart\": { \"id\": \"1\", \"name\":\"CakePHP\", \"website\":\"http://cakephp.org/\", \"initial_git_url\":\"git://github.com/openshift/cakephp-example.git\", \"cartridges\":[\"php-5.4\",\"mysql-5.1\"], \"summary\":\"CakePHP is a rapid development framework for PHP which uses commonly known design patterns like Active Record, Association Data Mapping, Front Controller and MVC.\", \"tags\":[\"php\",\"cakephp\",\"framework\"], \"admin_tags\":[] }}, {\"quickstart\": { \"id\": \"2\", \"name\":\"Django\", \"website\":\"https://www.djangoproject.com/\", \"initial_git_url\":\"git://github.com/openshift/django-example.git\", \"cartridges\":[\"python-2.7\"], \"summary\":\"A high-level Python web framework that encourages rapid development and clean, pragmatic design. Administrator user name and password are written to $OPENSHIFT_DATA_DIR/CREDENTIALS.\", \"tags\":[\"python\",\"django\",\"framework\"], \"admin_tags\":[] }}, {\"quickstart\":{ \"id\": \"4\", \"name\":\"Drupal\", \"website\":\"http://drupal.org/\", \"initial_git_url\":\"git://github.com/openshift/drupal-example.git\", \"cartridges\":[\"php-5.4\",\"mysql-5.1\"], \"summary\":\"An open source content management platform written in PHP powering millions of websites and applications. It is built, used, and supported by an active and diverse community of people around the world. Administrator user name and password are written to $OPENSHIFT_DATA_DIR/CREDENTIALS.\", \"tags\":[\"php\",\"drupal\",\"wiki\",\"framework\",\"instant_app\"], \"admin_tags\":[] }}, {\"quickstart\":{ \"id\": \"6\", \"name\":\"Ruby on Rails\", \"website\":\"http://rubyonrails.org/\", \"initial_git_url\":\"git://github.com/openshift/rails-example.git\", \"cartridges\":[\"ruby-1.9\",\"mysql-5.1\"], \"summary\":\"An open source web framework for Ruby that is optimized for programmer happiness and sustainable productivity. It lets you write beautiful code by favoring convention over configuration.\", \"tags\":[\"ruby\",\"rails\",\"framework\"], \"admin_tags\":[] }}, {\"quickstart\":{ \"id\": \"8\", \"name\":\"WordPress\", \"website\":\"http://wordpress.org\", \"initial_git_url\":\"git://github.com/openshift/wordpress-example.git\", \"cartridges\":[\"php-5.4\",\"mysql-5.1\"], \"summary\":\"A semantic personal publishing platform written in PHP with a MySQL back end, focusing on aesthetics, web standards, and usability. Administrator user name and password are written to $OPENSHIFT_DATA_DIR/CREDENTIALS.\", \"tags\":[\"php\",\"wordpress\",\"blog\",\"framework\",\"instant_app\"], \"admin_tags\":[] }} ]"
let conf = "# a comment the.backed-up.domain.tld relay:[their.mail.host.tld] .my.domain : * smtp:outbound-relay.my.domain example.com uucp:example example.com slow: example.com :[gateway.example.com] user.foo@example.com smtp:bar.example:2025 .example.com error:mail for *.example.com is not deliverable "
let conf = "# a comment virtual-alias.domain anything postmaster@virtual-alias.domain postmaster user1@virtual-alias.domain address1 user2@virtual-alias.domain address2, address3 root robert.oot@domain.com @example.net root,postmaster postmaster mtaadmin+root=mta1 "
let conf = "data_directory = '/var/lib/postgresql/8.4/main' # use data in another directory hba_file = '/etc/postgresql/8.4/main/pg_hba.conf' # host-based authentication file ident_file = '/etc/postgresql/8.4/main/pg_ident.conf' # ident configuration file # If external_pid_file is not explicitly set, no extra PID file is written. external_pid_file = '/var/run/postgresql/8.4-main.pid' # write an extra PID file listen_addresses = 'localhost' # what IP address(es) to listen on; port = 5432 # (change requires restart) max_connections = 100 # (change requires restart) superuser_reserved_connections = 3 # (change requires restart) unix_socket_directory = '/var/run/postgresql' # (change requires restart) unix_socket_group = '' # (change requires restart) unix_socket_permissions = 0777 # begin with 0 to use octal notation # (change requires restart) bonjour_name = '' # defaults to the computer name authentication_timeout = 1min # 1s-600s ssl = true # (change requires restart) ssl_ciphers = 'ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH' # allowed SSL ciphers ssl_renegotiation_limit = 512MB # amount of data between renegotiations password_encryption = on db_user_namespace = off search_path = '\"$user\",public' # schema names default_tablespace = '' # a tablespace name, '' uses the default temp_tablespaces = '' # a list of tablespace names, '' uses datestyle = 'iso, mdy' intervalstyle = 'postgres' timezone = unknown # actually, defaults to TZ environment "
A full configuration file
let conf = "# Internet (IP) protocols ip 0 IP # internet protocol, pseudo protocol number #hopopt 0 HOPOPT # IPv6 Hop-by-Hop Option [RFC1883] icmp 1 ICMP # internet control message protocol igmp 2 IGMP # Internet Group Management tp++ 39 TP++ # TP++ Transport Protocol a/n 107 A/N # Active Networks "
let conf = "# ftpmaster allow * by key 74BF771E allow sections 'desktop/*' by anybody allow sections 'gforge/*' and binaries contain 'bzr' or not source '*melanie*'|'katya' by any key "
A full configuration
let conf = "# Red Hat Subscription Manager Configuration File: # Unified Entitlement Platform Configuration [server] # Server hostname: hostname = subscription.rhn.redhat.com # Server prefix: prefix = /subscription # Server port: port = 443 # Set to 1 to disable certificate validation: insecure = 0 # Set the depth of certs which should be checked # when validating a certificate ssl_verify_depth = 3 # an http proxy server to use proxy_hostname = # port for http proxy server proxy_port = # user name for authenticating to an http proxy, if needed proxy_user = # password for basic http proxy auth, if needed proxy_password = [rhsm] # Content base URL: baseurl= https://cdn.redhat.com # Server CA certificate location: ca_cert_dir = /etc/rhsm/ca/ # Default CA cert to use when generating yum repo configs: repo_ca_cert = %(ca_cert_dir)sredhat-uep.pem # Where the certificates should be stored productCertDir = /etc/pki/product entitlementCertDir = /etc/pki/entitlement consumerCertDir = /etc/pki/consumer # Manage generation of yum repositories for subscribed content: manage_repos = 1 # Refresh repo files with server overrides on every yum command full_refresh_on_yum = 0 # If set to zero, the client will not report the package profile to # the subscription management service. report_package_profile = 1 # The directory to search for subscription manager plugins pluginDir = /usr/share/rhsm-plugins # The directory to search for plugin configuration files pluginConfDir = /etc/rhsm/pluginconf.d [rhsmcertd] # Interval to run cert check (in minutes): certCheckInterval = 240 # Interval to run auto-attach (in minutes): autoAttachInterval = 1440 " test Rhsm.lns get conf = { "#comment" = "Red Hat Subscription Manager Configuration File:" } { } { "#comment" = "Unified Entitlement Platform Configuration" } { "server" { "#comment" = "Server hostname:" } { "hostname" = "subscription.rhn.redhat.com" } { } { "#comment" = "Server prefix:" } { "prefix" = "/subscription" } { } { "#comment" = "Server port:" } { "port" = "443" } { } { "#comment" = "Set to 1 to disable certificate validation:" } { "insecure" = "0" } { } { "#comment" = "Set the depth of certs which should be checked" } { "#comment" = "when validating a certificate" } { "ssl_verify_depth" = "3" } { } { "#comment" = "an http proxy server to use" } { "proxy_hostname" } { } { "#comment" = "port for http proxy server" } { "proxy_port" } { } { "#comment" = "user name for authenticating to an http proxy, if needed" } { "proxy_user" } { } { "#comment" = "password for basic http proxy auth, if needed" } { "proxy_password" } { } } { "rhsm" { "#comment" = "Content base URL:" } { "baseurl" = "https://cdn.redhat.com" } { } { "#comment" = "Server CA certificate location:" } { "ca_cert_dir" = "/etc/rhsm/ca/" } { } { "#comment" = "Default CA cert to use when generating yum repo configs:" } { "repo_ca_cert" = "%(ca_cert_dir)sredhat-uep.pem" } { } { "#comment" = "Where the certificates should be stored" } { "productCertDir" = "/etc/pki/product" } { "entitlementCertDir" = "/etc/pki/entitlement" } { "consumerCertDir" = "/etc/pki/consumer" } { } { "#comment" = "Manage generation of yum repositories for subscribed content:" } { "manage_repos" = "1" } { } { "#comment" = "Refresh repo files with server overrides on every yum command" } { "full_refresh_on_yum" = "0" } { } { "#comment" = "If set to zero, the client will not report the package profile to" } { "#comment" = "the subscription management service." } { "report_package_profile" = "1" } { } { "#comment" = "The directory to search for subscription manager plugins" } { "pluginDir" = "/usr/share/rhsm-plugins" } { } { "#comment" = "The directory to search for plugin configuration files" } { "pluginConfDir" = "/etc/rhsm/pluginconf.d" } { } } { "rhsmcertd" { "#comment" = "Interval to run cert check (in minutes):" } { "certCheckInterval" = "240" } { "#comment" = "Interval to run auto-attach (in minutes):" } { "autoAttachInterval" = "1440" } }
A full rhsm.conf
let conf = "# rsyslog v5 configuration file $ModLoad imuxsock # provides support for local system logging (e.g. via logger command) $ModLoad imklog # provides kernel logging support (previously done by rklogd) $UDPServerRun 514 $InputTCPServerRun 514 $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat $ActionFileEnableSync on $IncludeConfig /etc/rsyslog.d/*.conf *.info;mail.none;authpriv.none;cron.none /var/log/messages authpriv.* /var/log/secure *.emerg * *.* @2.7.4.1 *.* @@2.7.4.1 *.emerg :omusrmsg:* *.emerg :omusrmsg:foo,bar *.emerg | /dev/xconsole "
let conf = "# This is a comment word a line indented line with $péci@l cH@r2ct3rs "
let conf = "# this is a comment mykey = myvalue # eol comment anotherkey = another value "
let conf = "# this is a comment jarwin = JosephArwin manderso = MarkAnderson MarkusAndersonus users = @account nobody = * ;commented = SomeOne "
let conf = "# This file configures various client-side behaviors. [auth] password-stores = gnome-keyring,kwallet store-passwords = no store-auth-creds = no [helpers] editor-cmd = /usr/bin/vim diff-cmd = /usr/bin/diff diff3-cmd = /usr/bin/diff3 diff3-has-program-arg = yes [tunnels] ssh = $SVN_SSH ssh -o ControlMaster=no rsh = /path/to/rsh -l myusername [miscellany] global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo *.rej *~ #*# .#* .*.swp .DS_Store # Set log-encoding to the default encoding for log messages log-encoding = latin1 use-commit-times = yes no-unlock = yes mime-types-file = /path/to/mime.types preserved-conflict-file-exts = doc ppt xls od? enable-auto-props = yes interactive-conflicts = no [auto-props] *.c = svn:eol-style=native *.cpp = svn:eol-style=native *.h = svn:eol-style=native *.dsp = svn:eol-style=CRLF *.dsw = svn:eol-style=CRLF *.sh = svn:eol-style=native;svn:executable *.txt = svn:eol-style=native *.png = svn:mime-type=image/png *.jpg = svn:mime-type=image/jpeg Makefile = svn:eol-style=native "
let conf = "# Red Hat Update Agent config file. # Format: 1.0 debug[comment]=Whether or not debugging is enabled debug=0 systemIdPath[comment]=Location of system id systemIdPath=/etc/sysconfig/rhn/systemid serverURL[comment]=Remote server URL (use FQDN) #serverURL=https://xmlrpc.rhn.redhat.com/XMLRPC serverURL=https://enter.your.server.url.here/XMLRPC hostedWhitelist[comment]=RHN Hosted URL's hostedWhitelist= enableProxy[comment]=Use a HTTP Proxy enableProxy=0 versionOverride[comment]=Override the automatically determined system version versionOverride= httpProxy[comment]=HTTP proxy in host:port format, e.g. squid.redhat.com:3128 httpProxy= noReboot[comment]=Disable the reboot actions noReboot=0 networkRetries[comment]=Number of attempts to make at network connections before giving up networkRetries=1 disallowConfChanges[comment]=Config options that can not be overwritten by a config update action disallowConfChanges=noReboot;sslCACert;useNoSSLForPackages;noSSLServerURL;serverURL;disallowConfChanges; sslCACert[comment]=The CA cert used to verify the ssl server sslCACert=/usr/share/rhn/RHNS-CA-CERT # Akamai does not support http protocol, therefore setting this option as side effect disable \"Location aware\" function useNoSSLForPackages[comment]=Use the noSSLServerURL for package, package list, and header fetching (disable Akamai) useNoSSLForPackages=0 retrieveOnly[comment]=Retrieve packages only retrieveOnly=0 skipNetwork[comment]=Skips network information in hardware profile sync during registration. skipNetwork=0 tmpDir[comment]=Use this Directory to place the temporary transport files tmpDir=/tmp writeChangesToLog[comment]=Log to /var/log/up2date which packages has been added and removed writeChangesToLog=0 stagingContent[comment]=Retrieve content of future actions in advance stagingContent=1 stagingContentWindow[comment]=How much forward we should look for future actions. In hours. stagingContentWindow=24 "
let conf = "libdir = \"/usr/lib/vmware\" dhcpd.fullpath = \"/usr/bin/vmnet-dhcpd\" authd.fullpath = \"/usr/sbin/vmware-authd\" authd.client.port = \"902\" loop.fullpath = \"/usr/bin/vmware-loop\" vmware.fullpath = \"/usr/bin/vmware\" control.fullpath = \"/usr/bin/vmware-cmd\" serverd.fullpath = \"/usr/sbin/vmware-serverd\" wizard.fullpath = \"/usr/bin/vmware-wizard\" serverd.init.fullpath = \"/usr/lib/vmware/serverd/init.pl\" serverd.vpxuser = \"vpxuser\" serverd.snmpdconf.subagentenabled = \"TRUE\" template.useFlatDisks = \"TRUE\" autoStart.defaultStartDelay = \"60\" autoStart.enabled = \"True\" autoStart.defaultStopDelay = \"60\" "
let conf_ace = "# comment with sharp [section1] test_ace = value # end of line comment test_ace = test_ace = \"value with spaces\" ; comment with colon "
let conf_acf = "# comment with sharp [section1] test_acf = value test_acf = test_acf : value2 # end of line comment ; comment with colon "
let conf_ade = "; a first comment with colon [section1] test_ade = value test_ade : value2 ; end of line comment ; comment with colon test_ade = "
let conf_adf = "; a first comment with colon [section1] test_adf = value test_adf : value2 ; end of line comment ; comment with colon test_adf = "
let conf_bce = "# comment with sharp [section1] test_bce = value # end of line comment ; comment with colon test_bce = "
let conf_bcf = "# conf with sharp [section1] test_bcf = value # end of line comment ; comment with colon test_bcf = "
let conf_bde = "; first comment with colon [section1] test_bde = value ; end of line comment ; comment with colon test_bde = "
let conf_bdf = "; first comment with colon [section1] test_bdf = value ; end of line comment ; comment with colon test_bdf = "
let conf_norealm = "### Comment admin: admin "
let config = " # This is a comment webserver: { bar: { # A comment host: localhost port= 9000 default-server: true } foo: { host: localhost port = 10000 } } jruby-puppet: { # This setting determines where JRuby will look for gems. It is also # used by the `puppetserver gem` command line tool. gem-home: /var/lib/puppet/jruby-gems # (optional) path to puppet conf dir; if not specified, will use the puppet default master-conf-dir: /etc/puppet # (optional) path to puppet var dir; if not specified, will use the puppet default master-var-dir: /var/lib/puppet # (optional) maximum number of JRuby instances to allow; defaults to <num-cpus>+2 #max-active-instances: 1 } # CA-related settings certificate-authority: { # settings for the certificate_status HTTP endpoint certificate-status: { # this setting contains a list of client certnames who are whitelisted to # have access to the certificate_status endpoint. Any requests made to # this endpoint that do not present a valid client cert mentioned in # this list will be denied access. client-whitelist: [] } } os-settings: { ruby-load-path: [/usr/lib/ruby/vendor_ruby, /home/foo/ruby ] } \n"
let config (app:lens) = (Util.empty | comment)* . rspace lbrack . Build.opt_list (kernel | app) (lrspace comma) . lrspace rbrack . Util.del_str "." . Util.eol . (Util.empty | comment)*
A top-level config
let config = Build.key_value_line_comment "config" sep_space (store /binary_indexes|yes|no/) comment
let config = "#### NOTICE #### # After manually editing any configuration settings in this file, # please run '/usr/local/cpanel/whostmgr/bin/whostmgr2 --updatetweaksettings' # to fully update your server's configuration. skipantirelayd=1 ionice_optimizefs=6 account_login_access=owner_root enginepl=cpanel.pl stats_log=/usr/local/cpanel/logs/stats_log cpaddons_notify_users=Allow users to choose apache_port=0.0.0.0:80 allow_server_info_status_from= system_diskusage_warn_percent=82.5500 maxemailsperhour email_send_limits_max_defer_fail_percentage default_archive-logs=1 SecurityPolicy::xml-api=1\n"
A sample cpanel.config file
let config1 = "disk_config disk1 bootable:1 preserve_always:all always_format:5,6,7,8,9,10,11 primary - 0 - - primary - 0 - - logical / 0 ext3 rw,relatime,errors=remount-ro createopts=\"-c -j\" logical swap 0 swap sw logical /var 0 ext3 rw,relatime createopts=\"-m 5 -j\" logical /tmp 0 ext3 rw createopts=\"-m 0 -j\" logical /usr 0 ext3 rw,relatime createopts=\"-j\" logical /home 0 ext3 rw,relatime,nosuid,nodev createopts=\"-m 1 -j\" logical /wrk 0 ext3 rw,relatime,nosuid,nodev createopts=\"-m 1 -j\" logical /transfer 0 vfat rw "
Another full configuration
let config2 = "disk_config /dev/sda primary - 250M - - primary - 20G - - logical - 8G - - logical - 4G - - logical - 5G - - disk_config /dev/sdb sameas:/dev/sda disk_config raid raid1 /boot sda1,sdb1 ext3 defaults raid1 / sda2,sdb2 ext3 defaults,errors=remount-ro raid1 swap sda5,sdb5 swap defaults raid1 /tmp sda6,sdb6 ext3 defaults createopts=\"-m 1\" raid1 /var sda7,sdb7 ext3 defaults "
Another full configuration
let config3 = "disk_config /dev/sdb primary / 21750 ext3 defaults,errors=remount-ro primary /boot 250 ext3 defaults logical - 4000 - - logical - 2000 - - logical - 10- - - disk_config cryptsetup randinit swap swap /dev/sdb5 swap defaults tmp /tmp /dev/sdb6 ext2 defaults luks /local00 /dev/sdb7 ext3 defaults,errors=remount-ro createopts=\"-m 0\" "
Another full configuration
let configfile = [ command "configfile" "\t" . spc . store Rx.no_spaces . eol ]
This lens applies to /etc/security/access.conf.
This lens applies to relevant conf files located in /etc/activemq/ and the file /etc/activemq.conf .
This lens applies to relevant XML files located in /etc/activemq/ .
This lens applies to /etc/aliases.
This lens applies to /etc/anacrontab.
This lens applies to /etc/approx/approx.conf.
This lens applies to files in /etc/update-manager.
This lens applies to /etc/apt/apt.conf and /etc/apt/apt.conf.d/*.
This lens applies to SSH authorized_keys.
This lens applies to /etc/auto.master, auto_master and /etc/auto.master.d/* files.
This lens applies to /etc/auto.*, auto_*, excluding known scripts.
This lens applies to /etc/backuppc/hosts.
This lens applies to /etc/boot.conf.
This lens applies to /etc/cachefilesd.conf.
This lens applies to most files in /etc/carbon/.
This lens applies to /etc/cgconfig.conf.
This lens applies to /etc/cgconfig.conf.
This lens applies to channels.conf files.
This lens applies to /etc/chrony.conf
This lens applies to /etc/clamd.conf, /etc/freshclam.conf and files in /etc/clamd.d.
This lens applies to collectd configuration files.
This lens applies to cpanel.config files.
This lens applies to /etc/cron.d/* and /etc/crontab.
This lens applies to /etc/crypttab.
This lens applies to /etc/dhcpd3/dhcpd.conf.
This lens applies to /etc/dovecot/dovecot.conf and files in /etc/dovecot/conf.d/.
This lens applies to Erlang configuration files.
This lens applies to files in the /etc/fonts directory.
This lens applies to /etc/fuse.conf.
This lens applies to $HOME/.gtk-bookmarks.
This lens applies to /etc/host.conf.
This lens applies to /etc/hosts.{allow,deny}.
This lens applies to /etc/inputrc.
This lens applies to jetty-realm.properties files.
This lens applies to relevant conf files located in /etc/activemq/ The following views correspond to the related files:
This lens applies to relevant conf files located in /etc/activemq/ The following views correspond to the related files:
This lens applies to /etc/kdump.conf.
This lens applies to /etc/keepalived/keepalived.conf.
This lens applies to SSH known_hosts files.
/etc/koji.conf /etc/kojid/kojid.conf /etc/koji-hub/hub.conf /etc/kojira/kojira.conf /etc/kojiweb/web.conf /etc/koji-shadow/koji-shadow.conf
This lens applies to /etc/lightdm/*.conf.
This lens applies to /etc/login.defs.
This lens applies to files in /etc/lvm/backup and /etc/lvm/archive.
This lens applies to /etc/MailScanner/MailScanner.conf and files in /etc/MailScanner/conf.d/.
This lens applies to MailScanner rules files The format is described below:
This lens applies to /etc/mke2fs.conf.
This lens applies to /etc/modprobe.conf and /etc/modprobe.d/*.
This lens applies to /etc/modules.
This lens applies to /etc/mongodb.conf.
This lens applies to /etc/{nagios{3,},icinga}/*.cfg.
This lens applies to /etc/{nagios{3,},icinga}/objects/*.cfg.
This lens applies to /etc/netmasks and /etc/inet/netmasks.
This lens applies to /etc/NetworkManager/system-connections/*.
This lens applies to /etc/networks.
This lens applies to /etc/nginx/nginx.conf.
This lens applies to /etc/nsswitch.conf.
This lens applies to /etc/ntpd.conf.
This lens autoloads /etc/pam.d/* for service specific files.
This lens applies to /etc/pam.conf.
This lens applies to /etc/pbuilderrc and /etc/pbuilder/pbuilderrc.
This lens applies to pg_hba.conf.
This lens applies to /etc/pgbouncer.ini See filter.
This lens applies to /etc/postfix/transport.
This lens applies to /etc/postfix/virtual.
This lens applies to postgresql.conf.
This lens applies to /etc/protocols.
This lens applies to /etc/puppet/auth.conf.
This lens applies to Puppetfiles.
This lens applies to /etc/baruwa See filter.
This lens applies to Rabbitmq configuration files.
This lens applies to reprepro’s uploaders files.
This lens applies to /etc/resolv.conf.
/etc/rhsm/rhsm.conf
This lens applies to /etc/rsyslog.conf.
This lens applies to /etc/schroot/schroot.conf.
This lens applies to /etc/services.
This lens applies to /etc/shells.
See filter.
This lens applies to /etc/asterisk/sip.conf.
This lens applies to /etc/system on Solaris.
This lens applies to conf files under /opt/splunk/etc See filter.
This lens applies to /etc/ssh/sshd_config
This lens applies to /etc/sudoers.
This lens applies to /etc/sysconfig/network-scripts/route-*
This lens applies to /etc/sysctl.conf and /etc/sysctl.d/*.
This lens applies to /etc/syslog.conf.
This lens applies to /lib/systemd/system/* and /etc/systemd/system/*.
This lens applies to /etc/tmpfiles.d/*.conf /usr/lib/tmpfiles.d/*.conf and /run/tmpfiles.d/*.conf.
This lens applies to Trapperkeeper webservice configuration files.
This lens applies to /etc/sysconfig/rhn/up2date.
This lens applies to /etc/updatedb.conf.
This lens applies to /etc/vfstab.
This lens applies to /etc/vmware/config.
This lens applies to /etc/X11/xorg.conf.
This lens applies to /etc/xymon/alerts.d/*.cfg and /etc/xymon/alerts.cfg.
test Xml.content put "<a><b/></a>" after clear "/a/b" = "<a><b></b>\n</a>"
let controller = ws . [ key ctrl_key . ws . store ctrl_value ]
let correction_re = Rx.relinteger_noplus
should actually only match between -127000000 and 127000000
Parses cpanel.config
Parses /etc/cron.d/*, /etc/crontab
let cronallow = "# Test comment # user1 another user2 "
Parses /etc/crypttab from the cryptsetup package.
Generic CSV lens collection
let ctrl_key = /[^ \t\n\/]+/
let ctrl_value = /[^ \t\n]+/
Parses cups configuration files
Close