summaryrefslogtreecommitdiff
path: root/docs/api
Commit message (Collapse)AuthorAgeFilesLines
* support loopback interfaceWen Liang2022-11-232-0/+2
| | | | | | | | | Support managing the loopback interface through NM as the users want to set the proper mtu for loopback interface when forwarding the packets. Additionally, the IP addresses, DNS, route and routing rules are also allowed to configure for the loopback connection profiles. https://bugzilla.redhat.com/show_bug.cgi?id=2060905
* docs/api: fix ugly things in MakefileLubomir Rintel2022-11-081-14/+2
| | | | | | | | | | | | | | | | | | | | Turns out automake doesn't like either that we add dependencies to a target conditionally. Not sure why, but it's a tasteless thing to do nevertheless: gtk-doc.make:174: warning: $(DOC_MAIN_SGML_FILE) was already defined in condition BUILD_DOCS, which is included in condition TRUE ... docs/api/Makefile.am:112: 'gtk-doc.make' included from here docs/api/Makefile.am:14: ... '$(DOC_MAIN_SGML_FILE)' previously defined here In any case, the dependency is wrong in the first place -- the source document doesn't depend on other source. The target (which is a stamp file, since the xslt processor produces multiple files) does! Moreover, there's a dependency of the stamp file on $(content_files) already, so including GENERATED_FILES (like we already do) in content_files should be sufficient. While at that, deal with other not-so-nice things; don't extend "all" target needlessly and don't define a target conditionally.
* man: add NetworkManager-wait-online.service.8 manualThomas Haller2022-03-022-0/+2
| | | | | | | | | | | NetworkManager-wait-online is a constant source of confusion, as it seems to delay the boot (when it's often just the messenger or either a network problem, a NetworkManager misconfiguration or a misconfiguration of other systemd services). Try to clear that up with a manual page. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1130
* docs: update URL for latest online documentationThomas Haller2021-09-241-1/+1
|
* man: split NetworkManager-dispatcher(8) manual page out of NetworkManager(8)Thomas Haller2021-03-162-0/+2
| | | | https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/784
* build: move "libnm-core/" to "src/" and split itThomas Haller2021-02-182-4/+4
| | | | | | | | | | | | | | | | | | | | "libnm-core/" is rather complicated. It provides a static library that is linked into libnm.so and NetworkManager. It also contains public headers (like "nm-setting.h") which are part of public libnm API. Then we have helper libraries ("libnm-core/nm-libnm-core-*/") which only rely on public API of libnm-core, but are themself static libraries that can be used by anybody who uses libnm-core. And "libnm-core/nm-libnm-core-intern" is used by libnm-core itself. Move "libnm-core/" to "src/". But also split it in different directories so that they have a clearer purpose. The goal is to have a flat directory hierarchy. The "src/libnm-core*/" directories correspond to the different modules (static libraries and set of headers that we have). We have different kinds of such modules because of how we combine various code together. The directory layout now reflects this.
* all: update deprecated SPDX license identifiersThomas Haller2021-01-051-1/+1
| | | | | | | | | | | | | | | | These SPDX license identifiers are deprecated ([1]). Update them. [1] https://spdx.org/licenses/ sed \ -e '1 s%^/\* SPDX-License-Identifier: \(GPL-2.0\|LGPL-2.1\)+ \*/$%/* SPDX-License-Identifier: \1-or-later */%' \ -e '1,2 s%^\(--\|#\|//\) SPDX-License-Identifier: \(GPL-2.0\|LGPL-2.1\)+$%\1 SPDX-License-Identifier: \2-or-later%' \ -i \ $(git grep -l SPDX-License-Identifier -- \ ':(exclude)shared/c-*/' \ ':(exclude)shared/n-*/' \ ':(exclude)shared/systemd/src' \ ':(exclude)src/systemd/src')
* man: add `man 8 nm-cloud-setup`Thomas Haller2020-12-112-0/+5
| | | | | https://bugzilla.redhat.com/show_bug.cgi?id=1867997 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/ ## 600
* build: ignore "docs/api/NetworkManager.actions" build artifactThomas Haller2020-12-031-5/+15
| | | | | | I still don't understand why we get now these ".actions" build artifacts. Anyway, I don't think we need to care. Just ignore it.
* docs: move "nm-settings-docs-{dbus,nmcli}.xml" from "libnm/" to "man/"Thomas Haller2020-06-111-1/+1
| | | | | | | | | | | | "nm-settings-docs-nmcli.xml" will be generated by a tool that depends on "clients/common/". The file should thus not be in libnm directory, otherwise there is a circular dependency. Move the file to "man/" directory. For consistency, also move "nm-settings-docs-dbus.xml". Note that we cannot move "nm-settings-docs-gir.xml" to "man/", because that one is needed for building clients.
* docs: add more nm-settings manpages (dbus,nmcli,keyfile,ifcfg-rh)Thomas Haller2020-06-112-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | A significant part of NetworkManager's API are the connection profiles, documented in `man nm-settings*`. But there are different aspects about profiles, depending on what you are interested. There is the D-Bus API, nmcli options, keyfile format, and ifcfg-rh format. Additionally, there is also libnm API. Add distinct manual pages for the four aspects. Currently the two new manual pages "nm-settings-dbus" and "nm-settings-nmcli" are still identical to the former "nm-settings.5" manual. In the future, they will diverge to account for the differences. There are the following aspects: - "dbus" - "keyfile" - "ifcfg-rh" - "nmcli" For "libnm" we don't generate a separate "nm-settings-libnm" manual page. That is instead documented via gtk-doc. Currently the keyfile and ifcfg-rh manual pages only detail settings which differ. But later I think also these manual pages should contain all settings that apply.
* docs: rename "nm-settings-docs.xml" to "nm-settings-docs-dbus.xml"Thomas Haller2020-06-112-2/+2
| | | | | | "nm-settings-docs-dbus.xml" is "nm-settings-docs-gir.xml" merged with "nm-property-infos-dbus.xml". The name should reflect that, also because we will get more files with this naming scheme.
* docs: fix dependency of "nm-settings*xml" to "common.ent"Thomas Haller2020-06-111-1/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "man/nm-settings%.xml" really should depend on "common.ent". The reason is that XSL files like "man/nm-settings.xsl" include "common.ent". The previous code already tried to express that, but for some reasons this dependency was not honored. Fix that. However, that uncovers another problem with gtk-doc.make. If we do that without the workaround for "docs/api/Makefile.am", then $ ./autogen.sh && make V=1 SHELL='sh -x' distcheck breaks. The reason is not clear to me. The new dependency leads to rebuild "man/nm-settings-keyfile.xml". But that is worse, somehow the file "$(top_srcdir)/man/nm-settings-keyfile.xml" ends up being read-only. Afterwards, gtk-doc.make does setup-build.stamp: -$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ files=`echo $(SETUP_FILES) $(DOC_MODULE).types`; \ if test "x$$files" != "x" ; then \ for file in $$files ; do \ destdir=`dirname $(abs_builddir)/$$file`; \ test -d "$$destdir" || mkdir -p "$$destdir"; \ test -f $(abs_srcdir)/$$file && \ cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \ done; \ fi; \ fi $(AM_V_at)touch setup-build.stamp so that the files in build dir are also read-only. Then, make distcheck goes ahead and builds the files once again, which fails. You are welcome to understand why this workaround is necessary. Please then create a better fix.
* license: Add license using SPDX identifiers to meson build filesIñigo Martínez2020-02-171-0/+2
| | | | | License is missing in meson build files. This has been added using SPDX identifiers and licensed under LGPL-2.1+.
* core,libnm: add VRF supportBeniamino Galvani2020-01-141-0/+1
| | | | | | | | Add VRF support to the daemon. When the device we are activating is a VRF or a VRF's slave, put routes in the table specified by the VRF connection. Also, introduce a VRF device type in libnm.
* build/meson: cleanup configuration_data() for pathsThomas Haller2019-11-221-1/+1
| | | | | | | | | | | We don't need such data duplicated. The build setup should have only one configuration_data() for patching such values. Now we only have one global, immutable data_conf dictionary with configuration values. Note that none of the users of data_conf uses all entries, but as the entries are basically only dependent on the meson/configure option and valid for the entire project, this simplifies to handling.
* meson: Improve api documentation build fileIñigo Martínez2019-10-011-22/+29
| | | | | | | | | | | | the `doc_module` variable has been removed. It was created because its used in the autotools build file but actually `nm_name` variable can be used easily. Different objects used in the documentation target have been grouped together. The content file `version.xml`, and different build files are now added properly.
* meson: Use generators placeholdersIñigo Martínez2019-10-011-2/+2
| | | | | | | | | | Functions derived from generators as `configure_file`, `custom_target` and `i18n.merge_file` can use placeholders like `@BASENAME@` that removes the extension from the input filename string. The output string has been replaced by this placeholder that allows in some cases the use of less variables.
* docs: include the license boilerplate instead of full GPL textLubomir Rintel2019-09-103-4/+32
| | | | | | | | What's actually needed here is an explaination of how the license applies along with the explanation where to find the full text. Also, the libnm documentation was lacking the licensing information altogether. Fix fixes it too.
* build/meson: fix location of introspection filesThomas Haller2019-04-181-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | With glib < 2.51.3, gdbus-codegen does not understand "--output-directory" [1]. Hence, the generated files are like "build/dbus-org.freedesktop.NetworkManager.Device.WifiP2P.xml" instead of "build/introspection/dbus-org.freedesktop.NetworkManager.Device.WifiP2P.xml" But gnome.gdbus_codegen() returns a path as if it would be inside "build/introspection". Hack around that, by patching the correct path otherwise. This is still ugly, because repeated "ninja -C build" calls will always try to rebuild this target (because the wrong file name is considered). See also [2]. [1] https://gitlab.gnome.org/GNOME/glib/commit/ee09bb704fe9ccb24d92dd86696a0e6bb8f0dc1a [2] https://github.com/mesonbuild/meson/blob/2e93ed58c30d63da8527ff16375ff9e0642e7533/mesonbuild/modules/gnome.py#L1170 (cherry picked from commit ad9e5995e144c1a123ed1ba7a5f7fde54a83fc73)
* wifi-p2p: rename Wi-Fi P2PThomas Haller2019-02-012-8/+8
| | | | | After renaming the files, also rename all the content to follow the "Wi-Fi P2P" naming scheme.
* core/devices: Add P2P Wifi device and peer trackingBenjamin Berg2019-01-272-25/+33
| | | | This only adds the new device type and simple peer list handling.
* build: meson: Add trailing commasIñigo Martínez2018-12-201-3/+3
| | | | | | | Add missing trailing commas that avoids getting noise when another file/parameter is added and eases reviewing changes[0]. [0] https://gitlab.gnome.org/GNOME/dconf/merge_requests/11#note_291585
* build: fix check-docs.sh for out-of-tree buildsThomas Haller2018-10-251-9/+0
| | | | Fixes: 7a59cd274485e4c0345c563d48e516967630d7f0
* build: meson: fix generation of api docsBeniamino Galvani2018-09-281-0/+17
| | | | | | | | | | We need to copy all introspection files to the same directory when building the documentation. Note that we only require Meson 0.44, but for the documentation at least 0.46 is needed because of a new functionality of gnome.gdbus_codegen(). In this way we can still build on Travis CI (without documentation).
* docs: include openvswitch(7) man page only when ovs is enabledBeniamino Galvani2018-09-192-2/+6
|
* initrd: add configuration generatorLubomir Rintel2018-09-182-0/+2
| | | | | | nm-initrd-generator scans the command line for options relevant to network configuration and creates configuration files for an early instance of NetworkManager run from the initial ramdisk during early boot.
* docs: misc. typos pt2luz.paz2018-09-171-1/+1
| | | | | | | | | | | | | | | | | | | | | Remainder of typos found using `codespell -q 3 --skip="./shared,./src/systemd,*.po" -I ../NetworkManager-word-whitelist.txt` whereby whitelist consists of: ``` ans busses cace cna conexant crasher iff liftime creat nd sav technik uint ``` https://github.com/NetworkManager/NetworkManager/pull/205
* core: introduce NMDeviceWireGuardJavier Arteaga2018-08-062-0/+2
| | | | | For now, the device only exposes partial link status (not including peers). It cannot create new links.
* docs: include missing documentation in libnm and D-Bus docsLubomir Rintel2018-06-282-2/+21
| | | | Check that we don't repeat the omission in future.
* docs: update copyright yearLubomir Rintel2018-06-281-0/+1
|
* docs: fix VPN chapter IDDan Williams2018-03-161-1/+1
|
* build/meson: fix build without introspectionThomas Haller2018-01-101-8/+10
| | | | nm_settings_docs is only defined with enable_introspection.
* meson: Use string variables extensivelyIñigo Martínez2018-01-101-1/+1
| | | | | | | The strings holding the names used for libraries have also been moved to different variables. This way they would be less error as these variables can be reused easily and any typing error would be quickly detected.
* build: Add meson build files to distributable filesIñigo Martínez2018-01-101-1/+1
| | | | | | | | | | | | | Although it is possible to generate distributable files on meson since version 0.41 by using the `ninja dist` command, autotools does different things that end up creating a different distributable file. meson build files have been added to autotools build files as distributable files, so the whole meson port would also be distributed. https://mail.gnome.org/archives/networkmanager-list/2018-January/msg00047.html
* build: Workaround for gtkdoc dependenciesIñigo Martínez2018-01-021-1/+3
| | | | | | | | | | | | | | | | | gtkdoc uses some custom generated targets as content files. However, there are still two problem. The first is that gtkdoc does not support targets which are not strings. This is being fixed in the following issue: https://github.com/mesonbuild/meson/pull/2806 The second issue is that the gtkdoc function produces a target which is triggered at install time. This makes the dependencies generation to not be triggered. This patch uses a workaround for that second issue. https://mail.gnome.org/archives/networkmanager-list/2017-December/msg00079.html
* build: Remove default install directoriesIñigo Martínez2018-01-021-4/+1
| | | | | | | | | | The install directories of those targets that match the default install directories have been removed because they are redundant. This also allows a simple meson build files and it is unnecessary to create some paths. https://mail.gnome.org/archives/networkmanager-list/2017-December/msg00078.html
* build: Remove documentation generation workaroundsIñigo Martínez2017-12-181-3/+1
| | | | | | | | | Documentation was not working in meson due to problems with files generated in `libnm`. To avoid these problems, workarounds were used. This problems have been recently fixed so these workarounds are not necessary anymore. https://mail.gnome.org/archives/networkmanager-list/2017-December/msg00061.html
* build: add initial support for meson build systemIñigo Martínez2017-12-131-0/+32
| | | | | | | | | | meson is a build system focused on speed an ease of use, which helps speeding up the software development. This patch adds meson support along autotools. [thaller@redhat.com: rebased patch and adjusted for iwd support] https://mail.gnome.org/archives/networkmanager-list/2017-December/msg00022.html
* man: add OpenVSwitch overviewlr/ovsLubomir Rintel2017-10-302-0/+2
|
* docs/api: restructureLubomir Rintel2017-03-171-29/+105
| | | | | This splits the manual into parts and groups the D-Bus interfaces into chapters by the object class. It looks considerably better.
* docs/api: move D-Bus reference after nm-settingsLubomir Rintel2017-03-171-57/+57
|
* docs/api: make the connection settings look betterLubomir Rintel2017-03-172-22/+44
| | | | | Turn the it into a chapter with refentries to better fit the structure of the table of contects. Also, include the properties in the index.
* docs/api: add abstractLubomir Rintel2017-03-171-0/+20
|
* docs/api: add standard release informationLubomir Rintel2017-03-171-1/+5
|
* docs/api: reorder the manual pagesLubomir Rintel2017-03-171-4/+4
| | | | I guess the daemon and its configuration first makes most sense.
* docs: update yearsLubomir Rintel2017-03-021-0/+1
|
* docs: add missing links to dummy and macsec device/settingBeniamino Galvani2017-02-232-0/+2
| | | | | Fixes: b42f780e045c69e6b2c350dcd6de760c673a78e0 Fixes: d252a99fa25359e3795abcacfae08c76dc5386b8
* build: combine handling of setting docs and man pagesThomas Haller2017-02-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Building the man pages via xsltproc requires "docbook.xsl" which is part of docbook. Previously, we would build the man pages solely based on "--enable-introspection", which checks for the presence of xsltproc, but not docbook. This can lead to build failure when docbook is not available, but "--enable-introspection" is given. Instead of adding yet another configure option to fine-tune and say "--with-docbook --disable-gtk-doc", just simplify it. Now, documentation (both man pages and setting docs) will be generated with "--enable-gtk-doc" and "--enable-introspection". If the documentation is not about to be generated, pre-generated docs will be installed if they are available. That is commonly the case with a source tarball, but not with a git checkout. Finally, if documentation is nither generated nor pre-generated, no documentation will be installed *duh*. This removes the possibility to treat man pages separate from settings docs. Now you either generate both, install both pre-generated, or don't get any of them. https://bugzilla.gnome.org/show_bug.cgi?id=778551
* core,libnm: introduce NMDeviceMacsecBeniamino Galvani2017-01-162-0/+2
| | | | | At the moment the device only exposes the current link status, but cannot create new links.