Sync spec file with upstream
Related: RHEL-2404
This commit is contained in:
parent
9b7c1a53e2
commit
2025f8936f
@ -155,12 +155,18 @@
|
|||||||
%global split_ifcfg_rh 0
|
%global split_ifcfg_rh 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?fedora} >= 36 || 0%{?rhel} >= 9
|
%if (0%{?fedora} >= 36 && 0%{?fedora} < 39) || 0%{?rhel} >= 9
|
||||||
%global ifcfg_warning 1
|
%global ifcfg_warning 1
|
||||||
%else
|
%else
|
||||||
%global ifcfg_warning 0
|
%global ifcfg_warning 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%if 0%{?fedora} >= 39
|
||||||
|
%global ifcfg_migrate 1
|
||||||
|
%else
|
||||||
|
%global ifcfg_migrate 0
|
||||||
|
%endif
|
||||||
|
|
||||||
%if 0%{?fedora}
|
%if 0%{?fedora}
|
||||||
# Although eBPF would be available on Fedora's kernel, it seems
|
# Although eBPF would be available on Fedora's kernel, it seems
|
||||||
# we often get SELinux denials (rh#1651654). But even aside them,
|
# we often get SELinux denials (rh#1651654). But even aside them,
|
||||||
@ -185,7 +191,7 @@ Epoch: %{epoch_version}
|
|||||||
Version: %{rpm_version}
|
Version: %{rpm_version}
|
||||||
Release: %{release_version}%{?snap}%{?dist}
|
Release: %{release_version}%{?snap}%{?dist}
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
License: GPLv2+ and LGPLv2+
|
License: GPL-2.0-or-later AND LGPL-2.1-or-later
|
||||||
URL: https://networkmanager.dev/
|
URL: https://networkmanager.dev/
|
||||||
|
|
||||||
Source: https://download.gnome.org/sources/NetworkManager/%{real_version_major}/%{name}-%{real_version}.tar.xz
|
Source: https://download.gnome.org/sources/NetworkManager/%{real_version_major}/%{name}-%{real_version}.tar.xz
|
||||||
@ -195,6 +201,7 @@ Source4: 20-connectivity-fedora.conf
|
|||||||
Source5: 20-connectivity-redhat.conf
|
Source5: 20-connectivity-redhat.conf
|
||||||
Source6: 70-nm-connectivity.conf
|
Source6: 70-nm-connectivity.conf
|
||||||
Source7: readme-ifcfg-rh.txt
|
Source7: readme-ifcfg-rh.txt
|
||||||
|
Source8: readme-ifcfg-rh-migrated.txt
|
||||||
|
|
||||||
# RHEL downstream patches that change behavior from upstream.
|
# RHEL downstream patches that change behavior from upstream.
|
||||||
# These are not bugfixes, hence they are also relevant after
|
# These are not bugfixes, hence they are also relevant after
|
||||||
@ -739,6 +746,9 @@ Preferably use nmcli instead.
|
|||||||
-Ddist_version=%{version}-%{release} \
|
-Ddist_version=%{version}-%{release} \
|
||||||
%if %{?config_plugins_default_ifcfg_rh}
|
%if %{?config_plugins_default_ifcfg_rh}
|
||||||
-Dconfig_plugins_default=ifcfg-rh \
|
-Dconfig_plugins_default=ifcfg-rh \
|
||||||
|
%endif
|
||||||
|
%if %{?ifcfg_migrate}
|
||||||
|
-Dconfig_migrate_ifcfg_rh_default=true \
|
||||||
%endif
|
%endif
|
||||||
-Dresolvconf=no \
|
-Dresolvconf=no \
|
||||||
-Dnetconfig=no \
|
-Dnetconfig=no \
|
||||||
@ -884,6 +894,9 @@ autoreconf --install --force
|
|||||||
--with-dist-version=%{version}-%{release} \
|
--with-dist-version=%{version}-%{release} \
|
||||||
%if %{?config_plugins_default_ifcfg_rh}
|
%if %{?config_plugins_default_ifcfg_rh}
|
||||||
--with-config-plugins-default=ifcfg-rh \
|
--with-config-plugins-default=ifcfg-rh \
|
||||||
|
%endif
|
||||||
|
%if %{?ifcfg_migrate}
|
||||||
|
--with-config-migrate-ifcfg-rh-default=yes \
|
||||||
%endif
|
%endif
|
||||||
--with-resolvconf=no \
|
--with-resolvconf=no \
|
||||||
--with-netconfig=no \
|
--with-netconfig=no \
|
||||||
@ -918,6 +931,9 @@ cp %{SOURCE6} %{buildroot}%{_sysctldir}
|
|||||||
%if 0%{?ifcfg_warning}
|
%if 0%{?ifcfg_warning}
|
||||||
cp %{SOURCE7} %{buildroot}%{_sysconfdir}/sysconfig/network-scripts
|
cp %{SOURCE7} %{buildroot}%{_sysconfdir}/sysconfig/network-scripts
|
||||||
%endif
|
%endif
|
||||||
|
%if 0%{?ifcfg_migrate}
|
||||||
|
cp %{SOURCE8} %{buildroot}%{_sysconfdir}/sysconfig/network-scripts/readme-ifcfg-rh.txt
|
||||||
|
%endif
|
||||||
|
|
||||||
cp examples/dispatcher/10-ifcfg-rh-routes.sh %{buildroot}%{nmlibdir}/dispatcher.d/
|
cp examples/dispatcher/10-ifcfg-rh-routes.sh %{buildroot}%{nmlibdir}/dispatcher.d/
|
||||||
ln -s ../no-wait.d/10-ifcfg-rh-routes.sh %{buildroot}%{nmlibdir}/dispatcher.d/pre-up.d/
|
ln -s ../no-wait.d/10-ifcfg-rh-routes.sh %{buildroot}%{nmlibdir}/dispatcher.d/pre-up.d/
|
||||||
@ -1109,7 +1125,7 @@ fi
|
|||||||
%{_unitdir}/nm-priv-helper.service
|
%{_unitdir}/nm-priv-helper.service
|
||||||
%dir %{_datadir}/doc/NetworkManager/examples
|
%dir %{_datadir}/doc/NetworkManager/examples
|
||||||
%{_datadir}/doc/NetworkManager/examples/server.conf
|
%{_datadir}/doc/NetworkManager/examples/server.conf
|
||||||
%if 0%{?ifcfg_warning}
|
%if 0%{?ifcfg_warning} || 0%{?ifcfg_migrate}
|
||||||
%{_sysconfdir}/sysconfig/network-scripts/readme-ifcfg-rh.txt
|
%{_sysconfdir}/sysconfig/network-scripts/readme-ifcfg-rh.txt
|
||||||
%endif
|
%endif
|
||||||
%doc NEWS AUTHORS README.md CONTRIBUTING.md
|
%doc NEWS AUTHORS README.md CONTRIBUTING.md
|
||||||
|
84
readme-ifcfg-rh-migrated.txt
Normal file
84
readme-ifcfg-rh-migrated.txt
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
NetworkManager was built to automatically migrate connection profiles in
|
||||||
|
this directory to equivalent ones in keyfile format in directory
|
||||||
|
/etc/NetworkManager/system-connections.
|
||||||
|
|
||||||
|
You can check whether the migration is enabled via:
|
||||||
|
|
||||||
|
$ NetworkManager --print-config | grep migrate-ifcfg-rh
|
||||||
|
|
||||||
|
In case it is enabled, all files in this directory are migrated at startup.
|
||||||
|
|
||||||
|
To inspect where your connection files are currently stored use:
|
||||||
|
|
||||||
|
$ nmcli -f name,uuid,filename connection
|
||||||
|
|
||||||
|
Background
|
||||||
|
==========
|
||||||
|
|
||||||
|
The ifcfg format is deprecated and will be removed in future releases. For
|
||||||
|
more information see:
|
||||||
|
|
||||||
|
https://lists.freedesktop.org/archives/networkmanager/2023-May/000103.html
|
||||||
|
|
||||||
|
Connection profiles in keyfile format have many benefits. For example, this
|
||||||
|
format is INI file-based and can easily be parsed and generated.
|
||||||
|
|
||||||
|
Each section in NetworkManager keyfiles corresponds to a NetworkManager
|
||||||
|
setting name as described in the nm-settings(5) and nm-settings-keyfile(5)
|
||||||
|
man pages. Each key-value pair in a section is one of the properties listed
|
||||||
|
in the settings specification of the man page.
|
||||||
|
|
||||||
|
How to keep using ifcfg
|
||||||
|
=======================
|
||||||
|
|
||||||
|
If you want to keep using connection profiles in ifcfg format, you need to:
|
||||||
|
|
||||||
|
- disable the automatic migration to keyfile by setting
|
||||||
|
"migrate-ifcfg-rh=false" in the [main] section of NetworkManager
|
||||||
|
configuration;
|
||||||
|
|
||||||
|
- optionally, set "plugins=ifcfg-rh" in the [main] section of
|
||||||
|
NetworkManager configuration so that new profiles are created in ifcfg
|
||||||
|
format.
|
||||||
|
|
||||||
|
At this point, you can migrate all your files back via
|
||||||
|
|
||||||
|
nmcli connection migrate --plugin ifcfg-rh
|
||||||
|
|
||||||
|
Or, if you prefer to migrate only specific connections:
|
||||||
|
|
||||||
|
nmcli connection migrate --plugin ifcfg-rh <profile_name|UUID>
|
||||||
|
|
||||||
|
Note that some connection types are not supported by the ifcfg plugin.
|
||||||
|
|
||||||
|
Interface renaming
|
||||||
|
==================
|
||||||
|
|
||||||
|
Connection profiles stored in ifcfg-rh format support the renaming of
|
||||||
|
interfaces via udev. This is done via a helper tool
|
||||||
|
/usr/lib/udev/rename_device that is invoked by udev to parse the files
|
||||||
|
in /etc/sysconfig/network-scripts; when the HWADDR and DEVICE
|
||||||
|
variables are set, the interface that matches the MAC address in
|
||||||
|
HWADDR is renamed to the name specified in DEVICE.
|
||||||
|
|
||||||
|
Connections in keyfile format don't provide the same integration with
|
||||||
|
udev. The renaming of interfaces must be configured directly in udev,
|
||||||
|
for example by creating a file:
|
||||||
|
|
||||||
|
/etc/systemd/network/70-rename.link
|
||||||
|
|
||||||
|
with content:
|
||||||
|
|
||||||
|
[Match]
|
||||||
|
MACAddress=00:11:22:33:44:56
|
||||||
|
|
||||||
|
[Link]
|
||||||
|
Name=ethernet1
|
||||||
|
|
||||||
|
Alternatively, a udev rule can also be used, such as:
|
||||||
|
|
||||||
|
/etc/udev/rules.d/70-interface-names.rules
|
||||||
|
|
||||||
|
with content:
|
||||||
|
|
||||||
|
SUBSYSTEM=="net",ACTION=="add",ATTR{address}=="00:11:22:33:44:56",ATTR{type}=="1",NAME="ethernet1"
|
Loading…
Reference in New Issue
Block a user