diff --git a/.gitignore b/.gitignore
index ed39ed7e02..dec2a8ed46 100644
--- a/.gitignore
+++ b/.gitignore
@@ -150,8 +150,10 @@ test-*.trs
/libnm/nm-property-infos-dbus.xml
/libnm/nm-property-infos-ifcfg-rh.xml
/libnm/nm-property-infos-keyfile.xml
+/libnm/nm-property-infos-nmcli.xml
/libnm/nm-settings-docs-dbus.xml
/libnm/nm-settings-docs-gir.xml
+/libnm/nm-settings-docs-nmcli.xml
/libnm/tests/test-libnm
/libnm/tests/test-nm-client
/libnm/tests/test-remote-settings-client
@@ -192,9 +194,10 @@ test-*.trs
/m4/xsize.m4
/man/*.[1785]
-/man/nm-settings.xml
+/man/nm-settings-dbus.xml
/man/nm-settings-ifcfg-rh.xml
/man/nm-settings-keyfile.xml
+/man/nm-settings-nmcli.xml
/man/common.ent
/po/*.gmo
@@ -298,6 +301,7 @@ test-*.trs
/docs/libnm-util/tmpl/
/docs/libnm-util/version.xml
/docs/libnm-util/xml/
+/man/nm-settings.xml
/include/
/initscript/*/[Nn]etwork[Mm]anager
/initscript/Slackware/rc.networkmanager
diff --git a/Makefile.am b/Makefile.am
index dbdcd12318..031bd9f12c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1556,8 +1556,10 @@ libnm_noinst_data = \
libnm/nm-property-infos-dbus.xml \
libnm/nm-property-infos-ifcfg-rh.xml \
libnm/nm-property-infos-keyfile.xml \
+ libnm/nm-property-infos-nmcli.xml \
libnm/nm-settings-docs-dbus.xml \
libnm/nm-settings-docs-gir.xml \
+ libnm/nm-settings-docs-nmcli.xml \
$(NULL)
noinst_DATA += $(libnm_noinst_data)
@@ -4959,17 +4961,20 @@ man/%.1 man/%.5 man/%.7 man/%.8: man/%.xml man/common.ent
endif
man_nm_settings_xml = \
- man/nm-settings.xml \
- man/nm-settings-keyfile.xml \
+ man/nm-settings-dbus.xml \
man/nm-settings-ifcfg-rh.xml \
+ man/nm-settings-keyfile.xml \
+ man/nm-settings-nmcli.xml \
$(NULL)
if HAVE_INTROSPECTION
-man/nm-settings.xml: man/nm-settings.xsl libnm/nm-settings-docs-dbus.xml man/common.ent
+man/nm-settings-%.xml: man/nm-settings-%.xsl libnm/nm-settings-docs-%.xml man/common.ent
$(AM_V_GEN) $(XSLTPROC) --output $@ $(xsltproc_flags) $< $(word 2,$^)
-man/nm-settings-%.xml: man/nm-settings-%.xsl libnm/nm-property-infos-%.xml man/common.ent
+man/nm-settings-keyfile.xml: man/nm-settings-keyfile.xsl libnm/nm-property-infos-keyfile.xml man/common.ent
+ $(AM_V_GEN) $(XSLTPROC) --output $@ $(xsltproc_flags) $< $(word 2,$^)
+man/nm-settings-ifcfg-rh.xml: man/nm-settings-ifcfg-rh.xsl libnm/nm-property-infos-ifcfg-rh.xml man/common.ent
$(AM_V_GEN) $(XSLTPROC) --output $@ $(xsltproc_flags) $< $(word 2,$^)
CLEANFILES += $(man_nm_settings_xml)
@@ -4986,15 +4991,10 @@ man_pages += \
man/nmtui.1
man_pages_autogen += \
+ man/nm-settings-dbus.5 \
man/nm-settings-keyfile.5 \
- man/nm-settings.5
-
-if WITH_OPENVSWITCH
-man_pages += man/nm-openvswitch.7
-else
-EXTRA_DIST += man/nm-openvswitch.7
-dist_dependencies += man/nm-openvswitch.7
-endif
+ man/nm-settings-nmcli.5 \
+ $(NULL)
if CONFIG_PLUGIN_IFCFG_RH
man_pages_autogen += man/nm-settings-ifcfg-rh.5
@@ -5003,6 +5003,13 @@ EXTRA_DIST += man/nm-settings-ifcfg-rh.5
dist_dependencies += man/nm-settings-ifcfg-rh.5
endif
+if WITH_OPENVSWITCH
+man_pages += man/nm-openvswitch.7
+else
+EXTRA_DIST += man/nm-openvswitch.7
+dist_dependencies += man/nm-openvswitch.7
+endif
+
CLEANFILES += \
man/common.ent
@@ -5012,7 +5019,8 @@ EXTRA_DIST += \
$(addsuffix .xsl,$(basename $(man_nm_settings_xml))) \
$(man_pages) \
$(addsuffix .xml,$(basename $(man_pages))) \
- $(man_pages_autogen)
+ $(man_pages_autogen) \
+ $(NULL)
if HAVE_DOCS
@@ -5021,7 +5029,8 @@ install-data-hook-man:
for link in $(nmtui_links); do \
ln -f $(DESTDIR)$(mandir)/man1/nmtui.1 $(DESTDIR)$(mandir)/man1/$$link.1; \
done; \
- ln -f $(DESTDIR)$(mandir)/man5/NetworkManager.conf.5 $(DESTDIR)$(mandir)/man5/nm-system-settings.conf.5;
+ ln -f $(DESTDIR)$(mandir)/man5/NetworkManager.conf.5 $(DESTDIR)$(mandir)/man5/nm-system-settings.conf.5; \
+ ln -f $(DESTDIR)$(mandir)/man5/nm-settings-nmcli.5 $(DESTDIR)$(mandir)/man5/nm-settings.5;
install_data_hook += install-data-hook-man
@@ -5029,7 +5038,8 @@ uninstall-hook-man:
for link in $(nmtui_links); do \
rm -f $(DESTDIR)$(mandir)/man1/$$link.1; \
done; \
- rm -f $(DESTDIR)$(mandir)/man5/nm-system-settings.conf.5;
+ rm -f $(DESTDIR)$(mandir)/man5/nm-system-settings.conf.5; \
+ rm -f $(DESTDIR)$(mandir)/man5/nm-settings.5;
uninstall_hook += uninstall-hook-man
diff --git a/configure.ac b/configure.ac
index 174b86ea55..f1f6afbf28 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1284,9 +1284,10 @@ if test "$build_docs" != "yes" -a \
\
-f "$srcdir"/man/nm-openvswitch.7 -a \
\
+ -f "$srcdir"/man/nm-settings-dbus.5 -a \
-f "$srcdir"/man/nm-settings-ifcfg-rh.5 -a \
-f "$srcdir"/man/nm-settings-keyfile.5 -a \
- -f "$srcdir"/man/nm-settings.5 -a \
+ -f "$srcdir"/man/nm-settings-nmcli.5 -a \
\
-f "$srcdir"/man/nm-settings.xml -a \
-f "$srcdir"/man/nm-settings-keyfile.xml -a \
diff --git a/docs/api/Makefile.am b/docs/api/Makefile.am
index 5a79197c8f..520bb3f14d 100644
--- a/docs/api/Makefile.am
+++ b/docs/api/Makefile.am
@@ -88,8 +88,9 @@ content_files = \
$(top_builddir)/man/NetworkManager.xml \
$(top_builddir)/man/NetworkManager.conf.xml \
$(top_builddir)/man/nmcli-examples.xml \
- $(top_builddir)/man/nm-settings.xml \
+ $(top_builddir)/man/nm-settings-dbus.xml \
$(top_builddir)/man/nm-settings-keyfile.xml \
+ $(top_builddir)/man/nm-settings-nmcli.xml \
version.xml \
$(NULL)
diff --git a/docs/api/network-manager-docs.xml b/docs/api/network-manager-docs.xml
index 883df41d78..a97eaa895d 100644
--- a/docs/api/network-manager-docs.xml
+++ b/docs/api/network-manager-docs.xml
@@ -73,7 +73,8 @@
-
+
+
diff --git a/libnm/meson.build b/libnm/meson.build
index 1b8d128a43..b0d4e9f876 100644
--- a/libnm/meson.build
+++ b/libnm/meson.build
@@ -212,7 +212,7 @@ if enable_introspection
install: true,
)
- infos = [ 'dbus', 'keyfile' ]
+ infos = [ 'dbus', 'nmcli', 'keyfile' ]
if enable_ifcfg_rh
infos += [ 'ifcfg-rh' ]
endif
@@ -238,20 +238,24 @@ if enable_introspection
nm_property_infos_xml_keyfile = t
elif info == 'ifcfg-rh'
nm_property_infos_xml_ifcfg_rh = t
+ elif info == 'nmcli'
+ nm_property_infos_xml_nmcli = t
else
assert(false)
endif
endforeach
if enable_ifcfg_rh
nm_property_infos_xml = {
- 'dbus': nm_property_infos_xml_dbus,
- 'keyfile': nm_property_infos_xml_keyfile,
+ 'dbus': nm_property_infos_xml_dbus,
+ 'keyfile': nm_property_infos_xml_keyfile,
+ 'nmcli': nm_property_infos_xml_nmcli,
'ifcfg-rh': nm_property_infos_xml_ifcfg_rh,
}
else
nm_property_infos_xml = {
- 'dbus': nm_property_infos_xml_dbus,
+ 'dbus': nm_property_infos_xml_dbus,
'keyfile': nm_property_infos_xml_keyfile,
+ 'nmcli': nm_property_infos_xml_nmcli,
}
endif
@@ -288,24 +292,33 @@ if enable_introspection
depends: libnm_gir,
)
- name = 'dbus'
- nm_settings_docs_xml_dbus = custom_target(
- 'nm-settings-docs-' + name + '.xml',
- input: [nm_settings_docs_xml_gir, nm_property_infos_xml[name]],
- output: 'nm-settings-docs-' + name + '.xml',
- command: [
- python.path(),
- join_paths(meson.current_source_dir(), 'generate-docs-nm-settings-docs-merge.py'),
- '@OUTPUT@',
- nm_property_infos_xml[name],
- nm_settings_docs_xml_gir,
- ],
- depends: libnm_gir,
- )
+ foreach name: ['dbus', 'nmcli']
+ t = custom_target(
+ 'nm-settings-docs-' + name + '.xml',
+ input: [nm_settings_docs_xml_gir, nm_property_infos_xml[name]],
+ output: 'nm-settings-docs-' + name + '.xml',
+ command: [
+ python.path(),
+ join_paths(meson.current_source_dir(), 'generate-docs-nm-settings-docs-merge.py'),
+ '@OUTPUT@',
+ nm_property_infos_xml[name],
+ nm_settings_docs_xml_gir,
+ ],
+ depends: libnm_gir,
+ )
+ if name == 'dbus'
+ nm_settings_docs_xml_dbus = t
+ elif name == 'nmcli'
+ nm_settings_docs_xml_nmcli = t
+ else
+ assert(false)
+ endif
+ endforeach
nm_settings_docs_xml = {
- 'gir': nm_settings_docs_xml_gir,
- 'dbus': nm_settings_docs_xml_dbus,
+ 'gir': nm_settings_docs_xml_gir,
+ 'dbus': nm_settings_docs_xml_dbus,
+ 'nmcli': nm_settings_docs_xml_nmcli,
}
endif
diff --git a/man/meson.build b/man/meson.build
index 7d9de1ffe9..8e1150833f 100644
--- a/man/meson.build
+++ b/man/meson.build
@@ -58,7 +58,8 @@ endforeach
if enable_introspection
mans = [
['nm-settings-keyfile', '5', nm_property_infos_xml['keyfile']],
- ['nm-settings', '5', nm_settings_docs_xml['dbus']],
+ ['nm-settings-dbus', '5', nm_settings_docs_xml['dbus']],
+ ['nm-settings-nmcli', '5', nm_settings_docs_xml['nmcli']],
]
if enable_ifcfg_rh
diff --git a/man/nm-settings.xsl b/man/nm-settings-dbus.xsl
similarity index 95%
rename from man/nm-settings.xsl
rename to man/nm-settings-dbus.xsl
index 57d5ce41cf..0573d0d3b8 100644
--- a/man/nm-settings.xsl
+++ b/man/nm-settings-dbus.xsl
@@ -13,20 +13,20 @@
/>
-
+
- nm-settings
+ nm-settings-dbusNetworkManager developers
- nm-settings
+ nm-settings-dbus5NetworkManagerConfiguration&NM_VERSION;
- nm-settings
+ nm-settings-dbusDescription of settings and properties of NetworkManager connection profiles
@@ -155,7 +155,7 @@
- nm-settings.property..
+ nm-settings-dbus.property.. (see for flag values)
diff --git a/man/nm-settings-nmcli.xsl b/man/nm-settings-nmcli.xsl
new file mode 100644
index 0000000000..28e7504931
--- /dev/null
+++ b/man/nm-settings-nmcli.xsl
@@ -0,0 +1,165 @@
+
+
+%entities;
+]>
+
+
+
+
+
+
+
+ nm-settings-nmcli
+ NetworkManager developers
+
+
+ nm-settings-nmcli
+ 5
+ NetworkManager
+ Configuration
+ &NM_VERSION;
+
+
+ nm-settings-nmcli
+ Description of settings and properties of NetworkManager connection profiles
+
+
+ Description
+
+ NetworkManager is based on a concept of connection profiles, sometimes referred to as
+ connections only. These connection profiles contain a network configuration. When
+ NetworkManager activates a connection profile on a network device the configuration will
+ be applied and an active network connection will be established. Users are free to create
+ as many connection profiles as they see fit. Thus they are flexible in having various network
+ configurations for different networking needs. The connection profiles are handled by
+ NetworkManager via settings service and are exported on D-Bus
+ (/org/freedesktop/NetworkManager/Settings/<num> objects).
+ The conceptual objects can be described as follows:
+
+
+ Connection (profile)
+
+
+ A specific, encapsulated, independent group of settings describing
+ all the configuration required to connect to a specific network.
+ It is referred to by a unique identifier called the UUID. A connection
+ is tied to a one specific device type, but not necessarily a specific
+ hardware device. It is composed of one or more Settings
+ objects.
+
+
+
+
+
+
+ Setting
+
+
+ A group of related key/value pairs describing a specific piece of a
+ Connection (profile). Settings keys and allowed values are
+ described in the tables below. Keys are also referred to as properties.
+ Developers can find the setting objects and their properties in the libnm-core
+ sources. Look for the *_class_init functions near the bottom
+ of each setting source file.
+
+
+
+
+
+
+ The settings and properties shown in tables below list all available connection
+ configuration options. However, note that not all settings are applicable to all
+ connection types. NetworkManager provides a command-line tool nmcli
+ that allows direct configuration of the settings and properties according to a connection
+ profile type. nmcli connection editor has also a built-in
+ describe command that can display description of particular settings
+ and properties of this page.
+
+
+
+
+
+ Secret flag types:
+
+ Each password or secret property in a setting has an associated flags property
+ that describes how to handle that secret. The flags property is a bitfield
+ that contains zero or more of the following values logically OR-ed together.
+
+
+
+ 0x0 (none) - the system is responsible for providing and storing this secret. This
+ may be required so that secrets are already available before the user logs in.
+ It also commonly means that the secret will be stored in plain text on disk, accessible
+ to root only. For example via the keyfile settings plugin as described in the "PLUGINS" section
+ in NetworkManager.conf5.
+
+
+
+ 0x1 (agent-owned) - a user-session secret agent is responsible for providing and storing
+ this secret; when it is required, agents will be asked to provide it.
+
+
+ 0x2 (not-saved) - this secret should not be saved but should be requested from the user
+ each time it is required. This flag should be used for One-Time-Pad secrets, PIN codes from hardware tokens,
+ or if the user simply does not want to save the secret.
+
+
+ 0x4 (not-required) - in some situations it cannot be automatically determined that a secret
+ is required or not. This flag hints that the secret is not required and should not be requested from the user.
+
+
+
+
+
+ Files
+ /etc/NetworkManager/system-connections or distro plugin-specific location
+
+
+ See Also
+ NetworkManager8,
+ nmcli1,
+ nmcli-examples7,
+ NetworkManager.conf5
+
+
+
+
+
+
+ setting
+ .
+
+
+
+
+ Key Name
+ Value Type
+ Default Value
+ Value Description
+
+
+
+
+
+
+
+
+
+
+
+
+
+ nm-settings-nmcli.property..
+
+
+ (see for flag values)
+
+
+
+
diff --git a/tools/meson-post-install.sh b/tools/meson-post-install.sh
index a6fd0961ef..897a8c5c76 100755
--- a/tools/meson-post-install.sh
+++ b/tools/meson-post-install.sh
@@ -52,6 +52,7 @@ if [ "$enable_docs" = 1 ]; then
done
ln -f "${DESTDIR}${nm_mandir}/man5/NetworkManager.conf.5" "${DESTDIR}${nm_mandir}/man5/nm-system-settings.conf.5"
+ ln -f "${DESTDIR}${nm_mandir}/man5/nm-settings-nmcli.5" "${DESTDIR}${nm_mandir}/man5/nm-settings.5"
fi
if [ "$enable_ifcfg_rh" = 1 ]; then